You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(12) |
Jul
(47) |
Aug
(21) |
Sep
(5) |
Oct
(17) |
Nov
|
Dec
(8) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(4) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(9) |
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
|
2003 |
Jan
|
Feb
(6) |
Mar
(7) |
Apr
(8) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
|
Dec
|
2004 |
Jan
(8) |
Feb
(46) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2006 |
Jan
(27) |
Feb
(2) |
Mar
|
Apr
(64) |
May
|
Jun
|
Jul
(11) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
(2) |
From: Robert K. <may...@us...> - 2004-02-02 00:05:40
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31834/lib Modified Files: Makefile.am Log Message: Updated for cleaner support of later libtools/autoconf/automake in order to enable clean support for OS X. Index: Makefile.am =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/Makefile.am,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -r1.15 -r1.16 *** Makefile.am 31 Jan 2004 10:08:42 -0000 1.15 --- Makefile.am 2 Feb 2004 00:03:37 -0000 1.16 *************** *** 11,15 **** libbitcollider_la_SOURCES = main.c sha1.c tiger.c tigertree.c sboxes.c browser.c mp3.c id3.c plugin_man.c plugin_man.h dirsearch.c dir.h bitprint.c bitprint.h md5.c md5.h cache.c ed2k_md4.h ed2k_md4.c ftuuhash.h ftuuhash.c kztree.h kztree.c libbitcollider_la_LDFLAGS = -version-info 1:0:0 ! libbitcollider_la_LIBADD = $(LIBLTDL) $(BDB_LIBS) noinst_HEADERS = browser.h mp3.h id3.h --- 11,16 ---- libbitcollider_la_SOURCES = main.c sha1.c tiger.c tigertree.c sboxes.c browser.c mp3.c id3.c plugin_man.c plugin_man.h dirsearch.c dir.h bitprint.c bitprint.h md5.c md5.h cache.c ed2k_md4.h ed2k_md4.c ftuuhash.h ftuuhash.c kztree.h kztree.c libbitcollider_la_LDFLAGS = -version-info 1:0:0 ! libbitcollider_la_LIBADD = $(BDB_LIBS) ! #libbitcollider_la_LIBADD = $(LIBLTDL) $(BDB_LIBS) noinst_HEADERS = browser.h mp3.h id3.h |
From: Robert K. <may...@us...> - 2004-02-02 00:05:40
|
Update of /cvsroot/bitcollider/bitcollider In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31834 Modified Files: aclocal.m4 autogen.sh config.h.in configure.in Removed Files: acconfig.h Log Message: Updated for cleaner support of later libtools/autoconf/automake in order to enable clean support for OS X. Index: aclocal.m4 =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/aclocal.m4,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** aclocal.m4 8 Jul 2002 19:39:56 -0000 1.10 --- aclocal.m4 2 Feb 2004 00:03:36 -0000 1.11 *************** *** 1,46 **** ! dnl aclocal.m4 generated automatically by aclocal 1.4 ! dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. ! dnl This file is free software; the Free Software Foundation ! dnl gives unlimited permission to copy and/or distribute it, ! dnl with or without modifications, as long as this notice is preserved. ! ! dnl This program is distributed in the hope that it will be useful, ! dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without ! dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A [...7149 lines suppressed...] ! # ------------------------------------------------------------ ! # We used to try to get a real timestamp in stamp-h. But the fear is that ! # that will cause unnecessary cvs conflicts. ! AC_DEFUN([_AM_CONFIG_HEADER], ! [# Add the stamp file to the list of files AC keeps track of, ! # along with our hook. ! AC_CONFIG_HEADERS([$1], ! [# update the timestamp ! echo 'timestamp for $1' >"_AM_STAMP([$1])" ! $2], ! [$3]) ! ])# _AM_CONFIG_HEADER ! ! ! # AM_CONFIG_HEADER(HEADER[:SOURCES]..., COMMANDS, INIT-COMMANDS) ! # -------------------------------------------------------------- ! AC_DEFUN([AM_CONFIG_HEADER], ! [AC_FOREACH([_AM_File], [$1], [_AM_CONFIG_HEADER(_AM_File, [$2], [$3])]) ! ])# AM_CONFIG_HEADER Index: autogen.sh =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/autogen.sh,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** autogen.sh 9 Jul 2001 21:19:52 -0000 1.3 --- autogen.sh 2 Feb 2004 00:03:37 -0000 1.4 *************** *** 10,13 **** --- 10,19 ---- cd "$srcdir" DIE=0 + LIBTOOLIZE=libtoolize + + # Check to see if we need to use the Mac OS X libtool version + (glibtoolize --version) < /dev/null > /dev/null 2>&1 && { + LIBTOOLIZE=glibtoolize + } (autoconf --version) < /dev/null > /dev/null 2>&1 || { *************** *** 19,22 **** --- 25,36 ---- } + (automake --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have automake installed to compile $package." + echo "Download the appropriate package for your distribution," + echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/automake" + DIE=1 + } + if test "$DIE" -eq 1; then exit 1 *************** *** 32,37 **** echo " autoheader" autoheader ! echo " libtoolize --automake --ltdl" ! libtoolize --automake --ltdl echo " automake --add-missing" automake --add-missing --- 46,51 ---- echo " autoheader" autoheader ! echo " $LIBTOOLIZE --automake --ltdl" ! $LIBTOOLIZE --automake --ltdl echo " automake --add-missing" automake --add-missing Index: config.h.in =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/config.h.in,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** config.h.in 8 Jul 2002 19:39:56 -0000 1.10 --- config.h.in 2 Feb 2004 00:03:37 -0000 1.11 *************** *** 1,19 **** ! /* config.h.in. Generated automatically from configure.in by autoheader. */ ! /* Define if your processor stores words with the most significant ! byte first (like Motorola and SPARC, unlike Intel and VAX). */ ! #undef WORDS_BIGENDIAN ! #undef USE_BDB ! #undef USE_VORBIS ! #undef PREFIX ! /* The number of bytes in a long. */ ! #undef SIZEOF_LONG /* Name of package */ #undef PACKAGE /* Version number of package */ #undef VERSION --- 1,68 ---- ! /* config.h.in. Generated from configure.in by autoheader. */ ! /* Define to 1 if you have the <dlfcn.h> header file. */ ! #undef HAVE_DLFCN_H ! /* Define to 1 if you have the <inttypes.h> header file. */ ! #undef HAVE_INTTYPES_H ! /* Define to 1 if you have the <memory.h> header file. */ ! #undef HAVE_MEMORY_H ! ! /* Define to 1 if you have the <stdint.h> header file. */ ! #undef HAVE_STDINT_H ! ! /* Define to 1 if you have the <stdlib.h> header file. */ ! #undef HAVE_STDLIB_H ! ! /* Define to 1 if you have the <strings.h> header file. */ ! #undef HAVE_STRINGS_H ! ! /* Define to 1 if you have the <string.h> header file. */ ! #undef HAVE_STRING_H ! ! /* Define to 1 if you have the <sys/stat.h> header file. */ ! #undef HAVE_SYS_STAT_H ! ! /* Define to 1 if you have the <sys/types.h> header file. */ ! #undef HAVE_SYS_TYPES_H ! ! /* Define to 1 if you have the <unistd.h> header file. */ ! #undef HAVE_UNISTD_H /* Name of package */ #undef PACKAGE + /* Define to the address where bug reports for this package should be sent. */ + #undef PACKAGE_BUGREPORT + + /* Define to the full name of this package. */ + #undef PACKAGE_NAME + + /* Define to the full name and version of this package. */ + #undef PACKAGE_STRING + + /* Define to the one symbol short name of this package. */ + #undef PACKAGE_TARNAME + + /* Define to the version of this package. */ + #undef PACKAGE_VERSION + + /* "PREFIX" */ + #undef PREFIX + + /* The size of a `long', as computed by sizeof. */ + #undef SIZEOF_LONG + + /* Define to 1 if you have the ANSI C header files. */ + #undef STDC_HEADERS + + /* "ogg/vorbis support" */ + #undef USE_VORBIS + /* Version number of package */ #undef VERSION + /* Define to 1 if your processor stores words with the most significant byte + first (like Motorola and SPARC, unlike Intel and VAX). */ + #undef WORDS_BIGENDIAN Index: configure.in =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/configure.in,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -r1.14 -r1.15 *** configure.in 16 Sep 2002 20:45:32 -0000 1.14 --- configure.in 2 Feb 2004 00:03:37 -0000 1.15 *************** *** 7,11 **** VERSION="0.4.0" AM_INIT_AUTOMAKE(bitcollider, "$VERSION") - dnl AC_DEFINE_UNQUOTED(VERSION, "$VERSION") CFLAGS="-Wall -g -O3" --- 7,10 ---- *************** *** 32,36 **** dnl AC_CHECK_LIB(db, db_create, have_db="yes", have_db="no") dnl if test "$have_db" = "yes"; then ! dnl AC_DEFINE(USE_BDB) dnl BDB_LIBS="-ldb" dnl AC_SUBST(BDB_LIBS) --- 31,35 ---- dnl AC_CHECK_LIB(db, db_create, have_db="yes", have_db="no") dnl if test "$have_db" = "yes"; then ! dnl AC_DEFINE(USE_BDB, 1, "[Berkeley DB Support]") dnl BDB_LIBS="-ldb" dnl AC_SUBST(BDB_LIBS) *************** *** 47,51 **** if test "$have_ogg" = "yes"; then if test "$have_vorbis" = "yes"; then ! AC_DEFINE(USE_VORBIS) VORBIS_LIBS="-lvorbisfile -lvorbis -logg" VORBIS_SUB="vorbis" --- 46,50 ---- if test "$have_ogg" = "yes"; then if test "$have_vorbis" = "yes"; then ! AC_DEFINE(USE_VORBIS, 1, "[ogg/vorbis support]") VORBIS_LIBS="-lvorbisfile -lvorbis -logg" VORBIS_SUB="vorbis" *************** *** 61,66 **** AC_SUBST(CFLAGS) ! AC_DEFINE_UNQUOTED(PREFIX, "${prefix}") AM_CONFIG_HEADER(config.h) ! AC_CONFIG_SUBDIRS(libltdl) AC_OUTPUT(Makefile lib/Makefile src/Makefile vorbis/Makefile wav/Makefile image/Makefile video/Makefile, echo timestamp > stamp-h) --- 60,65 ---- AC_SUBST(CFLAGS) ! AC_DEFINE_UNQUOTED(PREFIX, "${prefix}", "PREFIX") AM_CONFIG_HEADER(config.h) ! dnl AC_CONFIG_SUBDIRS(libltdl) AC_OUTPUT(Makefile lib/Makefile src/Makefile vorbis/Makefile wav/Makefile image/Makefile video/Makefile, echo timestamp > stamp-h) --- acconfig.h DELETED --- |
From: Gordon M. <go...@us...> - 2004-02-01 06:21:20
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25066/lib Modified Files: sboxes.c tiger.c Log Message: * tiger.c, sboxes.c add 'ULL' qualifier to long constants to avoid flood of warnings Index: sboxes.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/sboxes.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** sboxes.c 28 Feb 2001 23:29:57 -0000 1.1 --- sboxes.c 1 Feb 2004 06:19:31 -0000 1.2 *************** *** 11,524 **** #include "tiger.h" word64 table[4*256] = { ! 0x02AAB17CF7E90C5E /* 0 */, 0xAC424B03E243A8EC /* 1 */, ! 0x72CD5BE30DD5FCD3 /* 2 */, 0x6D019B93F6F97F3A /* 3 */, ! 0xCD9978FFD21F9193 /* 4 */, 0x7573A1C9708029E2 /* 5 */, ! 0xB164326B922A83C3 /* 6 */, 0x46883EEE04915870 /* 7 */, ! 0xEAACE3057103ECE6 /* 8 */, 0xC54169B808A3535C /* 9 */, ! 0x4CE754918DDEC47C /* 10 */, 0x0AA2F4DFDC0DF40C /* 11 */, ! 0x10B76F18A74DBEFA /* 12 */, 0xC6CCB6235AD1AB6A /* 13 */, ! 0x13726121572FE2FF /* 14 */, 0x1A488C6F199D921E /* 15 */, [...999 lines suppressed...] ! 0x03F38C96BA582C52ULL /* 984 */, 0xCAD1BDBD7FD85DB2ULL /* 985 */, ! 0xBBB442C16082AE83ULL /* 986 */, 0xB95FE86BA5DA9AB0ULL /* 987 */, ! 0xB22E04673771A93FULL /* 988 */, 0x845358C9493152D8ULL /* 989 */, ! 0xBE2A488697B4541EULL /* 990 */, 0x95A2DC2DD38E6966ULL /* 991 */, ! 0xC02C11AC923C852BULL /* 992 */, 0x2388B1990DF2A87BULL /* 993 */, ! 0x7C8008FA1B4F37BEULL /* 994 */, 0x1F70D0C84D54E503ULL /* 995 */, ! 0x5490ADEC7ECE57D4ULL /* 996 */, 0x002B3C27D9063A3AULL /* 997 */, ! 0x7EAEA3848030A2BFULL /* 998 */, 0xC602326DED2003C0ULL /* 999 */, ! 0x83A7287D69A94086ULL /* 1000 */, 0xC57A5FCB30F57A8AULL /* 1001 */, ! 0xB56844E479EBE779ULL /* 1002 */, 0xA373B40F05DCBCE9ULL /* 1003 */, ! 0xD71A786E88570EE2ULL /* 1004 */, 0x879CBACDBDE8F6A0ULL /* 1005 */, ! 0x976AD1BCC164A32FULL /* 1006 */, 0xAB21E25E9666D78BULL /* 1007 */, ! 0x901063AAE5E5C33CULL /* 1008 */, 0x9818B34448698D90ULL /* 1009 */, ! 0xE36487AE3E1E8ABBULL /* 1010 */, 0xAFBDF931893BDCB4ULL /* 1011 */, ! 0x6345A0DC5FBBD519ULL /* 1012 */, 0x8628FE269B9465CAULL /* 1013 */, ! 0x1E5D01603F9C51ECULL /* 1014 */, 0x4DE44006A15049B7ULL /* 1015 */, ! 0xBF6C70E5F776CBB1ULL /* 1016 */, 0x411218F2EF552BEDULL /* 1017 */, ! 0xCB0C0708705A36A3ULL /* 1018 */, 0xE74D14754F986044ULL /* 1019 */, ! 0xCD56D9430EA8280EULL /* 1020 */, 0xC12591D7535F5065ULL /* 1021 */, ! 0xC83223F1720AEF96ULL /* 1022 */, 0xC3A0396F7363A51FULL /* 1023 */}; Index: tiger.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/tiger.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** tiger.c 10 Sep 2001 21:04:40 -0000 1.3 --- tiger.c 1 Feb 2004 06:19:31 -0000 1.4 *************** *** 87,91 **** #define key_schedule \ ! x0 -= x7 ^ 0xA5A5A5A5A5A5A5A5; \ x1 ^= x0; \ x2 += x1; \ --- 87,91 ---- #define key_schedule \ ! x0 -= x7 ^ 0xA5A5A5A5A5A5A5A5ULL; \ x1 ^= x0; \ x2 += x1; \ *************** *** 102,106 **** x5 ^= x4; \ x6 += x5; \ ! x7 -= x6 ^ 0x0123456789ABCDEF; #define feedforward \ --- 102,106 ---- x5 ^= x4; \ x6 += x5; \ ! x7 -= x6 ^ 0x0123456789ABCDEFULL; #define feedforward \ *************** *** 175,181 **** unsigned char temp[64]; ! res[0]=0x0123456789ABCDEF; ! res[1]=0xFEDCBA9876543210; ! res[2]=0xF096A5B4C3B2E187; for(i=length; i>=64; i-=64) --- 175,181 ---- unsigned char temp[64]; ! res[0]=0x0123456789ABCDEFULL; ! res[1]=0xFEDCBA9876543210ULL; ! res[2]=0xF096A5B4C3B2E187ULL; for(i=length; i>=64; i-=64) |
From: Gordon M. <go...@us...> - 2004-02-01 06:20:37
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24425/lib Modified Files: main.c Log Message: * main.c add (redundant) init of crc32 to avoid warning Index: main.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/main.c,v retrieving revision 1.47 retrieving revision 1.48 diff -C2 -r1.47 -r1.48 *** main.c 18 Jan 2004 11:02:32 -0000 1.47 --- main.c 1 Feb 2004 06:18:47 -0000 1.48 *************** *** 757,761 **** { BP_CONTEXT bcontext; ! unsigned int crc32; struct MD5Context md5context; ED2K_CTX ed2kmd4context; --- 757,761 ---- { BP_CONTEXT bcontext; ! unsigned int crc32 = 0xffffffff; struct MD5Context md5context; ED2K_CTX ed2kmd4context; |
From: Gordon M. <go...@us...> - 2004-02-01 06:19:23
|
Update of /cvsroot/bitcollider/bitcollider/include In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23411/include Modified Files: kztree.h Log Message: * kztree.h add end-of-file return Index: kztree.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/include/kztree.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** kztree.h 18 Jan 2004 10:53:24 -0000 1.1 --- kztree.h 1 Feb 2004 06:17:34 -0000 1.2 *************** *** 40,42 **** void kztree_copy(KZTREE_CONTEXT *dest, KZTREE_CONTEXT *src); static void kztree_block(KZTREE_CONTEXT *ctx); ! static void kztree_compose(KZTREE_CONTEXT *ctx); \ No newline at end of file --- 40,42 ---- void kztree_copy(KZTREE_CONTEXT *dest, KZTREE_CONTEXT *src); static void kztree_block(KZTREE_CONTEXT *ctx); ! static void kztree_compose(KZTREE_CONTEXT *ctx); |
From: Gordon M. <go...@us...> - 2004-01-31 10:10:23
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9061/lib Modified Files: Makefile.am Log Message: * Makefile.am Added kztree.h, kztree.c Index: Makefile.am =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/Makefile.am,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -r1.14 -r1.15 *** Makefile.am 6 Jul 2002 09:30:15 -0000 1.14 --- Makefile.am 31 Jan 2004 10:08:42 -0000 1.15 *************** *** 1,15 **** ! # (PD) 2001 The Bitzi Corporation ! # Please see file COPYING or http://bitzi.com/publicdomain ! # for more info. ! # ! # $Id$ ! # ! AUTOMAKE_OPTIONS = foreign ! ! INCLUDES = $(INCLTDL) -I$(top_srcdir)/.. -I$(top_srcdir)/ver -I$(top_srcdir)/include ! lib_LTLIBRARIES = libbitcollider.la ! libbitcollider_la_SOURCES = main.c sha1.c tiger.c tigertree.c sboxes.c browser.c mp3.c id3.c plugin_man.c plugin_man.h dirsearch.c dir.h bitprint.c bitprint.h md5.c md5.h cache.c ed2k_md4.h ed2k_md4.c ftuuhash.h ftuuhash.c ! libbitcollider_la_LDFLAGS = -version-info 1:0:0 ! libbitcollider_la_LIBADD = $(LIBLTDL) $(BDB_LIBS) ! ! noinst_HEADERS = browser.h mp3.h id3.h --- 1,15 ---- ! # (PD) 2001 The Bitzi Corporation ! # Please see file COPYING or http://bitzi.com/publicdomain ! # for more info. ! # ! # $Id$ ! # ! AUTOMAKE_OPTIONS = foreign ! ! INCLUDES = $(INCLTDL) -I$(top_srcdir)/.. -I$(top_srcdir)/ver -I$(top_srcdir)/include ! lib_LTLIBRARIES = libbitcollider.la ! libbitcollider_la_SOURCES = main.c sha1.c tiger.c tigertree.c sboxes.c browser.c mp3.c id3.c plugin_man.c plugin_man.h dirsearch.c dir.h bitprint.c bitprint.h md5.c md5.h cache.c ed2k_md4.h ed2k_md4.c ftuuhash.h ftuuhash.c kztree.h kztree.c ! libbitcollider_la_LDFLAGS = -version-info 1:0:0 ! libbitcollider_la_LIBADD = $(LIBLTDL) $(BDB_LIBS) ! ! noinst_HEADERS = browser.h mp3.h id3.h |
From: Gordon M. <go...@us...> - 2004-01-18 20:19:17
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1:/tmp/cvs-serv15794/lib Modified Files: kztree.c Log Message: * kztree.c Better comment. Index: kztree.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/kztree.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** kztree.c 18 Jan 2004 10:59:54 -0000 1.1 --- kztree.c 18 Jan 2004 20:19:14 -0000 1.2 *************** *** 12,18 **** * Networks, 2004-01-16. * ! * Adapted to allow calculation in a stream fashion -- which ! * helps calculate several hashes with only one pass through ! * an input. * * NOTE: A tree hash value cannot be calculated using a --- 12,53 ---- * Networks, 2004-01-16. * ! * A compact description of the process given by that code: ! * ! * Break the file into N 32KB segments. If N>0, MD5 each segment ! * separately yielding N 16-byte hash values. ! * ! * While N>2: Concatenate each neighbor pair of hash values ! * together, using the empty array in lieu of a partner if ! * necessary for the last value. MD5 each of these segments ! * separately, giving (N+1)/2 16-byte hash values. Set N to ! * this new total. ! * ! * N is now 0, 1, or 2. Concatenate remaining hash values together ! * into a final segment. MD5 this segment to give the final value. ! * ! * Notable corner cases implied by the above: ! * ! * For the zero-length input, the kztree value is the same as ! * the MD5 value. ! * ! * For input with length up to 32,768, the kztree value is the ! * MD5 of the MD5 of the input. ! * ! * Notable differences from THEX/TigerTree: ! * ! * (1) Leaf blocks are 32KB in kzhash rather than 1KB. ! * (2) In kzhash, internal values with no sibling are rehashed, ! * rather than promoted to the parent position unchanged as ! * in THEX. ! * (3) Kzhash does not use a prefix byte to differentiate ! * between leaf and inner-node hashes. ! * (3) In kzhash, a file <= a single leaf block is hashed, then ! * hashed again, preventing a trivial collision problem. ! * (THEX/TigerTree uses the leaf/node prefix bytes to ! * prevent the collision.) ! * ! * The approach used here has been adapted to allow calculation in a ! * stream fashion -- which helps eliminate the need for multiple ! * passes through a file when calculating several hashes at once. * * NOTE: A tree hash value cannot be calculated using a |
From: Gordon M. <go...@us...> - 2004-01-18 18:13:20
|
Update of /cvsroot/bitcollider/bitcollider/win32 In directory sc8-pr-cvs1:/tmp/cvs-serv21710/win32 Modified Files: bc_dll.dsp Log Message: * bc_dll.dsp Added kzhash.c to project. Index: bc_dll.dsp =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/win32/bc_dll.dsp,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -r1.16 -r1.17 *** bc_dll.dsp 8 Jul 2002 20:18:07 -0000 1.16 --- bc_dll.dsp 18 Jan 2004 18:13:17 -0000 1.17 *************** *** 134,137 **** --- 134,141 ---- # Begin Source File + SOURCE=..\lib\kztree.c + # End Source File + # Begin Source File + SOURCE=..\lib\list.c # End Source File |
From: Gordon M. <go...@us...> - 2004-01-18 11:02:35
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1:/tmp/cvs-serv1729/lib Modified Files: main.c Log Message: * main.c Calculate Kazaa tree value alongside other hashes. Replace uuhash with kzhash. Index: main.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/main.c,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -r1.46 -r1.47 *** main.c 3 Jan 2004 21:30:36 -0000 1.46 --- main.c 18 Jan 2004 11:02:32 -0000 1.47 *************** *** 18,21 **** --- 18,22 ---- #include "ed2k_md4.h" #include "ftuuhash.h" + #include "kztree.h" #include "mp3.h" #include "id3.h" *************** *** 84,88 **** char *md5sum, char *ed2kmd4sum, ! char *ftuusum, unsigned char *firstHex, mp3_info *mp3Info, --- 85,89 ---- char *md5sum, char *ed2kmd4sum, ! char *kzhashhex, unsigned char *firstHex, mp3_info *mp3Info, *************** *** 242,246 **** char md5[64]; char ed2kmd4[64]; ! char ftuu[64]; const char *baseFileName; mp3_info *mp3Info = NULL; --- 243,247 ---- char md5[64]; char ed2kmd4[64]; ! char kzhashhex[128]; const char *baseFileName; mp3_info *mp3Info = NULL; *************** *** 350,354 **** mp3Info = malloc(sizeof(mp3_info)); ! if (!get_bitprint_data(submission, fileName, bitprint, crc32, md5, ed2kmd4, ftuu, firstNHex, mp3Info, methods, &attrList)) { --- 351,355 ---- mp3Info = malloc(sizeof(mp3_info)); ! if (!get_bitprint_data(submission, fileName, bitprint, crc32, md5, ed2kmd4, kzhashhex, firstNHex, mp3Info, methods, &attrList)) { *************** *** 381,385 **** add_attribute(submission, "tag.filename.filename", baseFileName); ! if (submission->bc->calculateCRC32) { add_attribute(submission, "tag.crc32.crc32", crc32); --- 382,386 ---- add_attribute(submission, "tag.filename.filename", baseFileName); ! if (submission->bc->calculateCRC32) { add_attribute(submission, "tag.crc32.crc32", crc32); *************** *** 391,395 **** add_attribute(submission, "tag.ed2k.ed2khash", ed2kmd4); ! add_attribute(submission, "tag.uuhash.uuhash", ftuu); /* Check to make sure that we carried out the mp3 check, and --- 392,396 ---- add_attribute(submission, "tag.ed2k.ed2khash", ed2kmd4); ! add_attribute(submission, "tag.kzhash.kzhash", kzhashhex); /* Check to make sure that we carried out the mp3 check, and *************** *** 715,719 **** char *md5sum, char *ed2kmd4, ! char *ftuu, unsigned char *firstHex, mp3_info *mp3Info, --- 716,720 ---- char *md5sum, char *ed2kmd4, ! char *kzhashhex, unsigned char *firstHex, mp3_info *mp3Info, *************** *** 735,739 **** fseek(source, 0, SEEK_SET); ! ret = calculate_hashes(submission, source, bitprint, crc32hex, md5sum, ed2kmd4, ftuu, mp3Info, methods, attrList); if (ret) --- 736,740 ---- fseek(source, 0, SEEK_SET); ! ret = calculate_hashes(submission, source, bitprint, crc32hex, md5sum, ed2kmd4, kzhashhex, mp3Info, methods, attrList); if (ret) *************** *** 750,754 **** char *md5sum, char *ed2kmd4sum, ! char *ftuusum, mp3_info *mcontext, PluginMethods *methods, --- 751,755 ---- char *md5sum, char *ed2kmd4sum, ! char *kzhashsum, mp3_info *mcontext, PluginMethods *methods, *************** *** 760,764 **** ED2K_CTX ed2kmd4context; FTUU_CTX ftuucontext; ! unsigned char *buffer, bitprintRaw[BITPRINT_RAW_LEN], md5Digest[16], ed2kDigest[16], ftuuDigest[20]; int bytes; b_bool ret = true; --- 761,766 ---- ED2K_CTX ed2kmd4context; FTUU_CTX ftuucontext; ! KZTREE_CONTEXT kztreecontext; ! unsigned char *buffer, bitprintRaw[BITPRINT_RAW_LEN], md5Digest[16], ed2kDigest[16], kzhash[36]; int bytes; b_bool ret = true; *************** *** 775,784 **** if (methods && methods->mem_analyze_init) context = methods->mem_analyze_init(); ! if (submission->bc->calculateCRC32) ! crc32 = 0xffffffff; //init if (submission->bc->calculateMD5) MD5Init(&md5context); ED2KInit(&ed2kmd4context); FTUUInit(&ftuucontext); buffer = (unsigned char*)malloc(BUFFER_LEN); --- 777,787 ---- if (methods && methods->mem_analyze_init) context = methods->mem_analyze_init(); ! if (submission->bc->calculateCRC32) ! crc32 = 0xffffffff; //init if (submission->bc->calculateMD5) MD5Init(&md5context); ED2KInit(&ed2kmd4context); FTUUInit(&ftuucontext); + kztree_init(&kztreecontext); buffer = (unsigned char*)malloc(BUFFER_LEN); *************** *** 818,822 **** ED2KUpdate(&ed2kmd4context, buffer, bytes); FTUUUpdate(&ftuucontext, buffer, bytes); ! if (submission->bc->progressCallback && !submission->bc->preview) --- 821,825 ---- ED2KUpdate(&ed2kmd4context, buffer, bytes); FTUUUpdate(&ftuucontext, buffer, bytes); ! kztree_update(&kztreecontext, buffer, bytes); if (submission->bc->progressCallback && !submission->bc->preview) *************** *** 854,862 **** { MD5Final(md5Digest, &md5context); ! bitziEncodeBase32(md5Digest, 16, md5sum); } ED2KFinal(ed2kDigest, &ed2kmd4context); ! FTUUFinal(ftuuDigest, &ftuucontext); sprintf(ed2kmd4sum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", --- 857,871 ---- { MD5Final(md5Digest, &md5context); ! //bitziEncodeBase32(md5Digest, 16, md5sum); ! sprintf(md5sum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", ! md5Digest[0],md5Digest[1],md5Digest[2],md5Digest[3], ! md5Digest[4],md5Digest[5],md5Digest[6],md5Digest[7], ! md5Digest[8],md5Digest[9],md5Digest[10],md5Digest[11], ! md5Digest[12],md5Digest[13],md5Digest[14],md5Digest[15]); } ED2KFinal(ed2kDigest, &ed2kmd4context); ! FTUUFinal(kzhash, &ftuucontext); ! kztree_digest(&kztreecontext,kzhash+20); sprintf(ed2kmd4sum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", *************** *** 865,870 **** ed2kDigest[8],ed2kDigest[9],ed2kDigest[10],ed2kDigest[11], ed2kDigest[12],ed2kDigest[13],ed2kDigest[14],ed2kDigest[15]); ! ! bitziEncodeBase64(ftuuDigest,20,ftuusum); return ret; --- 874,889 ---- ed2kDigest[8],ed2kDigest[9],ed2kDigest[10],ed2kDigest[11], ed2kDigest[12],ed2kDigest[13],ed2kDigest[14],ed2kDigest[15]); ! ! //bitziEncodeBase64(ftuuDigest,20,ftuusum); ! sprintf(kzhashsum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", ! kzhash[0],kzhash[1],kzhash[2],kzhash[3], ! kzhash[4],kzhash[5],kzhash[6],kzhash[7], ! kzhash[8],kzhash[9],kzhash[10],kzhash[11], ! kzhash[12],kzhash[13],kzhash[14],kzhash[15], ! kzhash[16],kzhash[17],kzhash[18],kzhash[19], ! kzhash[20],kzhash[21],kzhash[22],kzhash[23], ! kzhash[24],kzhash[25],kzhash[26],kzhash[27], ! kzhash[28],kzhash[29],kzhash[30],kzhash[31], ! kzhash[32],kzhash[33],kzhash[34],kzhash[35]); return ret; |
From: Gordon M. <go...@us...> - 2004-01-18 10:59:58
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1:/tmp/cvs-serv1165/lib Modified Files: md5.c md5.h Added Files: kztree.c Log Message: * kztree.c Kazaa tree hash support. Definition from Sharman donated code. Modelled on tigertree.c. * md5.c, md5.h Add convenience MD5() procedure. --- NEW FILE: kztree.c --- /* (PD) 2001 The Bitzi Corporation * Please see file COPYING or http://bitzi.com/publicdomain * for more info. * * kztree.c - Calculation of the 'KazaaTreeHash' value, which, * when appended to the earlier "FTHash"/"UUHash" (sig2dat) * value, gives the 36-byte 'kzhash' value (first used in * Kazaa 2.6). * * 'kzhash' definition comes from example code provided and * donated to the public domain by Phil Morle of Sharman * Networks, 2004-01-16. * * Adapted to allow calculation in a stream fashion -- which * helps calculate several hashes with only one pass through * an input. * * NOTE: A tree hash value cannot be calculated using a * constant amount of memory for any input size; rather, * the memory required grows with the size of input. * (Roughly, one more interim value must be remembered for * each doubling of the input size.) The default KZTREE_CONTEXT * struct size reserves enough memory for input up to 2^128 * bytes in length, which should be plenty. * * * $Id: kztree.c,v 1.1 2004/01/18 10:59:54 gojomo Exp $ * */ #include <string.h> #include "kztree.h" #include "md5.h" /* * Initialize the kztree context */ void kztree_init(KZTREE_CONTEXT *ctx) { ctx->count = 0; ctx->block = ctx->leaf; // working area for blocks ctx->index = 0; // partial block pointer/block length ctx->top = ctx->nodes; } /* * Feed given bytes into the working buffer. Whenever the buffer * has reached KZTREE_BLOCKSIZE, call kztree_block() */ void kztree_update(KZTREE_CONTEXT *ctx, unsigned char *buffer, unsigned int len) { if (ctx->index) { /* Try to fill partial block */ unsigned left = KZTREE_BLOCKSIZE - ctx->index; if (len < left) { memmove(ctx->block + ctx->index, buffer, len); ctx->index += len; return; /* Finished */ } else { memmove(ctx->block + ctx->index, buffer, left); ctx->index = KZTREE_BLOCKSIZE; kztree_block(ctx); buffer += left; len -= left; } } while (len >= KZTREE_BLOCKSIZE) { memmove(ctx->block, buffer, KZTREE_BLOCKSIZE); ctx->index = KZTREE_BLOCKSIZE; kztree_block(ctx); buffer += KZTREE_BLOCKSIZE; len -= KZTREE_BLOCKSIZE; } if ((ctx->index = len)) /* This assignment is intended */ { /* Buffer leftovers */ memmove(ctx->block, buffer, len); } } /* * A full KZTREE_BLOCKSIZE bytes have become available; * hash those, and possibly composite together siblings. */ static void kztree_block(KZTREE_CONTEXT *ctx) { MD5(ctx->leaf,ctx->index,ctx->top); ctx->top += MD5SIZE; ++ctx->count; ctx->gen = ctx->count; while(ctx->gen == ((ctx->gen >> 1)<<1)) { // while evenly divisible by 2... kztree_compose(ctx); ctx->gen = ctx->gen >> 1; } } /* * Compose the top two node values, siblings in the tree * structure, into a single parent node value. */ static void kztree_compose(KZTREE_CONTEXT *ctx) { unsigned char *node; if(ctx->gen != ((ctx->gen >> 1)<<1)) { // compose of generation with odd population // MD5 the only child in place MD5(ctx->top - MD5SIZE,MD5SIZE,ctx->top - MD5SIZE); return; } node = ctx->top - KZTREE_NODESIZE; MD5(node,(KZTREE_NODESIZE),node); // combine two nodes ctx->top -= MD5SIZE; // update top ptr } /* * * no need to call this directly; kztree_digest calls it for you */ static void kztree_final(KZTREE_CONTEXT *ctx) { // do last partial block, if any if(ctx->index > 0) kztree_block(ctx); } /* * Finish the kztree calc and return the final digest value */ void kztree_digest(KZTREE_CONTEXT *ctx, unsigned char *digest) { kztree_final(ctx); while( ctx->gen > 1) { kztree_compose(ctx); ctx->gen = (ctx->gen + 1) / 2; } if( ctx->count == 1) { // for the single block case, hash again kztree_compose(ctx); } if( ctx->count == 0) { // for the zero-length input case, hash nothing. kztree_block(ctx); } memmove(digest,ctx->nodes,MD5SIZE); } /* * Copy the context * * this code untested; use at own risk */ void kztree_copy(KZTREE_CONTEXT *dest, KZTREE_CONTEXT *src) { int i; dest->count = src->count; for(i=0; i < KZTREE_BLOCKSIZE; i++) dest->block[i] = src->block[i]; dest->index = src->index; for(i=0; i < KZTREE_STACKSIZE; i++) dest->nodes[i] = src->nodes[i]; dest->top = src->top; } Index: md5.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/md5.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** md5.c 13 Aug 2001 18:38:15 -0000 1.2 --- md5.c 18 Jan 2004 10:59:54 -0000 1.3 *************** *** 19,22 **** --- 19,26 ---- * - Ian Jackson <ija...@ny...>. * Still in the public domain. + * + * Added convenience MD5(buffer,length,digest) function. + * - Gordon Mohr <go...@bi...> + * Still in the public domain. */ *************** *** 49,52 **** --- 53,69 ---- /* + * Convenience function for when what you need to MD5 is + * in a single contiguous buffer. + */ + void + MD5(md5byte *buffer, unsigned int length, md5byte *digest) + { + struct MD5Context md5ctx; + MD5Init(&md5ctx); + MD5Update(&md5ctx,buffer,length); + MD5Final(digest,&md5ctx); + } + + /* * Start MD5 accumulation. Set bit count to 0 and buffer to mysterious * initialization constants. Index: md5.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/md5.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** md5.h 10 Aug 2001 22:29:31 -0000 1.1 --- md5.h 18 Jan 2004 10:59:54 -0000 1.2 *************** *** 33,36 **** --- 33,37 ---- }; + void MD5(md5byte *buffer, unsigned int length, md5byte *digest); void MD5Init(struct MD5Context *context); void MD5Update(struct MD5Context *context, md5byte const *buf, unsigned len); |
From: Gordon M. <go...@us...> - 2004-01-18 10:55:05
|
Update of /cvsroot/bitcollider/bitcollider/src In directory sc8-pr-cvs1:/tmp/cvs-serv593/src Modified Files: bitcollider.c Log Message: * bitcollider.c Small fix to command-line help text. Index: bitcollider.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/src/bitcollider.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** bitcollider.c 28 Oct 2003 02:28:48 -0000 1.21 --- bitcollider.c 18 Jan 2004 10:55:02 -0000 1.22 *************** *** 34,38 **** printf(" -p - print the submission info, without submitting\n"); printf(" -n - show submission in browser, without submitting\n"); ! printf(" -u - send submission to alternate URL\n"); printf(" -e [ext] - treat file as if it had a given extension\n"); printf(" -d - debug print during plugin loading\n"); --- 34,38 ---- printf(" -p - print the submission info, without submitting\n"); printf(" -n - show submission in browser, without submitting\n"); ! printf(" -u [url] - send submission to alternate URL\n"); printf(" -e [ext] - treat file as if it had a given extension\n"); printf(" -d - debug print during plugin loading\n"); |
From: Gordon M. <go...@us...> - 2004-01-18 10:53:27
|
Update of /cvsroot/bitcollider/bitcollider/include In directory sc8-pr-cvs1:/tmp/cvs-serv32334/include Modified Files: bc_version.h Added Files: kztree.h Log Message: * kztree.h Kazaa tree hash support. Adapted from tigertree code. * bc_version.h Increment version to 0.5.2 --- NEW FILE: kztree.h --- /* (PD) 2003 The Bitzi Corporation * Please see file COPYING or http://bitzi.com/publicdomain * for more info. * * $Id: kztree.h,v 1.1 2004/01/18 10:53:24 gojomo Exp $ * * Structures to allow a streamed calculation of the * 'KazaaTreeHash' value, without knowing input size * in advance. * */ /* MD5 hash result size, in bytes */ #define MD5SIZE 16 /* size of each block independently tiger-hashed, not counting leaf 0x00 prefix */ #define KZTREE_BLOCKSIZE (1024*32) /* size of input to each non-leaf hash-tree node, not counting node 0x01 prefix */ #define KZTREE_NODESIZE (MD5SIZE*2) /* default size of interim values stack, in MD5SIZE * blocks. If this overflows (as it will for input * longer than 2^128 in size), havoc may ensue. */ #define KZTREE_STACKSIZE (MD5SIZE*113) typedef struct kztree_context { unsigned long count; /* total blocks processed */ unsigned char leaf[KZTREE_BLOCKSIZE]; /* leaf in progress */ unsigned char *block; /* leaf data */ int index; /* index into block */ unsigned char *top; /* top (next empty) stack slot */ unsigned char nodes[KZTREE_STACKSIZE];/* stack of interim node values */ unsigned long gen; /* number of nodes in generation of topmost node */ } KZTREE_CONTEXT; void kztree_init(KZTREE_CONTEXT *ctx); void kztree_update(KZTREE_CONTEXT *ctx, unsigned char *buffer, unsigned int len); void kztree_digest(KZTREE_CONTEXT *ctx, unsigned char *hash); void kztree_copy(KZTREE_CONTEXT *dest, KZTREE_CONTEXT *src); static void kztree_block(KZTREE_CONTEXT *ctx); static void kztree_compose(KZTREE_CONTEXT *ctx); Index: bc_version.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/include/bc_version.h,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** bc_version.h 27 Oct 2003 03:09:35 -0000 1.9 --- bc_version.h 18 Jan 2004 10:53:24 -0000 1.10 *************** *** 22,26 **** /* Your agent-version string; should be #[.#[.#[etc]]] format */ ! #define BC_VERSION "0.5.1" #endif --- 22,26 ---- /* Your agent-version string; should be #[.#[.#[etc]]] format */ ! #define BC_VERSION "0.5.2" #endif |
From: Mike L. <mli...@us...> - 2004-01-03 21:30:41
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1:/tmp/cvs-serv20075/lib Modified Files: main.c Log Message: somebody1's patch http://bitzi.com/bboard/message?message_id=160460&forum_id=4076 Index: main.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/main.c,v retrieving revision 1.45 retrieving revision 1.46 diff -C2 -r1.45 -r1.46 *** main.c 27 Oct 2003 03:09:35 -0000 1.45 --- main.c 3 Jan 2004 21:30:36 -0000 1.46 *************** *** 845,850 **** *attrList = methods->mem_analyze_final(context); ! if (submission->bc->calculateCRC32) ! sprintf(crc32hex,"%08x", crc32); if (submission->bc->calculateMD5) --- 845,853 ---- *attrList = methods->mem_analyze_final(context); ! if (submission->bc->calculateCRC32) ! { ! crc32=~crc32; ! sprintf(crc32hex,"%08X", crc32); ! } if (submission->bc->calculateMD5) |
From: Gordon M. <go...@us...> - 2003-10-28 02:29:31
|
Update of /cvsroot/bitcollider/bitcollider/src In directory sc8-pr-cvs1:/tmp/cvs-serv14929/src Modified Files: bitcollider.c Log Message: use -- for multi-char cmn-line flags Index: bitcollider.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/src/bitcollider.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -r1.20 -r1.21 *** bitcollider.c 27 Oct 2003 03:09:35 -0000 1.20 --- bitcollider.c 28 Oct 2003 02:28:48 -0000 1.21 *************** *** 41,46 **** printf(" (Default is to analyze only known extensions)\n"); printf(" -f <file> - read tags from <file> instead of analyzing\n"); ! printf(" -md5 - calculate MD5\n"); ! printf(" -crc32 - calculate CRC32\n"); #ifndef _WIN32 printf(" --konqueror - use the Konqueror browser to submit\n"); --- 41,46 ---- printf(" (Default is to analyze only known extensions)\n"); printf(" -f <file> - read tags from <file> instead of analyzing\n"); ! printf(" --md5 - calculate MD5\n"); ! printf(" --crc32 - calculate CRC32\n"); #ifndef _WIN32 printf(" --konqueror - use the Konqueror browser to submit\n"); *************** *** 225,234 **** } else ! if (strcmp(argv[argIndex], "-md5") == 0) { calculateMD5 = true; } else ! if (strcmp(argv[argIndex], "-crc32") == 0) { calculateCRC32 = true; --- 225,234 ---- } else ! if (strcmp(argv[argIndex], "--md5") == 0) { calculateMD5 = true; } else ! if (strcmp(argv[argIndex], "--crc32") == 0) { calculateCRC32 = true; |
From: Gordon M. <go...@us...> - 2003-10-27 03:10:07
|
Update of /cvsroot/bitcollider/bitcollider/include In directory sc8-pr-cvs1:/tmp/cvs-serv31737/include Modified Files: bc_version.h bitcollider.h ftuuhash.h Log Message: added crc32 cmd-line switch; renamed md5 command-line switch; added registry check for Calculate[CRC32|MD5] for win-gui; tinkered with UI labelling; updated version to 0.5.1 Index: bc_version.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/include/bc_version.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** bc_version.h 24 Feb 2003 10:59:29 -0000 1.8 --- bc_version.h 27 Oct 2003 03:09:35 -0000 1.9 *************** *** 22,26 **** /* Your agent-version string; should be #[.#[.#[etc]]] format */ ! #define BC_VERSION "0.5.0" #endif --- 22,26 ---- /* Your agent-version string; should be #[.#[.#[etc]]] format */ ! #define BC_VERSION "0.5.1" #endif Index: bitcollider.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/include/bitcollider.h,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -r1.13 -r1.14 *** bitcollider.h 25 Oct 2003 23:54:29 -0000 1.13 --- bitcollider.h 27 Oct 2003 03:09:35 -0000 1.14 *************** *** 43,46 **** --- 43,47 ---- b_bool preview; b_bool calculateMD5; + b_bool calculateCRC32; b_bool exitNow; #if USE_BDB *************** *** 85,88 **** --- 86,91 ---- b_bool enable); void set_calculateMD5 (Bitcollider *bc, + b_bool enable); + void set_calculateCRC32 (Bitcollider *bc, b_bool enable); void set_exit (Bitcollider *bc, Index: ftuuhash.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/include/ftuuhash.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ftuuhash.h 6 Jul 2002 09:38:02 -0000 1.2 --- ftuuhash.h 27 Oct 2003 03:09:35 -0000 1.3 *************** *** 1,33 **** ! /* Support for calculating fasttrack identifiers ! * ! * $Id$ ! */ ! ! #ifndef __FTUUHASH_H__ ! #define __FTUUHASH_H__ ! ! #include "md5.h" ! ! #ifndef __BYTE__ ! #define __BYTE__ ! typedef unsigned char byte; ! #endif ! ! ! /* ftuu context. */ ! typedef struct { ! struct MD5Context md5context; // for md5'ing the first 307,200 bytes ! unsigned long nextPos; // next byte location of the file to be processed ! unsigned int smallHash; // running weak hash of later file ranges ! unsigned int backupSmallHash; // in case the endrange overlaps the last internal range ! byte rollingBuffer[307200]; // the last 307,200 bytes read ! unsigned long nextSampleStart; // position where the next 307,200 range to be smallHashed ends ! } FTUU_CTX; ! ! void FTUUInit(FTUU_CTX * ); ! void FTUUUpdate(FTUU_CTX *, const unsigned char *, unsigned int); ! void FTUUFinal(unsigned char [20], FTUU_CTX *); ! ! void bitziEncodeBase64(byte *, int , char *); ! ! #endif --- 1,33 ---- ! /* Support for calculating fasttrack identifiers ! * ! * $Id$ ! */ ! ! #ifndef __FTUUHASH_H__ ! #define __FTUUHASH_H__ ! ! #include "md5.h" ! ! #ifndef __BYTE__ ! #define __BYTE__ ! typedef unsigned char byte; ! #endif ! ! ! /* ftuu context. */ ! typedef struct { ! struct MD5Context md5context; // for md5'ing the first 307,200 bytes ! unsigned long nextPos; // next byte location of the file to be processed ! unsigned int smallHash; // running weak hash of later file ranges ! unsigned int backupSmallHash; // in case the endrange overlaps the last internal range ! byte rollingBuffer[307200]; // the last 307,200 bytes read ! unsigned long nextSampleStart; // position where the next 307,200 range to be smallHashed ends ! } FTUU_CTX; ! ! void FTUUInit(FTUU_CTX * ); ! void FTUUUpdate(FTUU_CTX *, const unsigned char *, unsigned int); ! void FTUUFinal(unsigned char [20], FTUU_CTX *); ! unsigned int hashSmallHash(byte *, size_t , unsigned int ); ! void bitziEncodeBase64(byte *, int , char *); ! ! #endif |
From: Gordon M. <go...@us...> - 2003-10-27 03:09:55
|
Update of /cvsroot/bitcollider/bitcollider/bcshellext In directory sc8-pr-cvs1:/tmp/cvs-serv31737/bcshellext Modified Files: bcshellext.rc Log Message: added crc32 cmd-line switch; renamed md5 command-line switch; added registry check for Calculate[CRC32|MD5] for win-gui; tinkered with UI labelling; updated version to 0.5.1 Index: bcshellext.rc =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/bcshellext/bcshellext.rc,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** bcshellext.rc 23 Mar 2001 01:34:46 -0000 1.1 --- bcshellext.rc 27 Oct 2003 03:09:35 -0000 1.2 *************** *** 75,79 **** VALUE "FileVersion", "1, 0, 0, 1\0" VALUE "InternalName", "bcshellext\0" ! VALUE "LegalCopyright", "Copyright 2001\0" VALUE "OriginalFilename", "bcshellext.DLL\0" VALUE "ProductName", "bcshellext Module\0" --- 75,79 ---- VALUE "FileVersion", "1, 0, 0, 1\0" VALUE "InternalName", "bcshellext\0" ! VALUE "LegalCopyright", "Copyright 2003\0" VALUE "OriginalFilename", "bcshellext.DLL\0" VALUE "ProductName", "bcshellext Module\0" |
From: Gordon M. <go...@us...> - 2003-10-27 03:09:39
|
Update of /cvsroot/bitcollider/bitcollider/src In directory sc8-pr-cvs1:/tmp/cvs-serv31737/src Modified Files: bitcollider.c Log Message: added crc32 cmd-line switch; renamed md5 command-line switch; added registry check for Calculate[CRC32|MD5] for win-gui; tinkered with UI labelling; updated version to 0.5.1 Index: bitcollider.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/src/bitcollider.c,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -r1.19 -r1.20 *** bitcollider.c 25 Oct 2003 23:43:33 -0000 1.19 --- bitcollider.c 27 Oct 2003 03:09:35 -0000 1.20 *************** *** 41,53 **** printf(" (Default is to analyze only known extensions)\n"); printf(" -f <file> - read tags from <file> instead of analyzing\n"); ! printf(" -m - calculate MD5\n"); ! #ifdef USE_BDB ! printf(" -c - clear the bitprint cache\n"); ! #endif #ifndef _WIN32 ! printf(" --konqueror - use the Konqueror to submit\n"); ! printf(" --lynx - use the lynx to submit\n"); ! printf(" --mozilla - use the Mozilla to submit\n"); ! printf(" --opera - use the Opera to submit\n"); printf("\nBy default Netscape will be used. You may also set the\n"); printf("BROWSER environment variable to specify your browser of choice.\n"); --- 41,51 ---- printf(" (Default is to analyze only known extensions)\n"); printf(" -f <file> - read tags from <file> instead of analyzing\n"); ! printf(" -md5 - calculate MD5\n"); ! printf(" -crc32 - calculate CRC32\n"); #ifndef _WIN32 ! printf(" --konqueror - use the Konqueror browser to submit\n"); ! printf(" --lynx - use the lynx browser to submit\n"); ! printf(" --mozilla - use the Mozilla browser to submit\n"); ! printf(" --opera - use the Opera browser to submit\n"); printf("\nBy default Netscape will be used. You may also set the\n"); printf("BROWSER environment variable to specify your browser of choice.\n"); *************** *** 141,144 **** --- 139,143 ---- b_bool clearCache = false; b_bool calculateMD5 = false; + b_bool calculateCRC32 = false; b_bool ret; char fileName[MAX_PATH]; *************** *** 226,234 **** } else ! if (strcmp(argv[argIndex], "-m") == 0) { calculateMD5 = true; } else if (strcmp(argv[argIndex], "-e") == 0) { --- 225,238 ---- } else ! if (strcmp(argv[argIndex], "-md5") == 0) { calculateMD5 = true; } else + if (strcmp(argv[argIndex], "-crc32") == 0) + { + calculateCRC32 = true; + } + else if (strcmp(argv[argIndex], "-e") == 0) { *************** *** 273,276 **** --- 277,281 ---- set_calculateMD5(bc, calculateMD5); + set_calculateCRC32(bc, calculateCRC32); if (clearCache) |
From: Gordon M. <go...@us...> - 2003-10-27 03:09:39
|
Update of /cvsroot/bitcollider/bitcollider/win32 In directory sc8-pr-cvs1:/tmp/cvs-serv31737/win32 Modified Files: bc_dll.def Log Message: added crc32 cmd-line switch; renamed md5 command-line switch; added registry check for Calculate[CRC32|MD5] for win-gui; tinkered with UI labelling; updated version to 0.5.1 Index: bc_dll.def =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/win32/bc_dll.def,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** bc_dll.def 12 Oct 2001 22:01:15 -0000 1.6 --- bc_dll.def 27 Oct 2003 03:09:35 -0000 1.7 *************** *** 16,19 **** --- 16,21 ---- set_check_as set_exit + set_calculateCRC32 + set_calculateMD5 analyze_file submit_submission |
From: Gordon M. <go...@us...> - 2003-10-27 03:09:39
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1:/tmp/cvs-serv31737/lib Modified Files: gui_win32.c gui_win32.rc main.c Log Message: added crc32 cmd-line switch; renamed md5 command-line switch; added registry check for Calculate[CRC32|MD5] for win-gui; tinkered with UI labelling; updated version to 0.5.1 Index: gui_win32.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/gui_win32.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** gui_win32.c 26 May 2001 20:06:07 -0000 1.9 --- gui_win32.c 27 Oct 2003 03:09:35 -0000 1.10 *************** *** 24,27 **** --- 24,28 ---- static BOOL bDetailsShown = false, bRunning = false; static BOOL bCloseWindow = false, bDontShowWindow = true; + static BOOL bCalculateCRC32 = false, bCalculateMD5 = false; static int iNumProcessed, iNumSkipped, iNumTotal; static Bitcollider *bc = NULL; *************** *** 507,510 **** --- 508,520 ---- } + if(bCalculateCRC32) + { + bc->calculateCRC32 = true; + } + if(bCalculateMD5) + { + bc->calculateMD5 = true; + } + submission = create_submission(bc); if (!submission) *************** *** 666,669 **** --- 676,689 ---- if (ret == ERROR_SUCCESS) bDontShowWindow = value; + + size = sizeof(DWORD); + ret = RegQueryValueEx(hKey, "CalculateCRC32", NULL, &type, (LPBYTE)&value, &size); + if (ret == ERROR_SUCCESS) + bCalculateCRC32 = value; + + size = sizeof(DWORD); + ret = RegQueryValueEx(hKey, "CalculateMD5", NULL, &type, (LPBYTE)&value, &size); + if (ret == ERROR_SUCCESS) + bCalculateMD5 = value; RegCloseKey(hKey); Index: gui_win32.rc =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/gui_win32.rc,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** gui_win32.rc 18 Mar 2003 08:13:09 -0000 1.6 --- gui_win32.rc 27 Oct 2003 03:09:35 -0000 1.7 *************** *** 62,71 **** END ! IDD_MAINDIALOG DIALOG DISCARDABLE 0, 0, 244, 142 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU ! CAPTION "Bitcollider" FONT 8, "MS Sans Serif" BEGIN ! DEFPUSHBUTTON "&Close",IDC_OKCANCEL,187,121,50,14 CONTROL "Progress1",IDC_FILEPROGRESS,"msctls_progress32", WS_BORDER,7,18,230,14 --- 62,71 ---- END ! IDD_MAINDIALOG DIALOG DISCARDABLE 0, 0, 244, 151 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU ! CAPTION "Bitzi Bitcollider" FONT 8, "MS Sans Serif" BEGIN ! DEFPUSHBUTTON "&Close",IDC_OKCANCEL,187,130,50,14 CONTROL "Progress1",IDC_FILEPROGRESS,"msctls_progress32", WS_BORDER,7,18,230,14 *************** *** 76,88 **** CTEXT "0 files processed",IDC_NUMPROCESSED,91,71,71,8 CTEXT "0 files skipped",IDC_NUMSKIPPED,168,71,69,8 ! PUSHBUTTON "&Browse",IDC_BROWSE,98,121,50,14 ! PUSHBUTTON "&About",IDC_ABOUT,7,121,50,14 ! CTEXT "Drop a file onto this window, or click on \r\nBrowse to select a file to Bitcollide.", ! IDC_STATIC,7,85,230,18,SS_SUNKEN CTEXT "0 files to process",IDC_NUMTOPROCESS,11,71,76,8 ! CONTROL "Close window after bitprinting",IDC_CLOSECHECK,"Button", ! BS_AUTOCHECKBOX | WS_TABSTOP,7,106,111,10 CONTROL "Don't show window for small files",IDC_DONTSHOWCHECK, ! "Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,106,115,10 END --- 76,88 ---- CTEXT "0 files processed",IDC_NUMPROCESSED,91,71,71,8 CTEXT "0 files skipped",IDC_NUMSKIPPED,168,71,69,8 ! PUSHBUTTON "&Browse",IDC_BROWSE,98,130,50,14 ! PUSHBUTTON "&About",IDC_ABOUT,7,130,50,14 ! LTEXT " (1) Drag files onto this window\r\n (2) The Bitcollider extracts identifiers and metadata\r\n (3) Your default web browser will launch to submit the info", ! IDC_STATIC,7,85,230,27,SS_SUNKEN CTEXT "0 files to process",IDC_NUMTOPROCESS,11,71,76,8 ! CONTROL "Close window after processing",IDC_CLOSECHECK,"Button", ! BS_AUTOCHECKBOX | WS_TABSTOP,7,117,111,10 CONTROL "Don't show window for small files",IDC_DONTSHOWCHECK, ! "Button",BS_AUTOCHECKBOX | WS_TABSTOP,120,117,115,10 END *************** *** 146,150 **** RIGHTMARGIN, 237 TOPMARGIN, 7 ! BOTTOMMARGIN, 135 END --- 146,150 ---- RIGHTMARGIN, 237 TOPMARGIN, 7 ! BOTTOMMARGIN, 144 END Index: main.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/main.c,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -r1.44 -r1.45 *** main.c 25 Oct 2003 23:43:33 -0000 1.44 --- main.c 27 Oct 2003 03:09:35 -0000 1.45 *************** *** 67,70 **** --- 67,71 ---- FILE *source, char *bitprint, + char *crc32, char *md5sum, char *ed2kmd4sum, *************** *** 80,83 **** --- 81,85 ---- const char *fileName, char *bitprint, + char *crc32, char *md5sum, char *ed2kmd4sum, *************** *** 237,240 **** --- 239,243 ---- char firstNHex[FIRST_N_HEX_SIZE + 1]; char temp[MAX_ATTR_STRING_LEN], *ext; + char crc32[10]; char md5[64]; char ed2kmd4[64]; *************** *** 347,351 **** mp3Info = malloc(sizeof(mp3_info)); ! if (!get_bitprint_data(submission, fileName, bitprint, md5, ed2kmd4, ftuu, firstNHex, mp3Info, methods, &attrList)) { --- 350,354 ---- mp3Info = malloc(sizeof(mp3_info)); ! if (!get_bitprint_data(submission, fileName, bitprint, crc32, md5, ed2kmd4, ftuu, firstNHex, mp3Info, methods, &attrList)) { *************** *** 377,384 **** --- 380,393 ---- add_attribute(submission, "tag.file.first20", firstNHex); add_attribute(submission, "tag.filename.filename", baseFileName); + + if (submission->bc->calculateCRC32) + { + add_attribute(submission, "tag.crc32.crc32", crc32); + } if (submission->bc->calculateMD5) { add_attribute(submission, "tag.md5.md5", md5); } + add_attribute(submission, "tag.ed2k.ed2khash", ed2kmd4); add_attribute(submission, "tag.uuhash.uuhash", ftuu); *************** *** 514,517 **** --- 523,531 ---- } + void set_calculateCRC32(Bitcollider *bc, b_bool calculateCRC32) + { + bc->calculateCRC32 = calculateCRC32; + } + void set_calculateMD5(Bitcollider *bc, b_bool calculateMD5) { *************** *** 698,701 **** --- 712,716 ---- const char *fileName, char *bitprint, + char *crc32hex, char *md5sum, char *ed2kmd4, *************** *** 720,724 **** fseek(source, 0, SEEK_SET); ! ret = calculate_hashes(submission, source, bitprint, md5sum, ed2kmd4, ftuu, mp3Info, methods, attrList); if (ret) --- 735,739 ---- fseek(source, 0, SEEK_SET); ! ret = calculate_hashes(submission, source, bitprint, crc32hex, md5sum, ed2kmd4, ftuu, mp3Info, methods, attrList); if (ret) *************** *** 732,735 **** --- 747,751 ---- FILE *source, char *bitprint, + char *crc32hex, char *md5sum, char *ed2kmd4sum, *************** *** 740,743 **** --- 756,760 ---- { BP_CONTEXT bcontext; + unsigned int crc32; struct MD5Context md5context; ED2K_CTX ed2kmd4context; *************** *** 758,761 **** --- 775,780 ---- if (methods && methods->mem_analyze_init) context = methods->mem_analyze_init(); + if (submission->bc->calculateCRC32) + crc32 = 0xffffffff; //init if (submission->bc->calculateMD5) MD5Init(&md5context); *************** *** 792,799 **** if (methods && methods->mem_analyze_update) methods->mem_analyze_update(context, buffer, bytes); if (submission->bc->calculateMD5) MD5Update(&md5context, buffer, bytes); ! ED2KUpdate(&ed2kmd4context, buffer, bytes); ! FTUUUpdate(&ftuucontext, buffer, bytes); if (submission->bc->progressCallback && !submission->bc->preview) --- 811,822 ---- if (methods && methods->mem_analyze_update) methods->mem_analyze_update(context, buffer, bytes); + + if (submission->bc->calculateCRC32) + crc32 = hashSmallHash(buffer, bytes , crc32); //crc32 by another name if (submission->bc->calculateMD5) MD5Update(&md5context, buffer, bytes); ! ED2KUpdate(&ed2kmd4context, buffer, bytes); ! FTUUUpdate(&ftuucontext, buffer, bytes); ! if (submission->bc->progressCallback && !submission->bc->preview) *************** *** 822,825 **** --- 845,851 ---- *attrList = methods->mem_analyze_final(context); + if (submission->bc->calculateCRC32) + sprintf(crc32hex,"%08x", crc32); + if (submission->bc->calculateMD5) { *************** *** 836,847 **** ed2kDigest[8],ed2kDigest[9],ed2kDigest[10],ed2kDigest[11], ed2kDigest[12],ed2kDigest[13],ed2kDigest[14],ed2kDigest[15]); ! /** ! sprintf(ftuusum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", ! ftuuDigest[0],ftuuDigest[1],ftuuDigest[2],ftuuDigest[3], ! ftuuDigest[4],ftuuDigest[5],ftuuDigest[6],ftuuDigest[7], ! ftuuDigest[8],ftuuDigest[9],ftuuDigest[10],ftuuDigest[11], ! ftuuDigest[12],ftuuDigest[13],ftuuDigest[14],ftuuDigest[15], ! ftuuDigest[16],ftuuDigest[17],ftuuDigest[18],ftuuDigest[19]); ! **/ bitziEncodeBase64(ftuuDigest,20,ftuusum); --- 862,866 ---- ed2kDigest[8],ed2kDigest[9],ed2kDigest[10],ed2kDigest[11], ed2kDigest[12],ed2kDigest[13],ed2kDigest[14],ed2kDigest[15]); ! bitziEncodeBase64(ftuuDigest,20,ftuusum); |
From: Mike L. <mli...@us...> - 2003-10-25 23:59:15
|
Update of /cvsroot/bitcollider/bitcollider/include In directory sc8-pr-cvs1:/tmp/cvs-serv17541/include Modified Files: bitcollider.h Log Message: missed Index: bitcollider.h =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/include/bitcollider.h,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** bitcollider.h 12 Oct 2001 21:37:52 -0000 1.12 --- bitcollider.h 25 Oct 2003 23:54:29 -0000 1.13 *************** *** 42,45 **** --- 42,46 ---- void (*progressCallback)(int, const char *, const char *); b_bool preview; + b_bool calculateMD5; b_bool exitNow; #if USE_BDB *************** *** 82,85 **** --- 83,88 ---- const char *)); void set_preview (Bitcollider *bc, + b_bool enable); + void set_calculateMD5 (Bitcollider *bc, b_bool enable); void set_exit (Bitcollider *bc, |
From: Mike L. <mli...@us...> - 2003-10-25 23:45:21
|
Update of /cvsroot/bitcollider/bitcollider/lib In directory sc8-pr-cvs1:/tmp/cvs-serv15806/lib Modified Files: main.c Log Message: http://sourceforge.net/tracker/index.php?func=detail&aid=610360&group_id=21211&atid=371211 http://sourceforge.net/tracker/index.php?func=detail&aid=481033&group_id=21211&atid=121211 http://sourceforge.net/tracker/index.php?func=detail&aid=491787&group_id=21211&atid=121211 Index: main.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/lib/main.c,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -r1.43 -r1.44 *** main.c 14 Mar 2003 05:26:42 -0000 1.43 --- main.c 25 Oct 2003 23:43:33 -0000 1.44 *************** *** 377,381 **** add_attribute(submission, "tag.file.first20", firstNHex); add_attribute(submission, "tag.filename.filename", baseFileName); ! // add_attribute(submission, "tag.md5.md5", md5); add_attribute(submission, "tag.ed2k.ed2khash", ed2kmd4); add_attribute(submission, "tag.uuhash.uuhash", ftuu); --- 377,384 ---- add_attribute(submission, "tag.file.first20", firstNHex); add_attribute(submission, "tag.filename.filename", baseFileName); ! if (submission->bc->calculateMD5) ! { ! add_attribute(submission, "tag.md5.md5", md5); ! } add_attribute(submission, "tag.ed2k.ed2khash", ed2kmd4); add_attribute(submission, "tag.uuhash.uuhash", ftuu); *************** *** 511,514 **** --- 514,522 ---- } + void set_calculateMD5(Bitcollider *bc, b_bool calculateMD5) + { + bc->calculateMD5 = calculateMD5; + } + void set_exit(Bitcollider *bc, b_bool exitNow) { *************** *** 732,736 **** { BP_CONTEXT bcontext; ! // struct MD5Context md5context; ED2K_CTX ed2kmd4context; FTUU_CTX ftuucontext; --- 740,744 ---- { BP_CONTEXT bcontext; ! struct MD5Context md5context; ED2K_CTX ed2kmd4context; FTUU_CTX ftuucontext; *************** *** 750,756 **** if (methods && methods->mem_analyze_init) context = methods->mem_analyze_init(); ! // MD5Init(&md5context); ! ED2KInit(&ed2kmd4context); ! FTUUInit(&ftuucontext); buffer = (unsigned char*)malloc(BUFFER_LEN); --- 758,765 ---- if (methods && methods->mem_analyze_init) context = methods->mem_analyze_init(); ! if (submission->bc->calculateMD5) ! MD5Init(&md5context); ! ED2KInit(&ed2kmd4context); ! FTUUInit(&ftuucontext); buffer = (unsigned char*)malloc(BUFFER_LEN); *************** *** 783,789 **** if (methods && methods->mem_analyze_update) methods->mem_analyze_update(context, buffer, bytes); ! // MD5Update(&md5context, buffer, bytes); ! ED2KUpdate(&ed2kmd4context, buffer, bytes); ! FTUUUpdate(&ftuucontext, buffer, bytes); if (submission->bc->progressCallback && !submission->bc->preview) --- 792,799 ---- if (methods && methods->mem_analyze_update) methods->mem_analyze_update(context, buffer, bytes); ! if (submission->bc->calculateMD5) ! MD5Update(&md5context, buffer, bytes); ! ED2KUpdate(&ed2kmd4context, buffer, bytes); ! FTUUUpdate(&ftuucontext, buffer, bytes); if (submission->bc->progressCallback && !submission->bc->preview) *************** *** 812,820 **** *attrList = methods->mem_analyze_final(context); ! // MD5Final(md5Digest, &md5context); ! ED2KFinal(ed2kDigest, &ed2kmd4context); ! FTUUFinal(ftuuDigest, &ftuucontext); - bitziEncodeBase32(md5Digest, 16, md5sum); sprintf(ed2kmd4sum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", ed2kDigest[0],ed2kDigest[1],ed2kDigest[2],ed2kDigest[3], --- 822,834 ---- *attrList = methods->mem_analyze_final(context); ! if (submission->bc->calculateMD5) ! { ! MD5Final(md5Digest, &md5context); ! bitziEncodeBase32(md5Digest, 16, md5sum); ! } ! ! ED2KFinal(ed2kDigest, &ed2kmd4context); ! FTUUFinal(ftuuDigest, &ftuucontext); sprintf(ed2kmd4sum,"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", ed2kDigest[0],ed2kDigest[1],ed2kDigest[2],ed2kDigest[3], |
From: Mike L. <mli...@us...> - 2003-10-25 23:45:20
|
Update of /cvsroot/bitcollider/bitcollider/src In directory sc8-pr-cvs1:/tmp/cvs-serv15806/src Modified Files: bitcollider.c Log Message: http://sourceforge.net/tracker/index.php?func=detail&aid=610360&group_id=21211&atid=371211 http://sourceforge.net/tracker/index.php?func=detail&aid=481033&group_id=21211&atid=121211 http://sourceforge.net/tracker/index.php?func=detail&aid=491787&group_id=21211&atid=121211 Index: bitcollider.c =================================================================== RCS file: /cvsroot/bitcollider/bitcollider/src/bitcollider.c,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** bitcollider.c 12 Oct 2001 22:01:15 -0000 1.18 --- bitcollider.c 25 Oct 2003 23:43:33 -0000 1.19 *************** *** 35,39 **** printf(" -n - show submission in browser, without submitting\n"); printf(" -u - send submission to alternate URL\n"); - printf(" -3 - force mp3 analysis even if file does not end in .mp3\n"); printf(" -e [ext] - treat file as if it had a given extension\n"); printf(" -d - debug print during plugin loading\n"); --- 35,38 ---- *************** *** 42,53 **** printf(" (Default is to analyze only known extensions)\n"); printf(" -f <file> - read tags from <file> instead of analyzing\n"); #ifdef USE_BDB printf(" -c - clear the bitprint cache\n"); #endif #ifndef _WIN32 ! printf(" -k - use the Konqueror to submit\n"); ! printf(" -m - use the Mozilla to submit\n"); ! printf(" -o - use the Opera to submit\n"); ! printf(" -l - use the lynx to submit\n"); printf("\nBy default Netscape will be used. You may also set the\n"); printf("BROWSER environment variable to specify your browser of choice.\n"); --- 41,53 ---- printf(" (Default is to analyze only known extensions)\n"); printf(" -f <file> - read tags from <file> instead of analyzing\n"); + printf(" -m - calculate MD5\n"); #ifdef USE_BDB printf(" -c - clear the bitprint cache\n"); #endif #ifndef _WIN32 ! printf(" --konqueror - use the Konqueror to submit\n"); ! printf(" --lynx - use the lynx to submit\n"); ! printf(" --mozilla - use the Mozilla to submit\n"); ! printf(" --opera - use the Opera to submit\n"); printf("\nBy default Netscape will be used. You may also set the\n"); printf("BROWSER environment variable to specify your browser of choice.\n"); *************** *** 140,143 **** --- 140,144 ---- b_bool quiet = false; b_bool clearCache = false; + b_bool calculateMD5 = false; b_bool ret; char fileName[MAX_PATH]; *************** *** 159,178 **** { #ifndef _WIN32 ! if (strcmp(argv[argIndex], "-m") == 0) { browser = eBrowserMozilla; } else ! if (strcmp(argv[argIndex], "-k") == 0) { browser = eBrowserKonqueror; } else ! if (strcmp(argv[argIndex], "-o") == 0) { browser = eBrowserOpera; } else ! if (strcmp(argv[argIndex], "-l") == 0) { browser = eBrowserLynx; --- 160,179 ---- { #ifndef _WIN32 ! if (strcmp(argv[argIndex], "--mozilla") == 0) { browser = eBrowserMozilla; } else ! if (strcmp(argv[argIndex], "--konqueror") == 0) { browser = eBrowserKonqueror; } else ! if (strcmp(argv[argIndex], "--opera") == 0) { browser = eBrowserOpera; } else ! if (strcmp(argv[argIndex], "--lynx") == 0) { browser = eBrowserLynx; *************** *** 225,228 **** --- 226,234 ---- } else + if (strcmp(argv[argIndex], "-m") == 0) + { + calculateMD5 = true; + } + else if (strcmp(argv[argIndex], "-e") == 0) { *************** *** 234,248 **** } else - if (strcmp(argv[argIndex], "-3") == 0) - { - if (checkAsExt[0]) - { - fprintf(stderr, "You cannot use -3 and -e at the same time."); - fprintf(stderr, " -3 ignored.\n"); - } - else - strcpy(checkAsExt, ".mp3"); - } - else break; } --- 240,243 ---- *************** *** 255,265 **** if (submitTarget) { ! if (strncmp(submitTarget, "http://", 7)) { fprintf(stderr, "'%s' is not a valid URL. Ignoring.\n\n", submitTarget); submitTarget = NULL; } - else - fprintf(stderr, "Submitting to: %s\n\n", submitTarget); } --- 250,262 ---- if (submitTarget) { ! if (!strncmp(submitTarget, "http://", 7) || !strncmp(submitTarget, "https://", 8)) ! { ! fprintf(stderr, "Submitting to: %s\n\n", submitTarget); ! } ! else { fprintf(stderr, "'%s' is not a valid URL. Ignoring.\n\n", submitTarget); submitTarget = NULL; } } *************** *** 275,278 **** --- 272,277 ---- } + set_calculateMD5(bc, calculateMD5); + if (clearCache) { *************** *** 343,347 **** continue; } ! if (type == eFile) { --- 342,346 ---- continue; } ! if (type == eFile) { *************** *** 349,356 **** if (!ret) { ! print_error(bc, "Cannot analyze file"); ! bitcollider_shutdown(bc); ! bc = NULL; ! exit(-1); } } --- 348,353 ---- if (!ret) { ! fprintf(stderr, "%s problem: %s\n", fileName, get_error(bc)); ! continue; } } |
From: Gordon M. <go...@us...> - 2003-04-14 04:53:36
|
Update of /cvsroot/bitcollider/bitprint In directory sc8-pr-cvs1:/tmp/cvs-serv24670 Added Files: .project Removed Files: COPYING bitprint.c bitprint.h btest.c Log Message: deleting outdated (old broken tigertree) files --- NEW FILE: .project --- <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>Bitcollider-bitprint</name> <comment></comment> <projects> </projects> <buildSpec> </buildSpec> <natures> </natures> </projectDescription> --- COPYING DELETED --- --- bitprint.c DELETED --- --- bitprint.h DELETED --- --- btest.c DELETED --- |
From: Gordon M. <go...@us...> - 2003-04-13 03:45:15
|
Update of /cvsroot/bitcollider/jbitprint/lib/package-ref In directory sc8-pr-cvs1:/tmp/cvs-serv18284/lib/package-ref Added Files: cryptix-jce-20030217-snap.zip Log Message: refactoring/simplification under com.bitzi.util --- NEW FILE: cryptix-jce-20030217-snap.zip --- PK ´ Xïgr@Ãz57ÑÂi½ï'<D¿ÓbÏPÐëNÓ32æ iQrä°] XçÚÒÊ7¼üN¾c|è@¦pøc!ÞÙiçcÎ[É]W Úõ%À+äT¸RBvÕ°<¯O¢(ßÀ0²ÍϬy±"ß±©¶õÓûLî¾ õ¼{¡ß0¥/櫳Kfî1pÊ#:KÿµÚÆè yÌÒMú`Ư/V`},¯²t[Ï«¤·§®¡hÿнpc¯Tèëà§Êõ}@¯1í|d$Ê7ÔÐ&rx¸IsdáÁ1' ýýãxÖH&óÁ âÇ6÷Ä-m!ÍåÙ®ð.ýÝ6Up.:ì ÁC9$+K ií½zVÚ;t¹Ø7@{HÄ¥¯ªô½S£.³¼.Ü@¸åÝø"-|8\mà¹Hr\(D`Ñ)ÚgN,Þ¤ /^p5£!>¼âóë æûJOûÅ-àM^²rFq-ºhg¥ùÙ&%5MéßÀ¶c=<½WWCJ$RÊĵV¶ªö-í·4A_D,±N¨qÞV6§\©í¿»:ló1CÓ$¾+¥Y¬4û´´(ñ*f8sóË66UÈTßMÃd¡GëeDÅ|¸57n²c~ xÈbE¥üFWèW"ÖW¼P¨IúÄymº%Ѫ ) WhbP¸<F4FhÔ¸vRsD¬ù«ïàÏÇ`-(l(äÚ²aløûe£\ÜfU¡_O"D3²4® öbpî Á åfi?+óz\ÙåyeµóÁNÇûfq÷s0}ï¹ãË^Úª:ûnÒ\:ä$3ÔÔÅ·w@ÏÊÁ¨m`±;Ï'®fÍB¤_Sõ*WÔQ]¤^¦°Ú¹äî0ÖÅEƤGÆhÁádd}å:êùêæ×É©\0¼ÅUã)\ ÷GÖHER«¼»¸n9y[¬~\îú6Çw[ãÂf0sðÛeÚijòvßÛÍÁ;:iø±½»§ÌÿTóýá1óð{zPþã@ÉÖì·!IQF®Á:èQq_{C{o,`W~t"kc~]>°Oò3dø[ &£Þ#T L ÈÁ«MaÏ+Jt²zµ}:mb9>.½B¶Þkø2V°ëvmê¾ ¾ÈQhífå :Û{£òÁÝiz³ás¾ôµ(;Q1 ÛÂE°2IªE#ðH¬å;5O$LF«µã½ÆÑÖ¹£yÛ¢Ýaj1ÛyàÓ£E ¦ÐÞÓù¾ÿ=;f*s'¦0g Ò Ò¹ÒÙÄyT8ãÙD¹Àº%k[©s$õÈ%EI$LÍQ[HG{IHiRj (iÚ¥;Áa$Ì5o[wADa?®VûeHuA4}R£¬(K)ä¸*=9#=àx ¬]P~ÐM ³Xö²ig°í(~0b`øØM JÝXC]=pª_Êç@á³uu LU¯ÊRLtbAÃýË×À~,ÝÍ\õ{fD v¯Æ°Ãô¢` °Ù¯»jo2»ZoVãsZ-bÙ3dµÃp#¼%)]Ìøõã<̵Íô%¼l ñÄ·ÉkêY++ë+ÂÉ3<·õ6S°/Õ$%gmcgiª#¯ÍWÄ_¹òE«&jíè v·¤Ñºor̼þ½5HÔܾ!Hl{Az.ÎκËÙ;ÐÁÅèzÅÅcòä¢q Óhr£v1Ëϸ:4½kªÉ_Áª!²ÆFËëÔLQ°{éAKÎÀÙÔkLÉmAîóC{\Ü}ûîú§Ìü%3k=G'{£ÿ±â=×.4ªüf²M84k ßDU_©ºÑ¬Â¶J;9©«Øá°cDÚñl¸¿¿ o#7=`#÷ w½]°>Û±õ6}læË:åuÀX¾°èm¦In]x!ó¼ QNVOo3U5} (å$QxÌyb BË*JFyfY×t cûPhϲ7#+ß_kbaqåï53G I<ßÉmWwÌf9XÇþ.E*bùï¦K%ЯY ÿ¢½³£Ñý¡ñâúeïÕ@ß ÃÑC9ëç2ØAökù3½®fSx¯GðMõ^Ü [...3277 lines suppressed...] ´] |
From: Gordon M. <go...@us...> - 2003-04-13 03:45:10
|
Update of /cvsroot/bitcollider/jbitprint In directory sc8-pr-cvs1:/tmp/cvs-serv18284 Added Files: .classpath README.txt .project Log Message: refactoring/simplification under com.bitzi.util --- NEW FILE: .classpath --- <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="lib" path="lib/cryptix-jce-provider.jar"/> <classpathentry kind="output" path="bin"/> </classpath> --- NEW FILE: README.txt --- Class Bitprint computes the Bitzi Bitprint of a given byte stream, which is the concatenation of the SHA1 and TigerTree values for that stream. (When displayed as text, the SHA1 and TigerTree values are Base32 encoded separately, and separated with a period ('.').) Class TigerTree computes the THEX [1] tree hash of a given byte stream, using the Tiger[2] hash as the internal algorithm. Relies on the implementation of the underlying Tiger algorithm from the Cryptix JCE. [3] The full 20030217 distro of the Cryptix JCE is included under $module/lib/package-ref/ for reference. The requisite JARs from that distro are included under $module/lib/. (Only the 'provider' JAR is actually necessary for JRE1.4 and above; see the Cryptix readme for more details.) Class Base32 converts byte arrays to and from Base-32 notation[4]. Class HashUrns, when given a file, prints several hash-derived URNs for that file. For example: >java com.bitzi.util.HashUrns zero-length-file urn:sha1:3I42H3S6NNFQ2MSVX7XZKYAYSCX5QBYJ urn:tree:tiger/:LWPNACQDBZRYXW3VHJVCJ64QBZNGHOHHHZWCLNQ urn:bitprint:3I42H3S6NNFQ2MSVX7XZKYAYSCX5QBYJ.LWPNACQDBZRYXW3VHJVCJ64QBZNGHOHHHZWCLNQ - Gordon Mohr go...@bi... 2003/04/12 [1] http://www.open-content.net/specs/draft-jchapweske-thex-01.html [2] http://www.cs.technion.ac.il/~biham/Reports/Tiger/ [3] http://www.cryptix.org [4] http://www.ietf.org/internet-drafts/draft-josefsson-base-encoding-04.txt --- NEW FILE: .project --- <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>Bitcollider-JBitprint</name> <comment></comment> <projects> </projects> <buildSpec> <buildCommand> <name>org.eclipse.jdt.core.javabuilder</name> <arguments> </arguments> </buildCommand> </buildSpec> <natures> <nature>org.eclipse.jdt.core.javanature</nature> </natures> </projectDescription> |