From eab25aec937b3c4f750cc37196fa85c13d80ae88 Mon Sep 17 00:00:00 2001 From: Volker Stolz Date: Tue, 15 Jun 2004 14:49:10 +0000 Subject: [PATCH] Add mixmaster 2.9.1, a cryptographically secure anonymous remailer. PR: ports/59813 Submitted by: Meyer Wolfsheim --- mail/Makefile | 1 + mail/mixmaster/Makefile | 54 +++++++++++++++++++++++ mail/mixmaster/distinfo | 3 ++ mail/mixmaster/files/Makefile.in | 76 ++++++++++++++++++++++++++++++++ mail/mixmaster/files/patch-aa | 11 +++++ mail/mixmaster/files/patch-ab | 11 +++++ mail/mixmaster/files/patch-ac | 13 ++++++ mail/mixmaster/files/patch-ad | 8 ++++ mail/mixmaster/pkg-descr | 8 ++++ mail/mixmaster/pkg-plist | 27 ++++++++++++ 10 files changed, 212 insertions(+) create mode 100644 mail/mixmaster/Makefile create mode 100644 mail/mixmaster/distinfo create mode 100644 mail/mixmaster/files/Makefile.in create mode 100644 mail/mixmaster/files/patch-aa create mode 100644 mail/mixmaster/files/patch-ab create mode 100644 mail/mixmaster/files/patch-ac create mode 100644 mail/mixmaster/files/patch-ad create mode 100644 mail/mixmaster/pkg-descr create mode 100644 mail/mixmaster/pkg-plist diff --git a/mail/Makefile b/mail/Makefile index c54fd8c39801..9925ecba8fbf 100644 --- a/mail/Makefile +++ b/mail/Makefile @@ -188,6 +188,7 @@ SUBDIR += mini_sendmail SUBDIR += minimalist SUBDIR += missey + SUBDIR += mixmaster SUBDIR += mixminion SUBDIR += ml SUBDIR += mls diff --git a/mail/mixmaster/Makefile b/mail/mixmaster/Makefile new file mode 100644 index 000000000000..0b6f9c7a9a17 --- /dev/null +++ b/mail/mixmaster/Makefile @@ -0,0 +1,54 @@ +# New ports collection makefile for: mixmaster +# Date created: 27 November 2003 +# Whom: Meyer Wolfsheim +# +# $FreeBSD$ +# + +PORTNAME= mixmaster +PORTVERSION= 2.9.1 +CATEGORIES= mail security +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE_EXTENDED} \ + ftp://ftp.erisiandiscord.de/pub/misc/ +MASTER_SITE_SUBDIR= mixmaster +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ + mixmaster-update.pl.gz allpingers.txt.gz +EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} + +MAINTAINER= wolf@priori.net +COMMENT= A cryptographically secure anonymous remailer + +LIB_DEPENDS= pcre:${PORTSDIR}/devel/pcre \ + ncurses:${PORTSDIR}/devel/ncurses + +USE_PERL5= yes +USE_REINPLACE= yes +USE_OPENSSL= yes + +WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/Src + +CFLAGS+= -DGLOBALMIXCONF="\"${SYSCONFDIR}/mixmaster/client.cfg\"" -DHOMEMIXDIR="\".Mix\"" +MAKE_ARGS= CC=${CC} + +MAN1= mixmaster.1 +WRKDIST= ${WRKDIR}/${PORTNAME}-${PORTVERSION} +MIXMASTER_FILES= ${WRKDIST}/conf/* ${WRKDIST}/README ${WRKDIR}/allpingers.txt +MIXMASTER_SCRIPTS= ${WRKDIR}/mixmaster-update.pl + +post-patch: + ${CP} ${FILESDIR}/Makefile.in ${WRKSRC}/Makefile + @${RM} ${WRKSRC}/../conf/mix.cfg.orig + +pre-install: + ${GZCAT} ${DISTDIR}/mixmaster-update.pl.gz >${WRKDIR}/mixmaster-update.pl + ${GZCAT} ${DISTDIR}/allpingers.txt.gz >${WRKDIR}/allpingers.txt + ${REINPLACE_CMD} -e "s,/etc,${SYSCONFDIR},g" ${WRKDIR}/mixmaster-update.pl + ${MKDIR} ${PREFIX}/share/examples/mixmaster + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/mix ${PREFIX}/bin/mixmaster + ${INSTALL_SCRIPT} ${MIXMASTER_SCRIPTS} ${PREFIX}/bin/mixmaster-update.pl + ${INSTALL_DATA} ${MIXMASTER_FILES} ${PREFIX}/share/examples/mixmaster + ${INSTALL_MAN} ${WRKDIST}/mix.1 ${PREFIX}/man/man1/mixmaster.1 + +.include diff --git a/mail/mixmaster/distinfo b/mail/mixmaster/distinfo new file mode 100644 index 000000000000..3af0c726b0c4 --- /dev/null +++ b/mail/mixmaster/distinfo @@ -0,0 +1,3 @@ +MD5 (allpingers.txt.gz) = faed6e2b322789008d9944ee19b0d67e +MD5 (mixmaster-2.9.1.tar.gz) = 26052ff4112a2c185fd294b2bf5cb117 +MD5 (mixmaster-update.pl.gz) = 80ace5f85a7f4b8e2cf48a337e92a541 diff --git a/mail/mixmaster/files/Makefile.in b/mail/mixmaster/files/Makefile.in new file mode 100644 index 000000000000..24e0660e8697 --- /dev/null +++ b/mail/mixmaster/files/Makefile.in @@ -0,0 +1,76 @@ +# Mixmaster version 2.9 -- (C) 1999 - 2003 Anonymizer Inc. and others. + +# Mixmaster may be redistributed and modified under certain conditions. +# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF +# ANY KIND, either express or implied. See the file COPYRIGHT for +# details. + +# Edit according to the libraries you want to use: +INC = -I/usr/local/include -I/usr/include +DEF = -DUSE_ZLIB -DUSE_PCRE -DUSE_NCURSES -DHAVE_NCURSES_H -DUSE_IDEA -DUSE_SOCK -DSPOOL='"/var/tmp/mixmaster"' -DGLOBALMIXCONF='"/usr/local/etc/mixmaster/client.cfg"' -DHOMEMIXDIR="\".Mix\"" +LIBS = +LDFLAGS = -lz -L/usr/lib -lpcre -L/usr/local/lib -lcrypto -L/usr/lib -lncurses -L/usr/lib + +OPT = -g -Wall +# OPT = -g -pg -Wall -DDEBUG +# OPT = -O2 -Wall + +CFLAGS = $(INC) $(DEF) $(OPT) +CC = gcc +AR = ar rc +RANLIB = ranlib +#MAKE = make + +OBJ = mix.o rem.o rem1.o rem2.o rem3.o chain.o chain1.o chain2.o chain3.o nym.o pgp.o pgpdb.o pgpdata.o pgpget.o pgpcreat.o pool.o mail.o rfc822.o mime.o keymgt.o compress.o stats.o crypto.o random.o util.o buffers.o + +MIXOBJ = rndseed.o menu.o menusend.o menunym.o menuutil.o +NOMENUOBJ = rndseed.o dummy.o +WINOBJ = winmain.o winutil.o + +all: mix + +mix: $(OBJ) $(MIXOBJ) main.o $(LIBS) + $(CC) $(OBJ) $(MIXOBJ) main.o $(LIBS) $(LDFLAGS) -o mix + +libmix.a: $(OBJ) $(MIXOBJ) dllmain.o + $(AR) libmix.a $(OBJ) $(MIXOBJ) dllmain.o + +libmix32.a: libmix.a mixlib.def + dllwrap --dllname mixlib.dll --def mixlib.def --output-lib libmix32.a libmix.a zlib-1.1.4/libz.a pcre-2.08/libpcre.a openssl/libeay32.a -lwsock32 + +dllmix: main.o libmix32.a + $(CC) main.o libmix32.a -o dllmix + +winmix.exe: $(WINOBJ) libmix32.a + $(CC) $(WINOBJ) libmix32.a -lgdi32 -luser32 $(LDFLAGS) -o mix.exe + +winmix: winmenu.res #winmix.exe + rsrc winmenu.res mix.exe + +winmenu.o: winmenu.rc winmenu.h + windres winmenu.rc winmenu.o + +remailer: $(OBJ) $(NOMENUOBJ) remailer.o $(LIBS) + $(CC) $(OBJ) $(NOMENUOBJ) remailer.o $(LIBS) $(LDFLAGS) -o remailer + +mpgp: $(OBJ) $(NOMENUOBJ) pgptest.o $(LIBS) + $(CC) $(OBJ) $(NOMENUOBJ) pgptest.o $(LIBS) $(LDFLAGS) -o mpgp + +test: $(OBJ) test.o $(NOMENUOBJ) $(LIBS) + $(CC) $(OBJ) test.o $(NOMENUOBJ) $(LIBS) $(LDFLAGS) -o test + +clean: + -rm -f *.o *.a *.res *~ mix *.exe remailer test mpgp core gmon.out + +allclean: clean + -rm -f Makefile + +ci: clean + cd ~/mix3; ci -l * Mix/* Mix/Src/*; echo + +include Makefile.deps + + + + + diff --git a/mail/mixmaster/files/patch-aa b/mail/mixmaster/files/patch-aa new file mode 100644 index 000000000000..ef3a87f29f69 --- /dev/null +++ b/mail/mixmaster/files/patch-aa @@ -0,0 +1,11 @@ +--- config.h.orig 2003-09-27 18:53:56.000000000 +0200 ++++ config.h 2003-09-27 18:54:08.000000000 +0200 +@@ -138,7 +138,7 @@ + /* Give up if a file is larger than BUFFER_MAX bytes: */ + /* #define BUFFER_MAX 64*1024*1024 */ + +-#define PATHMAX 512 ++#define PATHMAX 1024 + #define LINELEN 128 + #define BUFSIZE 4096 + diff --git a/mail/mixmaster/files/patch-ab b/mail/mixmaster/files/patch-ab new file mode 100644 index 000000000000..a04e9078dd50 --- /dev/null +++ b/mail/mixmaster/files/patch-ab @@ -0,0 +1,11 @@ +--- mix.c.orig 2003-09-27 19:42:28.000000000 +0200 ++++ mix.c 2003-09-27 19:42:47.000000000 +0200 +@@ -86,7 +86,7 @@ char POOLDIR[PATHMAX]; + #ifdef WIN32 + char SENDMAIL[LINELEN] = "outfile"; + #else /* end of WIN32 */ +-char SENDMAIL[LINELEN] = "/usr/lib/sendmail -t"; ++char SENDMAIL[LINELEN] = "/usr/sbin/sendmail -t"; + #endif /* else if not WIN32 */ + char SENDANONMAIL[LINELEN]; + char NEWS[LINELEN]; diff --git a/mail/mixmaster/files/patch-ac b/mail/mixmaster/files/patch-ac new file mode 100644 index 000000000000..415b9fb6cc36 --- /dev/null +++ b/mail/mixmaster/files/patch-ac @@ -0,0 +1,13 @@ +--- pcre-2.08/Makefile.orig Fri Aug 30 09:36:52 2002 ++++ pcre-2.08/Makefile Fri Aug 30 09:37:14 2002 +@@ -51,8 +51,8 @@ + # into errlist. + + AR = ar cq +-CC = gcc -O2 -Wall +-CFLAGS = ++#CC = gcc -O2 -Wall ++CFLAGS += -Wall + RANLIB = @true + + # If you are going to obey "make install", edit these settings for your diff --git a/mail/mixmaster/files/patch-ad b/mail/mixmaster/files/patch-ad new file mode 100644 index 000000000000..078d348ef654 --- /dev/null +++ b/mail/mixmaster/files/patch-ad @@ -0,0 +1,8 @@ +--- ../conf/mix.cfg.orig Wed Oct 31 09:19:55 2001 ++++ ../conf/mix.cfg Mon Oct 28 13:17:39 2002 +@@ -1,3 +1,5 @@ ++SENDMAIL /usr/sbin/sendmail -t ++POOL /var/spool/mixmaster + ######################## Client configuration: ########################## + REMAIL n + diff --git a/mail/mixmaster/pkg-descr b/mail/mixmaster/pkg-descr new file mode 100644 index 000000000000..d0ba85ad3771 --- /dev/null +++ b/mail/mixmaster/pkg-descr @@ -0,0 +1,8 @@ +Mixmaster is an "Chaumian mix-net" anonymous remailer. Remailers provide +protection against traffic analysis and allow sending email anonymously or +pseudonymously. + +This software comes in a client only configuration! If you want +to setup a mixmaster server, read through the example files and man page. + +WWW: http://mixmaster.sf.net diff --git a/mail/mixmaster/pkg-plist b/mail/mixmaster/pkg-plist new file mode 100644 index 000000000000..cf03708f94d1 --- /dev/null +++ b/mail/mixmaster/pkg-plist @@ -0,0 +1,27 @@ +bin/mixmaster +bin/mixmaster-update.pl +%%EXAMPLESDIR%%/README +%%EXAMPLESDIR%%/abuse.txt.in +%%EXAMPLESDIR%%/adminkey.txt +%%EXAMPLESDIR%%/allpingers.txt +%%EXAMPLESDIR%%/blocked.txt.in +%%EXAMPLESDIR%%/dest.alw +%%EXAMPLESDIR%%/dest.blk +%%EXAMPLESDIR%%/end.hlp +%%EXAMPLESDIR%%/header.blk +%%EXAMPLESDIR%%/intro.hlp +%%EXAMPLESDIR%%/mix.cfg +%%EXAMPLESDIR%%/mix.cfg.ex +%%EXAMPLESDIR%%/mix.hlp +%%EXAMPLESDIR%%/mlist.txt +%%EXAMPLESDIR%%/news.hlp +%%EXAMPLESDIR%%/pgp.hlp +%%EXAMPLESDIR%%/pgponly.hlp +%%EXAMPLESDIR%%/pubring.asc +%%EXAMPLESDIR%%/pubring.mix +%%EXAMPLESDIR%%/rab.blk +%%EXAMPLESDIR%%/reply.txt.in +%%EXAMPLESDIR%%/rlist.txt +%%EXAMPLESDIR%%/type1.hlp +%%EXAMPLESDIR%%/usage.txt.in +@dirrm share/examples/mixmaster