skip to navigation
skip to content

port-range 2.1.0

Port range with support of CIDR-like notation.

Port range with support of CIDR-like notation.

Stable release:

Development:

Features

Support CIDR-like notation:

>>> from port_range import PortRange
>>> pr = PortRange('1027/15')
>>> pr.port_from
1027
>>> pr.port_to
1028
>>> pr.bounds
(1027, 1028)

Parse and normalize port ranges:

>>> pr = PortRange(' 4242-42 ')
>>> pr.bounds
(42, 4242)
>>> str(pr)
'42-4242'

Enforce strong validation in strict mode:

>>> PortRange(' 4242-42 ', strict=True)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "port_range/__init__.py", line 62, in __init__
    self.port_from, self.port_to = self.parse(port_range)
  File "port_range/__init__.py", line 109, in parse
    raise ValueError("Invalid reversed port range.")
ValueError: Invalid reversed port range.

Access to decimal-representation properties:

>>> pr = PortRange('1027/15')
>>> pr.base
1027
>>> pr.prefix
15
>>> pr.mask
1
>>> pr.offset
3

License

This software is licensed under the BSD 2-Clause License.

Changes for v2.1.0 (2017-08-02)

  • Rename port_lenght property to port_length.

Full changelog.

 
File Type Py Version Uploaded on Size
port-range-2.1.0.tar.gz (md5) Source 2017-08-02 9KB
port_range-2.1.0-py2.7.egg (md5) Python Egg 2.7 2017-08-02 7KB
port_range-2.1.0-py2.py3-none-any.whl (md5) Python Wheel 2.7 2017-08-02 9KB