Home
last modified time | relevance | path

Searched refs:nla (Results 1 – 25 of 31) sorted by relevance

12

/freebsd/sys/netlink/
H A Dnetlink_message_parser.c113 nlmsg_report_cookie(struct nl_pstate *npt, struct nlattr *nla) in nlmsg_report_cookie() argument
115 MPASS(nla->nla_type == NLMSGERR_ATTR_COOKIE); in nlmsg_report_cookie()
116 MPASS(nla->nla_len >= sizeof(struct nlattr)); in nlmsg_report_cookie()
117 npt->cookie = nla; in nlmsg_report_cookie()
123 struct nlattr *nla = npt_alloc(npt, sizeof(*nla) + sizeof(uint32_t)); in nlmsg_report_cookie_u32() local
125 if (nla == NULL) in nlmsg_report_cookie_u32()
127 nla->nla_type = NLMSGERR_ATTR_COOKIE; in nlmsg_report_cookie_u32()
128 nla->nla_len = sizeof(*nla) + sizeof(uint32_t); in nlmsg_report_cookie_u32()
129 memcpy(nla + 1, &val, sizeof(uint32_t)); in nlmsg_report_cookie_u32()
130 nlmsg_report_cookie(npt, nla); in nlmsg_report_cookie_u32()
[all …]
H A Dnetlink_snl.h472 struct nlattr *nla; in snl_parse_attrs_raw() local
474 NLA_FOREACH(nla, nla_head, len) { in snl_parse_attrs_raw()
475 if (nla->nla_len < sizeof(struct nlattr)) in snl_parse_attrs_raw()
477 int nla_type = nla->nla_type & NLA_TYPE_MASK; in snl_parse_attrs_raw()
481 if (!s->cb(ss, nla, s->arg, ptr)) in snl_parse_attrs_raw()
540 snl_attr_get_flag(struct snl_state *ss __unused, struct nlattr *nla, const void *arg __unused, in snl_attr_get_flag() argument
543 if (NLA_DATA_LEN(nla) == 0) { in snl_attr_get_flag()
551 snl_attr_get_bytes(struct snl_state *ss __unused, struct nlattr *nla, const void *arg, in snl_attr_get_bytes() argument
554 if ((size_t)NLA_DATA_LEN(nla) != (size_t)arg) in snl_attr_get_bytes()
557 memcpy(target, NLA_DATA_CONST(nla), (size_t)arg); in snl_attr_get_bytes()
[all …]
H A Dnetlink_message_parser.h173 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, struct nl_pstate *npt,
[all …]
H A Dnetlink_snl_route.h88 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 Dnetlink_message_writer.h187 struct nlattr *nla = nlattr_restore_offset(nw, off, struct nlattr); in nlattr_set_len() local
188 nla->nla_len = nlattr_save_offset(nw) - off; in nlattr_set_len()
199 struct nlattr *nla = nlmsg_reserve_data(nw, sizeof(struct nlattr), struct nlattr); in nlattr_add_nested() local
200 if (__predict_false(nla == NULL)) in nlattr_add_nested()
202 nla->nla_type = nla_type; in nlattr_add_nested()
211 struct nlattr *nla = nlmsg_reserve_data(nw, sz, struct nlattr); in _nlmsg_reserve_attr() local
212 if (__predict_false(nla == NULL)) in _nlmsg_reserve_attr()
214 nla->nla_type = nla_type; in _nlmsg_reserve_attr()
215 nla->nla_len = sz; in _nlmsg_reserve_attr()
217 return ((void *)(nla + 1)); in _nlmsg_reserve_attr()
H A Dnetlink_message_writer.c371 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 Dktest_netlink_message_writer.c56 test_nlbuf_parser(struct ktest_test_context *ctx, struct nlattr *nla) in test_nlbuf_parser() argument
62 return (nl_parse_nested(nla, &nlbuf_w_parser, ctx->npt, attrs)); in test_nlbuf_parser()
H A Dnetlink_domain.c637 struct nlattr nla; in nl_createcontrol() member
641 .nla.nla_len = sizeof(struct nlattr) + sizeof(uint32_t), in nl_createcontrol()
642 .nla.nla_type = NLMSGINFO_ATTR_PROCESS_ID, in nl_createcontrol()
646 .nla.nla_len = sizeof(struct nlattr) + sizeof(uint32_t), in nl_createcontrol()
647 .nla.nla_type = NLMSGINFO_ATTR_PORT_ID, in nl_createcontrol()
H A Dnetlink_snl_route_parsers.h97 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, in nlattr_get_multipath()
/freebsd/sys/compat/linux/
H A Dlinux_netlink.c116 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
265 nlmsg_translate_all_nla(struct nlmsghdr *hdr, struct nlattr *nla, in nlmsg_translate_all_nla() argument
273 switch (nla->nla_type) { in nlmsg_translate_all_nla()
[all …]
/freebsd/sys/netlink/route/
H A Diface_drivers.c171 struct nlattr *nla = nla_cookie + 1; in _nl_store_ifp_cookie() local
172 nla->nla_len = sizeof(struct nlattr) + sizeof(ifindex); in _nl_store_ifp_cookie()
173 nla->nla_type = IFLA_NEW_IFINDEX; in _nl_store_ifp_cookie()
174 memcpy(NLA_DATA(nla), &ifindex, sizeof(ifindex)); in _nl_store_ifp_cookie()
176 nla = NLA_NEXT(nla); in _nl_store_ifp_cookie()
177 nla->nla_len = sizeof(struct nlattr) + ifname_len + 1; in _nl_store_ifp_cookie()
178 nla->nla_type = IFLA_IFNAME; in _nl_store_ifp_cookie()
179 strlcpy(NLA_DATA(nla), if_name(ifp), ifname_len + 1); in _nl_store_ifp_cookie()
H A Drt.c193 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in dump_rc_nhop_mtu() local
195 if (nla == NULL) in dump_rc_nhop_mtu()
197 nla->nla_type = NL_RTA_METRICS; in dump_rc_nhop_mtu()
198 nla->nla_len = nla_len; in dump_rc_nhop_mtu()
199 nla++; in dump_rc_nhop_mtu()
200 nla->nla_type = NL_RTAX_MTU; in dump_rc_nhop_mtu()
201 nla->nla_len = sizeof(struct nlattr) + sizeof(uint32_t); in dump_rc_nhop_mtu()
202 *((uint32_t *)(nla + 1)) = nh->nh_mtu; in dump_rc_nhop_mtu()
497 nlattr_get_multipath(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_multipath() argument
506 data_len = nla->nla_len - sizeof(struct nlattr); in nlattr_get_multipath()
[all …]
H A Dnexthop.c410 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in dump_nhgrp() local
411 if (nla == NULL) in dump_nhgrp()
413 nla->nla_type = NHA_GROUP; in dump_nhgrp()
414 nla->nla_len = nla_len; in dump_nhgrp()
416 struct nexthop_grp *grp = &((struct nexthop_grp *)(nla + 1))[i]; in dump_nhgrp()
656 nlattr_get_nhg(struct nlattr *nla, struct nl_pstate *npt, const void *arg, void *target) in nlattr_get_nhg() argument
661 struct nexthop_grp *grp = NLA_DATA(nla); in nlattr_get_nhg()
662 int data_len = NLA_DATA_LEN(nla); in nlattr_get_nhg()
670 *((struct nlattr **)target) = nla; in nlattr_get_nhg()
H A Diface.c153 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in get_stats() local
154 if (nla == NULL) in get_stats()
156 nla->nla_type = IFLA_STATS64; in get_stats()
157 nla->nla_len = nla_len; in get_stats()
158 stats = (struct rtnl_link_stats64 *)(nla + 1); in get_stats()
740 nlattr_get_cinfo(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_cinfo() argument
743 if (__predict_false(NLA_DATA_LEN(nla) != sizeof(struct ifa_cacheinfo))) { in nlattr_get_cinfo()
745 nla->nla_type, NLA_DATA_LEN(nla)); in nlattr_get_cinfo()
748 *((struct ifa_cacheinfo **)target) = (struct ifa_cacheinfo *)NL_RTA_DATA(nla); in nlattr_get_cinfo()
/freebsd/tests/sys/netlink/
H A Dnetlink_socket.c170 struct nlattr nla; member
185 ATF_REQUIRE(nlc[0].nla.nla_type == NLMSGINFO_ATTR_PROCESS_ID); in cmsg_check()
189 ATF_REQUIRE(nlc[1].nla.nla_type == NLMSGINFO_ATTR_PORT_ID); in cmsg_check()
288 struct nlattr *nla; in nla_RTA_DST() local
290 for (nla = start; (char *)nla < (char *)start + len; in nla_RTA_DST()
291 nla = (struct nlattr *)((char *)nla + NLA_ALIGN(nla->nla_len))) { in nla_RTA_DST()
292 if (nla->nla_type == RTA_DST) in nla_RTA_DST()
293 return (nla); in nla_RTA_DST()
332 struct nlattr *nla; in ATF_TC_BODY() local
344 ATF_REQUIRE(nla = nla_RTA_DST(&reply.rta_dst, sizeof(reply))); in ATF_TC_BODY()
[all …]
/freebsd/tests/atf_python/sys/netlink/
H A Dattrs.py30 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 Dmessage.py57 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 Dnetlink.py177 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/lib/libsysdecode/
H A Dnetlink.c254 const struct nlattr *nla; in nl_decode_attrs_raw() local
259 NLA_FOREACH_CONST(nla, nla_head, len) { in nl_decode_attrs_raw()
260 s = search_decoders(ps, pslen, nla->nla_type & NLA_TYPE_MASK); in nl_decode_attrs_raw()
266 s->cb(fp, nla, s->attr_name, s->args); in nl_decode_attrs_raw()
397 const struct nlattr *nla = (const struct nlattr *)(const void *) in sysdecode_netlink_pf() local
404 nl_decode_attrs_raw(fp, nla, nlm_len, in sysdecode_netlink_pf()
490 const struct nlattr *nla; in sysdecode_netlink() local
494 NLA_FOREACH_CONST(nla, nla_head, nla_len) { in sysdecode_netlink()
495 switch (nla->nla_type) { in sysdecode_netlink()
497 memcpy(&family_id, NLA_DATA_CONST(nla), in sysdecode_netlink()
[all …]
/freebsd/sbin/ipfw/
H A Dnat.c1029 struct nat_list_arg *nla; in nat_show_data() local
1032 nla = (struct nat_list_arg *)arg; in nat_show_data()
1034 switch (nla->cmd) { in nat_show_data()
1036 if (nat_get_cmd(cfg->name, nla->cmd, &oh) != 0) { in nat_show_data()
1044 if (nat_get_cmd(cfg->name, nla->cmd, &oh) == 0) { in nat_show_data()
1050 if (nla->is_all != 0 && errno == ENOENT) in nat_show_data()
1159 struct nat_list_arg nla; in ipfw_show_nat() local
1188 memset(&nla, 0, sizeof(nla)); in ipfw_show_nat()
1189 nla.cmd = cmd; in ipfw_show_nat()
1190 nla.is_all = 1; in ipfw_show_nat()
[all …]
/freebsd/contrib/libfido2/src/
H A Dnetlink.c63 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 Dktest_example.c84 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 Dlibpfctl.c315 snl_attr_get_counters(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_counters() argument
322 error = snl_parse_header(ss, NLA_DATA(nla), NLA_DATA_LEN(nla), &counter_parser, &counter); in snl_attr_get_counters()
345 snl_attr_get_uint64_element(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_uint64_element() argument
355 error = snl_attr_get_uint64(ss, nla, arg, &value); in snl_attr_get_uint64_element()
369 snl_attr_get_uint64_array(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_uint64_array() argument
379 error = snl_parse_header(ss, NLA_DATA(nla), NLA_DATA_LEN(nla), &array_parser, &a); in snl_attr_get_uint64_array()
1504 snl_attr_get_pf_rule_labels(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_pf_rule_labels() argument
1513 ret = snl_attr_copy_string(ss, nla, (void *)PF_RULE_LABEL_SIZE, in snl_attr_get_pf_rule_labels()
1529 snl_attr_get_nested_pf_rule_labels(struct snl_state *ss, struct nlattr *nla, in snl_attr_get_nested_pf_rule_labels() argument
1536 …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 Ddriver_macsec_linux.c592 struct nlattr *nla; in dump_callback() local
595 nla_for_each_nested(nla, tb_msg[MACSEC_ATTR_TXSA_LIST], rem) { in dump_callback()
598 err = nla_parse_nested(tb, MACSEC_SA_ATTR_MAX, nla, in dump_callback()
619 struct nlattr *nla; in dump_callback() local
622 nla_for_each_nested(nla, tb_msg[MACSEC_ATTR_RXSC_LIST], rem) { in dump_callback()
625 err = nla_parse_nested(tb, MACSEC_RXSC_ATTR_MAX, nla, in dump_callback()
636 nla_for_each_nested(nla, tb[MACSEC_RXSC_ATTR_SA_LIST], in dump_callback()
641 MACSEC_SA_ATTR_MAX, nla, in dump_callback()
/freebsd/sys/netpfil/pf/
H A Dpf_nl.c550 nlattr_get_pf_rule_labels(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_pf_rule_labels() argument
559 ret = nlattr_get_chara(nla, npt, (void *)PF_RULE_LABEL_SIZE, in nlattr_get_pf_rule_labels()
575 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
581 …error = nl_parse_header(NLA_DATA(nla), NLA_DATA_LEN(nla), &rule_labels_parser, npt, &parsed_labels… in nlattr_get_nested_pf_rule_labels()
677 nlattr_get_pf_timeout(struct nlattr *nla, struct nl_pstate *npt, in nlattr_get_pf_timeout() argument
686 ret = nlattr_get_uint32(nla, npt, NULL, &t->timeouts[t->i]); in nlattr_get_pf_timeout()
701 nlattr_get_nested_timeouts(struct nlattr *nla, struct nl_pstate *npt, const void *arg, void *target) in nlattr_get_nested_timeouts() argument
707 error = nl_parse_header(NLA_DATA(nla), NLA_DATA_LEN(nla), &timeout_parser, npt, &parsed_timeouts); in nlattr_get_nested_timeouts()
2172 nlattr_get_pfr_addr(struct nlattr *nla, struct nl_pstate *npt, const void *arg, in nlattr_get_pfr_addr() argument
2182 error = nlattr_get_nested(nla, npt, &pfra_addr_parser, &addr); in nlattr_get_pfr_addr()

12