gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r6217 - GNUnet/src/applications/fs/ecrs


From: gnunet
Subject: [GNUnet-SVN] r6217 - GNUnet/src/applications/fs/ecrs
Date: Sat, 9 Feb 2008 21:51:09 -0700 (MST)

Author: grothoff
Date: 2008-02-09 21:51:08 -0700 (Sat, 09 Feb 2008)
New Revision: 6217

Modified:
   GNUnet/src/applications/fs/ecrs/downloadtest.c
Log:
faster

Modified: GNUnet/src/applications/fs/ecrs/downloadtest.c
===================================================================
--- GNUnet/src/applications/fs/ecrs/downloadtest.c      2008-02-10 02:45:20 UTC 
(rev 6216)
+++ GNUnet/src/applications/fs/ecrs/downloadtest.c      2008-02-10 04:51:08 UTC 
(rev 6217)
@@ -123,7 +123,15 @@
                  "Starting download of `%s'\n", tmp);
   GNUNET_free (tmp);
   tmpName = makeName (0);
-  ret = GNUNET_SYSERR;
+  ret = GNUNET_OK;
+  buf = GNUNET_malloc (size);
+  in = GNUNET_malloc (size);
+  memset (buf, size + size / 253, size);
+  for (i = 0; i < (int) (size - 42 - 2 * sizeof (GNUNET_HashCode));
+       i += sizeof (GNUNET_HashCode))
+    GNUNET_hash (&buf[i], 42,
+                (GNUNET_HashCode *) & buf[i +
+                                          sizeof (GNUNET_HashCode)]);
   for (j = SIZE - 16 * 1024; j >= 0; j -= 16 * 1024)
     {
       fprintf (stderr, ".");
@@ -141,23 +149,18 @@
                                                           NULL))
         {
           fd = GNUNET_disk_file_open (NULL, tmpName, O_RDONLY);
-          buf = GNUNET_malloc (size);
-          in = GNUNET_malloc (size);
-          memset (buf, size + size / 253, size);
-          for (i = 0; i < (int) (size - 42 - 2 * sizeof (GNUNET_HashCode));
-               i += sizeof (GNUNET_HashCode))
-            GNUNET_hash (&buf[i], 42,
-                         (GNUNET_HashCode *) & buf[i +
-                                                   sizeof (GNUNET_HashCode)]);
-          if (size != READ (fd, in, size))
-            ret = GNUNET_SYSERR;
-          else if (0 == memcmp (&buf[j], &in[j], 16 * 1024))
-            ret = GNUNET_OK;
-          GNUNET_free (buf);
-          GNUNET_free (in);
+         if ( (size != READ (fd, in, size)) ||
+              (0 != memcmp (&buf[j], &in[j], 16 * 1024)) )
+           {
+             ret = GNUNET_SYSERR;
+             CLOSE (fd);
+             break;
+           }
           CLOSE (fd);
         }
     }
+  GNUNET_free (buf);
+  GNUNET_free (in);
   UNLINK (tmpName);
   GNUNET_free (tmpName);
   return ret;





reply via email to

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