.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Mail::SpamAssassin::Plugin::RelayCountry 3pm" .TH Mail::SpamAssassin::Plugin::RelayCountry 3pm "2020-01-31" "perl v5.28.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" RelayCountry \- add message metadata indicating the country code of each relay .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& loadplugin Mail::SpamAssassin::Plugin::RelayCountry .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The RelayCountry plugin attempts to determine the domain country codes of each relay used in the delivery path of messages and add that information to the message metadata. .PP Following metadata headers and tags are added: .PP .Vb 4 \& X\-Relay\-Countries _RELAYCOUNTRY_ \& All untrusted relays. Contains all relays starting from the \& trusted_networks border. This method has been used by default since \& early SA versions. \& \& X\-Relay\-Countries\-External _RELAYCOUNTRYEXT_ \& All external relays. Contains all relays starting from the \& internal_networks border. Could be useful in some cases when \& trusted/msa_networks extend beyond the internal border and those \& need to be checked too. \& \& X\-Relay\-Countries\-All _RELAYCOUNTRYALL_ \& All possible relays (internal + external). \& \& X\-Relay\-Countries\-Auth _RELAYCOUNTRYAUTH_ \& Auth will contain all relays starting from the first relay that used \& authentication. For example, this could be used to check for hacked \& local users coming in from unexpected countries. If there are no \& authenticated relays, this will be empty. .Ve .SH "REQUIREMENT" .IX Header "REQUIREMENT" This plugin requires the GeoIP2, Geo::IP, IP::Country::DB_File or IP::Country::Fast module from \s-1CPAN.\s0 For backward compatibility IP::Country::Fast is used as fallback if no db_type is specified in the config file. .SH "USER PREFERENCES" .IX Header "USER PREFERENCES" The following options can be used in both site-wide (\f(CW\*(C`local.cf\*(C'\fR) and user-specific (\f(CW\*(C`user_prefs\*(C'\fR) configuration files to customize how SpamAssassin handles incoming email messages. .IP "country_db_type \s-1STRING\s0" 4 .IX Item "country_db_type STRING" This option tells SpamAssassin which type of Geo database to use. Valid database types are GeoIP, GeoIP2, DB_File and Fast. .IP "country_db_path \s-1STRING\s0" 4 .IX Item "country_db_path STRING" This option tells SpamAssassin where to find MaxMind GeoIP2 or IP::Country::DB_File database. .Sp If not defined, GeoIP2 default search includes: /usr/local/share/GeoIP/GeoIP2\-Country.mmdb /usr/share/GeoIP/GeoIP2\-Country.mmdb /var/lib/GeoIP/GeoIP2\-Country.mmdb /usr/local/share/GeoIP/GeoLite2\-Country.mmdb /usr/share/GeoIP/GeoLite2\-Country.mmdb /var/lib/GeoIP/GeoLite2\-Country.mmdb (and same paths again for \-City.mmdb, which also has country functionality)