From: Michael Tremer Date: Thu, 3 Oct 2019 18:41:38 +0000 (+0000) Subject: Implement listing all IP addresses in an AS X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=43154ed7040953a084976d67f8128a31d7216056;p=people%2Fsennis%2Flibloc.git Implement listing all IP addresses in an AS Signed-off-by: Michael Tremer --- diff --git a/src/python/location-query.in b/src/python/location-query.in index c3d1910..e8bc19e 100644 --- a/src/python/location-query.in +++ b/src/python/location-query.in @@ -73,6 +73,13 @@ class CLI(object): search_as.add_argument("query", nargs=1) search_as.set_defaults(func=self.handle_search_as) + # List all networks in an AS + list_networks_by_as = subparsers.add_parser("list-networks-by-as", + help=_("Lists all networks in an AS"), + ) + list_networks_by_as.add_argument("asn", nargs=1, type=int) + list_networks_by_as.set_defaults(func=self.handle_list_networks_by_as) + # List all networks in a country search_as = subparsers.add_parser("list-networks-by-cc", help=_("Lists all networks in a country"), @@ -181,6 +188,12 @@ class CLI(object): for a in db.search_as(query): print(a) + def handle_list_networks_by_as(self, db, ns): + for asn in ns.asn: + # Print all matching networks + for n in db.search_networks(asn=asn): + print(n) + def handle_list_networks_by_cc(self, db, ns): for country_code in ns.country_code: # Print all matching networks