summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwiz <wiz>2004-12-27 22:58:57 +0000
committerwiz <wiz>2004-12-27 22:58:57 +0000
commit4ed4c804e9505b784ded6354e3a99d0271c0a726 (patch)
tree4f328f46f70c2540b119a36d260db0134d8aa9b8
parent43d71c704a186d98c11852eceab80fc9d7a6f783 (diff)
downloadpkgsrc-4ed4c804e9505b784ded6354e3a99d0271c0a726.tar.gz
Initial import of mixminion-0.0.7.1, provided by Peter Hendrickson
in PR 25573, with some cleanup by me. Mixminion is a communication security application for electronic mail messages. Its purpose is to deny an adversary the ability to determine who is communicating with whom and to provide the closely related service of anonymous communication. It does this by sending messages through a series of servers. Messages going into and out of each server are encrypted. Each server keeps a pool of messages. When a message comes in it is placed in the pool. Messages sent out from the pool are difficult to correlate with the messages going in. This process is called "mixing." Each server reduces the ability of the adversary to determine the origin of a message. Chaining the servers further reduces this ability and contains the damage caused by compromised servers. The chain of servers is chosen by the Mixminion software running on the user's machine. See http://mixminion.net for a complete description.
-rw-r--r--security/mixminion/DESCR18
-rw-r--r--security/mixminion/Makefile25
-rw-r--r--security/mixminion/PLIST125
-rw-r--r--security/mixminion/distinfo7
-rw-r--r--security/mixminion/patches/patch-aa14
-rw-r--r--security/mixminion/patches/patch-ab52
-rw-r--r--security/mixminion/patches/patch-ac14
7 files changed, 255 insertions, 0 deletions
diff --git a/security/mixminion/DESCR b/security/mixminion/DESCR
new file mode 100644
index 00000000000..19a12bbc89c
--- /dev/null
+++ b/security/mixminion/DESCR
@@ -0,0 +1,18 @@
+Mixminion is a communication security application for electronic mail
+messages. Its purpose is to deny an adversary the ability to
+determine who is communicating with whom and to provide the closely
+related service of anonymous communication.
+
+It does this by sending messages through a series of servers.
+Messages going into and out of each server are encrypted. Each server
+keeps a pool of messages. When a message comes in it is placed in the
+pool. Messages sent out from the pool are difficult to correlate with
+the messages going in. This process is called "mixing."
+
+Each server reduces the ability of the adversary to determine the
+origin of a message. Chaining the servers further reduces this
+ability and contains the damage caused by compromised servers. The
+chain of servers is chosen by the Mixminion software running on the
+user's machine.
+
+See http://mixminion.net for a complete description.
diff --git a/security/mixminion/Makefile b/security/mixminion/Makefile
new file mode 100644
index 00000000000..b68ef23a1e7
--- /dev/null
+++ b/security/mixminion/Makefile
@@ -0,0 +1,25 @@
+# $NetBSD: Makefile,v 1.1.1.1 2004/12/27 22:58:57 wiz Exp $
+#
+
+DISTNAME= Mixminion-0.0.7.1
+PKGNAME= ${DISTNAME:S/M/m/}
+CATEGORIES= security mail
+MASTER_SITES= http://mixminion.net/dist/0.0.7.1/
+
+MAINTAINER= pdh@wiredyne.com
+HOMEPAGE= http://mixminion.net/
+COMMENT= Mixminion impedes message traffic analysis
+
+BUILDLINK_DEPENDS.openssl+= openssl>=0.9.7d
+
+CRYPTO= YES
+USE_BUILDLINK3= YES
+PYTHON_VERSIONS_ACCEPTED= 24pth 23pth 22pth 21pth
+PYDISTUTILSPKG= YES
+
+TEST_TARGET= test
+
+.include "../../lang/python/application.mk"
+.include "../../lang/python/extension.mk"
+.include "../../security/openssl/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/security/mixminion/PLIST b/security/mixminion/PLIST
new file mode 100644
index 00000000000..bfe3bb35dbf
--- /dev/null
+++ b/security/mixminion/PLIST
@@ -0,0 +1,125 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2004/12/27 22:58:57 wiz Exp $
+bin/mixminion
+bin/mixminiond
+${PYSITELIB}/mixminion/BuildMessage.py
+${PYSITELIB}/mixminion/BuildMessage.pyc
+${PYSITELIB}/mixminion/BuildMessage.pyo
+${PYSITELIB}/mixminion/ClientDirectory.py
+${PYSITELIB}/mixminion/ClientDirectory.pyc
+${PYSITELIB}/mixminion/ClientDirectory.pyo
+${PYSITELIB}/mixminion/ClientMain.py
+${PYSITELIB}/mixminion/ClientMain.pyc
+${PYSITELIB}/mixminion/ClientMain.pyo
+${PYSITELIB}/mixminion/ClientUtils.py
+${PYSITELIB}/mixminion/ClientUtils.pyc
+${PYSITELIB}/mixminion/ClientUtils.pyo
+${PYSITELIB}/mixminion/Common.py
+${PYSITELIB}/mixminion/Common.pyc
+${PYSITELIB}/mixminion/Common.pyo
+${PYSITELIB}/mixminion/Config.py
+${PYSITELIB}/mixminion/Config.pyc
+${PYSITELIB}/mixminion/Config.pyo
+${PYSITELIB}/mixminion/Crypto.py
+${PYSITELIB}/mixminion/Crypto.pyc
+${PYSITELIB}/mixminion/Crypto.pyo
+${PYSITELIB}/mixminion/Filestore.py
+${PYSITELIB}/mixminion/Filestore.pyc
+${PYSITELIB}/mixminion/Filestore.pyo
+${PYSITELIB}/mixminion/Fragments.py
+${PYSITELIB}/mixminion/Fragments.pyc
+${PYSITELIB}/mixminion/Fragments.pyo
+${PYSITELIB}/mixminion/MMTPClient.py
+${PYSITELIB}/mixminion/MMTPClient.pyc
+${PYSITELIB}/mixminion/MMTPClient.pyo
+${PYSITELIB}/mixminion/Main.py
+${PYSITELIB}/mixminion/Main.pyc
+${PYSITELIB}/mixminion/Main.pyo
+${PYSITELIB}/mixminion/NetUtils.py
+${PYSITELIB}/mixminion/NetUtils.pyc
+${PYSITELIB}/mixminion/NetUtils.pyo
+${PYSITELIB}/mixminion/Packet.py
+${PYSITELIB}/mixminion/Packet.pyc
+${PYSITELIB}/mixminion/Packet.pyo
+${PYSITELIB}/mixminion/ServerInfo.py
+${PYSITELIB}/mixminion/ServerInfo.pyc
+${PYSITELIB}/mixminion/ServerInfo.pyo
+${PYSITELIB}/mixminion/TLSConnection.py
+${PYSITELIB}/mixminion/TLSConnection.pyc
+${PYSITELIB}/mixminion/TLSConnection.pyo
+${PYSITELIB}/mixminion/ThreadUtils.py
+${PYSITELIB}/mixminion/ThreadUtils.pyc
+${PYSITELIB}/mixminion/ThreadUtils.pyo
+${PYSITELIB}/mixminion/__init__.py
+${PYSITELIB}/mixminion/__init__.pyc
+${PYSITELIB}/mixminion/__init__.pyo
+${PYSITELIB}/mixminion/_minionlib.so
+${PYSITELIB}/mixminion/_textwrap.py
+${PYSITELIB}/mixminion/_textwrap.pyc
+${PYSITELIB}/mixminion/_textwrap.pyo
+${PYSITELIB}/mixminion/benchmark.py
+${PYSITELIB}/mixminion/benchmark.pyc
+${PYSITELIB}/mixminion/benchmark.pyo
+${PYSITELIB}/mixminion/directory/DirCGI.py
+${PYSITELIB}/mixminion/directory/DirCGI.pyc
+${PYSITELIB}/mixminion/directory/DirCGI.pyo
+${PYSITELIB}/mixminion/directory/DirMain.py
+${PYSITELIB}/mixminion/directory/DirMain.pyc
+${PYSITELIB}/mixminion/directory/DirMain.pyo
+${PYSITELIB}/mixminion/directory/Directory.py
+${PYSITELIB}/mixminion/directory/Directory.pyc
+${PYSITELIB}/mixminion/directory/Directory.pyo
+${PYSITELIB}/mixminion/directory/ServerInbox.py
+${PYSITELIB}/mixminion/directory/ServerInbox.pyc
+${PYSITELIB}/mixminion/directory/ServerInbox.pyo
+${PYSITELIB}/mixminion/directory/ServerList.py
+${PYSITELIB}/mixminion/directory/ServerList.pyc
+${PYSITELIB}/mixminion/directory/ServerList.pyo
+${PYSITELIB}/mixminion/directory/__init__.py
+${PYSITELIB}/mixminion/directory/__init__.pyc
+${PYSITELIB}/mixminion/directory/__init__.pyo
+${PYSITELIB}/mixminion/server/DNSFarm.py
+${PYSITELIB}/mixminion/server/DNSFarm.pyc
+${PYSITELIB}/mixminion/server/DNSFarm.pyo
+${PYSITELIB}/mixminion/server/EventStats.py
+${PYSITELIB}/mixminion/server/EventStats.pyc
+${PYSITELIB}/mixminion/server/EventStats.pyo
+${PYSITELIB}/mixminion/server/HashLog.py
+${PYSITELIB}/mixminion/server/HashLog.pyc
+${PYSITELIB}/mixminion/server/HashLog.pyo
+${PYSITELIB}/mixminion/server/MMTPServer.py
+${PYSITELIB}/mixminion/server/MMTPServer.pyc
+${PYSITELIB}/mixminion/server/MMTPServer.pyo
+${PYSITELIB}/mixminion/server/Modules.py
+${PYSITELIB}/mixminion/server/Modules.pyc
+${PYSITELIB}/mixminion/server/Modules.pyo
+${PYSITELIB}/mixminion/server/PacketHandler.py
+${PYSITELIB}/mixminion/server/PacketHandler.pyc
+${PYSITELIB}/mixminion/server/PacketHandler.pyo
+${PYSITELIB}/mixminion/server/ServerConfig.py
+${PYSITELIB}/mixminion/server/ServerConfig.pyc
+${PYSITELIB}/mixminion/server/ServerConfig.pyo
+${PYSITELIB}/mixminion/server/ServerKeys.py
+${PYSITELIB}/mixminion/server/ServerKeys.pyc
+${PYSITELIB}/mixminion/server/ServerKeys.pyo
+${PYSITELIB}/mixminion/server/ServerMain.py
+${PYSITELIB}/mixminion/server/ServerMain.pyc
+${PYSITELIB}/mixminion/server/ServerMain.pyo
+${PYSITELIB}/mixminion/server/ServerQueue.py
+${PYSITELIB}/mixminion/server/ServerQueue.pyc
+${PYSITELIB}/mixminion/server/ServerQueue.pyo
+${PYSITELIB}/mixminion/server/__init__.py
+${PYSITELIB}/mixminion/server/__init__.pyc
+${PYSITELIB}/mixminion/server/__init__.pyo
+${PYSITELIB}/mixminion/test.py
+${PYSITELIB}/mixminion/test.pyc
+${PYSITELIB}/mixminion/test.pyo
+${PYSITELIB}/mixminion/testSupport.py
+${PYSITELIB}/mixminion/testSupport.pyc
+${PYSITELIB}/mixminion/testSupport.pyo
+man/man1/mixminion.1
+man/man5/mixminiond.conf.5
+man/man5/mixminionrc.5
+man/man8/mixminiond.8
+@dirrm ${PYSITELIB}/mixminion/server
+@dirrm ${PYSITELIB}/mixminion/directory
+@dirrm ${PYSITELIB}/mixminion
diff --git a/security/mixminion/distinfo b/security/mixminion/distinfo
new file mode 100644
index 00000000000..ffbfe770860
--- /dev/null
+++ b/security/mixminion/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1.1.1 2004/12/27 22:58:57 wiz Exp $
+
+SHA1 (Mixminion-0.0.7.1.tar.gz) = 62df7fea95e88267215ed7dc07a1715e099f5312
+Size (Mixminion-0.0.7.1.tar.gz) = 437539 bytes
+SHA1 (patch-aa) = 2f1c89cf13accdb820636a07f062a8c3f1f6bd0a
+SHA1 (patch-ab) = 1882865030d118f220181816c8594011465cdb63
+SHA1 (patch-ac) = e6f1dbc080e50feb9174d09df7b22c053c50e540
diff --git a/security/mixminion/patches/patch-aa b/security/mixminion/patches/patch-aa
new file mode 100644
index 00000000000..40ddadf473f
--- /dev/null
+++ b/security/mixminion/patches/patch-aa
@@ -0,0 +1,14 @@
+$NetBSD: patch-aa,v 1.1.1.1 2004/12/27 22:58:57 wiz Exp $
+
+--- Makefile.orig 2004-04-04 20:43:33.000000000 +0200
++++ Makefile
+@@ -12,8 +12,7 @@
+
+ # XXXX This fails when PYTHON is set to a version of Python earlier than 1.3
+
+-PYTHON_CANDIDATES = python python2.3 python2.3x python2.2 python2.2x python2.1\
+- python2.1x python2.0 python2.0x python2
++PYTHON_CANDIDATES = python2p4 python2p3 python2p2 python2p1
+ FINDPYTHON = \
+ if [ "x`which which`" = "x" ]; then \
+ echo "Ouch! I couldn't run 'which' on your system."; \
diff --git a/security/mixminion/patches/patch-ab b/security/mixminion/patches/patch-ab
new file mode 100644
index 00000000000..c93475f4470
--- /dev/null
+++ b/security/mixminion/patches/patch-ab
@@ -0,0 +1,52 @@
+$NetBSD: patch-ab,v 1.1.1.1 2004/12/27 22:58:57 wiz Exp $
+
+--- setup.py.orig 2004-05-10 19:36:22.000000000 +0200
++++ setup.py
+@@ -492,6 +492,9 @@ if os.path.exists("/usr/kerberos/include
+
+ INCLUDE_DIRS.append("src")
+
++INCLUDE_DIRS.append('/usr/pkg/include')
++INCLUDE_DIRS.append('/usr/include')
++
+ EXTRA_CFLAGS = []
+ if sys.platform != 'win32':
+ EXTRA_CFLAGS += [ '-Wno-strict-prototypes' ]
+@@ -534,6 +537,28 @@ elif sys.platform != 'win32':
+ else:
+ EXTRA = {}
+
++EXTRA = {'data_files':
++ [('man/man1', ['etc/mixminion.1']),
++ ('man/man5', ['etc/mixminionrc.5', 'etc/mixminiond.conf.5']),
++ ('man/man8', ['etc/mixminiond.8'])]}
++
++orig_opts = sysconfig.get_config_vars('OPT')
++if orig_opts == ['-DNDEBUG -O2 -I/usr/pkg/include -I/usr/include']:
++ sysconfig._config_vars['OPT'] = '-DNDEBUG -O2'
++elif orig_opts == ['-DNDEBUG -O2 -I/usr/include']:
++ sysconfig._config_vars['OPT'] = '-DNDEBUG -O2'
++elif orig_opts == ['-O2 -I/usr/include']:
++ sysconfig._config_vars['OPT'] = '-O2'
++elif orig_opts == ['-DNDEBUG -g -O3 -Wall -Wstrict-prototypes']:
++ pass
++elif orig_opts == ['-g -O2 -Wall -Wstrict-prototypes']:
++ pass
++else:
++ # The package defines the Python packages it can rely upon.
++ # If we get here, this assumption is invalid.
++ print "Looks like the Python we are using has unexpected properties."
++ sys.exit(1)
++
+ setup(name='Mixminion',
+ version=VERSION,
+ license="LGPL",
+@@ -550,6 +575,8 @@ setup(name='Mixminion',
+ **EXTRA
+ )
+
++sysconfig._config_vars['OPT'] = orig_opts
++
+ try:
+ for s in SCRIPTS:
+ os.unlink(s)
diff --git a/security/mixminion/patches/patch-ac b/security/mixminion/patches/patch-ac
new file mode 100644
index 00000000000..b753b32d8fc
--- /dev/null
+++ b/security/mixminion/patches/patch-ac
@@ -0,0 +1,14 @@
+$NetBSD: patch-ac,v 1.1.1.1 2004/12/27 22:58:57 wiz Exp $
+
+--- lib/mixminion/test.py.orig Sun Apr 4 10:43:12 2004
++++ lib/mixminion/test.py
+@@ -4272,7 +4272,8 @@ IntRS=5
+ self.assert_(os.path.exists(c[0]) and c[0].endswith("/rm"))
+ self.assertEquals(c[1], [])
+ self.assertEquals(C._parseCommand("/bin/ls"), ("/bin/ls", []))
+- self.failUnless(C._parseCommand("python")[0] is not None)
++ # "python" does not have to be in the path.
++# self.failUnless(C._parseCommand("python")[0] is not None)
+
+ # Base64
+ self.assertEquals(C._parseBase64(" YW\nJj"), "abc")