From 72433bc1e9c4728a43d7de8ed056e71d93899299 Mon Sep 17 00:00:00 2001 From: fhajny Date: Wed, 25 May 2016 21:39:44 +0000 Subject: Update sqlgrey to 1.8.0. Add SMF support, clean up etc. * Mon Feb 13 2012 Martin Matuska - 1.8.0 release - Allow to specify complete DSN in configuration file - Support listening on UNIX sockets - Support pidfile command line argument * Mon Feb 01 2010 Michal Ludvig - Upgraded VERSION to 1.8.0-rc2 - Reverted GNU sed syntax in Makefile * Sat Jan 23 2010 Michal Ludvig - Upgraded VERSION to 1.8.0-rc1 - 'make dist' now creates sqlgrey-$VERSION.tar.gz with the help of 'git archive' * Mon Aug 17 2009 Michal Ludvig - 1.7.7 release getting ready - Reworked "smart"/"class-c" IPv6 address handling. - Added IPv6 address support for clients_ip_whitelist(.local) file - client_ip_whitelist(.local) now supports address/prefix notation both for IPv4 and IPv6 addresses. * Sun Aug 05 2007 Lionel Bouton - 1.7.6 release - Database handling fix (deactivated InactiveDestroy unless needed) - Reopen database connection on SIGUSR1 * Thu Feb 15 2007 Dan Faerch - 1.7.5 release - Changed db_cleanup. clean time stored in db for better handling, especially in clustered environments - Fix for harmless warnings about "possible typo" - Fix for sqlgrey dying if syslog is offline - Filled feature req from Riaan Kok. Support "postfix attributes on both sides".. Ie: "client_name !~ helo_name" * Sun Aug 03 2006 Dan Faerch - 1.7.4 release - Added feature Discrimination - Added feature DBCluster - Added config option reject_code (eg. answer 451 instead of 450) * Wed Nov 16 2005 Lionel Bouton - 1.7.3 release - fixes for a crash with '*' in email adresses * Tue Oct 25 2005 Lionel Bouton - 1.7.2 release - fixes for several errors in logging - clean_method ported from 1.6.x * Thu Sep 15 2005 Lionel Bouton - 1.7.1 release - fix for a race condition in multiple instances configurations - fix for weekly stats * Tue Jun 21 2005 Lionel Bouton - 1.7.0 release - now continue if the DB isn't available at startup time - based on 1.6.0 with Michel Bouissou's work: . better connect cleanup when creating AWL entries . source IP throttling --- mail/sqlgrey/MESSAGE | 13 +++++++ mail/sqlgrey/Makefile | 70 ++++++++++++++++++++++--------------- mail/sqlgrey/PLIST | 11 ++++-- mail/sqlgrey/distinfo | 18 +++++----- mail/sqlgrey/files/smf/manifest.xml | 32 +++++++++++++++++ mail/sqlgrey/patches/patch-aa | 10 +++--- mail/sqlgrey/patches/patch-ab | 36 ++++++++++++------- mail/sqlgrey/patches/patch-ac | 8 +++-- mail/sqlgrey/patches/patch-ad | 22 ++++++------ 9 files changed, 151 insertions(+), 69 deletions(-) create mode 100644 mail/sqlgrey/MESSAGE create mode 100644 mail/sqlgrey/files/smf/manifest.xml (limited to 'mail') diff --git a/mail/sqlgrey/MESSAGE b/mail/sqlgrey/MESSAGE new file mode 100644 index 00000000000..ae3dd3e7643 --- /dev/null +++ b/mail/sqlgrey/MESSAGE @@ -0,0 +1,13 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1 2016/05/25 21:39:44 fhajny Exp $ + +You'll need to install one of the three tested DBD driver packages +in order to use sqlgrey: + + - p5-DBD-mysql (DBD::MySQL) + - p5-DBD-postgresql (DBD::Pg) + - p5-DBD-SQLite (DBD::SQLite) + +and update sqlgrey.conf appropriately. + +=========================================================================== diff --git a/mail/sqlgrey/Makefile b/mail/sqlgrey/Makefile index 63c34e16980..264a2ac3741 100644 --- a/mail/sqlgrey/Makefile +++ b/mail/sqlgrey/Makefile @@ -1,45 +1,56 @@ -# $NetBSD: Makefile,v 1.10 2015/06/12 10:50:26 wiz Exp $ +# $NetBSD: Makefile,v 1.11 2016/05/25 21:39:44 fhajny Exp $ -DISTNAME= sqlgrey-1.6.8 -PKGREVISION= 7 +DISTNAME= sqlgrey-1.8.0 CATEGORIES= mail MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=sqlgrey/} -EXTRACT_SUFX= .tar.bz2 MAINTAINER= pkgsrc-users@NetBSD.org HOMEPAGE= http://sqlgrey.sourceforge.net/ COMMENT= Postfix greylisting policy daemon +LICENSE= gnu-gpl-v2 USE_TOOLS+= perl:run DEPENDS+= p5-Net-Server>=0.87:../../net/p5-Net-Server DEPENDS+= p5-IO-Multiplex>=1:../../devel/p5-IO-Multiplex -PKG_SYSCONFSUBDIR= ${PKGBASE} -EGDIR= ${PREFIX}/share/examples/${PKGBASE} - .include "../../mk/bsd.prefs.mk" +BUILD_DEFS+= VARBASE SQLGREY_DIR SQLGREY_PIDDIR +BUILD_DEFS+= SQLGREY_USER SQLGREY_GROUP + SQLGREY_USER?= sqlgrey SQLGREY_GROUP?= sqlgrey +SQLGREY_DIR?= ${VARBASE}/db/sqlgrey +SQLGREY_PIDDIR?= ${VARBASE}/run -PKG_USERS= ${SQLGREY_USER}:${SQLGREY_GROUP} -PKG_GROUPS= ${SQLGREY_GROUP} +PKG_USERS+= ${SQLGREY_USER}:${SQLGREY_GROUP} +PKG_GROUPS+= ${SQLGREY_GROUP} +PKG_HOME.${SQLGREY_USER}= ${SQLGREY_DIR} +PKG_USERS_VARS= SQLGREY_USER +PKG_GROUPS_VARS= SQLGREY_GROUP + +OWN_DIRS_PERMS+= ${SQLGREY_DIR} ${SQLGREY_USER} ${SQLGREY_GROUP} 0755 + +EGDIR= ${PREFIX}/share/examples/${PKGBASE} +INSTALLATION_DIRS+= share/doc/sqlgrey + +PKG_SYSCONFSUBDIR= ${PKGBASE} RCD_SCRIPTS= sqlgrey -MAKE_ENV+= EGDIR=${EGDIR} +CONFIG_FILES= sqlgrey.conf \ + clients_fqdn_whitelist clients_ip_whitelist \ + discrimination.regexp dyn_fqdn.regexp \ + smtp_server.regexp -CONF_FILES= ${EGDIR}/clients_fqdn_whitelist \ - ${PKG_SYSCONFDIR}/clients_fqdn_whitelist -CONF_FILES+= ${EGDIR}/clients_ip_whitelist \ - ${PKG_SYSCONFDIR}/clients_ip_whitelist -CONF_FILES+= ${EGDIR}/dyn_fqdn.regexp \ - ${PKG_SYSCONFDIR}/dyn_fqdn.regexp -CONF_FILES+= ${EGDIR}/smtp_server.regexp \ - ${PKG_SYSCONFDIR}/smtp_server.regexp -CONF_FILES+= ${EGDIR}/sqlgrey.conf \ - ${PKG_SYSCONFDIR}/sqlgrey.conf +DOC_FILES= FAQ HOWTO README README.DBCLUSTER \ + README.DISCRIMINATION README.OPTINOUT \ + README.PERF + +.for file in ${CONFIG_FILES} +CONF_FILES+= ${EGDIR}/${file} ${PKG_SYSCONFDIR}/${file} +.endfor REPLACE_PERL= sqlgrey-logstats.pl REPLACE_PERL+= sqlgrey @@ -48,16 +59,19 @@ REPLACE_SH= update_sqlgrey_config SUBST_CLASSES+= sysconfdir SUBST_STAGE.sysconfdir= pre-configure SUBST_FILES.sysconfdir= sqlgrey update_sqlgrey_config etc/sqlgrey.conf -SUBST_SED.sysconfdir= -e 's,%%PKG_SYSCONFDIR%%,${PKG_SYSCONFDIR},g' -SUBST_SED.sysconfdir+= -e 's,%%VARBASE%%,${VARBASE},g' -SUBST_SED.sysconfdir+= -e 's,%%SQLGREY_USER%%,${SQLGREY_USER},g' -SUBST_SED.sysconfdir+= -e 's,%%SQLGREY_GROUP%%,${SQLGREY_GROUP},g' +SUBST_VARS.sysconfdir= PKG_SYSCONFDIR SQLGREY_PIDDIR +SUBST_VARS.sysconfdir+= SQLGREY_USER SQLGREY_GROUP -BUILD_DEFS+= VARBASE -BUILD_DEFS+= SQLGREY_USER SQLGREY_GROUP +FILES_SUBST+= SQLGREY_USER=${SQLGREY_USER} +FILES_SUBST+= SQLGREY_GROUP=${SQLGREY_GROUP} -PKG_USERS_VARS= SQLGREY_USER -PKG_GROUPS_VARS= SQLGREY_GROUP +MAKE_ENV+= EGDIR=${EGDIR} + +post-install: + ${RM} -f ${DESTDIR}${PREFIX}/share/examples/sqlgrey/README +.for file in ${DOC_FILES} + ${INSTALL_DATA} ${WRKSRC}/${file} ${DESTDIR}${PREFIX}/share/doc/sqlgrey +.endfor .include "../../databases/p5-DBI/buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/mail/sqlgrey/PLIST b/mail/sqlgrey/PLIST index 6ae51fcb568..d262bcf0341 100644 --- a/mail/sqlgrey/PLIST +++ b/mail/sqlgrey/PLIST @@ -1,11 +1,18 @@ -@comment $NetBSD: PLIST,v 1.3 2014/03/11 14:05:05 jperkin Exp $ +@comment $NetBSD: PLIST,v 1.4 2016/05/25 21:39:44 fhajny Exp $ bin/sqlgrey-logstats.pl man/man1/sqlgrey.1 sbin/sqlgrey sbin/update_sqlgrey_config -share/examples/sqlgrey/README +share/doc/sqlgrey/FAQ +share/doc/sqlgrey/HOWTO +share/doc/sqlgrey/README +share/doc/sqlgrey/README.DBCLUSTER +share/doc/sqlgrey/README.DISCRIMINATION +share/doc/sqlgrey/README.OPTINOUT +share/doc/sqlgrey/README.PERF share/examples/sqlgrey/clients_fqdn_whitelist share/examples/sqlgrey/clients_ip_whitelist +share/examples/sqlgrey/discrimination.regexp share/examples/sqlgrey/dyn_fqdn.regexp share/examples/sqlgrey/smtp_server.regexp share/examples/sqlgrey/sqlgrey.conf diff --git a/mail/sqlgrey/distinfo b/mail/sqlgrey/distinfo index ed1d04dd4a0..82fc6647a21 100644 --- a/mail/sqlgrey/distinfo +++ b/mail/sqlgrey/distinfo @@ -1,10 +1,10 @@ -$NetBSD: distinfo,v 1.3 2015/11/03 23:27:21 agc Exp $ +$NetBSD: distinfo,v 1.4 2016/05/25 21:39:44 fhajny Exp $ -SHA1 (sqlgrey-1.6.8.tar.bz2) = 1c687d1839fd2911bf9ef535eef8e84bc97d56a6 -RMD160 (sqlgrey-1.6.8.tar.bz2) = f5f13004fa1a9228eb1c5a141ec1658738447899 -SHA512 (sqlgrey-1.6.8.tar.bz2) = 15afdd030464dde177dc135ca54ebf4d5967736e520c2fe0171594f70dc9e3e2d7a63190bfbc19f92e104144ce7d45948915f194d27d5915c9f5272f7293716f -Size (sqlgrey-1.6.8.tar.bz2) = 43551 bytes -SHA1 (patch-aa) = 1bf8853fece173be36f9c3ac1112b89dbfe2796d -SHA1 (patch-ab) = 637dc9870d6b01caa9cfe10109aeafd3192fbb66 -SHA1 (patch-ac) = 29100eb0d591abec3c2f628cc1c3eeaf46e739ac -SHA1 (patch-ad) = 661dc0b5b08ca96bdc0f7b571e62a706b174fa13 +SHA1 (sqlgrey-1.8.0.tar.gz) = 059ffabe639363bbed696ab40b0a07cce5730f35 +RMD160 (sqlgrey-1.8.0.tar.gz) = 503ff9487154506e2f550d931654822f014e6d20 +SHA512 (sqlgrey-1.8.0.tar.gz) = 97ab057bf7111159166a6963d5948c10468731730136ddca6449d2d629f39235c09d00497a52408bb87057905c1bf43bc064571ee6302d7f1f8c6408af82d044 +Size (sqlgrey-1.8.0.tar.gz) = 69476 bytes +SHA1 (patch-aa) = e6eb7bb4aa3169febfb6d0e7084ced34334112b3 +SHA1 (patch-ab) = f9bd117f36f1a4e9061845c226d23e24e7c6690b +SHA1 (patch-ac) = fb7be803cc1f2c84282eacb3cc1d9fadae3aa4ba +SHA1 (patch-ad) = 7abcb3e28a2a6c0605880cd6cca30391da9044fa diff --git a/mail/sqlgrey/files/smf/manifest.xml b/mail/sqlgrey/files/smf/manifest.xml new file mode 100644 index 00000000000..db6e5064fb5 --- /dev/null +++ b/mail/sqlgrey/files/smf/manifest.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mail/sqlgrey/patches/patch-aa b/mail/sqlgrey/patches/patch-aa index 506fd0c4efa..bfbdf0b934d 100644 --- a/mail/sqlgrey/patches/patch-aa +++ b/mail/sqlgrey/patches/patch-aa @@ -1,6 +1,8 @@ -$NetBSD: patch-aa,v 1.2 2010/02/04 02:43:52 joerg Exp $ +$NetBSD: patch-aa,v 1.3 2016/05/25 21:39:44 fhajny Exp $ ---- Makefile.orig 2005-06-07 02:28:38.000000000 +0200 +Default dirs. + +--- Makefile.orig 2012-02-13 16:54:08.000000000 +0000 +++ Makefile @@ -1,10 +1,8 @@ INSTALL = install @@ -16,8 +18,8 @@ $NetBSD: patch-aa,v 1.2 2010/02/04 02:43:52 joerg Exp $ +MANDIR = ${DESTDIR}$(PREFIX)/$(PKGMANDIR)/man1 VERSION := $(shell cat VERSION) - TBZ2 = sqlgrey-$(VERSION).tar.bz2 -@@ -30,9 +28,7 @@ clean: + +@@ -43,9 +41,7 @@ clean: install: all $(INSTALL) -d -m 755 $(SBINDIR) diff --git a/mail/sqlgrey/patches/patch-ab b/mail/sqlgrey/patches/patch-ab index e7363218764..b132ce9f9b7 100644 --- a/mail/sqlgrey/patches/patch-ab +++ b/mail/sqlgrey/patches/patch-ab @@ -1,44 +1,54 @@ -$NetBSD: patch-ab,v 1.1.1.1 2007/11/13 16:43:04 ghen Exp $ +$NetBSD: patch-ab,v 1.2 2016/05/25 21:39:44 fhajny Exp $ ---- sqlgrey.orig 2007-08-05 22:41:19.000000000 +0200 +Default dirs. Use native connection to syslog. + +--- sqlgrey.orig 2012-02-13 16:54:08.000000000 +0000 +++ sqlgrey -@@ -52,11 +52,11 @@ my $config = 'config'; +@@ -57,10 +57,10 @@ my $config = 'config'; # defaults my %dflt; $dflt{loglevel} = 2; # used for $dflt{log} entries in read_conffile() -$dflt{user} = 'sqlgrey'; -$dflt{group} = 'sqlgrey'; -+$dflt{user} = '%%SQLGREY_USER%%'; -+$dflt{group} = '%%SQLGREY_GROUP%%'; - $dflt{inet} = '2501'; -$dflt{pidfile} = '/var/run/sqlgrey.pid'; -$dflt{conf_dir} = '/etc/sqlgrey'; -+$dflt{pidfile} = '%%VARBASE%%/run/sqlgrey.pid'; -+$dflt{conf_dir} = '%%PKG_SYSCONFDIR%%'; ++$dflt{user} = '@SQLGREY_USER@'; ++$dflt{group} = '@SQLGREY_GROUP@'; ++$dflt{pidfile} = '@SQLGREY_PIDDIR@/sqlgrey.pid'; ++$dflt{conf_dir} = '@PKG_SYSCONFDIR@'; $dflt{reconnect_delay} = 5; # 5 minutes $dflt{max_connect_age} = 24; # 24 hours $dflt{awl_age} = 60; # 60 days -@@ -91,7 +91,7 @@ $dflt{log} = { # note values here are no +@@ -104,7 +104,7 @@ $dflt{log} = { # note values here are no }; # Default configuration file -my $config_file = '/etc/sqlgrey/sqlgrey.conf'; -+my $config_file = '%%PKG_SYSCONFDIR%%/sqlgrey.conf'; ++my $config_file = '@PKG_SYSCONFDIR@/sqlgrey.conf'; # whitelist files my $stat_ip_whitelist_file = $dflt{conf_dir} . '/clients_ip_whitelist'; -@@ -2390,12 +2390,12 @@ B [I...] +@@ -2639,7 +2639,7 @@ sub main() + log_level => $dflt{loglevel} > 2 ? $dflt{loglevel} : 2, + log_file => $opt{daemonize} ? 'Sys::Syslog' : undef, + syslog_facility => 'mail', +- syslog_logsock => 'unix', ++ syslog_logsock => 'native', + syslog_ident => defined $dflt{log_ident} ? $dflt{log_ident} : + # process name + $0 =~ m{.*/(.*)}, +@@ -2825,12 +2825,12 @@ B [I...] -k, --kill kill a running sqlgrey (identified by 'pidfile' content) -f, --configfile=FILE read config from FILE - (default /etc/sqlgrey/sqlgrey.conf) -+ (default %%PKG_SYSCONFDIR%%/sqlgrey.conf) ++ (default @PKG_SYSCONFDIR@/sqlgrey.conf) expecting config_param=value lines, - spaces are ignored, - '#' is used for comments -See the default config file at /etc/sqlgrey/sqlgrey.conf for runtime parameters. -+See the default config file at %%PKG_SYSCONFDIR%%/sqlgrey.conf for runtime parameters. ++See the default config file at @PKG_SYSCONFDIR@/sqlgrey.conf for runtime parameters. If you got sqlgrey from sources, read the HOWTO file in the compressed archive. If it came prepackaged, look into the documentation tree for this file: /usr/share/doc/sqlgrey-/ on most Linux distributions for example. diff --git a/mail/sqlgrey/patches/patch-ac b/mail/sqlgrey/patches/patch-ac index 7a00bab4b1e..7ae72085a8e 100644 --- a/mail/sqlgrey/patches/patch-ac +++ b/mail/sqlgrey/patches/patch-ac @@ -1,4 +1,6 @@ -$NetBSD: patch-ac,v 1.1.1.1 2007/11/13 16:43:04 ghen Exp $ +$NetBSD: patch-ac,v 1.2 2016/05/25 21:39:44 fhajny Exp $ + +Default dirs. --- update_sqlgrey_config.orig 2005-03-02 01:49:41.000000000 +0100 +++ update_sqlgrey_config @@ -7,7 +9,7 @@ $NetBSD: patch-ac,v 1.1.1.1 2007/11/13 16:43:04 ghen Exp $ LC_ALL=C -MYDIR=/etc/sqlgrey -+MYDIR=%%PKG_SYSCONFDIR%% ++MYDIR=@PKG_SYSCONFDIR@ CONF=$MYDIR/sqlgrey.conf # Get whitelists host and pidfile from conf @@ -16,7 +18,7 @@ $NetBSD: patch-ac,v 1.1.1.1 2007/11/13 16:43:04 ghen Exp $ if [ -z "$pidfile" ] then - pidfile="/var/run/sqlgrey.pid" -+ pidfile="/%%VARBASE%%/run/sqlgrey.pid" ++ pidfile="@SQLGREY_PIDDIR@/sqlgrey.pid" fi # Go into a temp directory diff --git a/mail/sqlgrey/patches/patch-ad b/mail/sqlgrey/patches/patch-ad index a79141610d0..8bc9bbc6a62 100644 --- a/mail/sqlgrey/patches/patch-ad +++ b/mail/sqlgrey/patches/patch-ad @@ -1,13 +1,15 @@ -$NetBSD: patch-ad,v 1.1.1.1 2007/11/13 16:43:04 ghen Exp $ +$NetBSD: patch-ad,v 1.2 2016/05/25 21:39:44 fhajny Exp $ ---- etc/sqlgrey.conf.orig 2005-12-20 11:41:30.000000000 +0100 +Default dirs. + +--- etc/sqlgrey.conf.orig 2012-02-13 16:54:08.000000000 +0000 +++ etc/sqlgrey.conf @@ -7,7 +7,7 @@ # - SQLgrey uses a specific config file when called with -f ## Configuration files -# conf_dir = /etc/sqlgrey -+# conf_dir = %%PKG_SYSCONFDIR%% ++# conf_dir = @PKG_SYSCONFDIR@ ## Log level # Uncomment to change the log level (default is normal: 2) @@ -17,17 +19,17 @@ $NetBSD: patch-ad,v 1.1.1.1 2007/11/13 16:43:04 ghen Exp $ ## username and groupname the daemon runs as -# user = sqlgrey -# group = sqlgrey -+# user = %%SQLGREY_USER%% -+# group = %%SQLGREY_GROUP%% ++# user = @SQLGREY_USER@ ++# group = @SQLGREY_GROUP@ ## Socket # On which socket do SQLgrey wait for queries -@@ -75,7 +75,7 @@ +@@ -73,7 +73,7 @@ - ## Config directory - # where to look for other configuration files (whitelists) --# confdir = /etc/sqlgrey -+# confdir = %%PKG_SYSCONFDIR%% + ## PID + # where to store the process PID +-# pidfile = /var/run/sqlgrey.pid ++# pidfile = @SQLGREY_PIDDIR@/sqlgrey.pid ## Greylisting delays # If you want to be really strict (RFC-wise) use these -- cgit v1.2.3