mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-09 18:45:54 +02:00
location-functions.pl: add functions for fetching AS information
The second version of this patch only unifies the licence banner, but
leaves GPLv2 untouched. In addition, functions have been changed to use
a script-wide location database handle, as introduced in commit
b62d7e0cc7.
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
committed by
Michael Tremer
parent
81f80af987
commit
7b82ca1fc8
@@ -1,25 +1,23 @@
|
||||
#!/usr/bin/perl -w
|
||||
############################################################################
|
||||
# #
|
||||
# This file is part of the IPFire Firewall. #
|
||||
# #
|
||||
# IPFire is free software; you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation; either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# IPFire is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with IPFire; if not, write to the Free Software #
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||
# #
|
||||
# Copyright (C) 2015 - 2020 IPFire Team <info@ipfire.org>. #
|
||||
# #
|
||||
############################################################################
|
||||
###############################################################################
|
||||
# #
|
||||
# IPFire.org - A linux based firewall #
|
||||
# Copyright (C) 2007-2020 IPFire Team <info@ipfire.org> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 2 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
###############################################################################
|
||||
|
||||
package Location::Functions;
|
||||
|
||||
@@ -86,7 +84,7 @@ sub verify ($) {
|
||||
}
|
||||
|
||||
#
|
||||
## Function to the the country code of a given address.
|
||||
## Function to get the country code of a given address.
|
||||
#
|
||||
sub lookup_country_code($$) {
|
||||
my ($address) = @_;
|
||||
@@ -236,6 +234,32 @@ sub address_has_flags($) {
|
||||
return @flags;
|
||||
}
|
||||
|
||||
#
|
||||
## Function to get the Autonomous System Number of a given address.
|
||||
#
|
||||
sub lookup_asn($) {
|
||||
my ($address) = @_;
|
||||
|
||||
# Lookup the given address.
|
||||
my $asn = &Location::lookup_asn($db_handle, $address);
|
||||
|
||||
# Return the number of the Autonomous System
|
||||
return $asn;
|
||||
}
|
||||
|
||||
#
|
||||
## Function to get the name of an Autonomous System.
|
||||
#
|
||||
sub get_as_name($) {
|
||||
my ($asn) = @_;
|
||||
|
||||
# Fetch the name of this AS...
|
||||
my $as_name = &Location::get_as_name($db_handle, $asn);
|
||||
|
||||
# Return the name of the Autonomous System
|
||||
return $as_name;
|
||||
}
|
||||
|
||||
# Custom END declaration which will be executed when perl
|
||||
# ends, to release the database handle to libloc.
|
||||
END {
|
||||
|
||||
Reference in New Issue
Block a user