Lines Matching refs:nlh
13 static int (*inet_rcv_compat)(struct sk_buff *skb, struct nlmsghdr *nlh);
90 void sock_diag_register_inet_compat(int (*fn)(struct sk_buff *skb, struct nlmsghdr *nlh)) in sock_diag_register_inet_compat() argument
98 void sock_diag_unregister_inet_compat(int (*fn)(struct sk_buff *skb, struct nlmsghdr *nlh)) in sock_diag_unregister_inet_compat() argument
138 static int __sock_diag_cmd(struct sk_buff *skb, struct nlmsghdr *nlh) in __sock_diag_cmd() argument
141 struct sock_diag_req *req = nlmsg_data(nlh); in __sock_diag_cmd()
144 if (nlmsg_len(nlh) < sizeof(*req)) in __sock_diag_cmd()
158 else if (nlh->nlmsg_type == SOCK_DIAG_BY_FAMILY) in __sock_diag_cmd()
159 err = hndl->dump(skb, nlh); in __sock_diag_cmd()
160 else if (nlh->nlmsg_type == SOCK_DESTROY_BACKPORT && hndl->destroy) in __sock_diag_cmd()
161 err = hndl->destroy(skb, nlh); in __sock_diag_cmd()
169 static int sock_diag_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh) in sock_diag_rcv_msg() argument
173 switch (nlh->nlmsg_type) { in sock_diag_rcv_msg()
182 ret = inet_rcv_compat(skb, nlh); in sock_diag_rcv_msg()
190 return __sock_diag_cmd(skb, nlh); in sock_diag_rcv_msg()