From: Jim Meyering <meyer...@redhat.com> Replace strncpy+NUL-terminate use with use of pstrcpy. This requires linking with cutils.o (or else vssclient doesn't link), so add that in the Makefile.
Signed-off-by: Jim Meyering <meyer...@redhat.com> --- libcacard/Makefile | 2 +- libcacard/vcard_emul_nss.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/libcacard/Makefile b/libcacard/Makefile index c6a896a..2a5a42d 100644 --- a/libcacard/Makefile +++ b/libcacard/Makefile @@ -17,7 +17,7 @@ QEMU_CFLAGS+=-I../ libcacard.lib-y=$(addsuffix .lo,$(basename $(libcacard-y))) -vscclient: $(libcacard-y) $(QEMU_OBJS) vscclient.o +vscclient: $(libcacard-y) $(QEMU_OBJS) vscclient.o cutils.o $(call quiet-command,$(CC) -o $@ $^ $(libcacard_libs) $(LIBS)," LINK $@") clean: diff --git a/libcacard/vcard_emul_nss.c b/libcacard/vcard_emul_nss.c index 802cae3..e1cae5b 100644 --- a/libcacard/vcard_emul_nss.c +++ b/libcacard/vcard_emul_nss.c @@ -1169,8 +1169,7 @@ vcard_emul_options(const char *args) NEXT_TOKEN(vname) NEXT_TOKEN(type_params) type_params_length = MIN(type_params_length, sizeof(type_str)-1); - strncpy(type_str, type_params, type_params_length); - type_str[type_params_length] = 0; + pstrcpy(type_str, type_params_length, type_params); type = vcard_emul_type_from_string(type_str); NEXT_TOKEN(type_params) -- 1.7.10.1.487.ga3935e6