gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r31509 - gnunet/src/peerinfo


From: gnunet
Subject: [GNUnet-SVN] r31509 - gnunet/src/peerinfo
Date: Wed, 18 Dec 2013 10:56:57 +0100

Author: grothoff
Date: 2013-12-18 10:56:57 +0100 (Wed, 18 Dec 2013)
New Revision: 31509

Modified:
   gnunet/src/peerinfo/gnunet-service-peerinfo.c
Log:
-handle errors in address part

Modified: gnunet/src/peerinfo/gnunet-service-peerinfo.c
===================================================================
--- gnunet/src/peerinfo/gnunet-service-peerinfo.c       2013-12-18 09:36:21 UTC 
(rev 31508)
+++ gnunet/src/peerinfo/gnunet-service-peerinfo.c       2013-12-18 09:56:57 UTC 
(rev 31509)
@@ -386,6 +386,21 @@
     now = GNUNET_TIME_absolute_get ();
     hello_clean = GNUNET_HELLO_iterate_addresses (hello, GNUNET_YES,
                                                  &discard_expired, &now);
+    if (NULL == hello_clean)
+    {
+      GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+                  _("Failed to parse HELLO in file `%s': %s %u \n"),
+                  fn,
+                  "HELLO is invalid and has size of ",
+                  size_hello);
+      if ((GNUNET_YES == unlink_garbage) &&
+          (0 != UNLINK (fn)) &&
+          (ENOENT != errno) )
+        GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_WARNING,
+                                  "unlink",
+                                  fn);
+      return;
+    }
     left = 0;
     (void) GNUNET_HELLO_iterate_addresses (hello_clean, GNUNET_NO,
                                           &count_addresses, &left);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]