This patch changes sets to support variable sized set element keys / data up to 64 bytes each by using variable sized set extensions. This allows to use concatenations with bigger data items suchs as IPv6 addresses. As a side effect, small keys/data now don't require the full 16 bytes of struct nft_data anymore but just the space they need.
Showing the changes to include/uapi (1 of 5 files). Show all
Unified · Split
| @@ -388,6 +388,9 @@ enum nft_data_attributes { · 387 unmodified lines | |||
| 388 | }; | 388 | }; |
| 389 | #define NFTA_DATA_MAX (__NFTA_DATA_MAX - 1) | 389 | #define NFTA_DATA_MAX (__NFTA_DATA_MAX - 1) |
| 390 | 390 | ||
| 391 | /* Maximum length of a value */ | ||
| 392 | #define NFT_DATA_VALUE_MAXLEN 64 | ||
| 393 | |||
| 391 | /** | 394 | /** |
| 392 | * enum nft_verdict_attributes - nf_tables verdict netlink attributes | 395 | * enum nft_verdict_attributes - nf_tables verdict netlink attributes |
| 393 | * | 396 | * |