#14814: Remove redundant code from ipaddress.IPv6Network

The strict checks and netmask computing don't make sense if constructed with
a ALL_ONES mask based on addresses. Also fix a bug due to mis-indentation of
a return statement in the same code block.
This commit is contained in:
Hynek Schlawack 2012-06-08 15:21:21 +02:00
parent 571ee57695
commit ed36b2e55b
1 changed files with 1 additions and 13 deletions

View File

@ -1990,12 +1990,6 @@ class IPv6Network(_BaseV6, _BaseNetwork):
self.network_address = IPv6Address(address)
self._prefixlen = self._max_prefixlen
self.netmask = IPv6Address(self._ALL_ONES)
if strict:
if (IPv6Address(int(self.network_address) &
int(self.netmask)) != self.network_address):
raise ValueError('%s has host bits set' % str(self))
self.network_address = IPv6Address(int(self.network_address) &
int(self.netmask))
return
# Constructing from a packed address
@ -2004,13 +1998,7 @@ class IPv6Network(_BaseV6, _BaseNetwork):
self.network_address = IPv6Address((tmp[0] << 64) | tmp[1])
self._prefixlen = self._max_prefixlen
self.netmask = IPv6Address(self._ALL_ONES)
if strict:
if (IPv6Address(int(self.network_address) &
int(self.netmask)) != self.network_address):
raise ValueError('%s has host bits set' % str(self))
self.network_address = IPv6Address(int(self.network_address) &
int(self.netmask))
return
return
# Assume input argument to be string or any object representation
# which converts into a formatted IP prefix string.