On Thu, 2023-11-09 at 16:14 +0100, Pablo Neira Ayuso wrote: > On Wed, Nov 08, 2023 at 07:24:25PM +0100, Thomas Haller wrote: > > We don't want to handle allocation errors, but crash via > > memory_allocation_error(). > > Also, we usually just allocate NFT_USERDATA_MAXLEN buffers. > > > > Add a helper for that and use it. > > > > Signed-off-by: Thomas Haller <thaller@xxxxxxxxxx> > > --- > > include/netlink.h | 3 +++ > > src/mnl.c | 16 ++++------------ > > src/netlink.c | 7 ++----- > > src/netlink_linearize.c | 4 +--- > > 4 files changed, 10 insertions(+), 20 deletions(-) > > > > diff --git a/include/netlink.h b/include/netlink.h > > index 6766d7e8563f..15cbb332c8dd 100644 > > --- a/include/netlink.h > > +++ b/include/netlink.h > > @@ -260,4 +260,7 @@ struct nft_expr_loc *nft_expr_loc_find(const > > struct nftnl_expr *nle, > > > > struct dl_proto_ctx *dl_proto_ctx(struct rule_pp_ctx *ctx); > > > > +#define _nftnl_udata_buf_alloc() \ > > + memory_allocation_check(nftnl_udata_buf_alloc(NFT_USERDATA > > _MAXLEN)) > > Add a wrapper function, no macro. > Hi, memory_allocation_error() is itself a macro, as it uses __FILE__,__LINE__ This is also a macro, to preserve those parameters. Thomas