diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2022-04-24 22:19:20 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2022-05-02 13:16:28 +0200 |
commit | 7e38890c6b4fb5c03d436a0a8b9f3f31d65f75a4 (patch) | |
tree | 0211927df0be7685ba9937cd2f525c6ec4dc5726 /iptables/nft-shared.h | |
parent | 165cafec1d2c1cef3255995d4e610c638dd8bd5b (diff) |
nft: prepare for dynamic register allocation
Store the register that has been allocated and pass it on to the next
expression. NFT_REG_1 is still used.
No functional changes are expected.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'iptables/nft-shared.h')
-rw-r--r-- | iptables/nft-shared.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/iptables/nft-shared.h b/iptables/nft-shared.h index 0bdb6848..b0404904 100644 --- a/iptables/nft-shared.h +++ b/iptables/nft-shared.h @@ -132,14 +132,14 @@ struct nft_family_ops { int rulenum); }; -void add_meta(struct nft_handle *h, struct nftnl_rule *r, uint32_t key); -void add_payload(struct nft_handle *h, struct nftnl_rule *r, int offset, int len, uint32_t base); -void add_bitwise(struct nftnl_rule *r, uint8_t *mask, size_t len); -void add_bitwise_u16(struct nftnl_rule *r, uint16_t mask, uint16_t xor); -void add_cmp_ptr(struct nftnl_rule *r, uint32_t op, void *data, size_t len); -void add_cmp_u8(struct nftnl_rule *r, uint8_t val, uint32_t op); -void add_cmp_u16(struct nftnl_rule *r, uint16_t val, uint32_t op); -void add_cmp_u32(struct nftnl_rule *r, uint32_t val, uint32_t op); +void add_meta(struct nft_handle *h, struct nftnl_rule *r, uint32_t key, uint8_t *dreg); +void add_payload(struct nft_handle *h, struct nftnl_rule *r, int offset, int len, uint32_t base, uint8_t *dreg); +void add_bitwise(struct nft_handle *h, struct nftnl_rule *r, uint8_t *mask, size_t len, uint8_t sreg, uint8_t *dreg); +void add_bitwise_u16(struct nft_handle *h, struct nftnl_rule *r, uint16_t mask, uint16_t xor, uint8_t sreg, uint8_t *dreg); +void add_cmp_ptr(struct nftnl_rule *r, uint32_t op, void *data, size_t len, uint8_t sreg); +void add_cmp_u8(struct nftnl_rule *r, uint8_t val, uint32_t op, uint8_t sreg); +void add_cmp_u16(struct nftnl_rule *r, uint16_t val, uint32_t op, uint8_t sreg); +void add_cmp_u32(struct nftnl_rule *r, uint32_t val, uint32_t op, uint8_t sreg); void add_iniface(struct nft_handle *h, struct nftnl_rule *r, char *iface, uint32_t op); void add_outiface(struct nft_handle *h, struct nftnl_rule *r, char *iface, uint32_t op); void add_addr(struct nft_handle *h, struct nftnl_rule *r, enum nft_payload_bases base, int offset, |