/freebsd/sys/netlink/ |
H A D | netlink_message_writer.c | 48 nlmsg_get_buf(struct nl_writer *nw, size_t len, bool waitok) in nlmsg_get_buf() argument 52 MPASS(nw->buf == NULL); in nlmsg_get_buf() 54 NL_LOG(LOG_DEBUG3, "Setting up nw %p len %zu %s", nw, len, in nlmsg_get_buf() 57 nw->buf = nl_buf_alloc(len, mflag); in nlmsg_get_buf() 58 if (__predict_false(nw->buf == NULL)) in nlmsg_get_buf() 60 nw->hdr = NULL; in nlmsg_get_buf() 61 nw->malloc_flag = mflag; in nlmsg_get_buf() 62 nw->num_messages = 0; in nlmsg_get_buf() 63 nw->enomem = false; in nlmsg_get_buf() 69 nl_send_one(struct nl_writer *nw) in nl_send_one() argument [all …]
|
H A D | netlink_message_writer.h | 42 typedef bool nl_writer_cb(struct nl_writer *nw); 73 bool _nlmsg_flush(struct nl_writer *nw); 74 void _nlmsg_ignore_limit(struct nl_writer *nw); 76 bool _nlmsg_refill_buffer(struct nl_writer *nw, size_t required_len); 77 bool _nlmsg_add(struct nl_writer *nw, uint32_t portid, uint32_t seq, 79 bool _nlmsg_end(struct nl_writer *nw); 80 void _nlmsg_abort(struct nl_writer *nw); 82 bool _nlmsg_end_dump(struct nl_writer *nw, int error, struct nlmsghdr *hdr); 86 nl_writer_unicast(struct nl_writer *nw, size_t size, struct nlpcb *nlp, in nl_writer_unicast() argument 89 return (_nl_writer_unicast(nw, size, nlp, waitok)); in nl_writer_unicast() [all …]
|
H A D | netlink_glue.c | 113 nl_writer_unicast_stub(struct nl_writer *nw, size_t size, struct nlpcb *nlp, in nl_writer_unicast_stub() argument 116 return (get_stub_writer(nw)); in nl_writer_unicast_stub() 120 nl_writer_group_stub(struct nl_writer *nw, size_t size, uint16_t protocol, in nl_writer_group_stub() argument 123 return (get_stub_writer(nw)); in nl_writer_group_stub() 127 nlmsg_flush_stub(struct nl_writer *nw __unused) in nlmsg_flush_stub() 133 nlmsg_ignore_limit_stub(struct nl_writer *nw __unused) in nlmsg_ignore_limit_stub() 138 nlmsg_refill_buffer_stub(struct nl_writer *nw __unused, in nlmsg_refill_buffer_stub() 145 nlmsg_add_stub(struct nl_writer *nw, uint32_t portid, uint32_t seq, uint16_t type, in nlmsg_add_stub() argument 152 nlmsg_end_stub(struct nl_writer *nw __unused) in nlmsg_end_stub() 158 nlmsg_abort_stub(struct nl_writer *nw __unused) in nlmsg_abort_stub() [all …]
|
H A D | netlink_snl.h | 1056 snl_init_writer(struct snl_state *ss, struct snl_writer *nw) in snl_init_writer() argument 1058 nw->size = SNL_WRITER_BUFFER_SIZE; in snl_init_writer() 1059 nw->base = (char *)snl_allocz(ss, nw->size); in snl_init_writer() 1060 if (nw->base == NULL) { in snl_init_writer() 1061 nw->error = true; in snl_init_writer() 1062 nw->size = 0; in snl_init_writer() 1065 nw->offset = 0; in snl_init_writer() 1066 nw->hdr = NULL; in snl_init_writer() 1067 nw->error = false; in snl_init_writer() 1068 nw->ss = ss; in snl_init_writer() [all …]
|
H A D | netlink_io.c | 201 nl_send(struct nl_writer *nw, struct nlpcb *nlp) in nl_send() argument 207 MPASS(nw->hdr == NULL); in nl_send() 208 MPASS(nw->buf != NULL); in nl_send() 209 MPASS(nw->buf->datalen > 0); in nl_send() 212 struct nlmsghdr *hdr = (struct nlmsghdr *)nw->buf->data; in nl_send() 215 nw->buf->datalen, nw->num_messages, hdr->nlmsg_type, in nl_send() 220 __predict_false(!linux_netlink_p->msgs_to_linux(nw, nlp))) { in nl_send() 221 nl_buf_free(nw->buf); in nl_send() 222 nw->buf = NULL; in nl_send() 226 nb = nw->buf; in nl_send() [all …]
|
H A D | netlink_generic.c | 172 const struct genl_family *gf, struct nl_writer *nw) in dump_family() argument 174 if (!nlmsg_reply(nw, hdr, sizeof(struct genlmsghdr))) in dump_family() 177 struct genlmsghdr *ghdr_new = nlmsg_reserve_object(nw, struct genlmsghdr); in dump_family() 182 nlattr_add_string(nw, CTRL_ATTR_FAMILY_NAME, gf->family_name); in dump_family() 183 nlattr_add_u16(nw, CTRL_ATTR_FAMILY_ID, genl_family_id(gf)); in dump_family() 184 nlattr_add_u32(nw, CTRL_ATTR_VERSION, gf->family_version); in dump_family() 185 nlattr_add_u32(nw, CTRL_ATTR_HDRSIZE, gf->family_hdrsize); in dump_family() 186 nlattr_add_u32(nw, CTRL_ATTR_MAXATTR, gf->family_attr_max); in dump_family() 189 int off = nlattr_add_nested(nw, CTRL_ATTR_OPS); in dump_family() 196 int cmd_off = nlattr_add_nested(nw, ++cnt); in dump_family() [all …]
|
H A D | netlink_sysevent.c | 83 struct nl_writer nw; in sysevent_write() local 85 if (!nl_writer_group(&nw, NLMSG_LARGE, NETLINK_GENERIC, se->id, 0, in sysevent_write() 91 if (!nlmsg_reply(&nw, &hdr, sizeof(struct genlmsghdr))) { in sysevent_write() 95 struct genlmsghdr *ghdr = nlmsg_reserve_object(&nw, struct genlmsghdr); in sysevent_write() 103 nlattr_add_string(&nw, NLSE_ATTR_SYSTEM, se->name); in sysevent_write() 104 nlattr_add_string(&nw, NLSE_ATTR_SUBSYSTEM, subsystem); in sysevent_write() 105 nlattr_add_string(&nw, NLSE_ATTR_TYPE, type); in sysevent_write() 107 nlattr_add_string(&nw, NLSE_ATTR_DATA, data); in sysevent_write() 108 nlmsg_end(&nw); in sysevent_write() 109 nlmsg_flush(&nw); in sysevent_write()
|
H A D | netlink_snl_generic.h | 36 snl_create_genl_msg_request(struct snl_writer *nw, uint16_t genl_family, in snl_create_genl_msg_request() argument 42 assert(nw->hdr == NULL); in snl_create_genl_msg_request() 44 hdr = snl_reserve_msg_object(nw, struct nlmsghdr); in snl_create_genl_msg_request() 49 ghdr = snl_reserve_msg_object(nw, struct genlmsghdr); in snl_create_genl_msg_request() 53 nw->hdr = hdr; in snl_create_genl_msg_request() 124 struct snl_writer nw; in _snl_get_genl_family_info() local 129 snl_init_writer(ss, &nw); in _snl_get_genl_family_info() 130 snl_create_genl_msg_request(&nw, GENL_ID_CTRL, CTRL_CMD_GETFAMILY); in _snl_get_genl_family_info() 131 snl_add_msg_attr_string(&nw, CTRL_ATTR_FAMILY_NAME, family_name); in _snl_get_genl_family_info() 132 if ((hdr = snl_finalize_msg(&nw)) == NULL || !snl_send_message(ss, hdr)) in _snl_get_genl_family_info()
|
H A D | netlink_snl_route.h | 131 snl_add_msg_attr_ip4(struct snl_writer *nw, int attrtype, const struct in_addr *addr) in snl_add_msg_attr_ip4() argument 133 return (snl_add_msg_attr(nw, attrtype, 4, addr)); in snl_add_msg_attr_ip4() 137 snl_add_msg_attr_ip6(struct snl_writer *nw, int attrtype, const struct in6_addr *addr) in snl_add_msg_attr_ip6() argument 139 return (snl_add_msg_attr(nw, attrtype, 16, addr)); in snl_add_msg_attr_ip6() 143 snl_add_msg_attr_ip(struct snl_writer *nw, int attrtype, const struct sockaddr *sa) in snl_add_msg_attr_ip() argument 150 return (snl_add_msg_attr(nw, attrtype, 4, addr)); in snl_add_msg_attr_ip() 153 return (snl_add_msg_attr(nw, attrtype, 16, addr)); in snl_add_msg_attr_ip() 160 snl_add_msg_attr_ipvia(struct snl_writer *nw, int attrtype, const struct sockaddr *sa) in snl_add_msg_attr_ipvia() argument 169 return (snl_add_msg_attr(nw, attrtype, 5, buf)); in snl_add_msg_attr_ipvia() 172 return (snl_add_msg_attr(nw, attrtype, 17, buf)); in snl_add_msg_attr_ipvia()
|
/freebsd/sys/netpfil/pf/ |
H A D | pf_nl.c | 84 dump_addr(struct nl_writer *nw, int attr, const struct pf_addr *addr, int af) in dump_addr() argument 88 nlattr_add(nw, attr, 4, &addr->v4); in dump_addr() 91 nlattr_add(nw, attr, 16, &addr->v6); in dump_addr() 97 dump_state_peer(struct nl_writer *nw, int attr, const struct pf_state_peer *peer) in dump_state_peer() argument 99 int off = nlattr_add_nested(nw, attr); in dump_state_peer() 103 nlattr_add_u32(nw, PF_STP_SEQLO, peer->seqlo); in dump_state_peer() 104 nlattr_add_u32(nw, PF_STP_SEQHI, peer->seqhi); in dump_state_peer() 105 nlattr_add_u32(nw, PF_STP_SEQDIFF, peer->seqdiff); in dump_state_peer() 106 nlattr_add_u16(nw, PF_STP_MAX_WIN, peer->max_win); in dump_state_peer() 107 nlattr_add_u16(nw, PF_STP_MSS, peer->mss); in dump_state_peer() [all …]
|
/freebsd/sys/compat/linux/ |
H A D | linux_netlink.c | 202 handle_default_out(struct nlmsghdr *hdr, struct nl_writer *nw) in handle_default_out() argument 205 out_hdr = nlmsg_reserve_data(nw, NLMSG_ALIGN(hdr->nlmsg_len), char); in handle_default_out() 209 nw->num_messages++; in handle_default_out() 216 nlmsg_copy_header(struct nlmsghdr *hdr, struct nl_writer *nw) in nlmsg_copy_header() argument 218 return (nlmsg_add(nw, hdr->nlmsg_pid, hdr->nlmsg_seq, hdr->nlmsg_type, in nlmsg_copy_header() 223 _nlmsg_copy_next_header(struct nlmsghdr *hdr, struct nl_writer *nw, int sz) in _nlmsg_copy_next_header() argument 225 void *next_hdr = nlmsg_reserve_data(nw, sz, void); in _nlmsg_copy_next_header() 234 nlmsg_copy_nla(const struct nlattr *nla_orig, struct nl_writer *nw) in nlmsg_copy_nla() argument 236 struct nlattr *nla = nlmsg_reserve_data(nw, nla_orig->nla_len, struct nlattr); in nlmsg_copy_nla() 248 nlmsg_translate_ifname_nla(struct nlattr *nla, struct nl_writer *nw) in nlmsg_translate_ifname_nla() argument [all …]
|
/freebsd/usr.sbin/arp/ |
H A D | arp_netlink.c | 57 struct snl_writer nw; in get_link_info() local 59 snl_init_writer(ss, &nw); in get_link_info() 61 struct nlmsghdr *hdr = snl_create_msg_request(&nw, RTM_GETLINK); in get_link_info() 62 struct ifinfomsg *ifmsg = snl_reserve_msg_object(&nw, struct ifinfomsg); in get_link_info() 65 if (! (hdr = snl_finalize_msg(&nw)) || !snl_send_message(ss, hdr)) in get_link_info() 106 struct snl_writer nw; in guess_ifindex() local 108 snl_init_writer(ss, &nw); in guess_ifindex() 110 struct nlmsghdr *hdr = snl_create_msg_request(&nw, RTM_GETROUTE); in guess_ifindex() 111 struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg); in guess_ifindex() 115 snl_add_msg_attr_ip(&nw, RTA_DST, (struct sockaddr *)&dst); in guess_ifindex() [all …]
|
/freebsd/lib/libpfctl/ |
H A D | libpfctl.c | 115 struct snl_writer nw; in pfctl_do_netlink_cmd() local 124 snl_init_writer(&h->ss, &nw); in pfctl_do_netlink_cmd() 125 hdr = snl_create_genl_msg_request(&nw, family_id, cmd); in pfctl_do_netlink_cmd() 127 hdr = snl_finalize_msg(&nw); in pfctl_do_netlink_cmd() 404 struct snl_writer nw; in pfctl_get_status_h() local 412 snl_init_writer(&h->ss, &nw); in pfctl_get_status_h() 413 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GET_STATUS); in pfctl_get_status_h() 416 hdr = snl_finalize_msg(&nw); in pfctl_get_status_h() 1088 snl_add_msg_attr_addr_wrap(struct snl_writer *nw, uint32_t type, const struct pf_addr_wrap *addr) in snl_add_msg_attr_addr_wrap() argument 1092 off = snl_add_msg_attr_nested(nw, type); in snl_add_msg_attr_addr_wrap() [all …]
|
/freebsd/usr.sbin/ndp/ |
H A D | ndp_netlink.c | 69 struct snl_writer nw; in get_link_info() local 71 snl_init_writer(ss, &nw); in get_link_info() 73 struct nlmsghdr *hdr = snl_create_msg_request(&nw, RTM_GETLINK); in get_link_info() 74 struct ifinfomsg *ifmsg = snl_reserve_msg_object(&nw, struct ifinfomsg); in get_link_info() 77 if (! (hdr = snl_finalize_msg(&nw)) || !snl_send_message(ss, hdr)) in get_link_info() 136 struct snl_writer nw; in guess_ifindex() local 144 snl_init_writer(ss, &nw); in guess_ifindex() 146 struct nlmsghdr *hdr = snl_create_msg_request(&nw, RTM_GETROUTE); in guess_ifindex() 147 struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg); in guess_ifindex() 150 snl_add_msg_attr_ip(&nw, RTA_DST, (struct sockaddr *)dst); in guess_ifindex() [all …]
|
/freebsd/tests/sys/netlink/ |
H A D | test_snl.c | 56 struct snl_writer nw; in ATF_TC_BODY() local 68 snl_init_writer(&ss, &nw); in ATF_TC_BODY() 70 struct nlmsghdr *hdr = snl_create_msg_request(&nw, 255); in ATF_TC_BODY() 72 ATF_CHECK(snl_reserve_msg_object(&nw, struct ifinfomsg) != NULL); in ATF_TC_BODY() 73 snl_add_msg_attr_string(&nw, 143, "some random string"); in ATF_TC_BODY() 74 ATF_CHECK(snl_finalize_msg(&nw) != NULL); in ATF_TC_BODY() 98 struct snl_writer nw; in ATF_TC_BODY() local 110 snl_init_writer(&ss, &nw); in ATF_TC_BODY() 112 struct nlmsghdr *hdr = snl_create_msg_request(&nw, 255); in ATF_TC_BODY() 114 ATF_CHECK(snl_reserve_msg_object(&nw, struct ifinfomsg) != NULL); in ATF_TC_BODY() [all …]
|
/freebsd/lib/libifconfig/ |
H A D | libifconfig_carp.c | 73 struct snl_writer nw; in _ifconfig_carp_get() local 88 snl_init_writer(&ss, &nw); in _ifconfig_carp_get() 96 hdr = snl_create_genl_msg_request(&nw, family_id, CARP_NL_CMD_GET); in _ifconfig_carp_get() 99 snl_add_msg_attr_string(&nw, CARP_NL_IFNAME, name); in _ifconfig_carp_get() 102 snl_add_msg_attr_u32(&nw, CARP_NL_VHID, vhid); in _ifconfig_carp_get() 104 hdr = snl_finalize_msg(&nw); in _ifconfig_carp_get() 150 struct snl_writer nw; in ifconfig_carp_set_info() local 162 snl_init_writer(&ss, &nw); in ifconfig_carp_set_info() 169 hdr = snl_create_genl_msg_request(&nw, family_id, CARP_NL_CMD_SET); in ifconfig_carp_set_info() 171 snl_add_msg_attr_u32(&nw, CARP_NL_VHID, carpr->carpr_vhid); in ifconfig_carp_set_info() [all …]
|
/freebsd/sbin/pflowctl/ |
H A D | pflowctl.c | 99 struct snl_writer nw; in list() local 109 snl_init_writer(&ss, &nw); in list() 110 hdr = snl_create_genl_msg_request(&nw, family_id, PFLOWNL_CMD_LIST); in list() 112 hdr = snl_finalize_msg(&nw); in list() 151 struct snl_writer nw; in create() local 161 snl_init_writer(&ss, &nw); in create() 162 hdr = snl_create_genl_msg_request(&nw, family_id, PFLOWNL_CMD_CREATE); in create() 164 hdr = snl_finalize_msg(&nw); in create() 189 struct snl_writer nw; in del() local 203 snl_init_writer(&ss, &nw); in del() [all …]
|
/freebsd/sys/tests/ |
H A D | ktest.c | 82 create_reply(struct nl_writer *nw, struct nlmsghdr *hdr, int cmd) in create_reply() argument 84 if (!nlmsg_reply(nw, hdr, sizeof(struct genlmsghdr))) in create_reply() 87 struct genlmsghdr *ghdr_new = nlmsg_reserve_object(nw, struct genlmsghdr); in create_reply() 99 struct nl_writer *nw = npt->nw; in dump_mod_test() local 101 if (!create_reply(nw, hdr, KTEST_CMD_NEWTEST)) in dump_mod_test() 104 nlattr_add_string(nw, KTEST_ATTR_MOD_NAME, mod->info->name); in dump_mod_test() 105 nlattr_add_string(nw, KTEST_ATTR_TEST_NAME, test_info->name); in dump_mod_test() 106 nlattr_add_string(nw, KTEST_ATTR_TEST_DESCR, test_info->desc); in dump_mod_test() 108 if (nlmsg_end(nw)) in dump_mod_test() 111 nlmsg_abort(nw); in dump_mod_test() [all …]
|
/freebsd/sys/netlink/route/ |
H A D | iface.c | 62 struct nl_writer *nw; member 146 get_stats(struct nl_writer *nw, if_t ifp) in get_stats() argument 151 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in get_stats() 195 get_hwaddr(struct nl_writer *nw, if_t ifp) in get_hwaddr() argument 200 nlattr_add(nw, IFLAF_ORIG_HWADDR, if_getaddrlen(ifp), in get_hwaddr() 213 dump_sa(struct nl_writer *nw, int attr, const struct sockaddr *sa) in dump_sa() argument 250 return (nlattr_add(nw, attr, addr_len, addr_data)); in dump_sa() 254 dump_iface_caps(struct nl_writer *nw, struct ifnet *ifp) in dump_iface_caps() argument 256 int off = nlattr_add_nested(nw, IFLAF_CAPS); in dump_iface_caps() 271 nlattr_add_u32(nw, NLA_BITSET_SIZE, IFCAP_B_SIZE); in dump_iface_caps() [all …]
|
H A D | rt.c | 124 dump_rc_nhop_gw(struct nl_writer *nw, const struct nhop_object *nh) in dump_rc_nhop_gw() argument 135 nlattr_add(nw, NL_RTA_GATEWAY, 4, &nh->gw4_sa.sin_addr); in dump_rc_nhop_gw() 144 nlattr_add(nw, NL_RTA_GATEWAY, 16, &gw6); in dump_rc_nhop_gw() 154 nlattr_add(nw, NL_RTA_VIA, 17, via); in dump_rc_nhop_gw() 162 dump_rc_nhop_mtu(struct nl_writer *nw, const struct nhop_object *nh) in dump_rc_nhop_mtu() argument 165 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in dump_rc_nhop_mtu() 179 dump_rc_nhg(struct nl_writer *nw, const struct nhgrp_object *nhg, struct rtmsg *rtm) in dump_rc_nhg() argument 187 nlattr_add_u32(nw, NL_RTA_NH_ID, uidx); in dump_rc_nhg() 188 nlattr_add_u32(nw, NL_RTA_KNH_ID, nhgrp_get_idx(nhg)); in dump_rc_nhg() 190 nlattr_add_u32(nw, NL_RTA_RTFLAG in dump_rc_nhg() 221 dump_rc_nhop(struct nl_writer * nw,const struct route_nhop_data * rnd,struct rtmsg * rtm) dump_rc_nhop() argument 269 dump_px(uint32_t fibnum,const struct nlmsghdr * hdr,const struct rtentry * rt,struct route_nhop_data * rnd,struct nl_writer * nw) dump_px() argument 353 struct nl_writer nw; report_operation() local 530 struct nl_writer *nw; global() member 665 handle_rtm_dump(struct nlpcb * nlp,uint32_t fibnum,int family,struct nlmsghdr * hdr,struct nl_writer * nw) handle_rtm_dump() argument 1048 struct nl_writer nw; rtnl_handle_route_event() local [all...] |
H A D | nexthop.c | 382 struct nl_writer *nw; member 394 struct nl_writer *nw) in dump_nhgrp() argument 397 if (!nlmsg_reply(nw, hdr, sizeof(struct nhmsg))) in dump_nhgrp() 400 struct nhmsg *nhm = nlmsg_reserve_object(nw, struct nhmsg); in dump_nhgrp() 406 nlattr_add_u32(nw, NHA_ID, unhop->un_idx); in dump_nhgrp() 407 nlattr_add_u16(nw, NHA_GROUP_TYPE, NEXTHOP_GRP_TYPE_MPATH); in dump_nhgrp() 414 struct nlattr *nla = nlmsg_reserve_data(nw, nla_len, struct nlattr); in dump_nhgrp() 427 if (nlmsg_end(nw)) in dump_nhgrp() 431 nlmsg_abort(nw); in dump_nhgrp() 437 struct nl_writer *nw) in dump_nhop() argument [all …]
|
H A D | neigh.c | 61 struct nl_writer *nw; member 138 struct nl_writer *nw = wa->nw; in dump_lle_locked() local 153 if (!nlmsg_reply(nw, hdr, sizeof(struct ndmsg))) in dump_lle_locked() 156 ndm = nlmsg_reserve_object(nw, struct ndmsg); in dump_lle_locked() 166 nlattr_add(nw, NDA_DST, 4, &addr); in dump_lle_locked() 173 nlattr_add(nw, NDA_DST, 16, &addr); in dump_lle_locked() 181 nlattr_add(nw, NDA_LLADDR, addrlen, lle->ll_addr); in dump_lle_locked() 184 nlattr_add_u32(nw, NDA_PROBES, lle->la_asked); in dump_lle_locked() 187 cache = nlmsg_reserve_attr(nw, NDA_CACHEINFO, struct nda_cacheinfo); in dump_lle_locked() 193 int off = nlattr_add_nested(nw, NDA_FREEBSD); in dump_lle_locked() [all …]
|
/freebsd/crypto/openssl/crypto/bn/ |
H A D | bn_shift.c | 106 int i, nw; in bn_lshift_fixed_top() local 116 nw = n / BN_BITS2; in bn_lshift_fixed_top() 117 if (bn_wexpand(r, a->top + nw + 1) == NULL) in bn_lshift_fixed_top() 127 t = &(r->d[nw]); in bn_lshift_fixed_top() 138 r->d[nw] = 0; in bn_lshift_fixed_top() 140 if (nw != 0) in bn_lshift_fixed_top() 141 memset(r->d, 0, sizeof(*t) * nw); in bn_lshift_fixed_top() 144 r->top = a->top + nw + 1; in bn_lshift_fixed_top() 178 int i, top, nw; in bn_rshift_fixed_top() 185 nw in bn_rshift_fixed_top() 175 int i, top, nw; bn_rshift_fixed_top() local [all...] |
/freebsd/sbin/route/ |
H A D | route_netlink.c | 146 struct snl_writer nw; in rtmsg_nl_int() local 149 snl_init_writer(ss, &nw); in rtmsg_nl_int() 177 struct nlmsghdr *hdr = snl_create_msg_request(&nw, nl_type); in rtmsg_nl_int() 213 struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg); in rtmsg_nl_int() 223 snl_add_msg_attr_ip(&nw, RTA_DST, dst); in rtmsg_nl_int() 224 snl_add_msg_attr_u32(&nw, RTA_TABLE, fib); in rtmsg_nl_int() 231 snl_add_msg_attr_ip(&nw, RTA_GATEWAY, gw); in rtmsg_nl_int() 233 snl_add_msg_attr_ipvia(&nw, RTA_VIA, gw); in rtmsg_nl_int() 256 snl_add_msg_attr_u32(&nw, RTA_OIF, rta_oif); in rtmsg_nl_int() 258 snl_add_msg_attr_u32(&nw, NL_RTA_RTFLAGS, rtm_flags); in rtmsg_nl_int() [all …]
|
/freebsd/sbin/ifconfig/ |
H A D | af_inet.c | 340 struct snl_writer nw = {}; in in_delete_first_nl() local 351 snl_init_writer(ss, &nw); in in_delete_first_nl() 352 hdr = snl_create_msg_request(&nw, NL_RTM_GETADDR); in in_delete_first_nl() 354 ifahdr = snl_reserve_msg_object(&nw, struct ifaddrmsg); in in_delete_first_nl() 358 if (! (hdr = snl_finalize_msg(&nw)) || !snl_send_message(ss, hdr)) in in_delete_first_nl() 382 snl_init_writer(ss, &nw); in in_delete_first_nl() 383 hdr = snl_create_msg_request(&nw, NL_RTM_DELADDR); in in_delete_first_nl() 384 ifahdr = snl_reserve_msg_object(&nw, struct ifaddrmsg); in in_delete_first_nl() 387 snl_add_msg_attr_ip4(&nw, IFA_LOCAL, &addr); in in_delete_first_nl() 389 if (! (hdr = snl_finalize_msg(&nw)) || !snl_send_message(ss, hdr)) in in_delete_first_nl() [all …]
|