package/libpam-tacplus: fix compilation with GCC 8
GCC 8 demands that the size of the string copied by strncpy be smaller than the size of the destination to keep space for the trailibg '\0'. This causes a compilation error in pam_tacplus, so add a patch already sent uptream to fix it. Fixes: http://autobuild.buildroot.net/results/da6d150e470046c03c5f7463de045604e15e4a30/ Signed-off-by: Carlos Santos <casantos@datacom.com.br> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
fbb2f0d795
commit
5d92c696cc
@ -0,0 +1,39 @@
|
||||
From 4c9635b03d0acf140f65004be9d4822297ee5a35 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Santos <casantos@datacom.com.br>
|
||||
Date: Mon, 10 Dec 2018 17:27:16 -0200
|
||||
Subject: [PATCH] Fix compilation of tacc.c with GCC 8
|
||||
|
||||
GCC 8 demands that the size of the string copied by strncpy be smaller
|
||||
than the size of the destination to keep space for the trailibg '\0':
|
||||
|
||||
tacc.c:378:3: error: 'strncpy' specified bound 4 equals destination size [-Werror=stringop-truncation]
|
||||
strncpy(utmpx.ut_id, tty + C_STRLEN("tty"), sizeof(utmpx.ut_id));
|
||||
|
||||
Ensure that no more than sizeof(utmpx.ut_id) - 1 characters are copied
|
||||
and that a trailing '\0' is stored.
|
||||
|
||||
Fixes:
|
||||
http://autobuild.buildroot.net/results/da6d150e470046c03c5f7463de045604e15e4a30/
|
||||
|
||||
Signed-off-by: Carlos Santos <casantos@datacom.com.br>
|
||||
---
|
||||
tacc.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tacc.c b/tacc.c
|
||||
index f61e2d7..3c1a40c 100644
|
||||
--- a/tacc.c
|
||||
+++ b/tacc.c
|
||||
@@ -375,7 +375,8 @@ int main(int argc, char **argv) {
|
||||
utmpx.ut_type = USER_PROCESS;
|
||||
utmpx.ut_pid = getpid();
|
||||
xstrcpy(utmpx.ut_line, tty, sizeof(utmpx.ut_line));
|
||||
- strncpy(utmpx.ut_id, tty + C_STRLEN("tty"), sizeof(utmpx.ut_id));
|
||||
+ strncpy(utmpx.ut_id, tty + C_STRLEN("tty"), sizeof(utmpx.ut_id) - 1);
|
||||
+ utmpx.ut_id[sizeof(utmpx.ut_id) - 1] = '\0';
|
||||
xstrcpy(utmpx.ut_host, "dialup", sizeof(utmpx.ut_host));
|
||||
utmpx.ut_tv.tv_sec = tv.tv_sec;
|
||||
utmpx.ut_tv.tv_usec = tv.tv_usec;
|
||||
--
|
||||
2.14.5
|
||||
|
Loading…
Reference in New Issue
Block a user