Lines Matching refs:nlskb

61 static struct nlattr *nfnl_start_info_type(struct sk_buff *nlskb, enum nfnl_hook_chaintype t)
63 struct nlattr *nest = nla_nest_start(nlskb, NFNLA_HOOK_CHAIN_INFO);
69 ret = nla_put_be32(nlskb, NFNLA_HOOK_INFO_TYPE, htonl(t));
73 nla_nest_cancel(nlskb, nest);
77 static int nfnl_hook_put_bpf_prog_info(struct sk_buff *nlskb,
91 nest = nfnl_start_info_type(nlskb, NFNL_HOOK_TYPE_BPF);
95 nest2 = nla_nest_start(nlskb, NFNLA_HOOK_INFO_DESC);
99 ret = nla_put_be32(nlskb, NFNLA_HOOK_BPF_ID, htonl(prog->aux->id));
103 nla_nest_end(nlskb, nest2);
104 nla_nest_end(nlskb, nest);
108 nla_nest_cancel(nlskb, nest);
112 static int nfnl_hook_put_nft_chain_info(struct sk_buff *nlskb,
117 struct net *net = sock_net(nlskb->sk);
127 nest = nfnl_start_info_type(nlskb, NFNL_HOOK_TYPE_NFTABLES);
131 nest2 = nla_nest_start(nlskb, NFNLA_HOOK_INFO_DESC);
135 ret = nla_put_string(nlskb, NFNLA_CHAIN_TABLE, chain->table->name);
139 ret = nla_put_string(nlskb, NFNLA_CHAIN_NAME, chain->name);
143 ret = nla_put_u8(nlskb, NFNLA_CHAIN_FAMILY, chain->table->family);
147 nla_nest_end(nlskb, nest2);
148 nla_nest_end(nlskb, nest);
152 nla_nest_cancel(nlskb, nest);
156 static int nfnl_hook_dump_one(struct sk_buff *nlskb,
162 unsigned int portid = NETLINK_CB(nlskb).portid;
170 nlh = nfnl_msg_put(nlskb, portid, seq, event,
192 ret = nla_put_string(nlskb, NFNLA_HOOK_MODULE_NAME, module_name);
198 ret = nla_put_string(nlskb, NFNLA_HOOK_FUNCTION_NAME, sym);
208 ret = nla_put_be32(nlskb, NFNLA_HOOK_HOOKNUM, htonl(hooknum));
212 ret = nla_put_be32(nlskb, NFNLA_HOOK_PRIORITY, htonl(ops->priority));
218 ret = nfnl_hook_put_nft_chain_info(nlskb, ctx, seq, ops->priv);
221 ret = nfnl_hook_put_bpf_prog_info(nlskb, ctx, seq, ops->priv);
233 nlmsg_end(nlskb, nlh);
236 nlmsg_trim(nlskb, nlh);
302 static int nfnl_hook_dump(struct sk_buff *nlskb,
308 struct net *net = sock_net(nlskb->sk);
330 err = nfnl_hook_dump_one(nlskb, ctx, ops[i], family,
337 nl_dump_check_consistent(cb, nlmsg_hdr(nlskb));
340 return nlskb->len;