diff options
author | Tobias Stoeckmann <tobias@stoeckmann.org> | 2023-12-15 11:53:11 +0100 |
---|---|---|
committer | Dmitry V. Levin <ldv@strace.io> | 2023-12-19 12:22:59 +0000 |
commit | bad0bb2ff9259efe0334bcc283f64a4135ad14a8 (patch) | |
tree | affd9f78352b6b80d13b6fa344bbf4cce8871deb | |
parent | 45d3d6b5021a6b5e49bc2923cd422ef3fecf1640 (diff) | |
download | pam-bad0bb2ff9259efe0334bcc283f64a4135ad14a8.tar.gz pam-bad0bb2ff9259efe0334bcc283f64a4135ad14a8.tar.bz2 pam-bad0bb2ff9259efe0334bcc283f64a4135ad14a8.zip |
pam_filter: use stpcpy instead of strcpy
It's been checked before that enough space exists. Let stpcpy return
the correct pointer to end of string instead of keeping track of it
manually.
Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
-rw-r--r-- | modules/pam_filter/pam_filter.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/modules/pam_filter/pam_filter.c b/modules/pam_filter/pam_filter.c index 4e614498..211d88cd 100644 --- a/modules/pam_filter/pam_filter.c +++ b/modules/pam_filter/pam_filter.c @@ -94,6 +94,7 @@ static int process_args(pam_handle_t *pamh *evp = NULL; } else { char **levp; + char *p; const char *user = NULL; const void *tmp; int i,size, retval; @@ -127,13 +128,11 @@ static int process_args(pam_handle_t *pamh return -1; } - strcpy(levp[0], ARGS_NAME); - size = ARGS_OFFSET; + p = stpcpy(levp[0], ARGS_NAME); for (i=0; i<argc; ++i) { if (i) - levp[0][size++] = ' '; - strcpy(levp[0]+size, argv[i]); - size += strlen(argv[i]); + p = stpcpy(p, " "); + p = stpcpy(p, argv[i]); } /* the "SERVICE" variable */ |