summaryrefslogtreecommitdiff
path: root/net-analyzer/postal
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /net-analyzer/postal
reinit the tree, so we can have metadata
Diffstat (limited to 'net-analyzer/postal')
-rw-r--r--net-analyzer/postal/Manifest11
-rw-r--r--net-analyzer/postal/files/01_postal-0.70-gcc43.patch11
-rw-r--r--net-analyzer/postal/files/02_postal-0.72-nossl.patch72
-rw-r--r--net-analyzer/postal/files/03_postal-0.70-c++0x-integrated.patch270
-rw-r--r--net-analyzer/postal/files/04_postal-0.70-warnings.patch17
-rw-r--r--net-analyzer/postal/files/05_postal-0.70-openssl-1.patch30
-rw-r--r--net-analyzer/postal/files/06_postal-0.70-ldflags.patch27
-rw-r--r--net-analyzer/postal/metadata.xml8
-rw-r--r--net-analyzer/postal/postal-0.72.ebuild37
9 files changed, 483 insertions, 0 deletions
diff --git a/net-analyzer/postal/Manifest b/net-analyzer/postal/Manifest
new file mode 100644
index 000000000000..fce100b48a42
--- /dev/null
+++ b/net-analyzer/postal/Manifest
@@ -0,0 +1,11 @@
+AUX 01_postal-0.70-gcc43.patch 268 SHA256 6e952639dfbb641f5367daec44c7a38e902b061239e2d5de578333b8b6bfc46a SHA512 6d2b6c4a947af4fe7c40315c42a5304bff0ff092016a37c2473a33d1f6e0fb39e527ec028802dc221d5993b50be6b2bd427e69820a20048d5861b1a5840085e6 WHIRLPOOL 3cd67110462d4faeb926c779d345153cdb7fdbd09ea0394cb7123d3526cb3453cad6ca82e8e2c13ffd70646190a0c03805e0031802c05f7ea67f14a38ba5a50d
+AUX 02_postal-0.72-nossl.patch 1905 SHA256 bd9befe311d72ddf027b1ae2ece4ce33747b8883fe7c86dc244f84f7252369d0 SHA512 22a1a3f2300f3da2f79325203889d8bb924721115762935f130d4d93617efba1e4058f57860aa78b16714ebc475f6654d1cfeddf5f93ae140d5e9ecda7d6ef65 WHIRLPOOL 739843838382c3e34a1152ffb0310017669aa879d91be446075ed85cb12229c814bd12c8af29448b7b9bff5e7858334cea41304bd48f1e507d2ad281bf354d17
+AUX 03_postal-0.70-c++0x-integrated.patch 7118 SHA256 687341a58889402a0681d0630b1a7ef2380129af34a431c5358fe454cb0e37ed SHA512 a52675f8951256a37cd54e9993f3377cc23ce80ef7fe94c93289e31b7b2aabaf3619b3cb099b1647cb6f01fad783ba47bce7160ac4ee896a7075a3d77008ef65 WHIRLPOOL c229b06134159187804e498e843e3b51a5f5538a116a6000b44c1f46ea4b8cb791760d284a7875e29eb6ff7acb4c6c78a1c38a85fbb3d249982af65bfbe77884
+AUX 04_postal-0.70-warnings.patch 445 SHA256 369b174bc39454cd6ca854cb05d403a56f739a1ab341a22bd2192a73e43791d1 SHA512 14c933f3a998a2dff7e2acc2970369e59509ac79684772da9da1747eda0065c5669cdfe21820883a2b103678d6b85278f9d330c051fc801a719d7e0e7f922422 WHIRLPOOL 4484b0f9efe64433c69a951f7a33f0e0609fd17df40b3c269b2b93a0179b592221ed0567592877f3923d921cf661a497caa96393c893544a68d768c0d6977ea2
+AUX 05_postal-0.70-openssl-1.patch 529 SHA256 552d803986a8adba0f7b88337ba215b41eb0c14a6f61f93e88821dfdb5269b54 SHA512 a1faba251a5939a9f0258c5689e3dc82553e4f66a4c288bca1b30ec5db10ebd912214cf03209035e37aa5dba92a4300b105c28af7f6db24a8f5bbd2b9b537c6d WHIRLPOOL 902f3b2a9ccc8484ef3942427124f825330c457b2204c0b552b2a5cdc84e72f89323674d0c966d0ac7801b3017e1ae10e48241cde761182ebab08bd69fb15edf
+AUX 06_postal-0.70-ldflags.patch 1276 SHA256 63c3ba423c1de13ae3db7d0fa6bd3fb54fc9c1327fe22e9d241febda836a2c60 SHA512 aa509bcc917d0b9c83faf00f9625681f6a394d91260aa304692916a90318e67d03009acbd48cb4fcf7ff0baf0578d70363125b172b1117ec0691d9bd32aa47c1 WHIRLPOOL 12a97d66af855699c2990c11756748e77bb3ce90424c01ae6975a6fccf1ed49dbb5d252cf104ef949d985a60adf5ab3998486614ba92e01b8bfc9e1e026001b7
+DIST postal-0.72.tgz 106720 SHA256 70d59adf8ab006a6ea389d8f276a265de743330458f5c1affb97d86bb0663bad SHA512 858d5a3ec452e868d6026d631d59260eab83e90c64ce185bf9c6cecd3494c591ba7cb1455f35a5f003acbbe33f4974669e6820750e4d4ce9432d72b350263c99 WHIRLPOOL 0471f8fe141a089df277ce231d373032459376540ade78ddddfb48cc6dcdae1769e72f144d4f41526b74669acb2a8c80ca9bd127f1c773ea90dca2c6a5ae580f
+EBUILD postal-0.72.ebuild 1080 SHA256 e829326121357cd1c785027446bdcd7adc0a0b48495bb536e4153efaa3ad6fbc SHA512 fe97e6ed80997f90e539049189443933f49eaf3c70ff0f7272b523008ed7ded1c91ef00bb19a9e27fad66d21d2d1a0435c44dde1af108190facf0713d64b917c WHIRLPOOL f1d6351b41a56ade6056838dc41293c2e6b48d2d59effb78d9872a0db6648cdef98d1a7258d02c8f8559e1823d9df941b0217810abe05f3ea5968b8dc31f417c
+MISC ChangeLog 2699 SHA256 4235b543f1c6a6d56cb08fb27774ff960ef720f09d892e0c13127607e847c6b2 SHA512 e166d00bfa720a0cee4f7c850fcfadd8b123e50da9fda035e1a44f7528ca1689e953485836e2e6e39d6810df6a0dea1722c7e4ccf3c5beec67d8625258d582c9 WHIRLPOOL daf6f69a9cc30a8da83bc6ce631ed3e1eaa6a0daa7c067c87da472f8c156705207bcfbe98229ff74661d112a6bfb182b8c318316c08deaf96ca6877cdf3ccbb7
+MISC ChangeLog-2015 1966 SHA256 19fe6c6e7f1b31151786823619bfea7df4f19351eaf2275680ece4a7a520a7e2 SHA512 0cbbb9370623f79c97c5a64d2976636a616cc2edd3b06b4b1866ea38354464074afeaca3a526468bd1875a237b143e7826d483356d57bb91f83532dacff11dc4 WHIRLPOOL 7c0c0c772f8dba2b14db155046202d3cd938a29444457c1c0bf5180e059b95be09d2e02e02741faf1ad710831c80c5ee5a2a5b9d31a6b9644df5a019956919e6
+MISC metadata.xml 244 SHA256 856e819659934229aa18649e0c783b9714fa33065cb5113e7b667ed68392b39a SHA512 0e856f808459b6d83c6eaeee418d87d85385968a39e6c1871a0eb76c04b533bbba16996a6f18613b7c550da90c76843bd01237be9b9f290394048e904535653c WHIRLPOOL 2aa292ef66863766df8920a2ebd497218854f9a41724cdef1d63a93c94620fbea641a688af2bb374673773dd5b1b8afff80867c974f49d5600991ab44f9b8752
diff --git a/net-analyzer/postal/files/01_postal-0.70-gcc43.patch b/net-analyzer/postal/files/01_postal-0.70-gcc43.patch
new file mode 100644
index 000000000000..fe577603ad3d
--- /dev/null
+++ b/net-analyzer/postal/files/01_postal-0.70-gcc43.patch
@@ -0,0 +1,11 @@
+--- rabid.cpp.orig 2008-06-15 14:05:19.776258513 +0200
++++ rabid.cpp 2008-06-15 14:05:47.927250506 +0200
+@@ -12,6 +12,8 @@
+ #include <strings.h>
+ #include "postal.h"
+ #include "logit.h"
++#include <cstring>
++
+ #ifdef USE_GNUTLS
+ #include <errno.h>
+ #include <gcrypt.h>
diff --git a/net-analyzer/postal/files/02_postal-0.72-nossl.patch b/net-analyzer/postal/files/02_postal-0.72-nossl.patch
new file mode 100644
index 000000000000..238dbdbb783d
--- /dev/null
+++ b/net-analyzer/postal/files/02_postal-0.72-nossl.patch
@@ -0,0 +1,72 @@
+diff -NrU5 postal-0.69.orig/configure.in postal-0.69/configure.in
+--- configure.in 2008-04-09 03:08:28.000000000 +0200
++++ configure.in 2008-04-23 22:37:41.000000000 +0200
+@@ -13,15 +13,28 @@
+ else
+ stripping="-s"
+ fi
+
+ AC_ARG_ENABLE(openssl,
+- [ --disable-openssl disables openssl support],
+- DISABLEOPENSSL=$opensslval, DISABLEOPENSSL=no)
++ [ --disable-openssl disable openssl support],
++ [ if test $enableval = yes; then
++ DISABLEOPENSSL=no
++ else
++ DISABLEOPENSSL=yes
++ fi ]
++ ,
++ [ DISABLEOPENSSL=no ])
++
+ AC_ARG_ENABLE(gnutls,
+- [ --disable-gnutls disables gnutls support],
+- DISABLEGNUTLS=$gnutlsval, DISABLEGNUTLS=no)
++ [ --disable-gnutls disables gnutls support],
++ [if test $enableval = yes; then
++ DISABLEGNUTLS=no
++ else
++ DISABLEGNUTLS=yes
++ fi]
++ ,
++ [ DISABLEGNUTLS=no ])
+
+ dnl Checks for programs.
+ AC_LANG_CPLUSPLUS
+ AC_PROG_CC
+ AC_PROG_CXX
+@@ -118,17 +131,17 @@
+ crypt_ldflags=
+ if [[ "$GNUTLS" = "no" ]]; then
+ gnutls=""
+ else
+ gnutls="#define USE_GNUTLS"
+- crypt_ldflags="$extra_ldflags -lgnutls -lgcrypt"
++ crypt_ldflags=" -lgnutls -lgcrypt"
+ fi
+ if [[ "$OPENSSL" = "no" ]]; then
+ openssl=""
+ else
+ openssl="#define USE_OPENSSL"
+- crypt_ldflags="$extra_ldflags -lssl -lcrypto"
++ crypt_ldflags=" -lssl -lcrypto"
+ fi
+
+ AC_SUBST(large_file)
+ large_file=""
+
+diff -NrU5 postal-0.69.orig/Makefile.in postal-0.69/Makefile.in
+--- Makefile.in 2008-04-10 03:19:34.000000000 +0200
++++ Makefile.in 2008-04-23 22:37:13.000000000 +0200
+@@ -16,11 +16,11 @@
+ INSTALL=@INSTALL@
+
+ TESTEXE=ex-test
+ BASEOBJS=userlist.o thread.o results.o address.o tcp.o cmd5.o mutex.o logit.o expand.o @extra_objs@
+ LFLAGS=-lstdc++ @extra_ldflags@
+-CRYPTLFLAGS=-lstdc++ @crypt_ldflags@
++CRYPTLFLAGS=-lstdc++ @extra_ldflags@ @crypt_ldflags@
+
+
+ ALLOBJS=$(BASEOBJS) smtp.o client.o basictcp.o bhmusers.o smtpserver.o
+
+ postal: postal.cpp $(BASEOBJS) postal.h smtp.o
diff --git a/net-analyzer/postal/files/03_postal-0.70-c++0x-integrated.patch b/net-analyzer/postal/files/03_postal-0.70-c++0x-integrated.patch
new file mode 100644
index 000000000000..9ad6a036dcda
--- /dev/null
+++ b/net-analyzer/postal/files/03_postal-0.70-c++0x-integrated.patch
@@ -0,0 +1,270 @@
+diff -NrU5 postal-0.69.orig/bhm.cpp postal-0.69/bhm.cpp
+--- postal-0.69.orig/bhm.cpp 2008-04-23 22:39:01.000000000 +0200
++++ postal-0.69/bhm.cpp 2008-04-24 01:31:54.000000000 +0200
+@@ -7,10 +7,11 @@
+ #include <ctype.h>
+ #include <unistd.h>
+ #include <sys/wait.h>
+ #include <signal.h>
+ #include <stdio.h>
++#include <cstdlib>
+ #include <sys/poll.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <arpa/inet.h>
+ #include <netinet/ip.h>
+diff -NrU5 postal-0.69.orig/bhmusers.cpp postal-0.69/bhmusers.cpp
+--- postal-0.69.orig/bhmusers.cpp 2008-04-10 03:36:27.000000000 +0200
++++ postal-0.69/bhmusers.cpp 2008-04-24 00:04:07.000000000 +0200
+@@ -1,9 +1,10 @@
+ #include "bhmusers.h"
+ #include <stdio.h>
+ #include <cstring>
+ #include "expand.h"
++#include <cstdlib>
+
+ BHMUsers::BHMUsers(const char *userListFile)
+ {
+ char buf[1024];
+ FILE *fp = fopen(userListFile, "r");
+diff -NrU5 postal-0.69.orig/bhmusers.h postal-0.69/bhmusers.h
+--- postal-0.69.orig/bhmusers.h 2006-09-28 17:20:28.000000000 +0200
++++ postal-0.69/bhmusers.h 2008-04-24 00:14:05.000000000 +0200
+@@ -4,16 +4,21 @@
+ using namespace std;
+
+ #include <string>
+ #include "conf.h"
+
++#ifdef HAVE_STDCXX_0X
++#include <unordered_map>
++#include <tr1/functional_hash.h>
++#else
+ #ifdef HAVE_EXT_HASH_MAP
+ using namespace __gnu_cxx;
+ #include <ext/hash_map>
+ #else
+ #include <hash_map.h>
+ #endif
++#endif
+
+ #include "postal.h"
+
+ typedef enum { eNone = 0, eDefer, eReject, eBounce, eGrey } USER_SMTP_ACTION;
+
+@@ -21,10 +26,13 @@
+ {
+ USER_SMTP_ACTION action;
+ int sync_time;
+ } BHM_DATA;
+
++#ifdef HAVE_STDCXX_0X
++typedef unordered_map<string, BHM_DATA , hash<string> > NAME_MAP;
++#else
+ namespace __gnu_cxx
+ {
+ template<> struct hash< std::string >
+ {
+ size_t operator() ( const std::string &x ) const
+@@ -33,10 +41,11 @@
+ }
+ };
+ }
+
+ typedef hash_map<string, BHM_DATA , hash<string> > NAME_MAP;
++#endif
+
+ class BHMUsers
+ {
+ public:
+ BHMUsers(const char *userListFile);
+diff -NrU5 postal-0.69.orig/configure.in postal-0.69/configure.in
+--- postal-0.69.orig/configure.in 2008-04-23 22:39:01.000000000 +0200
++++ postal-0.69/configure.in 2008-04-24 01:20:35.000000000 +0200
+@@ -155,6 +155,98 @@
+
+ AC_CHECK_HEADERS(vector ext/hash_map)
+
+ dnl Checks for library functions.
+
++AC_DEFUN([AC_COMPILE_STDCXX_0X], [
++ AC_CACHE_CHECK(if g++ supports C++0x features without additional flags,
++ ac_cv_cxx_compile_cxx0x_native,
++ [AC_LANG_SAVE
++ AC_LANG_CPLUSPLUS
++ AC_TRY_COMPILE([
++ template <typename T>
++ struct check
++ {
++ static_assert(sizeof(int) <= sizeof(T), "not big enough");
++ };
++
++ typedef check<check<bool>> right_angle_brackets;
++
++ int a;
++ decltype(a) b;
++
++ typedef check<int> check_type;
++ check_type c;
++ check_type&& cr = c;],,
++ ac_cv_cxx_compile_cxx0x_native=yes, ac_cv_cxx_compile_cxx0x_native=no)
++ AC_LANG_RESTORE
++ ])
++
++ AC_CACHE_CHECK(if g++ supports C++0x features with -std=c++0x,
++ ac_cv_cxx_compile_cxx0x_cxx,
++ [AC_LANG_SAVE
++ AC_LANG_CPLUSPLUS
++ ac_save_CXXFLAGS="$CXXFLAGS"
++ CXXFLAGS="$CXXFLAGS -std=c++0x"
++ AC_TRY_COMPILE([
++ template <typename T>
++ struct check
++ {
++ static_assert(sizeof(int) <= sizeof(T), "not big enough");
++ };
++
++ typedef check<check<bool>> right_angle_brackets;
++
++ int a;
++ decltype(a) b;
++
++ typedef check<int> check_type;
++ check_type c;
++ check_type&& cr = c;],,
++ ac_cv_cxx_compile_cxx0x_cxx=yes, ac_cv_cxx_compile_cxx0x_cxx=no)
++ CXXFLAGS="$ac_save_CXXFLAGS"
++ AC_LANG_RESTORE
++ ])
++
++ AC_CACHE_CHECK(if g++ supports C++0x features with -std=gnu++0x,
++ ac_cv_cxx_compile_cxx0x_gxx,
++ [AC_LANG_SAVE
++ AC_LANG_CPLUSPLUS
++ ac_save_CXXFLAGS="$CXXFLAGS"
++ CXXFLAGS="$CXXFLAGS -std=gnu++0x"
++ AC_TRY_COMPILE([
++ template <typename T>
++ struct check
++ {
++ static_assert(sizeof(int) <= sizeof(T), "not big enough");
++ };
++
++ typedef check<check<bool>> right_angle_brackets;
++
++ int a;
++ decltype(a) b;
++
++ typedef check<int> check_type;
++ check_type c;
++ check_type&& cr = c;],,
++ ac_cv_cxx_compile_cxx0x_gxx=yes, ac_cv_cxx_compile_cxx0x_gxx=no)
++ CXXFLAGS="$ac_save_CXXFLAGS"
++ AC_LANG_RESTORE
++ ])
++
++ if test "$ac_cv_cxx_compile_cxx0x_native" = yes ||
++ test "$ac_cv_cxx_compile_cxx0x_cxx" = yes ||
++ test "$ac_cv_cxx_compile_cxx0x_gxx" = yes; then
++ AC_DEFINE(HAVE_STDCXX_0X,,[Define if g++ supports C++0x features. ])
++ fi
++])
++
++AC_COMPILE_STDCXX_0X
++
++AC_SUBST(cstd)
++cstd=
++if test "$ac_cv_cxx_compile_cxx0x_cxx" = yes; then
++ cstd=-std=c++0x
++fi
++
+ AC_OUTPUT(Makefile postal.h port.h postal.spec sun/pkginfo)
++
+diff -NrU5 postal-0.69.orig/Makefile.in postal-0.69/Makefile.in
+--- postal-0.69.orig/Makefile.in 2008-04-23 22:39:01.000000000 +0200
++++ postal-0.69/Makefile.in 2008-04-24 00:29:40.000000000 +0200
+@@ -8,12 +8,12 @@
+ prefix=@prefix@
+ eprefix=@exec_prefix@
+ WFLAGS=-Wall -W -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Wcast-qual -pedantic
+ WPLUS=-Woverloaded-virtual -ffor-scope
+
+-CXX=@CXX@ $(CFLAGS) -O2 -g $(WFLAGS) $(WPLUS)
+-CC=@CC@ $(CFLAGS) -O2 -g $(WFLAGS)
++CXX=@CXX@ @cstd@ $(CFLAGS) $(WFLAGS) $(WPLUS)
++CC=@CC@ $(CFLAGS) $(WFLAGS)
+
+ INSTALL=@INSTALL@
+
+ TESTEXE=ex-test
+ BASEOBJS=userlist.o thread.o results.o address.o tcp.o cmd5.o mutex.o logit.o expand.o @extra_objs@
+diff -NrU5 postal-0.69.orig/postal.cpp postal-0.69/postal.cpp
+--- postal-0.69.orig/postal.cpp 2007-01-14 05:40:23.000000000 +0100
++++ postal-0.69/postal.cpp 2008-04-24 01:30:49.000000000 +0200
+@@ -6,10 +6,11 @@
+ #include "smtp.h"
+ #include <unistd.h>
+ #include <sys/wait.h>
+ #include <signal.h>
+ #include <stdio.h>
++#include <cstdlib>
+ #include "postal.h"
+ #include "logit.h"
+ #ifdef USE_GNUTLS
+ #include <errno.h>
+ #include <gcrypt.h>
+diff -NrU5 postal-0.69.orig/smtp.cpp postal-0.69/smtp.cpp
+--- postal-0.69.orig/smtp.cpp 2008-04-19 00:01:39.000000000 +0200
++++ postal-0.69/smtp.cpp 2008-04-24 00:14:49.000000000 +0200
+@@ -7,10 +7,11 @@
+ #include <time.h>
+ #include "userlist.h"
+ #include "logit.h"
+ #include "results.h"
+ #include <cstring>
++#include <cstdlib>
+
+ smtpData::smtpData()
+ : m_quit("QUIT\r\n")
+ , m_randomLetters("abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 1234567890 `~!@#$%^&*()-_=+[]{};:'\"|/?<>,")
+ , m_randomLen(strlen(m_randomLetters))
+diff -NrU5 postal-0.69.orig/smtp.h postal-0.69/smtp.h
+--- postal-0.69.orig/smtp.h 2008-04-19 00:01:23.000000000 +0200
++++ postal-0.69/smtp.h 2008-04-24 00:18:03.000000000 +0200
+@@ -4,16 +4,20 @@
+ using namespace std;
+ #include <string>
+ #include <cstring>
+ #include <time.h>
+ #include "conf.h"
++#ifdef HAVE_STDCXX_0X
++#include <unordered_map>
++#else
+ #ifdef HAVE_EXT_HASH_MAP
+ using namespace __gnu_cxx;
+ #include <ext/hash_map>
+ #else
+ #include <hash_map.h>
+ #endif
++#endif
+ #include "tcp.h"
+ #include "mutex.h"
+
+ class results;
+
+@@ -28,11 +32,15 @@
+ {
+ return (l1 == l2);
+ }
+ };
+
++#ifdef HAVE_STDCXX_0X
++typedef unordered_map<unsigned long, string *, hash<unsigned long>, eqlng> NAME_MAP;
++#else
+ typedef hash_map<unsigned long, string *, hash<unsigned long>, eqlng> NAME_MAP;
++#endif
+
+ class smtpData
+ {
+ public:
+ smtpData();
diff --git a/net-analyzer/postal/files/04_postal-0.70-warnings.patch b/net-analyzer/postal/files/04_postal-0.70-warnings.patch
new file mode 100644
index 000000000000..066cf972cdf7
--- /dev/null
+++ b/net-analyzer/postal/files/04_postal-0.70-warnings.patch
@@ -0,0 +1,17 @@
+diff -NrU5 postal-0.69.orig/bhm.cpp postal-0.69/bhm.cpp
+--- postal-0.69.orig/bhm.cpp 2008-04-23 01:47:25.000000000 +0200
++++ postal-0.69/bhm.cpp 2008-04-23 02:10:17.000000000 +0200
+@@ -67,11 +67,11 @@
+ Logit *debug;
+ } thread_data;
+
+ enum { eFree = 0, eUsed, eFinished };
+
+-int check_sender(CPCCHAR addr)
++int check_sender(CPCCHAR)
+ {
+ return 0;
+ }
+
+ int readCommand(base_tcp &t, char *buf, int bufSize, bool stripCR, int timeout = 60);
+
diff --git a/net-analyzer/postal/files/05_postal-0.70-openssl-1.patch b/net-analyzer/postal/files/05_postal-0.70-openssl-1.patch
new file mode 100644
index 000000000000..5b5c054ac98c
--- /dev/null
+++ b/net-analyzer/postal/files/05_postal-0.70-openssl-1.patch
@@ -0,0 +1,30 @@
+http://bugs.gentoo.org/327937
+
+--- basictcp.h
++++ basictcp.h
+@@ -89,7 +89,11 @@
+
+ #ifdef USE_SSL
+ #ifdef USE_OPENSSL
++ #if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ const SSL_METHOD *m_sslMeth;
++ #else
+ SSL_METHOD *m_sslMeth;
++ #endif
+ SSL_CTX* m_sslCtx;
+ SSL *m_ssl;
+ #else
+--- tcp.h
++++ tcp.h
+@@ -100,7 +100,11 @@
+
+ #ifdef USE_SSL
+ #ifdef USE_OPENSSL
++ #if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ const SSL_METHOD *m_sslMeth;
++ #else
+ SSL_METHOD *m_sslMeth;
++ #endif
+ SSL_CTX* m_sslCtx;
+ SSL *m_ssl;
+ #else
diff --git a/net-analyzer/postal/files/06_postal-0.70-ldflags.patch b/net-analyzer/postal/files/06_postal-0.70-ldflags.patch
new file mode 100644
index 000000000000..7bfb92de7f0d
--- /dev/null
+++ b/net-analyzer/postal/files/06_postal-0.70-ldflags.patch
@@ -0,0 +1,27 @@
+--- Makefile.in~ 2011-06-08 11:38:59.123333174 +0300
++++ Makefile.in 2011-06-08 11:46:02.000000000 +0300
+@@ -24,19 +24,19 @@
+ ALLOBJS=$(BASEOBJS) smtp.o client.o basictcp.o bhmusers.o smtpserver.o
+
+ postal: postal.cpp $(BASEOBJS) postal.h smtp.o
+- $(CXX) postal.cpp $(BASEOBJS) smtp.o -o postal $(CRYPTLFLAGS)
++ $(CXX) $(LDFLAGS) postal.cpp $(BASEOBJS) smtp.o -o postal $(CRYPTLFLAGS)
+
+ rabid: rabid.cpp $(BASEOBJS) postal.h client.o
+- $(CXX) rabid.cpp $(BASEOBJS) client.o -o rabid $(CRYPTLFLAGS)
++ $(CXX) $(LDFLAGS) rabid.cpp $(BASEOBJS) client.o -o rabid $(CRYPTLFLAGS)
+
+ bhm: bhm.cpp userlist.o basictcp.o logit.o results.o mutex.o bhmusers.o postal.h
+- $(CXX) bhm.cpp userlist.o basictcp.o logit.o results.o mutex.o bhmusers.o -o bhm $(CRYPTLFLAGS)
++ $(CXX) $(LDFLAGS) bhm.cpp userlist.o basictcp.o logit.o results.o mutex.o bhmusers.o -o bhm $(CRYPTLFLAGS)
+
+ ex-test: ex-test.cpp expand.o
+- $(CXX) ex-test.cpp expand.o -o ex-test $(LFLAGS)
++ $(CXX) $(LDFLAGS) ex-test.cpp expand.o -o ex-test $(LFLAGS)
+
+ postal-list: postal-list.cpp expand.o
+- $(CXX) postal-list.cpp expand.o -o postal-list $(LFLAGS)
++ $(CXX) $(LDFLAGS) postal-list.cpp expand.o -o postal-list $(LFLAGS)
+
+ install-bin: $(EXE) $(SEXE)
+ mkdir -p $(DESTDIR)$(eprefix)/sbin $(DESTDIR)$(eprefix)/bin
diff --git a/net-analyzer/postal/metadata.xml b/net-analyzer/postal/metadata.xml
new file mode 100644
index 000000000000..1c3bc7b3fcef
--- /dev/null
+++ b/net-analyzer/postal/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>net-mail@gentoo.org</email>
+ <name>Net-Mail</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-analyzer/postal/postal-0.72.ebuild b/net-analyzer/postal/postal-0.72.ebuild
new file mode 100644
index 000000000000..82e1541dd2e7
--- /dev/null
+++ b/net-analyzer/postal/postal-0.72.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+inherit autotools eutils
+
+DESCRIPTION="SMTP and POP mailserver benchmark. Supports SSL, randomized user accounts and more"
+HOMEPAGE="http://www.coker.com.au/postal/"
+SRC_URI="http://www.coker.com.au/postal/${P}.tgz"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~sparc ~x86"
+IUSE="ssl gnutls"
+#ssl is an alias for openssl. If both ssl and gnutls are enabled, automagic will
+#enable only gnutls.
+DEPEND="ssl? (
+ !gnutls? ( >=dev-libs/openssl-0.9.8g )
+ gnutls? ( >=net-libs/gnutls-2.2.2 )
+ )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/01_${PN}-0.70-gcc43.patch"
+ epatch "${FILESDIR}/02_${PN}-0.72-nossl.patch"
+ epatch "${FILESDIR}/03_${PN}-0.70-c++0x-integrated.patch"
+ epatch "${FILESDIR}/04_${PN}-0.70-warnings.patch"
+ epatch "${FILESDIR}/05_${PN}-0.70-openssl-1.patch"
+ epatch "${FILESDIR}/06_${PN}-0.70-ldflags.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-stripping \
+ $(use_enable ssl openssl) \
+ $(use_enable gnutls)
+}