These functions will take either an IPv4/IPv6 address, or an IPv4/IPv6
prefix, and cast them to their canonical form. Notably for IPv6 addresses,
this means lower case and with the 0-tuples correctly formatted:
2001:DB8::1 becomes 2001:db8::1
2001:db8:0:0::1 becomes 2001:db8::1
This avoids spurious diffs in vppcfg when comparing to the output of the VPP
dataplane.
These functions will take either an IPv4/IPv6 address, or an IPv4/IPv6
prefix, and cast them to their canonical form. Notably for IPv6 addresses,
this means lower case and with the 0-tuples correctly formatted:
2001:DB8::1 becomes 2001:db8::1
2001:db8:0:0::1 becomes 2001:db8::1
This avoids spurious diffs in vppcfg when comparing to the output of the VPP
dataplane.
For ACE 'source' and 'destination' is now possible to specify one of:
- ipv4 or ipv6 address
- ipv4 or ipv6 prefix
- name of a prefixlist
The validator resolves the src/dst network list, optionally filtering
this with the desired 'family' (which defaults to 'any'). Errors are
raised if the resulting src/dst network lists do not overlap, that is
to say if all src entries are IPv4 but there are no IPv4 dst entries
and vise-versa.
* Update the example to have a 'trusted' prefixlist.
* Update the unit tests to use the new error message(s).
This attribute of the 'interface' schema allows the user to prompt what
type of PHY they are expecting this interface to be. It will serve an
immediate and a future purpose.
Immediate: presence of the 'dpdk' device-type in a list of interfaces
will help an upcoming vppapy.mockconfig() to generate a cache without
having to talk to the API. This is useful to generate a pre-compute a
complete vpp.exec based off of an empty VPP dataplane
Future: addition of different PHY types, notably RDMA and
VirtualEthernet types
TESTED:
- Added a unit test to ensure that only is_phy() eligable interfaces
receive the device-type attribute.
- All unit and YAML tests pass.
Fixed python load paths so that vppcfg will work installed as python
library and standalone from the source directory, fixing load
pathes for resources such as yaml files along the way.
Added a make target for pylint called 'make check-style', fixed a
number of minor pylint issues along the way.
Signed-off-by: Ray Kinsella <mdr@ashroe.eu>