projects
/
openssl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a70936a
)
APPS: Prevent ASAN hickup on idempotent strncpy() in opt_progname()
author
Dr. David von Oheimb
<David.von.Oheimb@siemens.com>
Wed, 21 Apr 2021 11:51:03 +0000
(13:51 +0200)
committer
Dr. David von Oheimb
<dev@ddvo.net>
Sat, 24 Apr 2021 16:54:32 +0000
(18:54 +0200)
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14970)
apps/lib/opt.c
patch
|
blob
|
history
diff --git
a/apps/lib/opt.c
b/apps/lib/opt.c
index d22a884e6715bd6fa61e033aab5cf099f5a148fb..8073a7014143b2433d83f7c2a3c9da9a6a6363be 100644
(file)
--- a/
apps/lib/opt.c
+++ b/
apps/lib/opt.c
@@
-105,7
+105,8
@@
char *opt_progname(const char *argv0)
/* Find last special character sys:[foo.bar]openssl */
p = opt_path_end(argv0);
q = strrchr(p, '.');
- strncpy(prog, p, sizeof(prog) - 1);
+ if (prog != p)
+ strncpy(prog, p, sizeof(prog) - 1);
prog[sizeof(prog) - 1] = '\0';
if (q != NULL && q - p < sizeof(prog))
prog[q - p] = '\0';
@@
-132,7
+133,8
@@
char *opt_progname(const char *argv0)
const char *p;
p = opt_path_end(argv0);
- strncpy(prog, p, sizeof(prog) - 1);
+ if (prog != p)
+ strncpy(prog, p, sizeof(prog) - 1);
prog[sizeof(prog) - 1] = '\0';
return prog;
}