--- 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',