From: nekral-guest Date: Fri, 13 Jun 2008 18:11:09 +0000 (+0000) Subject: * libmisc/console.c, libmisc/hushed.c, libmisc/yesno.c, X-Git-Tag: 4.1.3~399 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ef32209fd7166aae8303d7409ec5e8672b7f5318;p=shadow * libmisc/console.c, libmisc/hushed.c, libmisc/yesno.c, libmisc/loginprompt.c, libmisc/ttytype.c, libmisc/tz.c, src/login_nopam.c, src/chpasswd.c, src/chgpasswd.c, lib/port.c: The size argument of fgets is an int, not a size_t. * libmisc/loginprompt.c: Ignore the return value from signal() when the signal handlers are restored. * src/chpasswd.c: Cast the return value of time() to a long integer. * src/chpasswd.c: Use the SCALE macro instead of (24L * 3600L) for the values to be set in /etc/shadow. --- diff --git a/lib/port.c b/lib/port.c index 07737d3e..438879c1 100644 --- a/lib/port.c +++ b/lib/port.c @@ -157,7 +157,7 @@ static struct port *getportent (void) * is a '\n'. Lines which begin with '#' are all ignored. */ - if (fgets (buf, sizeof buf, ports) == 0) { + if (fgets (buf, (int) sizeof buf, ports) == 0) { errno = saveerr; return 0; } diff --git a/libmisc/console.c b/libmisc/console.c index ec482406..23970d79 100644 --- a/libmisc/console.c +++ b/libmisc/console.c @@ -93,7 +93,7 @@ static bool is_listed (const char *cfgin, const char *tty, bool def) * See if this tty is listed in the console file. */ - while (fgets (buf, sizeof (buf), fp) != NULL) { + while (fgets (buf, (int) sizeof (buf), fp) != NULL) { buf[strlen (buf) - 1] = '\0'; if (strcmp (buf, tty) == 0) { (void) fclose (fp); diff --git a/libmisc/hushed.c b/libmisc/hushed.c index cff93811..0af41ab0 100644 --- a/libmisc/hushed.c +++ b/libmisc/hushed.c @@ -83,7 +83,7 @@ bool hushed (const struct passwd *pw) if (NULL == fp) { return false; } - for (found = false; !found && (fgets (buf, sizeof buf, fp) == buf);) { + for (found = false; !found && (fgets (buf, (int) sizeof buf, fp) == buf);) { buf[strlen (buf) - 1] = '\0'; found = (strcmp (buf, pw->pw_shell) == 0) || (strcmp (buf, pw->pw_name) == 0); diff --git a/libmisc/loginprompt.c b/libmisc/loginprompt.c index 449da680..778475d1 100644 --- a/libmisc/loginprompt.c +++ b/libmisc/loginprompt.c @@ -109,7 +109,7 @@ void login_prompt (const char *prompt, char *name, int namesize) */ memzero (buf, sizeof buf); - if (fgets (buf, sizeof buf, stdin) != buf) { + if (fgets (buf, (int) sizeof buf, stdin) != buf) { exit (1); } @@ -167,9 +167,9 @@ void login_prompt (const char *prompt, char *name, int namesize) * Set the SIGQUIT handler back to its original value */ - signal (SIGQUIT, sigquit); + (void) signal (SIGQUIT, sigquit); #ifdef SIGTSTP - signal (SIGTSTP, sigtstp); + (void) signal (SIGTSTP, sigtstp); #endif } diff --git a/libmisc/ttytype.c b/libmisc/ttytype.c index b7af55b0..d8ecf0a0 100644 --- a/libmisc/ttytype.c +++ b/libmisc/ttytype.c @@ -62,7 +62,7 @@ void ttytype (const char *line) perror (typefile); return; } - while (fgets (buf, sizeof buf, fp) == buf) { + while (fgets (buf, (int) sizeof buf, fp) == buf) { if (buf[0] == '#') { continue; } diff --git a/libmisc/tz.c b/libmisc/tz.c index 66ea50c2..cc598219 100644 --- a/libmisc/tz.c +++ b/libmisc/tz.c @@ -53,7 +53,7 @@ char *tz (const char *fname) const char *def_tz = "TZ=CST6CDT"; if ((fp = fopen (fname, "r")) == NULL || - fgets (tzbuf, sizeof (tzbuf), fp) == NULL) { + fgets (tzbuf, (int) sizeof (tzbuf), fp) == NULL) { #ifndef USE_PAM if (!(def_tz = getdef_str ("ENV_TZ")) || def_tz[0] == '/') def_tz = "TZ=CST6CDT"; diff --git a/libmisc/yesno.c b/libmisc/yesno.c index d6587942..b3e20712 100644 --- a/libmisc/yesno.c +++ b/libmisc/yesno.c @@ -70,7 +70,7 @@ bool yes_or_no (bool read_only) * Get a line and see what the first character is. */ /* TODO: use gettext */ - if (fgets (buf, sizeof buf, stdin) == buf) { + if (fgets (buf, (int) sizeof buf, stdin) == buf) { return buf[0] == 'y' || buf[0] == 'Y'; } diff --git a/src/chgpasswd.c b/src/chgpasswd.c index fc3110e8..409b80d9 100644 --- a/src/chgpasswd.c +++ b/src/chgpasswd.c @@ -356,7 +356,7 @@ int main (int argc, char **argv) * group entry for each group will be looked up in the appropriate * file (gshadow or group) and the password changed. */ - while (fgets (buf, sizeof buf, stdin) != (char *) 0) { + while (fgets (buf, (int) sizeof buf, stdin) != (char *) 0) { line++; cp = strrchr (buf, '\n'); if (NULL != cp) { diff --git a/src/chpasswd.c b/src/chpasswd.c index 1691a605..b6cb0a2a 100644 --- a/src/chpasswd.c +++ b/src/chpasswd.c @@ -324,7 +324,7 @@ int main (int argc, char **argv) struct passwd newpw; int errors = 0; int line = 0; - long now = time ((time_t *)NULL) / (24L * 3600L); + long now = (long) time ((time_t *)NULL) / SCALE; int ok; Prog = Basename (argv[0]); @@ -349,7 +349,7 @@ int main (int argc, char **argv) * last change date is set in the age only if aging information is * present. */ - while (fgets (buf, sizeof buf, stdin) != (char *) 0) { + while (fgets (buf, (int) sizeof buf, stdin) != (char *) 0) { line++; cp = strrchr (buf, '\n'); if (NULL != cp) { diff --git a/src/login_nopam.c b/src/login_nopam.c index 2f8a01b8..0a954534 100644 --- a/src/login_nopam.c +++ b/src/login_nopam.c @@ -93,7 +93,8 @@ int login_access (const char *user, const char *from) */ fp = fopen (TABLE, "r"); if (NULL != fp) { - while (!match && (fgets (line, sizeof (line), fp) == line)) { + while ( !match + && (fgets (line, (int) sizeof (line), fp) == line)) { lineno++; end = (int) strlen (line) - 1; if (line[end] != '\n') {