python-openflow
python-openflow copied to clipboard
Check of reserved bits in BitMasks
Reserved bits in BitMasks that are not set to 0 should lead to the message beeing rejected (pg52). Curently, foundation/base/GenericBitMask is not checking for bits that do not have a _enum item.
Maybe implement it in the MetaBitMask, doing something like
USED_BITS = sum([value for key, value in _enum])
RESERVED_BITS = ~USED_BITS
and before the GenericBitMask parses the bits, check that RESERVED_BITS & bitmask == 0
.