Add a traffic selector constructor creating a TS directly from a CIDR string
This commit is contained in:
@@ -815,6 +815,23 @@ traffic_selector_t *traffic_selector_create_from_string(
|
||||
return (&this->public);
|
||||
}
|
||||
|
||||
/*
|
||||
* see header
|
||||
*/
|
||||
traffic_selector_t *traffic_selector_create_from_cidr(char *string,
|
||||
u_int8_t protocol, u_int16_t port)
|
||||
{
|
||||
host_t *net;
|
||||
int bits;
|
||||
|
||||
net = host_create_from_subnet(string, &bits);
|
||||
if (net)
|
||||
{
|
||||
return traffic_selector_create_from_subnet(net, bits, protocol, port);
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* see header
|
||||
*/
|
||||
|
||||
@@ -231,6 +231,19 @@ traffic_selector_t *traffic_selector_create_from_string(
|
||||
char *from_addr, u_int16_t from_port,
|
||||
char *to_addr, u_int16_t to_port);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Create a traffic selector from a CIDR string.
|
||||
*
|
||||
* @param string CIDR string, such as 10.1.0.0/16
|
||||
* @param protocol protocol for this ts, such as TCP or UDP
|
||||
* @param port single port for this TS, 0 for any port
|
||||
* @return traffic selector, NULL if string invalid
|
||||
*/
|
||||
traffic_selector_t *traffic_selector_create_from_cidr(char *string,
|
||||
u_int8_t protocol, u_int16_t port);
|
||||
|
||||
/**
|
||||
* Create a new traffic selector using data read from the net.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user