diff options
author | Zuul <zuul@review.openstack.org> | 2018-01-05 19:34:03 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2018-01-05 19:34:03 +0000 |
commit | f009808e34e3fe3391e805b813fa261f6e31429b (patch) | |
tree | 9846791102f6fc44fe513ee527e48beee32b6257 | |
parent | 3b6a36d02a32fe19c1f184d608e0344716b47d94 (diff) | |
parent | 785b33c29542639680659b1d68d9047df5af2964 (diff) | |
download | oslo-utils-f009808e34e3fe3391e805b813fa261f6e31429b.tar.gz |
Merge "Add method to escape ipv6 ip addresses"
-rw-r--r-- | oslo_utils/netutils.py | 14 | ||||
-rw-r--r-- | oslo_utils/tests/test_netutils.py | 4 |
2 files changed, 18 insertions, 0 deletions
diff --git a/oslo_utils/netutils.py b/oslo_utils/netutils.py index e24f918..26e16dc 100644 --- a/oslo_utils/netutils.py +++ b/oslo_utils/netutils.py @@ -217,6 +217,20 @@ def is_ipv6_enabled(): return _IS_IPV6_ENABLED +def escape_ipv6(address): + """Escape an IP address in square brackets if IPv6 + + :param address: address to optionaly escape + :type address: string + :returns: string + + .. versionadded:: 3.29.0 + """ + if is_valid_ipv6(address): + return "[%s]" % address + return address + + def is_valid_ip(address): """Verify that address represents a valid IP address. diff --git a/oslo_utils/tests/test_netutils.py b/oslo_utils/tests/test_netutils.py index bba7c54..856b671 100644 --- a/oslo_utils/tests/test_netutils.py +++ b/oslo_utils/tests/test_netutils.py @@ -172,6 +172,10 @@ class NetworkUtilsTest(test_base.BaseTestCase): self.assertFalse(netutils.is_valid_ipv6('')) + def test_escape_ipv6(self): + self.assertEqual('[1234::1234]', netutils.escape_ipv6('1234::1234')) + self.assertEqual('127.0.0.1', netutils.escape_ipv6('127.0.0.1')) + def test_is_valid_ip(self): self.assertTrue(netutils.is_valid_ip('127.0.0.1')) |