dirmngr: Avoid crash due to an empty crls.d/DIR.txt.
authorWerner Koch <wk@gnupg.org>
Tue, 9 Jun 2015 09:31:06 +0000 (11:31 +0200)
committerWerner Koch <wk@gnupg.org>
Tue, 9 Jun 2015 09:31:06 +0000 (11:31 +0200)
* dirmngr/crlcache.c (check_dir_version): Avoid segv.
--

GnuPG-bug-id: 1842
Debian-bug-id: 776611

dirmngr/crlcache.c

index d10e3ca..d4c3dcb 100644 (file)
@@ -479,7 +479,9 @@ check_dir_version (estream_t *fpadr, const char *fname,
   if (lineerr)
     return lineerr;
 
-  if (strtol (line+2, NULL, 10) != DBDIRVERSION)
+  /* The !line catches the case of an empty DIR file.  We handle this
+     the same as a non-matching version.  */
+  if (!line || strtol (line+2, NULL, 10) != DBDIRVERSION)
     {
       if (!created && cleanup_on_mismatch)
         {