summaryrefslogtreecommitdiffstats
path: root/login-utils
diff options
context:
space:
mode:
Diffstat (limited to 'login-utils')
-rw-r--r--login-utils/login.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/login-utils/login.c b/login-utils/login.c
index 9aef3d804..23b62b8d0 100644
--- a/login-utils/login.c
+++ b/login-utils/login.c
@@ -437,14 +437,14 @@ static void log_btmp(struct login_context *cxt)
memset(&ut, 0, sizeof(ut));
- strncpy(ut.ut_user,
+ str2memcpy(ut.ut_user,
cxt->username ? cxt->username : "(unknown)",
sizeof(ut.ut_user));
if (cxt->tty_number)
- strncpy(ut.ut_id, cxt->tty_number, sizeof(ut.ut_id));
+ str2memcpy(ut.ut_id, cxt->tty_number, sizeof(ut.ut_id));
if (cxt->tty_name)
- xstrncpy(ut.ut_line, cxt->tty_name, sizeof(ut.ut_line));
+ str2memcpy(ut.ut_line, cxt->tty_name, sizeof(ut.ut_line));
gettimeofday(&tv, NULL);
ut.ut_tv.tv_sec = tv.tv_sec;
@@ -454,7 +454,7 @@ static void log_btmp(struct login_context *cxt)
ut.ut_pid = cxt->pid;
if (cxt->hostname) {
- xstrncpy(ut.ut_host, cxt->hostname, sizeof(ut.ut_host));
+ str2memcpy(ut.ut_host, cxt->hostname, sizeof(ut.ut_host));
if (*cxt->hostaddress)
memcpy(&ut.ut_addr_v6, cxt->hostaddress,
sizeof(ut.ut_addr_v6));
@@ -541,9 +541,9 @@ static void log_lastlog(struct login_context *cxt)
ll.ll_time = t; /* ll_time is always 32bit */
if (cxt->tty_name)
- xstrncpy(ll.ll_line, cxt->tty_name, sizeof(ll.ll_line));
+ str2memcpy(ll.ll_line, cxt->tty_name, sizeof(ll.ll_line));
if (cxt->hostname)
- xstrncpy(ll.ll_host, cxt->hostname, sizeof(ll.ll_host));
+ str2memcpy(ll.ll_host, cxt->hostname, sizeof(ll.ll_host));
if (write_all(fd, (char *)&ll, sizeof(ll)))
warn(_("write lastlog failed"));
@@ -585,7 +585,7 @@ static void log_utmp(struct login_context *cxt)
if (utp == NULL && cxt->tty_name) {
setutxent();
ut.ut_type = LOGIN_PROCESS;
- strncpy(ut.ut_line, cxt->tty_name, sizeof(ut.ut_line));
+ str2memcpy(ut.ut_line, cxt->tty_name, sizeof(ut.ut_line));
utp = getutxline(&ut);
}
@@ -594,7 +594,7 @@ static void log_utmp(struct login_context *cxt)
if (utp == NULL && cxt->tty_number) {
setutxent();
ut.ut_type = DEAD_PROCESS;
- strncpy(ut.ut_id, cxt->tty_number, sizeof(ut.ut_id));
+ str2memcpy(ut.ut_id, cxt->tty_number, sizeof(ut.ut_id));
utp = getutxid(&ut);
}
@@ -605,11 +605,11 @@ static void log_utmp(struct login_context *cxt)
memset(&ut, 0, sizeof(ut));
if (cxt->tty_number && ut.ut_id[0] == 0)
- strncpy(ut.ut_id, cxt->tty_number, sizeof(ut.ut_id));
+ str2memcpy(ut.ut_id, cxt->tty_number, sizeof(ut.ut_id));
if (cxt->username)
- strncpy(ut.ut_user, cxt->username, sizeof(ut.ut_user));
+ str2memcpy(ut.ut_user, cxt->username, sizeof(ut.ut_user));
if (cxt->tty_name)
- xstrncpy(ut.ut_line, cxt->tty_name, sizeof(ut.ut_line));
+ str2memcpy(ut.ut_line, cxt->tty_name, sizeof(ut.ut_line));
gettimeofday(&tv, NULL);
ut.ut_tv.tv_sec = tv.tv_sec;
@@ -617,7 +617,7 @@ static void log_utmp(struct login_context *cxt)
ut.ut_type = USER_PROCESS;
ut.ut_pid = cxt->pid;
if (cxt->hostname) {
- xstrncpy(ut.ut_host, cxt->hostname, sizeof(ut.ut_host));
+ str2memcpy(ut.ut_host, cxt->hostname, sizeof(ut.ut_host));
if (*cxt->hostaddress)
memcpy(&ut.ut_addr_v6, cxt->hostaddress,
sizeof(ut.ut_addr_v6));