From: Karel Zak Date: Wed, 3 Oct 2018 15:06:33 +0000 (+0200) Subject: last: make sure domain is zero terminated X-Git-Tag: v2.33-rc2~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=22fbfdb8f5958586116074e712fd81f4cacd206c;p=thirdparty%2Futil-linux.git last: make sure domain is zero terminated Signed-off-by: Karel Zak --- diff --git a/login-utils/last.c b/login-utils/last.c index 59dfdb2f5e..6b25efd4c6 100644 --- a/login-utils/last.c +++ b/login-utils/last.c @@ -508,15 +508,8 @@ static int list(const struct last_control *ctl, struct utmpx *p, time_t logout_t r = -1; if (ctl->usedns || ctl->useip) r = dns_lookup(domain, sizeof(domain), ctl->useip, (int32_t*)p->ut_addr_v6); - if (r < 0) { - size_t sz = sizeof(p->ut_host); - - if (sz > sizeof(domain)) - sz = sizeof(domain); - - xstrncpy(domain, p->ut_host, sz); - } - + if (r < 0) + mem2strcpy(domain, p->ut_host, sizeof(p->ut_host), sizeof(domain)); if (ctl->showhost) { if (!ctl->altlist) {