X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=VNFs%2FDPPD-PROX%2Fparse_utils.h;h=03c03188a0639ebd36aea88520e268fb6d777cf7;hb=6f7d67ca5d9deba7424df277e25115253a8da74c;hp=27ebb0bd776255667c14b9c1e01ec5590d599628;hpb=e739edca4824d29614204d0f511afe5477dabbf7;p=samplevnf.git diff --git a/VNFs/DPPD-PROX/parse_utils.h b/VNFs/DPPD-PROX/parse_utils.h index 27ebb0bd..03c03188 100644 --- a/VNFs/DPPD-PROX/parse_utils.h +++ b/VNFs/DPPD-PROX/parse_utils.h @@ -18,12 +18,12 @@ #define _PARSE_UTILS_H_ #include +#include "prox_compat.h" #include "ip_subnet.h" -#define MAX_STR_LEN_PROC (3 * 1518 + 20) +#define MAX_STR_LEN_PROC (3 * MAX_PKT_SIZE + 20) struct ipv6_addr; -struct ether_addr; enum ctrl_type {CTRL_TYPE_DP, CTRL_TYPE_MSG, CTRL_TYPE_PKT}; @@ -46,6 +46,7 @@ int parse_range(uint32_t* lo, uint32_t* hi, const char *saddr); /* parses CIDR notation. Note that bits within the address that are outside the subnet (as specified by the prefix) are set to 0. */ +int parse_ip4_and_prefix(struct ip4_subnet *val, const char *saddr); int parse_ip4_cidr(struct ip4_subnet *val, const char *saddr); int parse_ip6_cidr(struct ip6_subnet *val, const char *saddr); @@ -53,7 +54,7 @@ int parse_ip(uint32_t *paddr, const char *saddr); int parse_ip6(struct ipv6_addr *addr, const char *saddr); -int parse_mac(struct ether_addr *paddr, const char *saddr); +int parse_mac(prox_rte_ether_addr *paddr, const char *saddr); /* return error on overflow or invalid suffix*/ int parse_kmg(uint32_t* val, const char *str); @@ -63,6 +64,8 @@ int parse_bool(uint32_t* val, const char *str); int parse_flag(uint32_t* val, uint32_t flag, const char *str); int parse_list_set(uint32_t *list, const char *str, uint32_t max_limit); +int parse_ip_set(struct ip4_subnet *list, const char *str2, uint32_t max_list); +int parse_int_set(uint32_t *list, const char *str2, uint32_t max_list); int parse_task_set(struct core_task_set *val, const char *str);