Hello community, here is the log from the commit of package xtables-addons for openSUSE:Factory checked in at 2020-02-04 19:52:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xtables-addons (Old) and /work/SRC/openSUSE:Factory/.xtables-addons.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xtables-addons" Tue Feb 4 19:52:50 2020 rev:66 rq:769530 version:3.8 Changes: -------- --- /work/SRC/openSUSE:Factory/xtables-addons/xtables-addons.changes 2019-12-09 21:34:47.978108165 +0100 +++ /work/SRC/openSUSE:Factory/.xtables-addons.new.26092/xtables-addons.changes 2020-02-04 19:53:18.353319942 +0100 @@ -1,0 +2,7 @@ +Mon Feb 3 11:03:27 UTC 2020 - Jan Engelhardt <[email protected]> + +- Update to release 3.8 + * Support for Linux 5.5 + * The xt_geoip_build script now takes DBIP as input + +------------------------------------------------------------------- Old: ---- xtables-addons-3.7.tar.asc xtables-addons-3.7.tar.xz New: ---- xtables-addons-3.8.tar.asc xtables-addons-3.8.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xtables-addons.spec ++++++ --- /var/tmp/diff_new_pack.r8zrGT/_old 2020-02-04 19:53:19.585320660 +0100 +++ /var/tmp/diff_new_pack.r8zrGT/_new 2020-02-04 19:53:19.597320668 +0100 @@ -1,7 +1,7 @@ # # spec file for package xtables-addons # -# Copyright (c) 2019 SUSE LLC +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: xtables-addons -Version: 3.7 +Version: 3.8 Release: 0 Summary: IP Packet Filter Administration Extensions License: GPL-2.0-only AND GPL-2.0-or-later ++++++ xtables-addons-3.7.tar.xz -> xtables-addons-3.8.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xtables-addons-3.7/configure new/xtables-addons-3.8/configure --- old/xtables-addons-3.7/configure 2019-12-01 11:31:19.187547731 +0100 +++ new/xtables-addons-3.8/configure 2020-02-03 12:03:04.816292794 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xtables-addons 3.7. +# Generated by GNU Autoconf 2.69 for xtables-addons 3.8. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -587,8 +587,8 @@ # Identity of this package. PACKAGE_NAME='xtables-addons' PACKAGE_TARNAME='xtables-addons' -PACKAGE_VERSION='3.7' -PACKAGE_STRING='xtables-addons 3.7' +PACKAGE_VERSION='3.8' +PACKAGE_STRING='xtables-addons 3.8' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1325,7 +1325,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xtables-addons 3.7 to adapt to many kinds of systems. +\`configure' configures xtables-addons 3.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1395,7 +1395,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xtables-addons 3.7:";; + short | recursive ) echo "Configuration of xtables-addons 3.8:";; esac cat <<\_ACEOF @@ -1519,7 +1519,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xtables-addons configure 3.7 +xtables-addons configure 3.8 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1884,7 +1884,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xtables-addons $as_me 3.7, which was +It was created by xtables-addons $as_me 3.8, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2750,7 +2750,7 @@ # Define the identity of the package. PACKAGE='xtables-addons' - VERSION='3.7' + VERSION='3.8' cat >>confdefs.h <<_ACEOF @@ -12987,7 +12987,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xtables-addons $as_me 3.7, which was +This file was extended by xtables-addons $as_me 3.8, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13053,7 +13053,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -xtables-addons config.status 3.7 +xtables-addons config.status 3.8 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xtables-addons-3.7/configure.ac new/xtables-addons-3.8/configure.ac --- old/xtables-addons-3.7/configure.ac 2019-12-01 11:30:53.000000000 +0100 +++ new/xtables-addons-3.8/configure.ac 2020-02-03 12:02:34.000000000 +0100 @@ -1,4 +1,4 @@ -AC_INIT([xtables-addons], [3.7]) +AC_INIT([xtables-addons], [3.8]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xtables-addons-3.7/doc/changelog.txt new/xtables-addons-3.8/doc/changelog.txt --- old/xtables-addons-3.7/doc/changelog.txt 2019-12-01 11:30:53.000000000 +0100 +++ new/xtables-addons-3.8/doc/changelog.txt 2020-02-03 12:02:34.000000000 +0100 @@ -1,4 +1,11 @@ +v3.8 (2020-02-03) +================= +- Support for Linux 5.5 +- xt_geoip_build now expects the DBIP format as input, + Maxmind is thrown out. + + v3.7 (2019-12-01) ================= Fixes: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xtables-addons-3.7/geoip/xt_geoip_build new/xtables-addons-3.8/geoip/xt_geoip_build --- old/xtables-addons-3.7/geoip/xt_geoip_build 2019-12-01 11:30:53.000000000 +0100 +++ new/xtables-addons-3.8/geoip/xt_geoip_build 2020-02-03 12:02:34.000000000 +0100 @@ -1,8 +1,9 @@ #!/usr/bin/perl # -# Converter for MaxMind (GeoLite2) CSV database to binary, for xt_geoip +# Converter for DBIP (Country Lite) CSV database to binary, for xt_geoip # Copyright Jan Engelhardt, 2008-2011 # Copyright Philip Prindeville, 2018 +# Copyright Arjen de Korte, 2020 # use Getopt::Long; use Net::CIDR::Lite; @@ -34,170 +35,33 @@ exit 1; } -my %countryId; -my %countryName; -&loadCountries(); &dump(&collect()); -sub loadCountries -{ - sub id; sub cc; sub long; sub ct; sub cn; - - %countryId = (); - %countryName = (); - - my $file = "$source_dir/GeoLite2-Country-Locations-en.csv"; - open(my $fh, '<', $file) || die "Couldn't open list country names\n"; - - # first line is headers - my $row = $csv->getline($fh); - - my %header = map { ($row->[$_], $_); } (0..$#{$row}); - - my %pairs = ( - country_iso_code => 'ISO Country Code', - geoname_id => 'ID', - country_name => 'Country Name', - continent_code => 'Continent Code', - continent_name => 'Continent Name', - ); - - # verify that the columns we need are present - map { die "Table has no $pairs{$_} column\n" unless (exists $header{$_}); } keys %pairs; - - my %remapping = ( - id => 'geoname_id', - cc => 'country_iso_code', - long => 'country_name', - ct => 'continent_code', - cn => 'continent_name', - ); - - # now create a function which returns the value of that column # - map { eval "sub $_ () { \$header{\$remapping{$_}}; }" ; } keys %remapping; - - while (my $row = $csv->getline($fh)) { - if ($row->[cc] eq '' && $row->[long] eq '') { - $countryId{$row->[id]} = $row->[ct]; - $countryName{$row->[ct]} = $row->[cn]; - } else { - $countryId{$row->[id]} = $row->[cc]; - $countryName{$row->[cc]} = $row->[long]; - } - } - - $countryName{A1} = 'Anonymous Proxy'; - $countryName{A2} = 'Satellite Provider'; - $countryName{O1} = 'Other Country'; - - close($fh); - - # clean up the namespace - undef &id; undef &cc; undef &long; undef &ct; undef &cn; -} - -sub lookupCountry -{ - my ($id, $rid, $proxy, $sat) = @_; - - if ($proxy) { - return 'A1'; - } elsif ($sat) { - return 'A2'; - } - $id ||= $rid; - if ($id eq '') { - return 'O1'; - } - die "Unknown id: $id line $.\n" unless (exists $countryId{$id}); - return $countryId{$id}; -} - sub collect { my ($file, $fh, $row); - my (%country, %header); - - sub net; sub id; sub rid; sub proxy; sub sat; - - my %pairs = ( - network => 'Network', - registered_country_geoname_id => 'Registered Country ID', - geoname_id => 'Country ID', - is_anonymous_proxy => 'Anonymous Proxy', - is_satellite_provider => 'Satellite', - ); - - foreach (sort keys %countryName) { - $country{$_} = { - name => $countryName{$_}, - pool_v4 => Net::CIDR::Lite->new(), - pool_v6 => Net::CIDR::Lite->new(), - }; - } + my (%country); - $file = "$source_dir/GeoLite2-Country-Blocks-IPv4.csv"; - open($fh, '<', $file) || die "Can't open IPv4 database\n"; - - # first line is headers - $row = $csv->getline($fh); - - %header = map { ($row->[$_], $_); } (0..$#{$row}); - - # verify that the columns we need are present - map { die "Table has no %pairs{$_} column\n" unless (exists $header{$_}); } keys %pairs; - - my %remapping = ( - net => 'network', - id => 'geoname_id', - rid => 'registered_country_geoname_id', - proxy => 'is_anonymous_proxy', - sat => 'is_satellite_provider', - ); - - # now create a function which returns the value of that column # - map { eval "sub $_ () { \$header{\$remapping{$_}}; }" ; } keys %remapping; + $file = "$source_dir/dbip-country-lite.csv"; + open($fh, '<', $file) || die "Can't open DBIP database\n"; while ($row = $csv->getline($fh)) { - my ($cc, $cidr); + my ($cc, $range); - $cc = lookupCountry($row->[id], $row->[rid], $row->[proxy], $row->[sat]); - $cidr = $row->[net]; - $country{$cc}->{pool_v4}->add($cidr); + $cc = $row->[2]; + $range = $row->[0] . "-" . $row->[1]; - if ($. % 4096 == 0) { - print STDERR "\r\e[2K$. entries"; + if (!exists($country{$cc})) { + $country{$cc} = { pool_v4 => Net::CIDR::Lite->new(), pool_v6 => Net::CIDR::Lite->new() }; } - } - - print STDERR "\r\e[2K$. entries total\n"; - - close($fh); - # clean up the namespace - undef &net; undef &id; undef &rid; undef &proxy; undef &sat; - - $file = "$source_dir/GeoLite2-Country-Blocks-IPv6.csv"; - open($fh, '<', $file) || die "Can't open IPv6 database\n"; - - # first line is headers - $row = $csv->getline($fh); - - %header = map { ($row->[$_], $_); } (0..$#{$row}); - - # verify that the columns we need are present - map { die "Table has no %pairs{$_} column\n" unless (exists $header{$_}); } keys %pairs; - - # unlikely the IPv6 table has different columns, but just to be sure - # create a function which returns the value of that column # - map { eval "sub $_ () { \$header{\$remapping{$_}}; }" ; } keys %remapping; - - while ($row = $csv->getline($fh)) { - my ($cc, $cidr); + if (index($range, '.') > 0) { + $country{$cc}->{pool_v4}->add_range($range); + } - $cc = lookupCountry($row->[id], $row->[rid], $row->[proxy], $row->[sat]); - $cidr = $row->[net]; - $country{$cc}->{pool_v6}->add($cidr); + if (index($range, ':') > 0) { + $country{$cc}->{pool_v6}->add_range($range); + } if ($. % 4096 == 0) { print STDERR "\r\e[2K$. entries"; @@ -208,9 +72,6 @@ close($fh); - # clean up the namespace - undef &net; undef &id; undef &rid; undef &proxy; undef &sat; - return \%country; } @@ -230,22 +91,22 @@ @ranges = $country->{pool_v4}->list_range(); - writeCountry($iso_code, $country->{name}, AF_INET, @ranges); + writeCountry($iso_code, AF_INET, @ranges); @ranges = $country->{pool_v6}->list_range(); - writeCountry($iso_code, $country->{name}, AF_INET6, @ranges); + writeCountry($iso_code, AF_INET6, @ranges); } sub writeCountry { - my ($iso_code, $name, $family, @ranges) = @_; + my ($iso_code, $family, @ranges) = @_; my $fh; - printf "%5u IPv%s ranges for %s %s\n", + printf "%5u IPv%s ranges for %s\n", scalar(@ranges), ($family == AF_INET ? '4' : '6'), - $iso_code, $name; + $iso_code; my $file = "$target_dir/".uc($iso_code).".iv".($family == AF_INET ? '4' : '6'); if (!open($fh, '>', $file)) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xtables-addons-3.7/xtables-addons.8.in new/xtables-addons-3.8/xtables-addons.8.in --- old/xtables-addons-3.7/xtables-addons.8.in 2019-12-01 11:30:53.000000000 +0100 +++ new/xtables-addons-3.8/xtables-addons.8.in 2020-02-03 12:02:34.000000000 +0100 @@ -1,4 +1,4 @@ -.TH xtables-addons 8 "" "" "v3.7 (2019-12-01)" +.TH xtables-addons 8 "" "" "v3.8 (2020-02-01)" .SH Name Xtables-addons \(em additional extensions for iptables, ip6tables, etc. .SH Targets
