summaryrefslogtreecommitdiff
path: root/net-p2p/ed2k
diff options
context:
space:
mode:
authorDirk Meyer <dinoex@FreeBSD.org>2005-11-20 12:20:55 +0000
committerDirk Meyer <dinoex@FreeBSD.org>2005-11-20 12:20:55 +0000
commit642b2b3f10b25a0da73d6ffe3be30b0ba7765c0d (patch)
tree6c8ac7b5b24d5821c1d936cff432a55abdf832a3 /net-p2p/ed2k
parentFix build error on -current. (diff)
This tool takes files and calculates the final 'eEmule' hashes for
then. It also spits out the complete ed2k:// link in the end. Note: This hashes differ from 'eDonkey/mldonkey' hashes when the size of a files is a mutiple of 9728000 Bytes. WWW: http://www.sdalu.com/software/tools.shtml
Notes
Notes: svn path=/head/; revision=148845
Diffstat (limited to 'net-p2p/ed2k')
-rw-r--r--net-p2p/ed2k/Makefile41
-rw-r--r--net-p2p/ed2k/distinfo3
-rw-r--r--net-p2p/ed2k/files/patch-ed2k.c65
-rw-r--r--net-p2p/ed2k/pkg-descr7
4 files changed, 116 insertions, 0 deletions
diff --git a/net-p2p/ed2k/Makefile b/net-p2p/ed2k/Makefile
new file mode 100644
index 000000000000..35a5cc6ca35d
--- /dev/null
+++ b/net-p2p/ed2k/Makefile
@@ -0,0 +1,41 @@
+# New ports collection makefile for: ed2k hash tool
+# Date created: Mi 9 Nov 2005 06:52:38 CET
+# Whom: dirk.meyer@dinoex.sub.org
+#
+# $FreeBSD$
+#
+
+PORTNAME= ed2k
+PORTVERSION= 1.4
+CATEGORIES= misc
+MASTER_SITES= http://www.sdalu.com/download/software/tools/
+PKGNAMESUFFIX= -hash${PKGNAMESUFFIX2}
+DISTNAME= ed2k.c
+EXTRACT_SUFX=
+EXTRACT_ONLY=
+
+MAINTAINER= dinoex@FreeBSD.org
+COMMENT= Calculates 'eMule' hashes or producing ed2k:// file links
+
+WRKSRC= ${WRKDIR}
+MAKEFILE= /dev/null
+ALL_TARGET= ed2k
+PLIST_FILES= bin/ed2k
+
+.if defined(WITHOUT_OPENSSL)
+CPPFLAGS+= -DWITH_RSA
+MAKE_ENV+= LDLIBS="${CPPFLAGS}"
+.else
+USE_OPENSSL= yes
+OPENSSLSUFFIX= -openssl
+LDLIBS+= -lmd
+MAKE_ENV+= LDLIBS="${LDLIBS}"
+.endif
+
+post-extract:
+ ${CP} -p ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME} ${WRKSRC}/
+
+do-install:
+ @${INSTALL_PROGRAM} ${WRKSRC}/ed2k ${PREFIX}/bin/
+
+.include <bsd.port.mk>
diff --git a/net-p2p/ed2k/distinfo b/net-p2p/ed2k/distinfo
new file mode 100644
index 000000000000..34c358378934
--- /dev/null
+++ b/net-p2p/ed2k/distinfo
@@ -0,0 +1,3 @@
+MD5 (ed2k.c) = 3e6e3dac4f3d4c068bb6995ec9815ba4
+SHA256 (ed2k.c) = 08f3f81278bd6cf6d5fdf04d2ea796255a8d73808f4ddd12fd18f6142eb39bb2
+SIZE (ed2k.c) = 9422
diff --git a/net-p2p/ed2k/files/patch-ed2k.c b/net-p2p/ed2k/files/patch-ed2k.c
new file mode 100644
index 000000000000..c9efde43b755
--- /dev/null
+++ b/net-p2p/ed2k/files/patch-ed2k.c
@@ -0,0 +1,65 @@
+--- ed2k.c.orig Sun Jun 13 19:47:20 2004
++++ ed2k.c Wed Nov 9 07:55:38 2005
+@@ -32,7 +32,7 @@
+ #include <sys/stat.h>
+
+ /* #define OFF_CONV "%ld" /* off_t is long (Linux) */
+-/* #define OFF_CONF "%lld" /* off_t is long long (FreeBSD) */
++#define OFF_CONV "%lld" /* off_t is long long (FreeBSD) */
+
+ #ifndef OFF_CONV
+ # warning "You should define OFF_CONV (see the file)"
+@@ -47,16 +47,27 @@
+
+ typedef unsigned char md4_t[16];
+
++#if defined(WITH_RSA)
++
+ typedef struct {
+- u_int32_t state[4];
+- u_int32_t count[2];
+- unsigned char buffer[64];
++ u_int32_t state[4];
++ u_int32_t count[2];
++ unsigned char buffer[64];
+ } md4_ctx_t;
+
+ void md4_init(md4_ctx_t *);
+ void md4_update(md4_ctx_t *, unsigned char *, unsigned int);
+ void md4_finish(md4_ctx_t *, md4_t);
+
++#else
++
++#include <md4.h>
++#define md4_ctx_t MD4_CTX
++#define md4_init MD4Init
++#define md4_update MD4Update
++#define md4_finish(a,b) MD4Final(b,a)
++
++#endif
+
+ static char *progname;
+
+@@ -86,7 +97,7 @@
+ }
+
+
+-static __inline__ char hdigit(q) {
++static __inline__ char hdigit(unsigned char q) {
+ return ((q >= 10) ? 'W' : '0') + q;
+ }
+
+@@ -181,6 +192,7 @@
+ }
+
+
++#if defined(WITH_RSA)
+
+ /*==> RSA Data Security, Inc. MD4 Message-Digest Algorithm =============*/
+
+@@ -323,3 +335,5 @@
+ md4_update (context, bits, 8);
+ md4_encode (digest, context->state, 16);
+ }
++
++#endif
diff --git a/net-p2p/ed2k/pkg-descr b/net-p2p/ed2k/pkg-descr
new file mode 100644
index 000000000000..597859774eaf
--- /dev/null
+++ b/net-p2p/ed2k/pkg-descr
@@ -0,0 +1,7 @@
+This tool takes files and calculates the final 'eEmule' hashes for
+then. It also spits out the complete ed2k:// link in the end.
+
+Note: This hashes differ from 'eDonkey/mldonkey' hashes
+when the size of a files is a mutiple of 9728000 Bytes.
+
+WWW: http://www.sdalu.com/software/tools.shtml