| /OK3568_Linux_fs/app/forlinx/quectelCM/libmnl/ |
| H A D | nlmsg.c | 66 size_t mnl_nlmsg_get_payload_len(const struct nlmsghdr *nlh) in mnl_nlmsg_get_payload_len() argument 68 return nlh->nlmsg_len - MNL_NLMSG_HDRLEN; in mnl_nlmsg_get_payload_len() 83 struct nlmsghdr *nlh = buf; in mnl_nlmsg_put_header() local 86 nlh->nlmsg_len = len; in mnl_nlmsg_put_header() 87 return nlh; in mnl_nlmsg_put_header() 101 void *mnl_nlmsg_put_extra_header(struct nlmsghdr *nlh, in mnl_nlmsg_put_extra_header() argument 104 char *ptr = (char *)nlh + nlh->nlmsg_len; in mnl_nlmsg_put_extra_header() 106 nlh->nlmsg_len += len; in mnl_nlmsg_put_extra_header() 117 void *mnl_nlmsg_get_payload(const struct nlmsghdr *nlh) in mnl_nlmsg_get_payload() argument 119 return (void *)nlh + MNL_NLMSG_HDRLEN; in mnl_nlmsg_get_payload() [all …]
|
| H A D | attr.c | 255 int mnl_attr_parse(const struct nlmsghdr *nlh, in mnl_attr_parse() argument 262 mnl_attr_for_each(attr, nlh, offset) in mnl_attr_parse() 395 void mnl_attr_put(struct nlmsghdr *nlh, uint16_t type, in mnl_attr_put() argument 398 struct nlattr *attr = mnl_nlmsg_get_payload_tail(nlh); in mnl_attr_put() 409 nlh->nlmsg_len += MNL_ALIGN(payload_len); in mnl_attr_put() 421 void mnl_attr_put_u8(struct nlmsghdr *nlh, uint16_t type, in mnl_attr_put_u8() argument 424 mnl_attr_put(nlh, type, sizeof(uint8_t), &data); in mnl_attr_put_u8() 436 void mnl_attr_put_u16(struct nlmsghdr *nlh, uint16_t type, in mnl_attr_put_u16() argument 439 mnl_attr_put(nlh, type, sizeof(uint16_t), &data); in mnl_attr_put_u16() 451 void mnl_attr_put_u32(struct nlmsghdr *nlh, uint16_t type, in mnl_attr_put_u32() argument [all …]
|
| H A D | callback.c | 14 static int mnl_cb_noop(const struct nlmsghdr *nlh, void *data) in mnl_cb_noop() argument 16 (void)nlh; in mnl_cb_noop() 21 static int mnl_cb_error(const struct nlmsghdr *nlh, void *data) in mnl_cb_error() argument 23 const struct nlmsgerr *err = mnl_nlmsg_get_payload(nlh); in mnl_cb_error() 25 if (nlh->nlmsg_len < mnl_nlmsg_size(sizeof(struct nlmsgerr))) { in mnl_cb_error() 38 static int mnl_cb_stop(const struct nlmsghdr *nlh, void *data) in mnl_cb_stop() argument 40 (void)nlh; in mnl_cb_stop() 59 const struct nlmsghdr *nlh = buf; in __mnl_cb_run() local 61 while (mnl_nlmsg_ok(nlh, len)) { in __mnl_cb_run() 63 if (!mnl_nlmsg_portid_ok(nlh, portid)) { in __mnl_cb_run() [all …]
|
| H A D | libmnl.h | 46 extern size_t mnl_nlmsg_get_payload_len(const struct nlmsghdr *nlh); 50 extern void *mnl_nlmsg_put_extra_header(struct nlmsghdr *nlh, size_t size); 53 extern bool mnl_nlmsg_ok(const struct nlmsghdr *nlh, int len); 54 extern struct nlmsghdr *mnl_nlmsg_next(const struct nlmsghdr *nlh, int *len); 57 extern bool mnl_nlmsg_seq_ok(const struct nlmsghdr *nlh, unsigned int seq); 60 extern bool mnl_nlmsg_portid_ok(const struct nlmsghdr *nlh, unsigned int portid); 63 extern void *mnl_nlmsg_get_payload(const struct nlmsghdr *nlh); 64 extern void *mnl_nlmsg_get_payload_offset(const struct nlmsghdr *nlh, size_t offset); 65 extern void *mnl_nlmsg_get_payload_tail(const struct nlmsghdr *nlh); 98 extern void mnl_attr_put(struct nlmsghdr *nlh, uint16_t type, size_t len, const void *data); [all …]
|
| H A D | ifutils.c | 82 struct nlmsghdr *nlh; in if_act_on_link() local 103 nlh = mnl_nlmsg_put_header(buf); in if_act_on_link() 104 nlh->nlmsg_type = RTM_NEWLINK; in if_act_on_link() 105 nlh->nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK; in if_act_on_link() 106 nlh->nlmsg_seq = seq = time(NULL); in if_act_on_link() 107 ifm = mnl_nlmsg_put_extra_header(nlh, sizeof(*ifm)); in if_act_on_link() 112 mnl_attr_put_str(nlh, IFLA_IFNAME, ifname); in if_act_on_link() 128 if (mnl_socket_sendto(nl, nlh, nlh->nlmsg_len) < 0) in if_act_on_link() 168 struct nlmsghdr *nlh; in if_set_mtu() local 185 nlh = mnl_nlmsg_put_header(buf); in if_set_mtu() [all …]
|
| /OK3568_Linux_fs/kernel/tools/testing/selftests/netfilter/ |
| H A D | nf-queue.c | 77 static int queue_cb(const struct nlmsghdr *nlh, void *data) in queue_cb() argument 85 mnl_attr_parse(nlh, sizeof(struct nfgenmsg), parse_attr_cb, tb); in queue_cb() 123 struct nlmsghdr *nlh = mnl_nlmsg_put_header(buf); in nfq_build_cfg_request() local 130 nlh->nlmsg_type = (NFNL_SUBSYS_QUEUE << 8) | NFQNL_MSG_CONFIG; in nfq_build_cfg_request() 131 nlh->nlmsg_flags = NLM_F_REQUEST; in nfq_build_cfg_request() 133 nfg = mnl_nlmsg_put_extra_header(nlh, sizeof(*nfg)); in nfq_build_cfg_request() 139 mnl_attr_put(nlh, NFQA_CFG_CMD, sizeof(cmd), &cmd); in nfq_build_cfg_request() 141 return nlh; in nfq_build_cfg_request() 147 struct nlmsghdr *nlh = mnl_nlmsg_put_header(buf); in nfq_build_cfg_params() local 154 nlh->nlmsg_type = (NFNL_SUBSYS_QUEUE << 8) | NFQNL_MSG_CONFIG; in nfq_build_cfg_params() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/staging/gdm724x/ |
| H A D | netlink_k.c | 20 #define ND_NLMSG_DATA(nlh) ((void *)((char *)NLMSG_DATA(nlh) + \ argument 23 #define ND_NLMSG_R_LEN(nlh) (nlh->nlmsg_len - ND_IFINDEX_LEN) argument 24 #define ND_NLMSG_IFIDX(nlh) NLMSG_DATA(nlh) argument 31 struct nlmsghdr *nlh; in netlink_rcv_cb() local 47 nlh = (struct nlmsghdr *)skb->data; in netlink_rcv_cb() 49 if (skb->len < nlh->nlmsg_len || nlh->nlmsg_len > ND_MAX_MSG_LEN) { in netlink_rcv_cb() 51 skb->len, nlh->nlmsg_len); in netlink_rcv_cb() 55 memcpy(&ifindex, ND_NLMSG_IFIDX(nlh), ND_IFINDEX_LEN); in netlink_rcv_cb() 56 msg = ND_NLMSG_DATA(nlh); in netlink_rcv_cb() 57 mlen = ND_NLMSG_R_LEN(nlh); in netlink_rcv_cb() [all …]
|
| /OK3568_Linux_fs/kernel/net/netfilter/ |
| H A D | nfnetlink.c | 182 static int nfnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh, in nfnetlink_rcv_msg() argument 191 if (nlmsg_len(nlh) < sizeof(struct nfgenmsg)) in nfnetlink_rcv_msg() 194 type = nlh->nlmsg_type; in nfnetlink_rcv_msg() 220 u8 cb_id = NFNL_MSG_TYPE(nlh->nlmsg_type); in nfnetlink_rcv_msg() 222 struct nlattr *attr = (void *)nlh + min_len; in nfnetlink_rcv_msg() 223 int attrlen = nlh->nlmsg_len - min_len; in nfnetlink_rcv_msg() 241 err = nc->call_rcu(net, net->nfnl, skb, nlh, in nfnetlink_rcv_msg() 252 err = nc->call(net, net->nfnl, skb, nlh, in nfnetlink_rcv_msg() 267 struct nlmsghdr *nlh; member 272 static int nfnl_err_add(struct list_head *list, struct nlmsghdr *nlh, int err, in nfnl_err_add() argument [all …]
|
| H A D | nfnetlink_cttimeout.c | 76 const struct nlmsghdr *nlh, in cttimeout_new_timeout() argument 101 if (nlh->nlmsg_flags & NLM_F_EXCL) in cttimeout_new_timeout() 109 if (nlh->nlmsg_flags & NLM_F_REPLACE) { in cttimeout_new_timeout() 162 struct nlmsghdr *nlh; in ctnl_timeout_fill_info() local 169 nlh = nfnl_msg_put(skb, portid, seq, event, flags, AF_UNSPEC, in ctnl_timeout_fill_info() 171 if (!nlh) in ctnl_timeout_fill_info() 192 nlmsg_end(skb, nlh); in ctnl_timeout_fill_info() 197 nlmsg_cancel(skb, nlh); in ctnl_timeout_fill_info() 223 cb->nlh->nlmsg_seq, in ctnl_timeout_dump() 224 NFNL_MSG_TYPE(cb->nlh->nlmsg_type), in ctnl_timeout_dump() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/infiniband/core/ |
| H A D | iwpm_msg.c | 67 struct nlmsghdr *nlh; in iwpm_register_pid() local 79 skb = iwpm_create_nlmsg(RDMA_NL_IWPM_REG_PID, &nlh, nl_client); in iwpm_register_pid() 84 nlh->nlmsg_seq = iwpm_get_nlmsg_seq(); in iwpm_register_pid() 85 nlmsg_request = iwpm_get_nlmsg_request(nlh->nlmsg_seq, nl_client, GFP_KERNEL); in iwpm_register_pid() 94 ret = ibnl_put_attr(skb, nlh, sizeof(u32), &msg_seq, IWPM_NLA_REG_PID_SEQ); in iwpm_register_pid() 97 ret = ibnl_put_attr(skb, nlh, IFNAMSIZ, in iwpm_register_pid() 101 ret = ibnl_put_attr(skb, nlh, IWPM_DEVNAME_SIZE, in iwpm_register_pid() 105 ret = ibnl_put_attr(skb, nlh, IWPM_ULIBNAME_SIZE, in iwpm_register_pid() 110 nlmsg_end(skb, nlh); in iwpm_register_pid() 151 struct nlmsghdr *nlh; in iwpm_add_mapping() local [all …]
|
| H A D | netlink.c | 131 void *ibnl_put_msg(struct sk_buff *skb, struct nlmsghdr **nlh, int seq, in ibnl_put_msg() argument 134 *nlh = nlmsg_put(skb, 0, seq, RDMA_NL_GET_TYPE(client, op), len, flags); in ibnl_put_msg() 135 if (!*nlh) in ibnl_put_msg() 137 return nlmsg_data(*nlh); in ibnl_put_msg() 141 int ibnl_put_attr(struct sk_buff *skb, struct nlmsghdr *nlh, in ibnl_put_attr() argument 145 nlmsg_cancel(skb, nlh); in ibnl_put_attr() 152 static int rdma_nl_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh, in rdma_nl_rcv_msg() argument 155 int type = nlh->nlmsg_type; in rdma_nl_rcv_msg() 181 err = cb_table[op].doit(skb, nlh, extack); in rdma_nl_rcv_msg() 185 if ((nlh->nlmsg_flags & NLM_F_DUMP) || index == RDMA_NL_IWCM) { in rdma_nl_rcv_msg() [all …]
|
| H A D | nldev.c | 868 static int nldev_get_doit(struct sk_buff *skb, struct nlmsghdr *nlh, in nldev_get_doit() argument 877 err = nlmsg_parse_deprecated(nlh, 0, tb, RDMA_NLDEV_ATTR_MAX - 1, in nldev_get_doit() 894 nlh = nlmsg_put(msg, NETLINK_CB(skb).portid, nlh->nlmsg_seq, in nldev_get_doit() 902 nlmsg_end(msg, nlh); in nldev_get_doit() 914 static int nldev_set_doit(struct sk_buff *skb, struct nlmsghdr *nlh, in nldev_set_doit() argument 922 err = nlmsg_parse_deprecated(nlh, 0, tb, RDMA_NLDEV_ATTR_MAX - 1, in nldev_set_doit() 973 struct nlmsghdr *nlh; in _nldev_get_dumpit() local 978 nlh = nlmsg_put(skb, NETLINK_CB(cb->skb).portid, cb->nlh->nlmsg_seq, in _nldev_get_dumpit() 983 nlmsg_cancel(skb, nlh); in _nldev_get_dumpit() 987 nlmsg_end(skb, nlh); in _nldev_get_dumpit() [all …]
|
| /OK3568_Linux_fs/kernel/net/phonet/ |
| H A D | pn_netlink.c | 51 static int addr_doit(struct sk_buff *skb, struct nlmsghdr *nlh, in addr_doit() argument 69 err = nlmsg_parse_deprecated(nlh, sizeof(*ifm), tb, IFA_MAX, in addr_doit() 74 ifm = nlmsg_data(nlh); in addr_doit() 86 if (nlh->nlmsg_type == RTM_NEWADDR) in addr_doit() 91 phonet_address_notify(nlh->nlmsg_type, dev, pnaddr); in addr_doit() 99 struct nlmsghdr *nlh; in fill_addr() local 101 nlh = nlmsg_put(skb, portid, seq, event, sizeof(*ifm), 0); in fill_addr() 102 if (nlh == NULL) in fill_addr() 105 ifm = nlmsg_data(nlh); in fill_addr() 113 nlmsg_end(skb, nlh); in fill_addr() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/scsi/ |
| H A D | scsi_netlink.c | 34 struct nlmsghdr *nlh; in scsi_nl_rcv_msg() local 42 nlh = nlmsg_hdr(skb); in scsi_nl_rcv_msg() 43 if ((nlh->nlmsg_len < (sizeof(*nlh) + sizeof(*hdr))) || in scsi_nl_rcv_msg() 44 (skb->len < nlh->nlmsg_len)) { in scsi_nl_rcv_msg() 50 rlen = NLMSG_ALIGN(nlh->nlmsg_len); in scsi_nl_rcv_msg() 54 if (nlh->nlmsg_type != SCSI_TRANSPORT_MSG) { in scsi_nl_rcv_msg() 59 hdr = nlmsg_data(nlh); in scsi_nl_rcv_msg() 71 if (nlh->nlmsg_len < (sizeof(*nlh) + hdr->msglen)) { in scsi_nl_rcv_msg() 99 if ((err) || (nlh->nlmsg_flags & NLM_F_ACK)) in scsi_nl_rcv_msg() 100 netlink_ack(skb, nlh, err, NULL); in scsi_nl_rcv_msg()
|
| /OK3568_Linux_fs/kernel/tools/bpf/bpftool/ |
| H A D | net.c | 197 static int __dump_class_nlmsg(struct nlmsghdr *nlh, in __dump_class_nlmsg() argument 202 struct tcmsg *t = NLMSG_DATA(nlh); in __dump_class_nlmsg() 205 len = nlh->nlmsg_len - NLMSG_LENGTH(sizeof(*t)); in __dump_class_nlmsg() 217 struct nlmsghdr nlh; in netlink_get_class() member 220 .nlh.nlmsg_len = NLMSG_LENGTH(sizeof(struct tcmsg)), in netlink_get_class() 221 .nlh.nlmsg_type = RTM_GETTCLASS, in netlink_get_class() 222 .nlh.nlmsg_flags = NLM_F_DUMP | NLM_F_REQUEST, in netlink_get_class() 228 req.nlh.nlmsg_seq = seq; in netlink_get_class() 229 if (send(sock, &req, req.nlh.nlmsg_len, 0) < 0) in netlink_get_class() 236 static int __dump_qdisc_nlmsg(struct nlmsghdr *nlh, in __dump_qdisc_nlmsg() argument [all …]
|
| /OK3568_Linux_fs/kernel/net/xfrm/ |
| H A D | xfrm_user.c | 671 static int xfrm_add_sa(struct sk_buff *skb, struct nlmsghdr *nlh, in xfrm_add_sa() argument 675 struct xfrm_usersa_info *p = nlmsg_data(nlh); in xfrm_add_sa() 689 if (nlh->nlmsg_type == XFRM_MSG_NEWSA) in xfrm_add_sa() 706 c.seq = nlh->nlmsg_seq; in xfrm_add_sa() 707 c.portid = nlh->nlmsg_pid; in xfrm_add_sa() 708 c.event = nlh->nlmsg_type; in xfrm_add_sa() 750 static int xfrm_del_sa(struct sk_buff *skb, struct nlmsghdr *nlh, in xfrm_del_sa() argument 757 struct xfrm_usersa_id *p = nlmsg_data(nlh); in xfrm_del_sa() 776 c.seq = nlh->nlmsg_seq; in xfrm_del_sa() 777 c.portid = nlh->nlmsg_pid; in xfrm_del_sa() [all …]
|
| /OK3568_Linux_fs/kernel/net/decnet/netfilter/ |
| H A D | dn_rtmsg.c | 36 struct nlmsghdr *nlh; in dnrmg_build_message() local 48 nlh = nlmsg_put(skb, 0, 0, 0, size, 0); in dnrmg_build_message() 49 if (!nlh) { in dnrmg_build_message() 54 rtm = (struct nf_dn_rtmsg *)nlmsg_data(nlh); in dnrmg_build_message() 58 nlh->nlmsg_len = skb->tail - old_tail; in dnrmg_build_message() 97 #define RCV_SKB_FAIL(err) do { netlink_ack(skb, nlh, (err), NULL); return; } while (0) 101 struct nlmsghdr *nlh = nlmsg_hdr(skb); in dnrmg_receive_user_skb() local 103 if (skb->len < sizeof(*nlh) || in dnrmg_receive_user_skb() 104 nlh->nlmsg_len < sizeof(*nlh) || in dnrmg_receive_user_skb() 105 skb->len < nlh->nlmsg_len) in dnrmg_receive_user_skb()
|
| /OK3568_Linux_fs/kernel/include/net/ |
| H A D | netlink.h | 454 struct nlmsghdr *nlh; member 568 static inline void *nlmsg_data(const struct nlmsghdr *nlh) in nlmsg_data() argument 570 return (unsigned char *) nlh + NLMSG_HDRLEN; in nlmsg_data() 577 static inline int nlmsg_len(const struct nlmsghdr *nlh) in nlmsg_len() argument 579 return nlh->nlmsg_len - NLMSG_HDRLEN; in nlmsg_len() 587 static inline struct nlattr *nlmsg_attrdata(const struct nlmsghdr *nlh, in nlmsg_attrdata() argument 590 unsigned char *data = nlmsg_data(nlh); in nlmsg_attrdata() 599 static inline int nlmsg_attrlen(const struct nlmsghdr *nlh, int hdrlen) in nlmsg_attrlen() argument 601 return nlmsg_len(nlh) - NLMSG_ALIGN(hdrlen); in nlmsg_attrlen() 609 static inline int nlmsg_ok(const struct nlmsghdr *nlh, int remaining) in nlmsg_ok() argument [all …]
|
| /OK3568_Linux_fs/kernel/net/ipv6/ |
| H A D | addrlabel.c | 384 static int ip6addrlbl_newdel(struct sk_buff *skb, struct nlmsghdr *nlh, in ip6addrlbl_newdel() argument 394 err = nlmsg_parse_deprecated(nlh, sizeof(*ifal), tb, IFAL_MAX, in ip6addrlbl_newdel() 399 ifal = nlmsg_data(nlh); in ip6addrlbl_newdel() 415 switch (nlh->nlmsg_type) { in ip6addrlbl_newdel() 423 nlh->nlmsg_flags & NLM_F_REPLACE); in ip6addrlbl_newdel() 435 static void ip6addrlbl_putmsg(struct nlmsghdr *nlh, in ip6addrlbl_putmsg() argument 438 struct ifaddrlblmsg *ifal = nlmsg_data(nlh); in ip6addrlbl_putmsg() 453 struct nlmsghdr *nlh = nlmsg_put(skb, portid, seq, event, in ip6addrlbl_fill() local 455 if (!nlh) in ip6addrlbl_fill() 458 ip6addrlbl_putmsg(nlh, p->prefixlen, p->ifindex, lseq); in ip6addrlbl_fill() [all …]
|
| /OK3568_Linux_fs/kernel/tools/include/uapi/linux/ |
| H A D | netlink.h | 94 #define NLMSG_DATA(nlh) ((void*)(((char*)nlh) + NLMSG_LENGTH(0))) argument 95 #define NLMSG_NEXT(nlh,len) ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \ argument 96 (struct nlmsghdr*)(((char*)(nlh)) + NLMSG_ALIGN((nlh)->nlmsg_len))) 97 #define NLMSG_OK(nlh,len) ((len) >= (int)sizeof(struct nlmsghdr) && \ argument 98 (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \ 99 (nlh)->nlmsg_len <= (len)) 100 #define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - NLMSG_SPACE((len))) argument
|
| /OK3568_Linux_fs/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/include/linux/ |
| H A D | netlink.h | 94 #define NLMSG_DATA(nlh) ((void*)(((char*)nlh) + NLMSG_LENGTH(0))) argument 95 #define NLMSG_NEXT(nlh,len) ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \ argument 96 (struct nlmsghdr*)(((char*)(nlh)) + NLMSG_ALIGN((nlh)->nlmsg_len))) 97 #define NLMSG_OK(nlh,len) ((len) >= (int)sizeof(struct nlmsghdr) && \ argument 98 (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \ 99 (nlh)->nlmsg_len <= (len)) 100 #define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - NLMSG_SPACE((len))) argument
|
| /OK3568_Linux_fs/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/include/linux/ |
| H A D | netlink.h | 94 #define NLMSG_DATA(nlh) ((void*)(((char*)nlh) + NLMSG_LENGTH(0))) argument 95 #define NLMSG_NEXT(nlh,len) ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \ argument 96 (struct nlmsghdr*)(((char*)(nlh)) + NLMSG_ALIGN((nlh)->nlmsg_len))) 97 #define NLMSG_OK(nlh,len) ((len) >= (int)sizeof(struct nlmsghdr) && \ argument 98 (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \ 99 (nlh)->nlmsg_len <= (len)) 100 #define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - NLMSG_SPACE((len))) argument
|
| /OK3568_Linux_fs/kernel/include/uapi/linux/ |
| H A D | netlink.h | 94 #define NLMSG_DATA(nlh) ((void*)(((char*)nlh) + NLMSG_LENGTH(0))) argument 95 #define NLMSG_NEXT(nlh,len) ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \ argument 96 (struct nlmsghdr*)(((char*)(nlh)) + NLMSG_ALIGN((nlh)->nlmsg_len))) 97 #define NLMSG_OK(nlh,len) ((len) >= (int)sizeof(struct nlmsghdr) && \ argument 98 (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \ 99 (nlh)->nlmsg_len <= (len)) 100 #define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - NLMSG_SPACE((len))) argument
|
| /OK3568_Linux_fs/kernel/net/ipv4/ |
| H A D | inet_diag.c | 206 static int inet_diag_parse_attrs(const struct nlmsghdr *nlh, int hdrlen, in inet_diag_parse_attrs() argument 212 nlmsg_for_each_attr(nla, nlh, hdrlen, remaining) { in inet_diag_parse_attrs() 244 struct nlmsghdr *nlh; in inet_sk_diag_fill() local 252 nlh = nlmsg_put(skb, NETLINK_CB(cb->skb).portid, cb->nlh->nlmsg_seq, in inet_sk_diag_fill() 253 cb->nlh->nlmsg_type, sizeof(*r), nlmsg_flags); in inet_sk_diag_fill() 254 if (!nlh) in inet_sk_diag_fill() 257 r = nlmsg_data(nlh); in inet_sk_diag_fill() 367 bool first_nlmsg = ((unsigned char *)nlh == skb->data); in inet_sk_diag_fill() 373 msg_len = skb_tail_pointer(skb) - (unsigned char *)nlh; in inet_sk_diag_fill() 405 nlmsg_end(skb, nlh); in inet_sk_diag_fill() [all …]
|
| /OK3568_Linux_fs/kernel/include/linux/netfilter/ |
| H A D | nfnetlink.h | 13 const struct nlmsghdr *nlh, 17 const struct nlmsghdr *nlh, 21 const struct nlmsghdr *nlh, 65 static inline void nfnl_fill_hdr(struct nlmsghdr *nlh, u8 family, u8 version, in nfnl_fill_hdr() argument 70 nfmsg = nlmsg_data(nlh); in nfnl_fill_hdr() 81 struct nlmsghdr *nlh; in nfnl_msg_put() local 83 nlh = nlmsg_put(skb, portid, seq, type, sizeof(struct nfgenmsg), flags); in nfnl_msg_put() 84 if (!nlh) in nfnl_msg_put() 87 nfnl_fill_hdr(nlh, family, version, res_id); in nfnl_msg_put() 89 return nlh; in nfnl_msg_put()
|