diff options
author | Phil Sutter <phil@nwl.cc> | 2021-07-23 14:56:02 +0200 |
---|---|---|
committer | Phil Sutter <phil@nwl.cc> | 2022-03-01 10:54:03 +0100 |
commit | bbdcfbfa081022a854b1e112063df2f6011582cb (patch) | |
tree | 8dec813e006048b9ac99b716d6700b685d58a4aa /src/parser_bison.y | |
parent | 232f2c3287fc780f31c076767799afc08d34cf02 (diff) |
scanner: comp: Move to own scope.
Isolates only 'cpi' keyword for now.
Signed-off-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'src/parser_bison.y')
-rw-r--r-- | src/parser_bison.y | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/parser_bison.y b/src/parser_bison.y index 0fc8e855..56892417 100644 --- a/src/parser_bison.y +++ b/src/parser_bison.y @@ -930,6 +930,7 @@ opt_newline : NEWLINE ; close_scope_arp : { scanner_pop_start_cond(nft->scanner, PARSER_SC_ARP); }; +close_scope_comp : { scanner_pop_start_cond(nft->scanner, PARSER_SC_EXPR_COMP); }; close_scope_ct : { scanner_pop_start_cond(nft->scanner, PARSER_SC_CT); }; close_scope_counter : { scanner_pop_start_cond(nft->scanner, PARSER_SC_COUNTER); }; close_scope_eth : { scanner_pop_start_cond(nft->scanner, PARSER_SC_ETH); }; @@ -4817,7 +4818,7 @@ primary_rhs_expr : symbol_expr { $$ = $1; } BYTEORDER_HOST_ENDIAN, sizeof(data) * BITS_PER_BYTE, &data); } - | COMP + | COMP close_scope_comp { uint8_t data = IPPROTO_COMP; $$ = constant_expr_alloc(&@$, &inet_protocol_type, @@ -5468,7 +5469,7 @@ esp_hdr_field : SPI { $$ = ESPHDR_SPI; } | SEQUENCE { $$ = ESPHDR_SEQUENCE; } ; -comp_hdr_expr : COMP comp_hdr_field +comp_hdr_expr : COMP comp_hdr_field close_scope_comp { $$ = payload_expr_alloc(&@$, &proto_comp, $2); } |