diff --git a/lib/log.c b/lib/log.c index 04aa3cfa..6ab1701f 100644 --- a/lib/log.c +++ b/lib/log.c @@ -19,6 +19,7 @@ #include #include "memzero.h" #include "prototypes.h" +#include "strncpy.h" #include "strtcpy.h" @@ -82,7 +83,7 @@ void dolastlog ( newlog.ll_time = ll_time; STRTCPY(newlog.ll_line, line); #if HAVE_LL_HOST - strncpy(newlog.ll_host, host, sizeof(newlog.ll_host)); + STRNCPY(newlog.ll_host, host); #endif if ( (lseek (fd, offset, SEEK_SET) != offset) || (write_full(fd, &newlog, sizeof newlog) == -1) diff --git a/lib/utmp.c b/lib/utmp.c index 0ec2692c..7f116f3b 100644 --- a/lib/utmp.c +++ b/lib/utmp.c @@ -25,6 +25,7 @@ #include "alloc.h" #include "sizeof.h" #include "strtcpy.h" +#include "strncpy.h" #include "zustr2stp.h" #ident "$Id$" @@ -262,25 +263,25 @@ static utent->ut_type = USER_PROCESS; #endif /* HAVE_STRUCT_UTMP_UT_TYPE */ utent->ut_pid = getpid (); - strncpy(utent->ut_line, line, sizeof(utent->ut_line)); + STRNCPY(utent->ut_line, line); #ifdef HAVE_STRUCT_UTMP_UT_ID if (NULL != ut) { - strncpy (utent->ut_id, ut->ut_id, sizeof (utent->ut_id)); + STRNCPY(utent->ut_id, ut->ut_id); } else { /* XXX - assumes /dev/tty?? */ - strncpy(utent->ut_id, line + 3, sizeof(utent->ut_id)); + STRNCPY(utent->ut_id, line + 3); } #endif /* HAVE_STRUCT_UTMP_UT_ID */ #ifdef HAVE_STRUCT_UTMP_UT_NAME - strncpy (utent->ut_name, name, sizeof (utent->ut_name)); + STRNCPY(utent->ut_name, name); #endif /* HAVE_STRUCT_UTMP_UT_NAME */ #ifdef HAVE_STRUCT_UTMP_UT_USER - strncpy(utent->ut_user, name, sizeof(utent->ut_user)); + STRNCPY(utent->ut_user, name); #endif /* HAVE_STRUCT_UTMP_UT_USER */ if (NULL != hostname) { struct addrinfo *info = NULL; #ifdef HAVE_STRUCT_UTMP_UT_HOST - strncpy(utent->ut_host, hostname, sizeof(utent->ut_host)); + STRNCPY(utent->ut_host, hostname); #endif /* HAVE_STRUCT_UTMP_UT_HOST */ #ifdef HAVE_STRUCT_UTMP_UT_SYSLEN utent->ut_syslen = MIN (strlen (hostname),