/freebsd/sys/netlink/ |
H A D | netlink_message_parser.c | 82 nlmsg_report_cookie(struct nl_pstate *npt, struct nlattr *nla) in nlmsg_report_cookie() argument 84 MPASS(nla->nla_type == NLMSGERR_ATTR_COOKIE); in nlmsg_report_cookie() 85 MPASS(nla->nla_len >= sizeof(struct nlattr)); in nlmsg_report_cookie() 86 npt->cookie = nla; in nlmsg_report_cookie() 92 struct nlattr *nla = npt_alloc(npt, sizeof(*nla) + sizeof(uint32_t)); in nlmsg_report_cookie_u32() local 94 nla->nla_type = NLMSGERR_ATTR_COOKIE; in nlmsg_report_cookie_u32() 95 nla->nla_len = sizeof(*nla) + sizeof(uint32_t); in nlmsg_report_cookie_u32() 96 memcpy(nla in nlmsg_report_cookie_u32() 128 struct nlattr *nla = NULL; nl_parse_attrs_raw() local 172 struct nlattr *nla = NULL; nl_get_attrs_bmask_raw() local 197 nlattr_get_flag(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_flag() argument 261 nlattr_get_ip(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_ip() argument 305 nlattr_get_ipvia(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_ipvia() argument 316 nlattr_get_bool(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_bool() argument 328 nlattr_get_uint8(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_uint8() argument 340 nlattr_get_uint16(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_uint16() argument 352 nlattr_get_uint32(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_uint32() argument 364 nlattr_get_uint64(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_uint64() argument 376 nlattr_get_in_addr(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_in_addr() argument 388 nlattr_get_in6_addr(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_in6_addr() argument 400 nlattr_get_ifp_internal(struct nlattr * nla,struct nl_pstate * npt,void * target,bool zero_ok) nlattr_get_ifp_internal() argument 431 nlattr_get_ifp(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_ifp() argument 437 nlattr_get_ifpz(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_ifpz() argument 443 nlattr_get_chara(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_chara() argument 460 nlattr_get_string(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_string() argument 475 nlattr_get_stringn(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_stringn() argument 490 nlattr_get_bytes(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_bytes() argument 503 nlattr_get_nla(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_nla() argument 511 nlattr_get_nested(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_nested() argument 522 nlattr_get_nested_ptr(struct nlattr * nla,struct nl_pstate * npt,const void * arg,void * target) nlattr_get_nested_ptr() argument [all...] |
H A D | netlink_snl.h | 460 struct nlattr *nla; in snl_parse_attrs_raw() local 462 NLA_FOREACH(nla, nla_head, len) { in snl_parse_attrs_raw() 463 if (nla->nla_len < sizeof(struct nlattr)) in snl_parse_attrs_raw() 465 int nla_type = nla->nla_type & NLA_TYPE_MASK; in snl_parse_attrs_raw() 469 if (!s->cb(ss, nla, s->arg, ptr)) in snl_parse_attrs_raw() 528 snl_attr_get_flag(struct snl_state *ss __unused, struct nlattr *nla, const void *arg __unused, in snl_attr_get_flag() argument 531 if (NLA_DATA_LEN(nla) == 0) { in snl_attr_get_flag() 539 snl_attr_get_bytes(struct snl_state *ss __unused, struct nlattr *nla, const void *arg, in snl_attr_get_bytes() argument 542 if ((size_t)NLA_DATA_LEN(nla) != (size_t)arg) in snl_attr_get_bytes() 545 memcpy(target, NLA_DATA_CONST(nla), (size_t)arg); in snl_attr_get_bytes() [all …]
|
H A D | netlink_message_parser.h | 173 int nlattr_get_flag(struct nlattr *nla, struct nl_pstate *npt, 175 int nlattr_get_ip(struct nlattr *nla, struct nl_pstate *npt, 177 int nlattr_get_bool(struct nlattr *nla, struct nl_pstate *npt, 179 int nlattr_get_uint8(struct nlattr *nla, struct nl_pstate *npt, 181 int nlattr_get_uint16(struct nlattr *nla, struct nl_pstate *npt, 183 int nlattr_get_uint32(struct nlattr *nla, struct nl_pstate *npt, 185 int nlattr_get_uint64(struct nlattr *nla, struct nl_pstate *npt, 187 int nlattr_get_in_addr(struct nlattr *nla, struct nl_pstate *npt, 189 int nlattr_get_in6_addr(struct nlattr *nla, struct nl_pstate *npt, 191 int nlattr_get_ifp(struct nlattr *nla, struc 276 nl_parse_nested(struct nlattr * nla,const struct nlhdr_parser * parser,struct nl_pstate * npt,void * target) nl_parse_nested() argument [all...] |
H A D | netlink_snl_route.h | 88 snl_attr_get_ip(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_ip() argument 92 struct sockaddr *sa = parse_rta_ip(ss, (struct rtattr *)nla, &error); in snl_attr_get_ip() 117 snl_attr_get_ipvia(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_ipvia() argument 122 struct sockaddr *sa = parse_rta_via(ss, (struct rtattr *)nla, &error); in snl_attr_get_ipvia() 179 snl_attr_get_in_addr(struct snl_state *ss __unused, struct nlattr *nla, in snl_attr_get_in_addr() argument 182 if (NLA_DATA_LEN(nla) != sizeof(struct in_addr)) in snl_attr_get_in_addr() 185 memcpy(target, NLA_DATA_CONST(nla), sizeof(struct in_addr)); in snl_attr_get_in_addr() 190 snl_attr_get_in6_addr(struct snl_state *ss __unused, struct nlattr *nla, in snl_attr_get_in6_addr() argument 193 if (NLA_DATA_LEN(nla) != sizeof(struct in6_addr)) in snl_attr_get_in6_addr() 196 memcpy(target, NLA_DATA_CONST(nla), sizeof(struct in6_addr)); in snl_attr_get_in6_addr()
|
H A D | netlink_message_writer.h | 185 struct nlattr *nla = nlattr_restore_offset(nw, off, struct nlattr); in nlattr_set_len() local 186 nla->nla_len = nlattr_save_offset(nw) - off; in nlattr_set_len() 197 struct nlattr *nla = nlmsg_reserve_data(nw, sizeof(struct nlattr), struct nlattr); in nlattr_add_nested() local 198 if (__predict_false(nla == NULL)) in nlattr_add_nested() 200 nla->nla_type = nla_type; in nlattr_add_nested() 209 struct nlattr *nla = nlmsg_reserve_data(nw, sz, struct nlattr); in _nlmsg_reserve_attr() local 210 if (__predict_false(nla == NULL)) in _nlmsg_reserve_attr() 212 nla->nla_type = nla_type; in _nlmsg_reserve_attr() 213 nla->nla_len = sz; in _nlmsg_reserve_attr() 215 return ((void *)(nla + 1)); in _nlmsg_reserve_attr()
|
H A D | netlink_message_writer.c | 371 struct nlattr *nla; in nlattr_add() local 384 nla = (struct nlattr *)(&nb->data[nb->datalen]); in nlattr_add() 386 nla->nla_len = attr_len + sizeof(struct nlattr); in nlattr_add() 387 nla->nla_type = attr_type; in nlattr_add() 391 bzero((char *)nla + required_len - 4, 4); in nlattr_add() 393 memcpy((nla + 1), data, attr_len); in nlattr_add()
|
H A D | ktest_netlink_message_writer.c | 58 test_nlbuf_parser(struct ktest_test_context *ctx, struct nlattr *nla) in test_nlbuf_parser() argument 64 return (nl_parse_nested(nla, &nlbuf_w_parser, ctx->npt, attrs)); in test_nlbuf_parser()
|
H A D | netlink_domain.c | 631 struct nlattr nla; in nl_createcontrol() member 635 .nla.nla_len = sizeof(struct nlattr) + sizeof(uint32_t), in nl_createcontrol() 636 .nla.nla_type = NLMSGINFO_ATTR_PROCESS_ID, in nl_createcontrol() 640 .nla.nla_len = sizeof(struct nlattr) + sizeof(uint32_t), in nl_createcontrol() 641 .nla.nla_type = NLMSGINFO_ATTR_PORT_ID, in nl_createcontrol()
|
H A D | netlink_snl_route_parsers.h | 98 nlattr_get_multipath(struct snl_state *ss, struct nlattr *nla, in nlattr_get_multipath() argument 103 while (start_size < NLA_DATA_LEN(nla) / sizeof(struct rtnexthop)) in nlattr_get_multipath() 106 return (snl_attr_get_parray_sz(ss, nla, start_size, &_mpath_nh_parser, target)); in nlattr_get_multipath()
|
/freebsd/sys/compat/linux/ |
H A D | linux_netlink.c | 116 struct nlattr *nla, *nla_head; in rtnl_route_from_linux() local 133 NLA_FOREACH(nla, nla_head, attrs_len) { in rtnl_route_from_linux() 135 nla->nla_type, nla->nla_len, attrs_len); in rtnl_route_from_linux() 136 struct rtattr *rta = (struct rtattr *)nla; in rtnl_route_from_linux() 236 struct nlattr *nla = nlmsg_reserve_data(nw, nla_orig->nla_len, struct nlattr); in nlmsg_copy_nla() local 237 if (nla != NULL) { in nlmsg_copy_nla() 238 memcpy(nla, nla_orig, nla_orig->nla_len); in nlmsg_copy_nla() 248 nlmsg_translate_ifname_nla(struct nlattr *nla, struct nl_writer *nw) in nlmsg_translate_ifname_nla() argument 252 if (ifname_bsd_to_linux_name((char *)(nla + 1), ifname, in nlmsg_translate_ifname_nla() 265 nlmsg_translate_all_nla(struct nlmsghdr *hdr, struct nlattr *nla, in nlmsg_translate_all_nla() argument [all …]
|
/freebsd/sys/netlink/route/ |
H A D | iface_drivers.c | 133 struct nlattr *nla = nla_cookie + 1; in _nl_store_ifp_cookie() local 134 nla->nla_len = sizeof(struct nlattr) + sizeof(ifindex); in _nl_store_ifp_cookie() 135 nla->nla_type = IFLA_NEW_IFINDEX; in _nl_store_ifp_cookie() 136 memcpy(NLA_DATA(nla), &ifindex, sizeof(ifindex)); in _nl_store_ifp_cookie() 138 nla = NLA_NEXT(nla); in _nl_store_ifp_cookie() 139 nla->nla_len = sizeof(struct nlattr) + ifname_len + 1; in _nl_store_ifp_cookie() 140 nla->nla_type = IFLA_IFNAME; in _nl_store_ifp_cookie() 141 strlcpy(NLA_DATA(nla), if_name(ifp), ifname_len + 1); in _nl_store_ifp_cookie()
|
H A D | rt.c | 165 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in dump_rc_nhop_mtu() local 167 if (nla == NULL) in dump_rc_nhop_mtu() 169 nla->nla_type = NL_RTA_METRICS; in dump_rc_nhop_mtu() 170 nla->nla_len = nla_len; in dump_rc_nhop_mtu() 171 nla++; in dump_rc_nhop_mtu() 172 nla->nla_type = NL_RTAX_MTU; in dump_rc_nhop_mtu() 173 nla->nla_len = sizeof(struct nlattr) + sizeof(uint32_t); in dump_rc_nhop_mtu() 174 *((uint32_t *)(nla + 1)) = nh->nh_mtu; in dump_rc_nhop_mtu() 434 nlattr_get_multipath(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_multipath() argument 443 data_len = nla in nlattr_get_multipath() [all...] |
H A D | nexthop.c | 414 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in dump_nhgrp() local 415 if (nla == NULL) in dump_nhgrp() 417 nla->nla_type = NHA_GROUP; in dump_nhgrp() 418 nla->nla_len = nla_len; in dump_nhgrp() 420 struct nexthop_grp *grp = &((struct nexthop_grp *)(nla + 1))[i]; in dump_nhgrp() 660 nlattr_get_nhg(struct nlattr *nla, struct nl_pstate *npt, const void *arg, void *target) in nlattr_get_nhg() argument 665 struct nexthop_grp *grp = NLA_DATA(nla); in nlattr_get_nhg() 666 int data_len = NLA_DATA_LEN(nla); in nlattr_get_nhg() 674 *((struct nlattr **)target) = nla; in nlattr_get_nhg()
|
H A D | iface.c | 151 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in get_stats() local 152 if (nla == NULL) in get_stats() 154 nla->nla_type = IFLA_STATS64; in get_stats() 155 nla->nla_len = nla_len; in get_stats() 156 stats = (struct rtnl_link_stats64 *)(nla + 1); in get_stats() 729 nlattr_get_cinfo(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_cinfo() argument 732 if (__predict_false(NLA_DATA_LEN(nla) != sizeof(struct ifa_cacheinfo))) { in nlattr_get_cinfo() 734 nla->nla_type, NLA_DATA_LEN(nla)); in nlattr_get_cinfo() 737 *((struct ifa_cacheinfo **)target) = (struct ifa_cacheinfo *)NL_RTA_DATA(nla); in nlattr_get_cinfo()
|
/freebsd/tests/sys/netlink/ |
H A D | netlink_socket.c | 162 struct nlattr nla; member 177 ATF_REQUIRE(nlc[0].nla.nla_type == NLMSGINFO_ATTR_PROCESS_ID); in cmsg_check() 181 ATF_REQUIRE(nlc[1].nla.nla_type == NLMSGINFO_ATTR_PORT_ID); in cmsg_check() 262 struct nlattr *nla; in nla_RTA_DST() local 264 for (nla = start; (char *)nla < (char *)start + len; in nla_RTA_DST() 265 nla = (struct nlattr *)((char *)nla + NLA_ALIGN(nla->nla_len))) { in nla_RTA_DST() 266 if (nla->nla_type == RTA_DST) in nla_RTA_DST() 267 return (nla); in nla_RTA_DST() 302 struct nlattr *nla; in ATF_TC_BODY() local 314 ATF_REQUIRE(nla = nla_RTA_DST(&reply.rta_dst, sizeof(reply))); in ATF_TC_BODY() [all …]
|
/freebsd/tests/atf_python/sys/netlink/ |
H A D | attrs.py | 30 def add_nla(self, nla): argument 31 self.nla_list.append(nla) 86 for nla in self.nla_list: 87 if nla.nla_type == nla_type_raw: 88 return nla 93 return align4(len(b"".join([bytes(nla) for nla in self.nla_list]))) + 4 105 for nla in self.nla_list: 106 nla.print_attr(prepend + " ") 110 return self._to_bytes(b"".join([bytes(nla) for nla in self.nla_list]))
|
H A D | message.py | 57 def add_nla(self, nla): argument 58 self.nla_list.append(nla) 62 for nla in nla_list: 63 if nla.nla_type == nla_type_raw: 64 return nla 255 for nla in self.nla_list: 256 ret += bytes(nla) 285 for nla in self.nla_list: 286 nla.print_attr(" ")
|
H A D | netlink.py | 177 nla = self.get_nla(NlErrattrType.NLMSGERR_ATTR_MSG) 178 if nla: 179 return nla.text 184 nla = self.get_nla(NlErrattrType.NLMSGERR_ATTR_OFFS) 185 if nla: 186 return nla.u32 311 nla = NlAttrStr(GenlCtrlAttrType.CTRL_ATTR_FAMILY_NAME, family_name) 312 hdr.nlmsg_len = sizeof(Nlmsghdr) + sizeof(GenlMsgHdr) + len(bytes(nla)) 314 msg_bytes = bytes(hdr) + bytes(ghdr) + bytes(nla)
|
/freebsd/sbin/ipfw/ |
H A D | nat.c | 1026 struct nat_list_arg *nla; in nat_show_data() local 1029 nla = (struct nat_list_arg *)arg; in nat_show_data() 1031 switch (nla->cmd) { in nat_show_data() 1033 if (nat_get_cmd(cfg->name, nla->cmd, &oh) != 0) { in nat_show_data() 1041 if (nat_get_cmd(cfg->name, nla->cmd, &oh) == 0) { in nat_show_data() 1047 if (nla->is_all != 0 && errno == ENOENT) in nat_show_data() 1156 struct nat_list_arg nla; in ipfw_show_nat() local 1185 memset(&nla, 0, sizeof(nla)); in ipfw_show_nat() 1186 nla.cmd = cmd; in ipfw_show_nat() 1187 nla.is_all = 1; in ipfw_show_nat() [all …]
|
/freebsd/contrib/libfido2/src/ |
H A D | netlink.c | 63 struct nlattr nla; member 135 if ((nlalen = h.u.nla.nla_len) < sizeof(h.u) || nlalen > *len || in nla_from_buf() 161 return (a->u.nla.nla_type); in nla_type() 173 if (cnt > a->u.nla.nla_len || in nla_read() 177 a->u.nla.nla_len = (uint16_t)(a->u.nla.nla_len - cnt); in nla_read() 282 a.u.nla.nla_type = type; in nlmsg_setattr() 283 a.u.nla.nla_len = (uint16_t)(len + sizeof(a.u)); in nlmsg_setattr()
|
/freebsd/sys/tests/ |
H A D | ktest_example.c | 84 test_with_params_parser(struct ktest_test_context *ctx, struct nlattr *nla) in test_with_params_parser() argument 90 return (nl_parse_nested(nla, &test1_parser, ctx->npt, attrs)); in test_with_params_parser()
|
/freebsd/lib/libpfctl/ |
H A D | libpfctl.c | 305 snl_attr_get_counters(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_counters() argument 312 error = snl_parse_header(ss, NLA_DATA(nla), NLA_DATA_LEN(nla), &counter_parser, &counter); in snl_attr_get_counters() 335 snl_attr_get_uint64_element(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_uint64_element() argument 345 error = snl_attr_get_uint64(ss, nla, arg, &value); in snl_attr_get_uint64_element() 359 snl_attr_get_uint64_array(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_uint64_array() argument 369 error = snl_parse_header(ss, NLA_DATA(nla), NLA_DATA_LEN(nla), &array_parser, &a); in snl_attr_get_uint64_array() 1465 snl_attr_get_pf_rule_labels(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_pf_rule_labels() argument 1474 ret = snl_attr_copy_string(ss, nla, (void *)PF_RULE_LABEL_SIZE, in snl_attr_get_pf_rule_labels() 1490 snl_attr_get_nested_pf_rule_labels(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_nested_pf_rule_labels() argument 1497 …error = snl_parse_header(ss, NLA_DATA(nla), NLA_DATA_LEN(nla), &rule_labels_parser, &parsed_labels… in snl_attr_get_nested_pf_rule_labels() [all …]
|
/freebsd/contrib/wpa/src/drivers/ |
H A D | driver_macsec_linux.c | 590 struct nlattr *nla; in dump_callback() local 593 nla_for_each_nested(nla, tb_msg[MACSEC_ATTR_TXSA_LIST], rem) { in dump_callback() 596 err = nla_parse_nested(tb, MACSEC_SA_ATTR_MAX, nla, in dump_callback() 617 struct nlattr *nla; in dump_callback() local 620 nla_for_each_nested(nla, tb_msg[MACSEC_ATTR_RXSC_LIST], rem) { in dump_callback() 623 err = nla_parse_nested(tb, MACSEC_RXSC_ATTR_MAX, nla, in dump_callback() 634 nla_for_each_nested(nla, tb[MACSEC_RXSC_ATTR_SA_LIST], in dump_callback() 639 MACSEC_SA_ATTR_MAX, nla, in dump_callback()
|
/freebsd/sys/netpfil/pf/ |
H A D | pf_nl.c | 512 nlattr_get_pf_rule_labels(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_pf_rule_labels() argument 521 ret = nlattr_get_chara(nla, npt, (void *)PF_RULE_LABEL_SIZE, in nlattr_get_pf_rule_labels() 537 nlattr_get_nested_pf_rule_labels(struct nlattr *nla, struct nl_pstate *npt, const void *arg, void *… in nlattr_get_nested_pf_rule_labels() argument 543 …error = nl_parse_header(NLA_DATA(nla), NLA_DATA_LEN(nla), &rule_labels_parser, npt, &parsed_labels… in nlattr_get_nested_pf_rule_labels() 630 nlattr_get_pf_timeout(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_pf_timeout() argument 639 ret = nlattr_get_uint32(nla, npt, NULL, &t->timeouts[t->i]); in nlattr_get_pf_timeout() 654 nlattr_get_nested_timeouts(struct nlattr *nla, struct nl_pstate *npt, const void *arg, void *target) in nlattr_get_nested_timeouts() argument 660 error = nl_parse_header(NLA_DATA(nla), NLA_DATA_LEN(nla), &timeout_parser, npt, &parsed_timeouts); in nlattr_get_nested_timeouts()
|
/freebsd/sys/contrib/openzfs/module/zfs/ |
H A D | zap_leaf.c | 266 struct zap_leaf_array *nla = in zap_leaf_array_copy() local 270 *nla = *la; /* structure assignment */ in zap_leaf_array_copy() 274 nchunkp = &nla->la_next; in zap_leaf_array_copy()
|