90 lines
2.8 KiB
Diff
90 lines
2.8 KiB
Diff
From 3b89b71680b2eb46135439e0a7760dbe040628e5 Mon Sep 17 00:00:00 2001
|
|
From: Iker Pedrosa <ipedrosa@redhat.com>
|
|
Date: Mon, 16 May 2022 17:24:58 +0200
|
|
Subject: [PATCH] Initialize local variables
|
|
|
|
CWE-457 by CodeQL.
|
|
|
|
Signed-off-by: Iker Pedrosa <ipedrosa@redhat.com>
|
|
|
|
Reference: https://github.com/shadow-maint/shadow/commit/3b89b71680b2eb46135439e0a7760dbe040628e5
|
|
Conflict: The number of lines is inconsistent and there is a little difference in adaptation
|
|
|
|
---
|
|
lib/run_part.c | 2 +-
|
|
src/faillog.c | 4 ++--
|
|
src/lastlog.c | 21 ++++++++++-----------
|
|
3 files changed, 13 insertions(+), 14 deletions(-)
|
|
|
|
diff --git a/lib/run_part.c b/lib/run_part.c
|
|
index 1e4f154b..bce11d37 100644
|
|
--- a/lib/run_part.c
|
|
+++ b/lib/run_part.c
|
|
@@ -43,7 +43,7 @@ int run_parts (char *directory, char *name, char *action)
|
|
struct dirent **namelist;
|
|
int scanlist;
|
|
int n;
|
|
- int execute_result;
|
|
+ int execute_result = 0;
|
|
|
|
scanlist = scandir (directory, &namelist, 0, alphasort);
|
|
if (scanlist<=0) {
|
|
diff --git a/src/faillog.c b/src/faillog.c
|
|
index d33fe9b6..0f94836f 100644
|
|
--- a/src/faillog.c
|
|
+++ b/src/faillog.c
|
|
@@ -565,9 +565,9 @@ static void set_locktime (long locktime)
|
|
|
|
int main (int argc, char **argv)
|
|
{
|
|
- long fail_locktime;
|
|
+ long fail_locktime = 0;
|
|
short fail_max = 0; // initialize to silence compiler warning
|
|
- long days;
|
|
+ long days = 0;
|
|
|
|
/*
|
|
* Get the program name. The program name is used as a prefix to
|
|
diff --git a/src/lastlog.c b/src/lastlog.c
|
|
index 3c0fc9c6..0d4b5fd2 100644
|
|
--- a/src/lastlog.c
|
|
+++ b/src/lastlog.c
|
|
@@ -114,7 +114,16 @@ static void print_one (/*@null@*/const struct passwd *pw)
|
|
#endif
|
|
|
|
#ifdef HAVE_LL_HOST
|
|
- int maxIPv6Addrlen;
|
|
+ /*
|
|
+ * ll_host is in minimized form, thus the maximum IPv6 address possible is
|
|
+ * 8*4+7 = 39 characters.
|
|
+ * RFC 4291 2.5.6 states that for LL-addresses fe80+only the interface ID is set,
|
|
+ * thus having a maximum size of 25+1+IFNAMSIZ.
|
|
+ * POSIX says IFNAMSIZ should be 16 characters long including the null byte, thus
|
|
+ * 25+1+IFNAMSIZ >= 42 > 39
|
|
+ */
|
|
+ /* Link-Local address + % + Interfacename */
|
|
+ const int maxIPv6Addrlen = 25+1+IFNAMSIZ;
|
|
#endif
|
|
|
|
if (NULL == pw) {
|
|
@@ -158,16 +167,6 @@ static void print_one (/*@null@*/const struct passwd *pw)
|
|
/* Print the header only once */
|
|
if (!once) {
|
|
#ifdef HAVE_LL_HOST
|
|
- /*
|
|
- * ll_host is in minimized form, thus the maximum IPv6 address possible is
|
|
- * 8*4+7 = 39 characters.
|
|
- * RFC 4291 2.5.6 states that for LL-addresses fe80+only the interface ID is set,
|
|
- * thus having a maximum size of 25+1+IFNAMSIZ.
|
|
- * POSIX says IFNAMSIZ should be 16 characters long including the null byte, thus
|
|
- * 25+1+IFNAMSIZ >= 42 > 39
|
|
- */
|
|
- /* Link-Local address + % + Interfacename */
|
|
- maxIPv6Addrlen = 25+1+IFNAMSIZ;
|
|
printf (_("Username Port From%*sLatest\n"), maxIPv6Addrlen-3, " ");
|
|
#else
|
|
puts (_("Username Port Latest"));
|
|
--
|
|
2.27.0
|
|
|