summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2009-03-31 04:07:24 +0200
committerPatrick McHardy <kaber@trash.net>2009-03-31 04:07:24 +0200
commit3fb11ad7718f28949c73e5f5c01a6548fb86125b (patch)
tree1ea8bde3aa9977d6621362b4964a31d30b4bcd0d /src
parent14ea655e60c929429a2858545e411ced108ad995 (diff)
ct: resync netlink header and properly add ct l3protocol support
Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'src')
-rw-r--r--src/ct.c6
-rw-r--r--src/parser.y6
-rw-r--r--src/scanner.l1
3 files changed, 8 insertions, 5 deletions
diff --git a/src/ct.c b/src/ct.c
index 43dd9878..ea97d6ad 100644
--- a/src/ct.c
+++ b/src/ct.c
@@ -108,12 +108,12 @@ static const struct ct_template ct_templates[] = {
4 * BITS_PER_BYTE),
[NFT_CT_HELPER] = CT_TEMPLATE("helper", &string_type,
BYTEORDER_INVALID, 0),
- [NFT_CT_L3PROTO] = CT_TEMPLATE("l3proto", &invalid_type,
+ [NFT_CT_L3PROTOCOL] = CT_TEMPLATE("l3proto", &invalid_type,
BYTEORDER_INVALID,
BITS_PER_BYTE),
- [NFT_CT_SADDR] = CT_TEMPLATE("saddr", &invalid_type,
+ [NFT_CT_SRC] = CT_TEMPLATE("saddr", &invalid_type,
BYTEORDER_BIG_ENDIAN, 0),
- [NFT_CT_DADDR] = CT_TEMPLATE("daddr", &invalid_type,
+ [NFT_CT_DST] = CT_TEMPLATE("daddr", &invalid_type,
BYTEORDER_BIG_ENDIAN, 0),
[NFT_CT_PROTOCOL] = CT_TEMPLATE("protocol", &inet_protocol_type,
BYTEORDER_BIG_ENDIAN,
diff --git a/src/parser.y b/src/parser.y
index 90f9052e..c63a14e0 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -287,6 +287,7 @@ static void location_update(struct location *loc, struct location *rhs, int n)
%token STATUS "status"
%token EXPIRATION "expiration"
%token HELPER "helper"
+%token L3PROTOCOL "l3proto"
%token PROTO_SRC "proto-src"
%token PROTO_DST "proto-dst"
@@ -1133,9 +1134,10 @@ ct_key : STATE { $$ = NFT_CT_STATE; }
| SECMARK { $$ = NFT_CT_SECMARK; }
| EXPIRATION { $$ = NFT_CT_EXPIRATION; }
| HELPER { $$ = NFT_CT_HELPER; }
+ | L3PROTOCOL { $$ = NFT_CT_L3PROTOCOL; }
+ | SADDR { $$ = NFT_CT_SRC; }
+ | DADDR { $$ = NFT_CT_DST; }
| PROTOCOL { $$ = NFT_CT_PROTOCOL; }
- | SADDR { $$ = NFT_CT_SADDR; }
- | DADDR { $$ = NFT_CT_DADDR; }
| PROTO_SRC { $$ = NFT_CT_PROTO_SRC; }
| PROTO_DST { $$ = NFT_CT_PROTO_DST; }
;
diff --git a/src/scanner.l b/src/scanner.l
index 7fc01f77..f8d018bb 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -375,6 +375,7 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr})
"status" { return STATUS; }
"expiration" { return EXPIRATION; }
"helper" { return HELPER; }
+"l3proto" { return L3PROTOCOL; }
"proto-src" { return PROTO_SRC; }
"proto-dst" { return PROTO_DST; }