mldonkey-commits
[Top][All Lists]
Advanced

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

[Mldonkey-commits] mldonkey distrib/ChangeLog src/utils/lib/md5_c....


From: mldonkey-commits
Subject: [Mldonkey-commits] mldonkey distrib/ChangeLog src/utils/lib/md5_c....
Date: Tue, 05 Sep 2006 14:19:10 +0000

CVSROOT:        /sources/mldonkey
Module name:    mldonkey
Changes by:     spiralvoice <spiralvoice>       06/09/05 14:19:10

Modified files:
        distrib        : ChangeLog 
        src/utils/lib  : md5_c.c os_stubs.h 

Log message:
        patch #5368

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/mldonkey/distrib/ChangeLog?cvsroot=mldonkey&r1=1.994&r2=1.995
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/utils/lib/md5_c.c?cvsroot=mldonkey&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/mldonkey/src/utils/lib/os_stubs.h?cvsroot=mldonkey&r1=1.15&r2=1.16

Patches:
Index: distrib/ChangeLog
===================================================================
RCS file: /sources/mldonkey/mldonkey/distrib/ChangeLog,v
retrieving revision 1.994
retrieving revision 1.995
diff -u -b -r1.994 -r1.995
--- distrib/ChangeLog   5 Sep 2006 14:18:24 -0000       1.994
+++ distrib/ChangeLog   5 Sep 2006 14:19:10 -0000       1.995
@@ -15,6 +15,7 @@
 =========
 
 2006/09/05
+5368: Remove unused code from md5_c.c & os_stubs.h
 5371: EDK: Support for eMule comments (read-only)
 - new option html_mods_vd_comments to enable column in HTML, vd
 - comments are shown in javascript popups and vd #num

Index: src/utils/lib/md5_c.c
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/utils/lib/md5_c.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- src/utils/lib/md5_c.c       30 Nov 2005 23:46:25 -0000      1.5
+++ src/utils/lib/md5_c.c       5 Sep 2006 14:19:10 -0000       1.6
@@ -389,197 +389,3 @@
     for (i = 0; i < 16; ++i)
        digest[i] = (md5_byte_t)(pms->abcd[i >> 2] >> ((i & 3) << 3));
 }
-
-/**************************************************************************
-
-
-                      Ocaml stubs (copied from md4_c.c)
- 
-
-***************************************************************************/
-
-#include "md5.h"
-#include "md4.h"
-
-#include "caml/mlvalues.h"
-#include "caml/fail.h"
-#include "caml/alloc.h"
-
-/**************************************************************************
-
-                      Crypt function
-
-***************************************************************************/
-
-
-#include <string.h>
-#include <stdlib.h>
-
-#define MIN(x,y) ((y) > (x)) ? (x) : (y)
-#define MAX(x,y) ((y) > (x)) ? (y) : (x)
-
-/* Define our magic string to mark salt for MD5 "encryption"
-   replacement.  This is meant to be the same as for other MD5 based
-   encryption implementations.  */
-static const char md5_salt_prefix[] = "$1$";
-
-/* Table with characters for base64 transformation.  */
-static const char b64t[64] =
-"./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
-
-void yahoo_crypt(char *key, char *salt, char *buffer)
-{
-  int needed = 3 + strlen (salt) + 1 + 26 + 1;
-  int buflen;  
-  md5_byte_t alt_result[16];
-  md5_state_t ctx;
-  md5_state_t alt_ctx;
-  size_t salt_len;
-  size_t key_len;
-  size_t cnt;
-  char *cp;
-  
-  buflen = needed;
-
-       /* Find beginning of salt string.  The prefix should normally always
-          be present.  Just in case it is not.  */
-  if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0)
-               /* Skip salt prefix.  */
-    salt += sizeof (md5_salt_prefix) - 1;
-  
-  salt_len = MIN (strcspn (salt, "$"), 8);
-  key_len = strlen (key);
-
-       /* Prepare for the real work.  */
-  md5_init(&ctx);
-
-       /* Add the key string.  */
-  md5_append(&ctx, key, key_len);
-
-       /* Because the SALT argument need not always have the salt prefix we
-          add it separately.  */
-  md5_append(&ctx, md5_salt_prefix, sizeof (md5_salt_prefix) - 1);
-
-       /* The last part is the salt string.  This must be at most 8
-          characters and it ends at the first `$' character (for
-          compatibility which existing solutions).  */
-  md5_append(&ctx, salt, salt_len);
-
-       /* Compute alternate MD5 sum with input KEY, SALT, and KEY.  The
-          final result will be added to the first context.  */
-  md5_init(&alt_ctx);
-
-       /* Add key.  */
-  md5_append(&alt_ctx, key, key_len);
-
-       /* Add salt.  */
-  md5_append(&alt_ctx, salt, salt_len);
-
-       /* Add key again.  */
-  md5_append(&alt_ctx, key, key_len);
-
-       /* Now get result of this (16 bytes) and add it to the other
-          context.  */
-  md5_finish(&alt_ctx, alt_result);
-
-       /* Add for any character in the key one byte of the alternate sum.  */
-  for (cnt = key_len; cnt > 16; cnt -= 16)
-    md5_append(&ctx, alt_result, 16);
-  md5_append(&ctx, alt_result, cnt);
-
-       /* For the following code we need a NUL byte.  */
-  alt_result[0] = '\0';
-
-       /* The original implementation now does something weird: for every 1
-          bit in the key the first 0 is added to the buffer, for every 0
-          bit the first character of the key.  This does not seem to be
-          what was intended but we have to follow this to be compatible.  */
-  for (cnt = key_len; cnt > 0; cnt >>= 1)
-    md5_append(&ctx, (cnt & 1) != 0 ? alt_result : (md5_byte_t *)key, 1);
-
-       /* Create intermediate result.  */
-  md5_finish(&ctx, alt_result);
-
-       /* Now comes another weirdness.  In fear of password crackers here
-          comes a quite long loop which just processes the output of the
-          previous round again.  We cannot ignore this here.  */
-  for (cnt = 0; cnt < 1000; ++cnt) {
-               /* New context.  */
-    md5_init(&ctx);
-    
-    /* Add key or last result.  */
-    if ((cnt & 1) != 0)
-      md5_append(&ctx, key, key_len);
-    else
-      md5_append(&ctx, alt_result, 16);
-
-               /* Add salt for numbers not divisible by 3.  */
-    if (cnt % 3 != 0)
-      md5_append(&ctx, salt, salt_len);
-
-               /* Add key for numbers not divisible by 7.  */
-    if (cnt % 7 != 0)
-      md5_append(&ctx, key, key_len);
-
-               /* Add key or last result.  */
-    if ((cnt & 1) != 0)
-      md5_append(&ctx, alt_result, 16);
-    else
-      md5_append(&ctx, key, key_len);
-
-               /* Create intermediate result.  */
-    md5_finish(&ctx, alt_result);
-  }
-
-       /* Now we can construct the result string.  It consists of three
-          parts.  */
-  
-  strncpy(buffer, md5_salt_prefix, MAX (0, buflen));
-  cp = buffer + strlen(buffer);
-  buflen -= sizeof (md5_salt_prefix);
-  
-  strncpy(cp, salt, MIN ((size_t) buflen, salt_len));
-  cp = cp + strlen(cp);
-  buflen -= MIN ((size_t) buflen, salt_len);
-  
-  if (buflen > 0) {
-    *cp++ = '$';
-    --buflen;
-  }
-  
-  #define b64_from_24bit(B2, B1, B0, N) \
-       do { \
-               unsigned int w = ((B2) << 16) | ((B1) << 8) | (B0); \
-               int n = (N); \
-               while (n-- > 0 && buflen > 0) { \
-                       *cp++ = b64t[w & 0x3f]; \
-                       --buflen; \
-                       w >>= 6; \
-               }\
-       } while (0)
-    
-    b64_from_24bit (alt_result[0], alt_result[6], alt_result[12], 4);
-  b64_from_24bit (alt_result[1], alt_result[7], alt_result[13], 4);
-  b64_from_24bit (alt_result[2], alt_result[8], alt_result[14], 4);
-  b64_from_24bit (alt_result[3], alt_result[9], alt_result[15], 4);
-  b64_from_24bit (alt_result[4], alt_result[10], alt_result[5], 4);
-  b64_from_24bit (0, 0, alt_result[11], 2);
-  *cp = '\0';  /* Terminate the string.  */
-
-       /* Clear the buffer for the intermediate result so that people
-          attaching to processes or reading core dumps cannot get any
-          information.  We do it in this way to clear correct_words[]
-          inside the MD5 implementation as well.  */
-  md5_init(&ctx);
-  md5_finish(&ctx, alt_result);
-  memset (&ctx, '\0', sizeof (ctx));
-  memset (&alt_ctx, '\0', sizeof (alt_ctx));
-  
-}
-
-value ml_yahoo_crypt(value key_v, value salt_v, value buffer_v)
-{
-  yahoo_crypt(String_val(key_v), String_val(salt_v), String_val(buffer_v));
-
-  return Val_unit;
-}

Index: src/utils/lib/os_stubs.h
===================================================================
RCS file: /sources/mldonkey/mldonkey/src/utils/lib/os_stubs.h,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- src/utils/lib/os_stubs.h    20 Feb 2006 02:03:28 -0000      1.15
+++ src/utils/lib/os_stubs.h    5 Sep 2006 14:19:10 -0000       1.16
@@ -127,10 +127,6 @@
 extern void unix_error (int errcode, char * cmdname, value arg) Noreturn;
 extern void uerror (char * cmdname, value arg) Noreturn;
 
-static int seek_command_table[] = {
-  SEEK_SET, SEEK_CUR, SEEK_END
-};
-
 extern OFF_T os_lseek(OS_FD fd, OFF_T pos, int dir);
 extern void os_ftruncate(OS_FD fd, OFF_T len, int sparse);
 extern ssize_t os_read(OS_FD fd, char *buf, size_t len);




reply via email to

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