don't print GeoIP country if not defined (suppress warning)
If we don't get a result from the lookup, all we know is that we didn't get a
result. Maybe an error, maybe the IP not in the database.
---
plugins/ident/geoip | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/plugins/ident/geoip b/plugins/ident/geoip
index 526989f..eff0fa6 100644
--- a/plugins/ident/geoip
+++ b/plugins/ident/geoip
@@ -16,14 +16,15 @@ or greylist.
use Geo::IP;
sub hook_connect {
- my ($self) = @_;
+ my ($self) = @_;
- my $geoip = Geo::IP->new(GEOIP_STANDARD);
- my $country =
- $geoip->country_code_by_addr( $self->qp->connection->remote_ip );
+ my $geoip = Geo::IP->new(GEOIP_STANDARD);
+ my $country =
+ $geoip->country_code_by_addr( $self->qp->connection->remote_ip )
+ or return (DECLINED);
- $self->qp->connection->notes('geoip_country', $country);
- $self->log(LOGNOTICE, "GeoIP Country: $country");
+ $self->qp->connection->notes('geoip_country', $country);
+ $self->log(LOGNOTICE, "GeoIP Country: $country");
- return DECLINED;
+ return DECLINED;
}
--
1.7.9.6