Params: Add parameter types for IP addresses in various forms.
New parameter forms are: IP address in the format "a.b.c.d" where a-d are from decimal 0 to 255. IP address with netmask which is an IP followed by "/n" where n is a netmask length in bits from decimal 0 to 32 or by "/e.f.g.h" where e-h are from decimal 0 to 255 and which is all 1 bits followed by all 0 bits when represented in binary. These can also be specified as an integral IP and netmask passed in separately. IP address with port which is an IP followed by ":p" where p is a port index from decimal 0 to 65535. These can also be specified as an integral IP and port value passed in separately.
This commit is contained in:
@@ -42,5 +42,24 @@ struct EthAddr
|
||||
EthAddr(const uint8_t ea[6]);
|
||||
EthAddr(const std::string &addr);
|
||||
};
|
||||
|
||||
struct IpAddress
|
||||
{
|
||||
IpAddress();
|
||||
IpAddress(const uint32_t __addr);
|
||||
};
|
||||
|
||||
struct IpNetmask : IpAddress
|
||||
{
|
||||
IpNetmask();
|
||||
IpNetmask(const uint32_t __addr, const uint8_t __netmask);
|
||||
};
|
||||
|
||||
struct IpWithPort : IpAddress
|
||||
{
|
||||
IpWithPort();
|
||||
IpWithPort(const uint32_t __addr, const uint16_t __port);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user