From nobody Thu Apr 4 09:37:48 2024 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4V9GkN4nGxz5GfgC; Thu, 4 Apr 2024 09:37:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4V9GkN4Xx1z4vGr; Thu, 4 Apr 2024 09:37:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1712223468; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2SlycmoJebDSQHQNzPvmoM9eO9RvibipCIrhVElhJiM=; b=Be8tQBN4AGzPiaZXzurHIosEklaErv8AleB4/UzketTatESmUlymo8MymyNrw05mZRadvi spQ63QTB/rNoHCRbv85hGXE3t5gV5nA+p1J9xjbw7k5JY0hvMoFYQmpmHGLZGXRIZQduM+ kn587VVX1fNt3GgofMhIyry7317Kwr+4JwwgGuilXmc8Q/I6iCoYEGKsnY4nhGsmVuP7nW +R5T7QcgIbWelCck7/AL6hX0im0BOC+wTH1+6cVkHio8iFy1I7+m8iy5GqCFWavK052+I0 M2A2VgREsWekJDndySilo4MdMz/cTnShz7BV/PgiX1iwakkSD4Isg+0pFPBuaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1712223468; a=rsa-sha256; cv=none; b=JDvj3IOKzFCMUQqrWORzTnnT1y4PFKDC2m9FQlO4g2gArsucj6SvlIzSmWxS/0SwkLwqCH iGqCWU9f4+mUjNffAo8Vfq5LlZdXAnm4/VdyMot5L44ed/BpwozJ7nXfW0djnh94G4KUc4 bDJwITo2X755X7YXgR7UonNFnnDCfziEczxoarH2pECfPsMxSuizQQcxZo/NhyE3xVtc8+ L0Nkn7rSve5IQw38Z3zUXATDJZcw0xaLYCcdGPi7c2Ur5YfTE1B/1txDtJhnHL/gRnjr1X Ohz46VvZpU7zIU12VFa9do5sMxpgGej5JOSTKvDjMxLPaAC+y92E4dR5ErdZfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1712223468; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2SlycmoJebDSQHQNzPvmoM9eO9RvibipCIrhVElhJiM=; b=bhVALBhMPzitflab/33XTj9L55Zt90F1z9OlPCYQxBzu+hirNnzTAODDbxKjq8duhA0N+2 BzV9J/wLvUmebROSmwXTE3UuopSqoatuAv7wKg9kBW9VCkFKG1X5bHPnu7diYcFA/nh5Iq FxCb08dJmlfLSg97eawV56Iy+p7YgqiG+duGZTyNFSJWNsYAlUmSl/JJ9zKYammNyZMB8v m5w2mSaeyZGvc3oxplH+pT3hnS4Orsee8YENIIzEYTQunerptfbCLcMMJHlnhQE3PABwUM dy6n1i9HT0b7u48FcF5LKg3JlTHUk8WKP8DTI/HlQmLUYvNjrnyxEvcPlTGLzw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4V9GkN46nVz1B8g; Thu, 4 Apr 2024 09:37:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 4349bmvH055947; Thu, 4 Apr 2024 09:37:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4349bmW4055944; Thu, 4 Apr 2024 09:37:48 GMT (envelope-from git) Date: Thu, 4 Apr 2024 09:37:48 GMT Message-Id: <202404040937.4349bmW4055944@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Oleksii Samorukov Subject: git: add1cc6abc1b - main - mail/exilog: fix to be compatible with new exim msgid format List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: samm X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: add1cc6abc1b6c500ee0bf3666cbe5ac54deec96 Auto-Submitted: auto-generated The branch main has been updated by samm: URL: https://cgit.FreeBSD.org/ports/commit/?id=add1cc6abc1b6c500ee0bf3666cbe5ac54deec96 commit add1cc6abc1b6c500ee0bf3666cbe5ac54deec96 Author: Oleksii Samorukov AuthorDate: 2024-04-04 09:34:53 +0000 Commit: Oleksii Samorukov CommitDate: 2024-04-04 09:37:40 +0000 mail/exilog: fix to be compatible with new exim msgid format Recently exim changed msgid format, so tool does not work correctly anymore. I tried to contact upstream but no reply so far. Also some minor changes to make portlint happy --- mail/exilog/Makefile | 42 +++++----- mail/exilog/files/patch-doc_mysql-db-script.sql | 92 ++++++++++++++++++++++ mail/exilog/files/patch-doc_pgsql-db-script.sql | 65 +++++++++++++++ mail/exilog/files/patch-exilog__agent.pl | 32 ++++++++ mail/exilog/files/patch-exilog__cgi__messages.pm | 22 ++++++ mail/exilog/files/patch-exilog__parse.pm | 20 +++++ .../{patch-exilog_sql.pm => patch-exilog__sql.pm} | 6 +- mail/exilog/files/patch-exilog_agent.pl | 15 ---- mail/exilog/files/patch-ipv6 | 60 -------------- 9 files changed, 256 insertions(+), 98 deletions(-) diff --git a/mail/exilog/Makefile b/mail/exilog/Makefile index 1f7f76923513..d45506b34051 100644 --- a/mail/exilog/Makefile +++ b/mail/exilog/Makefile @@ -1,6 +1,6 @@ PORTNAME= exilog PORTVERSION= 0.5 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= mail MASTER_SITES= http://duncanthrax.net/exilog/ @@ -11,15 +11,10 @@ WWW= https://duncanthrax.net/exilog/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE -#RUN_DEPENDS= p5-Net-Netmask>=0:net-mgmt/p5-Net-Netmask - -OPTIONS_DEFINE= DOCS - USES= perl5 shebangfix -NO_BUILD= yes -NO_ARCH= yes +SHEBANG_GLOB= *.pl -SHEBANG_FILES= exilog_agent.pl exilog_cgi.pl exilog_cleanup.pl +RUN_DEPENDS= p5-Net-Netmask>=0:net-mgmt/p5-Net-Netmask # Default sql backend WITH_SQL_BACKEND?= mysql @@ -33,7 +28,7 @@ WITH_POSTGRESQL= yes RUN_DEPENDS+= p5-DBD-Pg>=0:databases/p5-DBD-Pg SERVER= postgresql .else -BROKEN= You should specify sql backend using WITH_SQL_BACKEND +BROKEN= you should specify sql backend using WITH_SQL_BACKEND .endif SUB_LIST+= SERVER=${SERVER} .ifndef WITHOUT_WWWDIR @@ -42,6 +37,8 @@ EXILOGDIR?= ${PREFIX}/www/exilog EXILOGDIR?= ${PREFIX}/exilog .endif +OPTIONS_DEFINE= DOCS + .include .if defined(WITHOUT_AGENT) @@ -51,6 +48,11 @@ USE_RC_SUBR= exilog PLIST_SUB+= AGENT="" .endif +NO_BUILD= yes +NO_ARCH= yes + +SHEBANG_FILES= exilog_agent.pl exilog_cgi.pl exilog_cleanup.pl + PLIST_SUB+= EXILOGDIR="${EXILOGDIR:S,^${PREFIX}/,,}" PORTDOC_FILES= doc/Changelog \ @@ -67,20 +69,20 @@ pre-patch: @${REINPLACE_CMD} -e "s,\(use exilog_config\),use lib \'${EXILOGDIR}\'; \1," ${WRKSRC}/exilog_cleanup.pl do-install: - @${MKDIR} ${STAGEDIR}${EXILOGDIR} ${STAGEDIR}${EXILOGDIR}/icons - @${CP} ${WRKSRC}/*.pm ${WRKSRC}/*.css ${WRKSRC}/*.js ${STAGEDIR}${EXILOGDIR} - @${CP} ${WRKSRC}/icons/* ${STAGEDIR}${EXILOGDIR}/icons + ${MKDIR} ${STAGEDIR}${EXILOGDIR} ${STAGEDIR}${EXILOGDIR}/icons + ${CP} ${WRKSRC}/*.pm ${WRKSRC}/*.css ${WRKSRC}/*.js ${STAGEDIR}${EXILOGDIR} + ${CP} ${WRKSRC}/icons/* ${STAGEDIR}${EXILOGDIR}/icons .if !defined(WITHOUT_AGENT) - @${INSTALL_SCRIPT} ${WRKSRC}/exilog_agent.pl ${STAGEDIR}${PREFIX}/sbin + ${INSTALL_SCRIPT} ${WRKSRC}/exilog_agent.pl ${STAGEDIR}${PREFIX}/sbin .endif - @${INSTALL_SCRIPT} ${WRKSRC}/exilog_cleanup.pl ${STAGEDIR}${PREFIX}/sbin - @${INSTALL_SCRIPT} ${WRKSRC}/exilog_cgi.pl ${STAGEDIR}${EXILOGDIR} - @${CP} ${WRKSRC}/exilog.conf-example ${STAGEDIR}${PREFIX}/etc/exilog.conf-dist - @${CHMOD} 0600 ${STAGEDIR}${PREFIX}/etc/exilog.conf-dist - @${CP} ${FILESDIR}/htaccess ${STAGEDIR}${EXILOGDIR}/.htaccess - @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_SCRIPT} ${WRKSRC}/exilog_cleanup.pl ${STAGEDIR}${PREFIX}/sbin + ${INSTALL_SCRIPT} ${WRKSRC}/exilog_cgi.pl ${STAGEDIR}${EXILOGDIR} + ${CP} ${WRKSRC}/exilog.conf-example ${STAGEDIR}${PREFIX}/etc/exilog.conf-dist + ${CHMOD} 0600 ${STAGEDIR}${PREFIX}/etc/exilog.conf-dist + ${CP} ${FILESDIR}/htaccess ${STAGEDIR}${EXILOGDIR}/.htaccess + ${MKDIR} ${STAGEDIR}${DOCSDIR} .for docfile in ${PORTDOC_FILES} - @${INSTALL_DATA} ${WRKSRC}/${docfile} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/${docfile} ${STAGEDIR}${DOCSDIR} .endfor .include diff --git a/mail/exilog/files/patch-doc_mysql-db-script.sql b/mail/exilog/files/patch-doc_mysql-db-script.sql new file mode 100644 index 000000000000..6d1fb9496dcc --- /dev/null +++ b/mail/exilog/files/patch-doc_mysql-db-script.sql @@ -0,0 +1,92 @@ +--- doc/mysql-db-script.sql.orig 2005-07-22 08:57:03 UTC ++++ doc/mysql-db-script.sql +@@ -15,12 +15,12 @@ + + CREATE TABLE `deferrals` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary NOT NULL default '', ++ `message_id` varchar(23) binary NOT NULL default '', + `timestamp` bigint(20) NOT NULL default '0', + `rcpt` varchar(200) NOT NULL default '', + `rcpt_intermediate` varchar(200) default NULL, + `rcpt_final` varchar(200) NOT NULL default '', +- `host_addr` varchar(15) default NULL, ++ `host_addr` varchar(45) default NULL, + `host_dns` varchar(255) default NULL, + `tls_cipher` varchar(128) default NULL, + `router` varchar(128) default NULL, +@@ -43,12 +43,12 @@ CREATE TABLE `deferrals` ( + + CREATE TABLE `deliveries` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary NOT NULL default '', ++ `message_id` varchar(23) binary NOT NULL default '', + `timestamp` bigint(20) NOT NULL default '0', + `rcpt` varchar(200) NOT NULL default '', + `rcpt_intermediate` varchar(200) default NULL, + `rcpt_final` varchar(200) NOT NULL default '', +- `host_addr` varchar(15) default NULL, ++ `host_addr` varchar(45) default NULL, + `host_dns` varchar(255) default NULL, + `tls_cipher` varchar(128) default NULL, + `router` varchar(128) default NULL, +@@ -71,12 +71,12 @@ CREATE TABLE `deliveries` ( + + CREATE TABLE `errors` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary NOT NULL default '', ++ `message_id` varchar(23) binary NOT NULL default '', + `timestamp` bigint(20) NOT NULL default '0', + `rcpt` varchar(200) NOT NULL default '', + `rcpt_intermediate` varchar(200) default NULL, + `rcpt_final` varchar(200) NOT NULL default '', +- `host_addr` varchar(15) default NULL, ++ `host_addr` varchar(45) default NULL, + `host_dns` varchar(255) default NULL, + `tls_cipher` varchar(128) default NULL, + `router` varchar(128) default NULL, +@@ -99,12 +99,12 @@ CREATE TABLE `errors` ( + + CREATE TABLE `messages` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary NOT NULL default '', ++ `message_id` varchar(23) binary NOT NULL default '', + `timestamp` bigint(20) default NULL, + `msgid` varchar(255) default NULL, + `completed` bigint(20) default NULL, + `mailfrom` varchar(255) default NULL, +- `host_addr` varchar(15) default NULL, ++ `host_addr` varchar(45) default NULL, + `host_rdns` varchar(255) default NULL, + `host_ident` varchar(255) default NULL, + `host_helo` varchar(255) default NULL, +@@ -132,7 +132,7 @@ CREATE TABLE `messages` ( + + CREATE TABLE `queue` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary NOT NULL default '', ++ `message_id` varchar(23) binary NOT NULL default '', + `mailfrom` varchar(255) NOT NULL default '', + `timestamp` bigint(20) NOT NULL default '0', + `num_dsn` int(11) NOT NULL default '0', +@@ -162,9 +162,9 @@ CREATE TABLE `queue` ( + + CREATE TABLE `rejects` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary default NULL, ++ `message_id` varchar(23) binary default NULL, + `timestamp` bigint(20) NOT NULL default '0', +- `host_addr` varchar(15) NOT NULL default '', ++ `host_addr` varchar(45) NOT NULL default '', + `host_rdns` varchar(255) NOT NULL default '', + `host_ident` varchar(255) default NULL, + `host_helo` varchar(255) default NULL, +@@ -188,7 +188,7 @@ CREATE TABLE `rejects` ( + + CREATE TABLE `unknown` ( + `server` varchar(32) NOT NULL default '', +- `message_id` varchar(16) binary NOT NULL default '', ++ `message_id` varchar(23) binary NOT NULL default '', + `timestamp` bigint(20) NOT NULL default '0', + `line` varchar(255) NOT NULL default '', + PRIMARY KEY (`server`,`message_id`,`timestamp`,`line`), diff --git a/mail/exilog/files/patch-doc_pgsql-db-script.sql b/mail/exilog/files/patch-doc_pgsql-db-script.sql new file mode 100644 index 000000000000..ca287f30388c --- /dev/null +++ b/mail/exilog/files/patch-doc_pgsql-db-script.sql @@ -0,0 +1,65 @@ +--- doc/pgsql-db-script.sql.orig 2024-04-04 09:13:29 UTC ++++ doc/pgsql-db-script.sql +@@ -24,7 +24,7 @@ SET search_path = exilog, pg_catalog; + + CREATE TABLE deferrals ( + server character varying(32) NOT NULL, +- message_id character(16) NOT NULL, ++ message_id character(23) NOT NULL, + "timestamp" bigint NOT NULL, + rcpt character varying(200) NOT NULL, + rcpt_intermediate character varying(200), +@@ -46,7 +46,7 @@ CREATE TABLE deferrals ( + + CREATE TABLE errors ( + server character varying(32) NOT NULL, +- message_id character(16) NOT NULL, ++ message_id character(23) NOT NULL, + "timestamp" bigint NOT NULL, + rcpt character varying(200) NOT NULL, + rcpt_intermediate character varying(200), +@@ -68,7 +68,7 @@ CREATE TABLE errors ( + + CREATE TABLE deliveries ( + server character varying(32) NOT NULL, +- message_id character(16) NOT NULL, ++ message_id character(23) NOT NULL, + "timestamp" bigint NOT NULL, + rcpt character varying(200) NOT NULL, + rcpt_intermediate character varying(200), +@@ -89,7 +89,7 @@ CREATE TABLE deliveries ( + + CREATE TABLE queue ( + server character varying(32) NOT NULL, +- message_id character(16) NOT NULL, ++ message_id character(23) NOT NULL, + mailfrom character varying(255), + "timestamp" bigint, + num_dsn integer, +@@ -111,7 +111,7 @@ CREATE TABLE queue ( + + CREATE TABLE "unknown" ( + server character varying(32) NOT NULL, +- message_id character(16) NOT NULL, ++ message_id character(23) NOT NULL, + "timestamp" bigint NOT NULL, + line character varying(255) NOT NULL + ); +@@ -124,7 +124,7 @@ CREATE TABLE "unknown" ( + + CREATE TABLE messages ( + server character varying(32) NOT NULL, +- message_id character(16) NOT NULL, ++ message_id character(23) NOT NULL, + "timestamp" bigint, + msgid character varying(255), + completed bigint, +@@ -148,7 +148,7 @@ CREATE TABLE messages ( + + CREATE TABLE rejects ( + server character varying(32) NOT NULL, +- message_id character(16), ++ message_id character(23), + "timestamp" bigint NOT NULL, + host_addr inet, + host_rdns character varying(255), diff --git a/mail/exilog/files/patch-exilog__agent.pl b/mail/exilog/files/patch-exilog__agent.pl new file mode 100644 index 000000000000..26fcf26a5c35 --- /dev/null +++ b/mail/exilog/files/patch-exilog__agent.pl @@ -0,0 +1,32 @@ +--- exilog_agent.pl.orig 2024-04-04 09:07:54 UTC ++++ exilog_agent.pl +@@ -48,7 +48,11 @@ unless ($foreground) { + }; + + setsid(); +- ++ my $me = "exilog"; ++ my $pidfile = "/var/run/".$me.".pid"; ++ open (PID,">$pidfile"); ++ print PID $$; ++ close (PID); + # dup STDOUT/ERR + open(STDOUT, ">&LOG"); + open(STDERR, ">&LOG"); +@@ -413,13 +417,13 @@ sub _tail { + print STDERR "($$) [exilog_agent:_tail] ($logfile) ".scalar localtime()." ".$_[0]; + }; + +- # open the file +- open(LOGFILE,"< $logfile"); +- + # import parser, open DB connection + use exilog_parse; + use exilog_sql; + reconnect(); ++ ++ # open the file ++ open(LOGFILE,"< $logfile"); + + my $curpos; + my $fsize = (-s $logfile); diff --git a/mail/exilog/files/patch-exilog__cgi__messages.pm b/mail/exilog/files/patch-exilog__cgi__messages.pm new file mode 100644 index 000000000000..33f38545071a --- /dev/null +++ b/mail/exilog/files/patch-exilog__cgi__messages.pm @@ -0,0 +1,22 @@ +--- exilog_cgi_messages.pm.orig 2005-07-26 11:34:47 UTC ++++ exilog_cgi_messages.pm +@@ -145,8 +145,8 @@ sub _select_host { + } + + my @queries; +- if ($param->{'qs'} =~ /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/) { +- # IPv4 address ++ if ($param->{'qs'} =~ /^[0-9A-Fa-f.:]+$/) { ++ # IPv4 or IPv6 address + push @queries, { 'table' => 'messages', + 'criteria' => { 'host_addr' => $param->{'qs'} } }, + { 'table' => 'rejects', +@@ -352,7 +352,7 @@ sub messages { + delete $message->{timestamp}; + + # Check the message ID. +- if ($message->{message_id} !~ /^.{6}\-.{6}\-.{2}$/) { ++ if ($message->{message_id} !~ /^.{6}\-.{6,11}\-.{2,4}$/) { + # This is a pre-DATA reject/warning. + # Render it as a reject. + my $complete = @{ sql_select( 'rejects', ['*'], $message ) }[0]; diff --git a/mail/exilog/files/patch-exilog__parse.pm b/mail/exilog/files/patch-exilog__parse.pm new file mode 100644 index 000000000000..3e746f9f049c --- /dev/null +++ b/mail/exilog/files/patch-exilog__parse.pm @@ -0,0 +1,20 @@ +--- exilog_parse.pm.orig 2024-04-04 09:14:20 UTC ++++ exilog_parse.pm +@@ -260,7 +260,7 @@ sub parse_reject_line { + # and one with message ID (post-DATA). Try the latter first. + + m/()()()()/; +- $subj =~ m/(\d{4}-\d\d-\d\d) (\d\d:\d\d:\d\d( [-+]\d{4})?) ([A-Za-z0-9]{6}-[A-Za-z0-9]{6}-[A-Za-z0-9]{2}) (H=.*)$/; ++ $subj =~ m/(\d{4}-\d\d-\d\d) (\d\d:\d\d:\d\d( [-+]\d{4})?) ([A-Za-z0-9]{6}-[A-Za-z0-9]{6,11}-[A-Za-z0-9]{2,4}) (H=.*)$/; + my ($date,$tod,$msgid,$line) = ($1,$2,$4,$5); + if ($date && $tod && $msgid && $line) { + # line with message id +@@ -297,7 +297,7 @@ sub parse_message_line { + return 0 if ($subj =~ /retry time not reached for any host$/); + + # Grab date, time and message id +- $subj =~ m/(\d{4}-\d\d-\d\d) (\d\d:\d\d:\d\d( [-+]\d{4})?) ([A-Za-z0-9]{6}-[A-Za-z0-9]{6}-[A-Za-z0-9]{2}) (([^ ]+).*)$/; ++ $subj =~ m/(\d{4}-\d\d-\d\d) (\d\d:\d\d:\d\d( [-+]\d{4})?) ([A-Za-z0-9]{6}-[A-Za-z0-9]{6,11}-[A-Za-z0-9]{2,4}) (([^ ]+).*)$/; + my ($date,$tod,$msgid,$line,$type) = ($1,$2,$4,$5,$6); + $line =~ s/^ +// if (defined($line)); + unless ($date && $tod && $msgid && $line && $type) { diff --git a/mail/exilog/files/patch-exilog_sql.pm b/mail/exilog/files/patch-exilog__sql.pm similarity index 62% rename from mail/exilog/files/patch-exilog_sql.pm rename to mail/exilog/files/patch-exilog__sql.pm index 9f1aa3d1099c..0a22b977a377 100644 --- a/mail/exilog/files/patch-exilog_sql.pm +++ b/mail/exilog/files/patch-exilog__sql.pm @@ -1,6 +1,6 @@ ---- /usr/local/www/exilog/exilog_sql.pm Tue Feb 21 16:23:56 2006 -+++ exilog_sql.pm Wed Aug 24 09:22:29 2005 -@@ -208,7 +208,7 @@ +--- exilog_sql.pm.orig 2005-08-24 14:22:29 UTC ++++ exilog_sql.pm +@@ -208,7 +208,7 @@ sub _pgsql_sql_queue_add { sub _pgsql_sql_optimize { my $where = shift || "nothing"; diff --git a/mail/exilog/files/patch-exilog_agent.pl b/mail/exilog/files/patch-exilog_agent.pl deleted file mode 100644 index 4a970498a1a5..000000000000 --- a/mail/exilog/files/patch-exilog_agent.pl +++ /dev/null @@ -1,15 +0,0 @@ ---- exilog_agent.pl.orig Sat Jun 4 19:36:03 2005 -+++ exilog_agent.pl Sat Jun 4 19:39:00 2005 -@@ -46,7 +46,11 @@ - }; - - setsid(); -- -+ my $me = "exilog"; -+ my $pidfile = "/var/run/".$me.".pid"; -+ open (PID,">$pidfile"); -+ print PID $$; -+ close (PID); - # dup STDOUT/ERR - open(STDOUT, ">&LOG"); - open(STDERR, ">&LOG"); diff --git a/mail/exilog/files/patch-ipv6 b/mail/exilog/files/patch-ipv6 deleted file mode 100644 index 0d17adbcdbde..000000000000 --- a/mail/exilog/files/patch-ipv6 +++ /dev/null @@ -1,60 +0,0 @@ ---- doc/mysql-db-script.sql.orig 2012-02-06 14:35:52.000000000 +0200 -+++ doc/mysql-db-script.sql 2012-02-06 14:36:11.000000000 +0200 -@@ -20,7 +20,7 @@ - `rcpt` varchar(200) NOT NULL default '', - `rcpt_intermediate` varchar(200) default NULL, - `rcpt_final` varchar(200) NOT NULL default '', -- `host_addr` varchar(15) default NULL, -+ `host_addr` varchar(45) default NULL, - `host_dns` varchar(255) default NULL, - `tls_cipher` varchar(128) default NULL, - `router` varchar(128) default NULL, -@@ -48,7 +48,7 @@ - `rcpt` varchar(200) NOT NULL default '', - `rcpt_intermediate` varchar(200) default NULL, - `rcpt_final` varchar(200) NOT NULL default '', -- `host_addr` varchar(15) default NULL, -+ `host_addr` varchar(45) default NULL, - `host_dns` varchar(255) default NULL, - `tls_cipher` varchar(128) default NULL, - `router` varchar(128) default NULL, -@@ -76,7 +76,7 @@ - `rcpt` varchar(200) NOT NULL default '', - `rcpt_intermediate` varchar(200) default NULL, - `rcpt_final` varchar(200) NOT NULL default '', -- `host_addr` varchar(15) default NULL, -+ `host_addr` varchar(45) default NULL, - `host_dns` varchar(255) default NULL, - `tls_cipher` varchar(128) default NULL, - `router` varchar(128) default NULL, -@@ -104,7 +104,7 @@ - `msgid` varchar(255) default NULL, - `completed` bigint(20) default NULL, - `mailfrom` varchar(255) default NULL, -- `host_addr` varchar(15) default NULL, -+ `host_addr` varchar(45) default NULL, - `host_rdns` varchar(255) default NULL, - `host_ident` varchar(255) default NULL, - `host_helo` varchar(255) default NULL, -@@ -164,7 +164,7 @@ - `server` varchar(32) NOT NULL default '', - `message_id` varchar(16) binary default NULL, - `timestamp` bigint(20) NOT NULL default '0', -- `host_addr` varchar(15) NOT NULL default '', -+ `host_addr` varchar(45) NOT NULL default '', - `host_rdns` varchar(255) NOT NULL default '', - `host_ident` varchar(255) default NULL, - `host_helo` varchar(255) default NULL, ---- exilog_cgi_messages.pm.orig 2012-02-06 14:39:16.000000000 +0200 -+++ exilog_cgi_messages.pm 2012-02-06 14:40:02.000000000 +0200 -@@ -145,8 +145,8 @@ - } - - my @queries; -- if ($param->{'qs'} =~ /^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/) { -- # IPv4 address -+ if ($param->{'qs'} =~ /^[0-9A-Fa-f.:]+$/) { -+ # IPv4 or IPv6 address - push @queries, { 'table' => 'messages', - 'criteria' => { 'host_addr' => $param->{'qs'} } }, - { 'table' => 'rejects',