From c78f57c3ed52caea3366c49e66ed97f31511a64e Mon Sep 17 00:00:00 2001 From: Abhishek Kekane Date: Tue, 24 May 2016 15:21:42 +0530 Subject: [PATCH] Use is_valid_cidr and is_valid_ipv6_cidr from oslo_utils Use is_valid_cidr and is_valid_ipv6_cidr from oslo_utils instead of having own method in the repo. https://github.com/openstack/oslo.utils/blob/master/oslo_utils/netutils.py#L116 https://github.com/openstack/oslo.utils/blob/master/oslo_utils/netutils.py#L142 TrivialFix Change-Id: Ie8791606be1c62944323fd9ffe392c7f74bf9424 --- nova/db/sqlalchemy/types.py | 2 +- nova/utils.py | 31 ------------------------------- 2 files changed, 1 insertion(+), 32 deletions(-) diff --git a/nova/db/sqlalchemy/types.py b/nova/db/sqlalchemy/types.py index b216abbae..f274d3932 100644 --- a/nova/db/sqlalchemy/types.py +++ b/nova/db/sqlalchemy/types.py @@ -59,7 +59,7 @@ class CIDR(types.TypeDecorator): def process_bind_param(self, value, dialect): """Process/Formats the value before insert it into the db.""" # NOTE(sdague): normalize all the inserts - if utils.is_valid_ipv6_cidr(value): + if netutils.is_valid_ipv6_cidr(value): return utils.get_shortened_ipv6_cidr(value) return value diff --git a/nova/utils.py b/nova/utils.py index d775e579a..ce1ee454b 100644 --- a/nova/utils.py +++ b/nova/utils.py @@ -537,14 +537,6 @@ def parse_server_string(server_str): return ('', '') -def is_valid_ipv6_cidr(address): - try: - netaddr.IPNetwork(address, version=6).cidr - return True - except (TypeError, netaddr.AddrFormatError): - return False - - def get_shortened_ipv6(address): addr = netaddr.IPAddress(address, version=6) return str(addr.ipv6()) @@ -555,29 +547,6 @@ def get_shortened_ipv6_cidr(address): return str(net.cidr) -def is_valid_cidr(address): - """Check if address is valid - - The provided address can be a IPv6 or a IPv4 - CIDR address. - """ - try: - # Validate the correct CIDR Address - netaddr.IPNetwork(address) - except netaddr.AddrFormatError: - return False - - # Prior validation partially verify /xx part - # Verify it here - ip_segment = address.split('/') - - if (len(ip_segment) <= 1 or - ip_segment[1] == ''): - return False - - return True - - def get_ip_version(network): """Returns the IP version of a network (IPv4 or IPv6).