61c1493785
Netmasks with 0 bits of prefix do not make sense. For example, 192.168.1.2/0 would allow hosts from any address, but this is indicated with a special "ANY" value rather than a normal netmask. Netmask prefixes of the full address size (e.g. 32 for IPv4 and 128 for IPv6) are still allowed, since this represents a valid configuration that matches a single specific address. This also allows the IPv4 netmask math to be done entirely in uint32_t instead of promoting to unsigned long long to avoid undefined behavior when bits == 0 (shift count would have been 32 in that case). Change-Id: I021b718e6a46f628c96a358edae816de81cd8929 Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/392969 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>