diff options
Diffstat (limited to 'lib/route/cls/ematch_syntax.y')
-rw-r--r-- | lib/route/cls/ematch_syntax.y | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/lib/route/cls/ematch_syntax.y b/lib/route/cls/ematch_syntax.y index 0c89603f..961ee43e 100644 --- a/lib/route/cls/ematch_syntax.y +++ b/lib/route/cls/ematch_syntax.y @@ -4,8 +4,10 @@ */ %{ -#include <netlink-private/netlink.h> -#include <netlink-private/tc.h> +#include <linux/tc_ematch/tc_em_meta.h> + +#include <linux/tc_ematch/tc_em_cmp.h> + #include <netlink/netlink.h> #include <netlink/utils.h> #include <netlink/route/pktloc.h> @@ -14,8 +16,8 @@ #include <netlink/route/cls/ematch/nbyte.h> #include <netlink/route/cls/ematch/text.h> #include <netlink/route/cls/ematch/meta.h> -#include <linux/tc_ematch/tc_em_meta.h> -#include <linux/tc_ematch/tc_em_cmp.h> + +#include "nl-route.h" #define META_ALLOC rtnl_meta_value_alloc_id #define META_ID(name) TCF_META_ID_##name @@ -23,6 +25,16 @@ #define META_VAR TCF_META_TYPE_VAR %} +%code requires { + +struct ematch_quoted { + char * data; + size_t len; + int index; +}; + +} + %error-verbose %define api.pure %name-prefix "ematch_" @@ -406,7 +418,7 @@ pattern: if (nl_addr_parse($1, AF_UNSPEC, &addr) == 0) { $$.len = nl_addr_get_len(addr); - $$.index = min_t(int, $$.len, nl_addr_get_prefixlen(addr)/8); + $$.index = _NL_MIN($$.len, nl_addr_get_prefixlen(addr)/8); if (!($$.data = calloc(1, $$.len))) { nl_addr_put(addr); |