]> granicus.if.org Git - linux-pam/commitdiff
pam_tally2: Avoid uninitialized use of fileinfo.
authorTomas Mraz <tmraz@fedoraproject.org>
Wed, 13 Aug 2014 13:01:32 +0000 (15:01 +0200)
committerTomas Mraz <tmraz@fedoraproject.org>
Wed, 13 Aug 2014 13:01:32 +0000 (15:01 +0200)
Problem found by Robin Hack <rhack@redhat.com>.
modules/pam_tally2/pam_tally2.c (get_tally): Do not depend on file size
just try to read it.

modules/pam_tally2/pam_tally2.c

index 09e8585516f3a86689e49b1922696518faad2941..f5eebb10cca7c034c14efd97e817985c6a11fa80 100644 (file)
@@ -451,11 +451,8 @@ skip_open:
        alarm(oldalarm);
     }
 
-    if (fileinfo.st_size < (off_t)(uid+1)*(off_t)sizeof(*tally)) {
+    if (pam_modutil_read(*tfile, void_tally, sizeof(*tally)) != sizeof(*tally)) {
        memset(tally, 0, sizeof(*tally));
-    } else if (pam_modutil_read(*tfile, void_tally, sizeof(*tally)) != sizeof(*tally)) {
-       memset(tally, 0, sizeof(*tally));
-       /* Shouldn't happen */
     }
 
     tally->fail_line[sizeof(tally->fail_line)-1] = '\0';