Changed MIME code to use SILC Rand API to create fragment ID.
authorPekka Riikonen <priikone@silcnet.org>
Mon, 3 Mar 2008 19:10:44 +0000 (21:10 +0200)
committerPekka Riikonen <priikone@silcnet.org>
Mon, 3 Mar 2008 19:10:44 +0000 (21:10 +0200)
lib/silcutil/silcmime.c

index 9ea1ef4f34eecb3bd4f9e2e9a90de1d32aba1545..b9ef38cd81d03a5b34926f962086b8312c5ac28a 100644 (file)
@@ -674,11 +674,9 @@ SilcDList silc_mime_encode_partial(SilcMime mime, int max_size)
   if (buf_len > max_size) {
     memset(id, 0, sizeof(id));
     memset(type, 0, sizeof(type));
-    gethostname(type, sizeof(type) - 1);
-    srand((time(NULL) + buf_len) ^ rand());
-    silc_snprintf(id, sizeof(id) - 1, "%X%X%X%s",
-            (unsigned int)rand(), (unsigned int)time(NULL),
-            (unsigned int)buf_len, type);
+    silc_snprintf(id, sizeof(id) - 1, "%X%x%X%x",
+                 (unsigned int)silc_rand(), (unsigned int)silc_time_usec(),
+                 (unsigned int)buf_len, (unsigned int)silc_rand());
 
     SILC_LOG_DEBUG(("Fragment ID %s", id));