From 103cf8b2ebc990a52011b7b0adeab45dc63ee99d Mon Sep 17 00:00:00 2001 From: Marcin Deranek Date: Mon, 29 Sep 2014 09:02:24 +0200 Subject: Initial commit --- mail-filter/gps/Manifest | 6 +++ mail-filter/gps/files/digest-gps-1.005 | 3 ++ mail-filter/gps/files/gps-create-index.diff | 11 ++++++ mail-filter/gps/files/gps-gcc47.diff | 59 +++++++++++++++++++++++++++++ mail-filter/gps/files/gps-numeric.diff | 55 +++++++++++++++++++++++++++ mail-filter/gps/files/gps-two-dots.diff | 11 ++++++ mail-filter/gps/gps-1.005-r2.ebuild | 56 +++++++++++++++++++++++++++ 7 files changed, 201 insertions(+) create mode 100644 mail-filter/gps/Manifest create mode 100644 mail-filter/gps/files/digest-gps-1.005 create mode 100644 mail-filter/gps/files/gps-create-index.diff create mode 100644 mail-filter/gps/files/gps-gcc47.diff create mode 100644 mail-filter/gps/files/gps-numeric.diff create mode 100644 mail-filter/gps/files/gps-two-dots.diff create mode 100644 mail-filter/gps/gps-1.005-r2.ebuild (limited to 'mail-filter') diff --git a/mail-filter/gps/Manifest b/mail-filter/gps/Manifest new file mode 100644 index 0000000..7d3c446 --- /dev/null +++ b/mail-filter/gps/Manifest @@ -0,0 +1,6 @@ +AUX gps-create-index.diff 411 SHA256 adcd12b14b1c703d9e1a24ca356dfde88642621db8bcfaf450fa1c4b6573dcf9 SHA512 f323536099ad52292a85296daeb7b786cb375022d9372a97a6e6d458e59d61bcadfe57a65b30478e7fd4bf2548e97de645294ea2233192e204a1e806c4e44b61 WHIRLPOOL 3356efe91c6a6eb7a7c898ef911f7cf40d6546dc1ee77d830cfdafa625e58b8e6a77aa15323258b08e4ca528e21bee3cbebcc4a157636cd3c47e3964debabb41 +AUX gps-gcc47.diff 1470 SHA256 7c87d717f75f0f7ac2a38ac6398537860dac786dcff51effa8aa91f956b2876b SHA512 9ad1fd13ef36f0e4ec27fc9a84bef806fb6bebd8cee9abd2023a1cafc3b4f6d93d296b408f333e8241389470b60c5fa6f029148847c8570a8f4278b6c8f4efee WHIRLPOOL a79af60e420dc39ae5508a6e843c2b839938ea7e2880f461b74c1078dea513a792561193b256b1e4f8d524164ec4f5e617ef89aa4f7e2f3404b8cde6b1ff1e4d +AUX gps-numeric.diff 1710 SHA256 daf3648df3afa8f17f6511a25bc512a03a61f7061d6860c0e16e5bf55eb14a91 SHA512 06bb6f6227a8ba43bc93b990b3348da8021d383ee835e1342ceace6fc5a6e75aba33084221bc1d572cf74c5aafa1bdc459bf2bbd417641ab39de46edb5b41221 WHIRLPOOL 23d85b7af888f58201bd738d7d0ae6d254002480982a99169a9a2b5d1d3b1801f87535550f5b3a8a45fccc97ccdb6a1c54b9e816e503e5291cddeb3b4915fd3f +AUX gps-two-dots.diff 520 SHA256 3ff5003d82675c62e4dc7262e6e11aa3d39f3769b92eee0fd7ad776b9b278e79 SHA512 4477452d04e3f288f4abc157d66de509c51f7ea6004e852e7706837dab95d1f0da7dae2bb34176e4d8850a98e5e220f01693e7079eb16a1e2edd77b9c82a453c WHIRLPOOL c3933e61bac56cfe26fca3406ff897d1c935de63fbdacad93537113c7781e8d2f3c3ab4839509991e96bb972cc67b02d17d8a240b1a3f822e01d1eadcc52be5e +DIST gps-1.005-bugfix.tar.gz 260085 SHA256 42473432028587dc3a403a23484baaa32beada8e4726caadbe693a0dd496740d SHA512 fc14a79a82a04d1edd85494469181b0ca45b69c716e192528dbc6af722fcbcf4f985f75acea9f8efcdd0f353162a01f8032cd10c718f172aebba9f3e25d42c45 WHIRLPOOL f019747b7bc09510465b76643a62bfbf8707fbdd09290b685d17c3858af04714ac8ae5dbd5590697200c40545b9ce6ee9adb6e71af9fa34d8101d5be147f5225 +EBUILD gps-1.005-r2.ebuild 1098 SHA256 17860fa91d0774dd315e3947e8d701186b508b32b34887d58e1e28d4fdaccfde SHA512 821217a556c94d90e18ad1d471e4b045c398e172554b9979a57fa9600e420591ed6e04c580eb644db03818746ce3ef78b7638940c26b0f9fb8e8095d747c58dc WHIRLPOOL 5990fb620be2b3844672bdca2d1292f3593875cec24d9c96813c6320b26654919165b4ad17732dcb3f83098bc6a90c7c2c8d06a71e5b84b64d375dfdd3ce4ca1 diff --git a/mail-filter/gps/files/digest-gps-1.005 b/mail-filter/gps/files/digest-gps-1.005 new file mode 100644 index 0000000..b53c8c3 --- /dev/null +++ b/mail-filter/gps/files/digest-gps-1.005 @@ -0,0 +1,3 @@ +MD5 e791679e05c9dd22ed255d262a0ea918 gps-1.005-bugfix.tar.gz 260085 +RMD160 c6247360b93484761fc5fe06e2269838dd73274c gps-1.005-bugfix.tar.gz 260085 +SHA256 42473432028587dc3a403a23484baaa32beada8e4726caadbe693a0dd496740d gps-1.005-bugfix.tar.gz 260085 diff --git a/mail-filter/gps/files/gps-create-index.diff b/mail-filter/gps/files/gps-create-index.diff new file mode 100644 index 0000000..a77270d --- /dev/null +++ b/mail-filter/gps/files/gps-create-index.diff @@ -0,0 +1,11 @@ +--- gps-1.004/src/dbdefs.cpp.orig 2005-02-05 16:36:25.000000000 +0100 ++++ gps-1.004/src/dbdefs.cpp 2006-11-21 21:03:29.000000000 +0100 +@@ -111,7 +111,7 @@ + ","TRIPLETS_IPDEF(64)","TRIPLETS_IPDEF(32)","TRIPLETS_IPDEF(16)","TRIPLETS_IPDEF(8) + ")", + "CREATE INDEX sender_recipient_index ON "TABLE_TRIPLETS +- "("ATTR_SENDER"(15),"ATTR_RECIPIENT"(15)" ++ "("ATTR_SENDER","ATTR_RECIPIENT + } + }; + diff --git a/mail-filter/gps/files/gps-gcc47.diff b/mail-filter/gps/files/gps-gcc47.diff new file mode 100644 index 0000000..96f6c4c --- /dev/null +++ b/mail-filter/gps/files/gps-gcc47.diff @@ -0,0 +1,59 @@ +--- src/dbiquote.h.orig 2007-04-25 14:08:10.000000000 +0200 ++++ src/dbiquote.h 2012-01-06 10:11:22.358697110 +0100 +@@ -25,6 +25,7 @@ + #endif + + #include ++#include + #include + + #define DBIQUOTEDBG false +--- src/main.cpp.orig 2007-04-25 14:08:10.000000000 +0200 ++++ src/main.cpp 2012-01-06 10:12:15.815189588 +0100 +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include "defs.h" + #include "triplet.h" + #include "read.h" +@@ -110,7 +110,7 @@ + } + } + /// main +-int main(char argc,char* argv[]) ++int main(int argc,char* argv[]) + { + // Watchdog harakiri; + openlog(::s_gpsname, LOG_PID, GPS_LOG_FACILITY); +--- src/db.cpp.orig 2012-01-06 10:10:17.266090487 +0100 ++++ src/db.cpp 2012-01-06 10:13:08.947679800 +0100 +@@ -31,6 +31,7 @@ + #include "triplet.h" + #include + #include ++#include + #include "cfg.h" + #include "tmplwlmod.h" + #include "wldb.h" +--- src/wldb.h.orig 2007-04-25 14:08:10.000000000 +0200 ++++ src/wldb.h 2012-01-06 10:13:37.663941692 +0100 +@@ -25,6 +25,7 @@ + */ + #include + #include ++#include + #include + #include "triplet.h" + #include "db.h" +--- src/triplet.h.orig 2007-04-25 14:08:10.000000000 +0200 ++++ src/triplet.h 2012-01-06 10:17:47.194249074 +0100 +@@ -25,6 +25,7 @@ + #include + #endif + #include ++#include + #include + #include + #include diff --git a/mail-filter/gps/files/gps-numeric.diff b/mail-filter/gps/files/gps-numeric.diff new file mode 100644 index 0000000..17de74d --- /dev/null +++ b/mail-filter/gps/files/gps-numeric.diff @@ -0,0 +1,55 @@ +--- src/db.cpp 2005-03-02 22:12:17.000000000 +0100 ++++ src/db.cpp 2006-11-21 19:03:17.000000000 +0100 +@@ -71,17 +71,37 @@ + if(itr != params.end()) { + if((*itr).length() < (tempCharBuf-1) ) { + const char *value = (*itr).c_str(); +- char szBuf[tempCharBuf]; +- strcpy(szBuf,value); +- if(verbose) { +- if(string(key) == "password") +- syslog(LOG_DEBUG,"setting DB option: %s to: (hidden)",key); +- else +- syslog(LOG_DEBUG,"setting DB option: %s to: %s",key,szBuf); +- ++ // check if it is numeric ++ bool bNonDigit = false; ++ for( size_t i = 0; i < (*itr).size(); ++i ) ++ { ++ if( !isdigit( value[i] ) ) { ++ bNonDigit = true; ++ break; ++ } ++ } ++ if(bNonDigit || (string(key) == "password") ) { // string value ++ char szBuf[tempCharBuf]; ++ strcpy(szBuf,value); ++ if(verbose) { ++ if(string(key) == "password") ++ syslog(LOG_DEBUG,"setting DB option: %s to: (hidden)",key); ++ else ++ syslog(LOG_DEBUG,"setting DB option: %s to: %s",key,szBuf); ++ ++ } ++ if(dbi_conn_set_option(_con, key, szBuf) != 0) ++ throw runtime_error( getConError("dbi_conn_set_option "+(*itr)) ); ++ } else { // numeric value ++ int iVal = -1; ++ stringstream stm; ++ stm << (*itr); ++ stm >> iVal; ++ if(verbose) ++ syslog(LOG_DEBUG,"setting DB option: %s to: %d",key,iVal); ++ if(dbi_conn_set_option_numeric(_con, key, iVal) != 0) ++ throw runtime_error( getConError("dbi_conn_set_option "+(*itr)) ); + } +- if(dbi_conn_set_option(_con, key, szBuf) != 0) +- throw runtime_error( getConError("dbi_conn_set_option "+(*itr)) ); + } + } + } +@@ -422,3 +442,4 @@ + + + ++ diff --git a/mail-filter/gps/files/gps-two-dots.diff b/mail-filter/gps/files/gps-two-dots.diff new file mode 100644 index 0000000..164c205 --- /dev/null +++ b/mail-filter/gps/files/gps-two-dots.diff @@ -0,0 +1,11 @@ +--- gps-1.004/src/db.cpp.orig 2005-03-02 22:12:17.000000000 +0100 ++++ gps-1.004/src/db.cpp 2006-11-21 19:52:18.000000000 +0100 +@@ -413,7 +413,7 @@ + if(host.size() == 0) // not resolved + return string(host); + string::size_type pos = host.find('.'); +- if(pos == string::npos) // no dot in name ++ if(pos == host.rfind('.')) // less than two dots in name + return string(host); + if(WEAKRVHOSTDBG) cout << host.substr(pos) << " pos:" << pos << endl; + if(WEAKRVHOSTDBG) cout << host.substr(pos+1,string::npos) << endl; diff --git a/mail-filter/gps/gps-1.005-r2.ebuild b/mail-filter/gps/gps-1.005-r2.ebuild new file mode 100644 index 0000000..321e0c2 --- /dev/null +++ b/mail-filter/gps/gps-1.005-r2.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +inherit autotools eutils + +DESCRIPTION="Postfix greylisting policer" +HOMEPAGE="http://mimo.gn.apc.org/gps" +SRC_URI="http://downloads.sourceforge.net/greylist/${P}-bugfix.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="x86 amd64" +IUSE="doc" + +RDEPEND="dev-db/libdbi " +DEPEND="${RDEPEND}" + +# USE_DESTDIR="1" + +S=${WORKDIR}/release-${PV} + +src_unpack() { + unpack ${A} + cd "${S}" + + # Patch to accept numeric values to configure libdbi drivers + epatch "${FILESDIR}/${PN}-numeric.diff" + # Do not stip hostname if less than 2 dots + epatch "${FILESDIR}/${PN}-two-dots.diff" + # Make SQLite compatible index + epatch "${FILESDIR}/${PN}-create-index.diff" + # gcc 4.7+ compatibility + epatch "${FILESDIR}/${PN}-gcc47.diff" + + eautoreconf || die "Failed reconfiguration" +} + +src_install() { + dobin src/gps + + insinto /etc + doins etc/gps.conf + + dodoc AUTHORS ChangeLog INSTALL NEWS README TODO + + docinto config + dodoc etc/* + + docinto tests + dodoc tests/* + + docinto tools + dodoc tools/* + + dohtml src/gps-header.html +} -- cgit v1.2.3