lib/libc/net/getifaddrs.c
134
for (next = buf; next < buf + needed; next += rtm->rtm_msglen) {
lib/libc/net/getifaddrs.c
135
rtm = (struct rt_msghdr *)(void *)next;
lib/libc/net/getifaddrs.c
136
if (rtm->rtm_version != RTM_VERSION)
lib/libc/net/getifaddrs.c
138
switch (rtm->rtm_type) {
lib/libc/net/getifaddrs.c
140
ifm = (struct if_msghdrl *)(void *)rtm;
lib/libc/net/getifaddrs.c
155
ifam = (struct ifa_msghdrl *)(void *)rtm;
lib/libc/net/getifaddrs.c
217
for (next = buf; next < buf + needed; next += rtm->rtm_msglen) {
lib/libc/net/getifaddrs.c
218
rtm = (struct rt_msghdr *)(void *)next;
lib/libc/net/getifaddrs.c
219
if (rtm->rtm_version != RTM_VERSION)
lib/libc/net/getifaddrs.c
221
switch (rtm->rtm_type) {
lib/libc/net/getifaddrs.c
223
ifm = (struct if_msghdrl *)(void *)rtm;
lib/libc/net/getifaddrs.c
254
ifam = (struct ifa_msghdrl *)(void *)rtm;
lib/libc/net/getifaddrs.c
89
struct rt_msghdr *rtm;
lib/libc/net/getifmaddrs.c
126
for (next = buf; next < buf + needed; next += rtm->rtm_msglen) {
lib/libc/net/getifmaddrs.c
127
rtm = (struct rt_msghdr *)(void *)next;
lib/libc/net/getifmaddrs.c
128
if (rtm->rtm_version != RTM_VERSION)
lib/libc/net/getifmaddrs.c
131
switch (rtm->rtm_type) {
lib/libc/net/getifmaddrs.c
133
ifmam = (struct ifma_msghdr *)(void *)rtm;
lib/libc/net/getifmaddrs.c
66
struct rt_msghdr *rtm;
lib/libc/net/getifmaddrs.c
90
for (next = buf; next < buf + needed; next += rtm->rtm_msglen) {
lib/libc/net/getifmaddrs.c
91
rtm = (struct rt_msghdr *)(void *)next;
lib/libc/net/getifmaddrs.c
92
if (rtm->rtm_version != RTM_VERSION)
lib/libc/net/getifmaddrs.c
94
switch (rtm->rtm_type) {
lib/libc/net/getifmaddrs.c
96
ifmam = (struct ifma_msghdr *)(void *)rtm;
libexec/bootpd/rtmsg.c
120
struct rt_msghdr *rtm = &(m_rtmsg.m_rtm);
libexec/bootpd/rtmsg.c
144
sin = (struct sockaddr_in *)(rtm + 1);
libexec/bootpd/rtmsg.c
148
!(rtm->rtm_flags & RTF_GATEWAY)) switch (sdl->sdl_type) {
libexec/bootpd/rtmsg.c
179
struct rt_msghdr *rtm = &m_rtmsg.m_rtm;
libexec/bootpd/rtmsg.c
185
rtm->rtm_flags = flags;
libexec/bootpd/rtmsg.c
186
rtm->rtm_version = RTM_VERSION;
libexec/bootpd/rtmsg.c
194
rtm->rtm_addrs |= RTA_GATEWAY;
libexec/bootpd/rtmsg.c
195
rtm->rtm_rmx.rmx_expire = expire_time;
libexec/bootpd/rtmsg.c
196
rtm->rtm_inits = RTV_EXPIRE;
libexec/bootpd/rtmsg.c
197
rtm->rtm_flags |= (RTF_HOST | RTF_STATIC | RTF_LLDATA);
libexec/bootpd/rtmsg.c
199
rtm->rtm_addrs |= RTA_NETMASK;
libexec/bootpd/rtmsg.c
200
rtm->rtm_flags &= ~RTF_HOST;
libexec/bootpd/rtmsg.c
204
rtm->rtm_addrs |= RTA_DST;
libexec/bootpd/rtmsg.c
207
if (rtm->rtm_addrs & (w)) { \
libexec/bootpd/rtmsg.c
214
rtm->rtm_msglen = cp - (char *)&m_rtmsg;
libexec/bootpd/rtmsg.c
216
l = rtm->rtm_msglen;
libexec/bootpd/rtmsg.c
217
rtm->rtm_seq = ++seq;
libexec/bootpd/rtmsg.c
218
rtm->rtm_type = cmd;
libexec/bootpd/rtmsg.c
228
} while (l > 0 && (rtm->rtm_type != cmd || rtm->rtm_seq != seq || rtm->rtm_pid != getpid()));
sbin/dhclient/dhclient.c
230
struct rt_msghdr *rtm;
sbin/dhclient/dhclient.c
243
rtm = (struct rt_msghdr *)msg;
sbin/dhclient/dhclient.c
244
if (n < (ssize_t)sizeof(rtm->rtm_msglen) ||
sbin/dhclient/dhclient.c
245
n < (ssize_t)rtm->rtm_msglen ||
sbin/dhclient/dhclient.c
246
rtm->rtm_version != RTM_VERSION)
sbin/dhclient/dhclient.c
249
switch (rtm->rtm_type) {
sbin/dhclient/dhclient.c
252
ifam = (struct ifa_msghdr *)rtm;
sbin/dhclient/dhclient.c
279
if (rtm->rtm_type == RTM_NEWADDR) {
sbin/dhclient/dhclient.c
294
ifm = (struct if_msghdr *)rtm;
sbin/dhclient/dhclient.c
297
if ((rtm->rtm_flags & RTF_UP) == 0) {
sbin/dhclient/dhclient.c
313
ifan = (struct if_announcemsghdr *)rtm;
sbin/dhclient/dhclient.c
322
ifan = (struct if_announcemsghdr *)rtm;
sbin/dumpon/dumpon.c
138
for (next = buf; next < buf + sz; next += rtm->rtm_msglen) {
sbin/dumpon/dumpon.c
139
rtm = (struct rt_msghdr *)(void *)next;
sbin/dumpon/dumpon.c
140
if (rtm->rtm_version != RTM_VERSION)
sbin/dumpon/dumpon.c
142
if ((rtm->rtm_flags & RTF_GATEWAY) == 0 ||
sbin/dumpon/dumpon.c
143
rtm->rtm_index != ifindex)
sbin/dumpon/dumpon.c
147
sa = (struct sockaddr *)(rtm + 1);
sbin/dumpon/dumpon.c
149
if ((rtm->rtm_addrs & (1 << i)) != 0) {
sbin/dumpon/dumpon.c
92
struct rt_msghdr *rtm;
sbin/ifconfig/ifieee80211.c
4101
struct rt_msghdr *rtm;
sbin/ifconfig/ifieee80211.c
4108
rtm = (struct rt_msghdr *)(void *)buf;
sbin/ifconfig/ifieee80211.c
4109
if (rtm->rtm_version != RTM_VERSION)
sbin/ifconfig/ifieee80211.c
4111
ifan = (struct if_announcemsghdr *) rtm;
sbin/ifconfig/ifieee80211.c
4112
} while (rtm->rtm_type != RTM_IEEE80211 ||
sbin/ipf/ipsend/44arp.c
102
for (next = buf; next < lim; next += rtm->rtm_msglen)
sbin/ipf/ipsend/44arp.c
104
rtm = (struct rt_msghdr *)next;
sbin/ipf/ipsend/44arp.c
105
sin = (struct sockaddr_in *)(rtm + 1);
sbin/ipf/ipsend/44arp.c
63
struct rt_msghdr *rtm;
sbin/route/route.c
1445
struct rt_msghdr *rtm;
sbin/route/route.c
1468
for (next = buf; next < lim; next += rtm->rtm_msglen) {
sbin/route/route.c
1469
rtm = (struct rt_msghdr *)(void *)next;
sbin/route/route.c
1470
print_rtmsg(rtm, rtm->rtm_msglen);
sbin/route/route.c
1596
rtm.rtm_type = cmd;
sbin/route/route.c
1597
rtm.rtm_flags = flags;
sbin/route/route.c
1598
rtm.rtm_version = RTM_VERSION;
sbin/route/route.c
1599
rtm.rtm_seq = ++rtm_seq;
sbin/route/route.c
1600
rtm.rtm_addrs = rtm_addrs;
sbin/route/route.c
1601
rtm.rtm_rmx = rt_metrics;
sbin/route/route.c
1602
rtm.rtm_inits = rtm_inits;
sbin/route/route.c
1610
rtm.rtm_msglen = l = cp - (char *)&m_rtmsg;
sbin/route/route.c
1612
print_rtmsg(&rtm, l);
sbin/route/route.c
1637
(rtm.rtm_type != RTM_GET || rtm.rtm_seq != rtm_seq ||
sbin/route/route.c
1638
rtm.rtm_pid != pid));
sbin/route/route.c
1647
print_getmsg(&rtm, l, fib);
sbin/route/route.c
1696
print_rtmsg(struct rt_msghdr *rtm, size_t msglen)
sbin/route/route.c
1708
if (rtm->rtm_version != RTM_VERSION) {
sbin/route/route.c
1710
rtm->rtm_version);
sbin/route/route.c
1713
if (rtm->rtm_type < nitems(msgtypes))
sbin/route/route.c
1714
(void)printf("%s: ", msgtypes[rtm->rtm_type]);
sbin/route/route.c
1716
(void)printf("unknown type %d: ", rtm->rtm_type);
sbin/route/route.c
1717
(void)printf("len %d, ", rtm->rtm_msglen);
sbin/route/route.c
1726
switch (rtm->rtm_type) {
sbin/route/route.c
1729
ifm = (struct if_msghdr *)rtm;
sbin/route/route.c
1749
ifam = (struct ifa_msghdr *)rtm;
sbin/route/route.c
1758
ifmam = (struct ifma_msghdr *)rtm;
sbin/route/route.c
1764
ifan = (struct if_announcemsghdr *)rtm;
sbin/route/route.c
1782
if (rtm->rtm_type <= RTM_RESOLVE) {
sbin/route/route.c
1784
(long)rtm->rtm_pid, rtm->rtm_seq, rtm->rtm_errno);
sbin/route/route.c
1785
printb(rtm->rtm_flags, routeflags);
sbin/route/route.c
1786
pmsg_common(rtm, msglen);
sbin/route/route.c
1788
printf("type: %u, len: %zu\n", rtm->rtm_type, msglen);
sbin/route/route.c
1799
print_getmsg(struct rt_msghdr *rtm, int msglen, int fib)
sbin/route/route.c
1809
if (rtm->rtm_version != RTM_VERSION) {
sbin/route/route.c
1811
rtm->rtm_version);
sbin/route/route.c
1814
if (rtm->rtm_msglen > msglen) {
sbin/route/route.c
1816
rtm->rtm_msglen, msglen);
sbin/route/route.c
1819
if (rtm->rtm_errno) {
sbin/route/route.c
1820
errno = rtm->rtm_errno;
sbin/route/route.c
1824
cp = ((char *)(rtm + 1));
sbin/route/route.c
1826
if (rtm->rtm_addrs & (1 << i)) {
sbin/route/route.c
1830
if ((rtm->rtm_addrs & RTA_IFP) &&
sbin/route/route.c
1838
if (sp[RTAX_GATEWAY] && (rtm->rtm_flags & RTF_GATEWAY))
sbin/route/route.c
1847
printb(rtm->rtm_flags, routeflags);
sbin/route/route.c
1849
#define lock(f) ((rtm->rtm_rmx.rmx_locks & __CONCAT(RTV_,f)) ? 'L' : ' ')
sbin/route/route.c
1853
printf("%8lu%c ", rtm->rtm_rmx.rmx_recvpipe, lock(RPIPE));
sbin/route/route.c
1854
printf("%8lu%c ", rtm->rtm_rmx.rmx_sendpipe, lock(SPIPE));
sbin/route/route.c
1855
printf("%8lu%c ", rtm->rtm_rmx.rmx_ssthresh, lock(SSTHRESH));
sbin/route/route.c
1856
printf("%8lu%c ", msec(rtm->rtm_rmx.rmx_rtt), lock(RTT));
sbin/route/route.c
1857
printf("%8lu%c ", rtm->rtm_rmx.rmx_mtu, lock(MTU));
sbin/route/route.c
1858
printf("%8lu%c ", rtm->rtm_rmx.rmx_weight, lock(WEIGHT));
sbin/route/route.c
1859
if (rtm->rtm_rmx.rmx_expire > 0)
sbin/route/route.c
1863
printf("%8ld%c\n", (long)(rtm->rtm_rmx.rmx_expire - ts.tv_sec),
sbin/route/route.c
1869
pmsg_common(rtm, msglen);
sbin/route/route.c
1870
else if (rtm->rtm_addrs &~ RTA_IGN) {
sbin/route/route.c
1872
printb(rtm->rtm_addrs, addrnames);
sbin/route/route.c
1879
pmsg_common(struct rt_msghdr *rtm, size_t msglen)
sbin/route/route.c
1883
printb(rtm->rtm_rmx.rmx_locks, metricnames);
sbin/route/route.c
1885
printb(rtm->rtm_inits, metricnames);
sbin/route/route.c
1887
pmsg_addrs(((char *)(rtm + 1)), rtm->rtm_addrs,
sbin/route/route.c
495
struct rt_msghdr *rtm;
sbin/route/route.c
532
for (next = buf; next < lim; next += rtm->rtm_msglen) {
sbin/route/route.c
533
rtm = (struct rt_msghdr *)(void *)next;
sbin/route/route.c
535
print_rtmsg(rtm, rtm->rtm_msglen);
sbin/route/route.c
536
if ((rtm->rtm_flags & RTF_GATEWAY) == 0)
sbin/route/route.c
539
struct sockaddr *sa = (struct sockaddr *)(rtm + 1);
sbin/route/route.c
546
rtm->rtm_type = RTM_DELETE;
sbin/route/route.c
547
rtm->rtm_seq = seqno;
sbin/route/route.c
548
rlen = write(s, next, rtm->rtm_msglen);
sbin/route/route.c
551
if (rlen < (int)rtm->rtm_msglen) {
sbin/route/route.c
562
print_rtmsg(rtm, rlen);
sbin/route/route.c
564
struct sockaddr *sa = (struct sockaddr *)(rtm + 1);
sbin/route/route.c
566
printf("%-20.20s ", rtm->rtm_flags & RTF_HOST ?
sbin/route/route_netlink.c
218
struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg);
sbin/route/route_netlink.c
219
rtm->rtm_family = dst->sa_family;
sbin/route/route_netlink.c
220
rtm->rtm_protocol = RTPROT_STATIC;
sbin/route/route_netlink.c
221
rtm->rtm_type = rtm_type;
sbin/route/route_netlink.c
222
rtm->rtm_dst_len = plen;
sbin/route/route_netlink.c
226
rtm->rtm_flags = RTM_F_PREFIX;
sbin/route/route_netlink.c
882
struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg);
sbin/route/route_netlink.c
883
rtm->rtm_family = r->rtm_family;
sbin/route/route_netlink.c
884
rtm->rtm_dst_len = r->rtm_dst_len;
sbin/route/route_netlink.c
932
struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg);
sbin/route/route_netlink.c
933
rtm->rtm_family = af;
sbin/routed/table.c
1037
struct rt_msghdr *rtm;
sbin/routed/table.c
1071
needed += 50*(sizeof(*rtm)+5*sizeof(struct sockaddr));
sbin/routed/table.c
1077
for (next = sysctl_buf; next < lim; next += rtm->rtm_msglen) {
sbin/routed/table.c
1078
rtm = (struct rt_msghdr *)next;
sbin/routed/table.c
1079
if (rtm->rtm_msglen == 0) {
sbin/routed/table.c
1082
(u_long)rtm, (u_long)sysctl_buf, (u_long)lim);
sbin/routed/table.c
1087
(struct sockaddr *)(rtm+1),
sbin/routed/table.c
1088
(struct sockaddr *)(next + rtm->rtm_msglen),
sbin/routed/table.c
1089
rtm->rtm_addrs);
sbin/routed/table.c
1099
if (rtm->rtm_flags & RTF_LLINFO)
sbin/routed/table.c
1105
if (rtm->rtm_flags & RTF_WASCLONED)
sbin/routed/table.c
1124
rtm_add(rtm,&info,MIN_WAITTIME);
sbin/routed/table.c
1151
struct rt_msghdr rtm;
sbin/routed/table.c
1168
if (m.r.rtm.rtm_version != RTM_VERSION) {
sbin/routed/table.c
1170
m.r.rtm.rtm_version);
sbin/routed/table.c
1176
if (m.r.rtm.rtm_type <= RTM_CHANGE
sbin/routed/table.c
1177
&& m.r.rtm.rtm_pid == mypid) {
sbin/routed/table.c
1186
if (m.r.rtm.rtm_type == RTM_IFINFO
sbin/routed/table.c
1187
|| m.r.rtm.rtm_type == RTM_NEWADDR
sbin/routed/table.c
1188
|| m.r.rtm.rtm_type == RTM_DELADDR) {
sbin/routed/table.c
1190
m.r.rtm.rtm_type != RTM_DELADDR);
sbin/routed/table.c
1194
rtm_type_name(m.r.rtm.rtm_type),
sbin/routed/table.c
1199
rtm_type_name(m.r.rtm.rtm_type),
sbin/routed/table.c
1217
if (m.r.rtm.rtm_type == RTM_OIFINFO)
sbin/routed/table.c
1221
strlcpy(str, rtm_type_name(m.r.rtm.rtm_type), sizeof(str));
sbin/routed/table.c
1223
if (m.r.rtm.rtm_type <= RTM_CHANGE)
sbin/routed/table.c
1224
strp += sprintf(strp," from pid %d",m.r.rtm.rtm_pid);
sbin/routed/table.c
1230
if (m.r.rtm.rtm_type > RTM_RESOLVE) {
sbin/routed/table.c
1236
m.r.rtm.rtm_addrs);
sbin/routed/table.c
1251
: (m.r.rtm.rtm_flags & RTF_HOST)
sbin/routed/table.c
1264
if (m.r.rtm.rtm_flags & RTF_LLINFO) {
sbin/routed/table.c
1271
if (m.r.rtm.rtm_flags & RTF_WASCLONED) {
sbin/routed/table.c
1288
switch (m.r.rtm.rtm_type) {
sbin/routed/table.c
1292
if (m.r.rtm.rtm_errno != 0) {
sbin/routed/table.c
1294
str, strerror(m.r.rtm.rtm_errno));
sbin/routed/table.c
1297
rtm_add(&m.r.rtm,&info,0);
sbin/routed/table.c
1302
if (m.r.rtm.rtm_errno != 0
sbin/routed/table.c
1303
&& m.r.rtm.rtm_errno != ESRCH) {
sbin/routed/table.c
1305
str, strerror(m.r.rtm.rtm_errno));
sbin/routed/table.c
1315
rtm_lose(&m.r.rtm,&info);
sbin/routed/table.c
873
rtm_add(struct rt_msghdr *rtm,
sbin/routed/table.c
882
if (rtm->rtm_flags & RTF_HOST) {
sbin/routed/table.c
887
msglog("ignore %s without mask", rtm_type_name(rtm->rtm_type));
sbin/routed/table.c
896
rtm_type_name(rtm->rtm_type));
sbin/routed/table.c
900
rtm_type_name(rtm->rtm_type),
sbin/routed/table.c
905
k->k_metric = rtm->rtm_rmx.rmx_hopcount;
sbin/routed/table.c
914
if (rtm->rtm_flags & RTF_GATEWAY)
sbin/routed/table.c
916
if (rtm->rtm_flags & RTF_STATIC)
sbin/routed/table.c
919
if (0 != (rtm->rtm_flags & (RTF_DYNAMIC | RTF_MODIFIED))) {
sbin/routed/table.c
977
rtm_lose(struct rt_msghdr *rtm,
sbin/routed/table.c
983
rtm_type_name(rtm->rtm_type));
sys/compat/linux/linux_netlink.c
115
struct rtmsg *rtm = (struct rtmsg *)(hdr + 1);
sys/compat/linux/linux_netlink.c
122
if ((f = linux_to_bsd_domain(rtm->rtm_family)) == AF_UNKNOWN)
sys/compat/linux/linux_netlink.c
124
rtm->rtm_family = f;
sys/compat/linux/linux_netlink.c
126
if (rtm->rtm_table == 254)
sys/compat/linux/linux_netlink.c
127
rtm->rtm_table = 0;
sys/compat/linux/linux_netlink.c
131
nla_head = (struct nlattr *)((char *)rtm + NETLINK_ALIGN(sizeof(struct rtmsg)));
sys/compat/linux/linux_netlink.c
144
rtm->rtm_table = 0;
sys/compat/linux/linux_netlink.c
437
struct rtmsg *rtm;
sys/compat/linux/linux_netlink.c
438
rtm = nlmsg_copy_next_header(hdr, nw, struct rtmsg);
sys/compat/linux/linux_netlink.c
439
rtm->rtm_family = bsd_to_linux_domain(rtm->rtm_family);
sys/net/if_llatbl.c
1000
if (rtm->rtm_rmx.rmx_expire == 0)
sys/net/if_llatbl.c
1014
if ((rtm->rtm_flags & RTF_ANNOUNCE))
sys/net/if_llatbl.c
1016
lle->la_expire = rtm->rtm_rmx.rmx_expire;
sys/net/if_llatbl.c
964
lla_rt_output(struct rt_msghdr *rtm, struct rt_addrinfo *info)
sys/net/if_llatbl.c
996
switch (rtm->rtm_type) {
sys/net/route/nhgrp_ctl.c
1009
rtm = (struct rt_msghdr *)buffer;
sys/net/route/nhgrp_ctl.c
1010
rtm->rtm_msglen = sz;
sys/net/route/nhgrp_ctl.c
1011
rtm->rtm_version = RTM_VERSION;
sys/net/route/nhgrp_ctl.c
1012
rtm->rtm_type = RTM_GET;
sys/net/route/nhgrp_ctl.c
1014
nhge = (struct nhgrp_external *)(rtm + 1);
sys/net/route/nhgrp_ctl.c
987
struct rt_msghdr *rtm;
sys/net/route/nhop_ctl.c
1231
struct rt_msghdr rtm;
sys/net/route/nhop_ctl.c
1243
arpc.rtm.rtm_msglen = sizeof(arpc);
sys/net/route/nhop_ctl.c
1244
arpc.rtm.rtm_version = RTM_VERSION;
sys/net/route/nhop_ctl.c
1245
arpc.rtm.rtm_type = RTM_GET;
sys/net/route/nhop_ctl.c
1247
arpc.rtm.rtm_flags = nh->nh_priv->rt_flags;
sys/net/route/nhop_ctl.c
1286
arpc.rtm.rtm_msglen += arpc.na.na_len - sizeof(struct nhop_addrs);
sys/net/rtsock.c
1009
rtm->rtm_index = ifp->if_index;
sys/net/rtsock.c
1015
rtm->rtm_index = ifp->if_index;
sys/net/rtsock.c
1020
rtm = *prtm;
sys/net/rtsock.c
1021
rtm->rtm_flags = rc->rc_rt->rte_flags | nhop_get_rtflags(nh);
sys/net/rtsock.c
1022
if (rtm->rtm_flags & RTF_GWFLAG_COMPAT)
sys/net/rtsock.c
1023
rtm->rtm_flags = RTF_GATEWAY |
sys/net/rtsock.c
1024
(rtm->rtm_flags & ~RTF_GWFLAG_COMPAT);
sys/net/rtsock.c
1025
rt_getmetrics(rc->rc_rt, nh, &rtm->rtm_rmx);
sys/net/rtsock.c
1026
rtm->rtm_rmx.rmx_weight = rc->rc_nh_weight;
sys/net/rtsock.c
1066
struct rt_msghdr *rtm = NULL;
sys/net/rtsock.c
1095
if (len < sizeof(*rtm) ||
sys/net/rtsock.c
1106
if ((rtm = malloc(total_len, M_TEMP, M_NOWAIT)) == NULL)
sys/net/rtsock.c
1109
m_copydata(m, 0, len, (caddr_t)rtm);
sys/net/rtsock.c
1113
.base = (char *)rtm + alloc_len,
sys/net/rtsock.c
1117
if (rtm->rtm_version != RTM_VERSION) {
sys/net/rtsock.c
1119
free(rtm, M_TEMP);
sys/net/rtsock.c
1120
rtm = NULL;
sys/net/rtsock.c
1130
if ((error = fill_addrinfo(rtm, len, &lb, fibnum, &info)) != 0) {
sys/net/rtsock.c
1141
if (rtm->rtm_flags & RTF_LLDATA) {
sys/net/rtsock.c
1142
error = lla_rt_output(rtm, &info);
sys/net/rtsock.c
1147
int blackhole_flags = rtm->rtm_flags & (RTF_BLACKHOLE|RTF_REJECT);
sys/net/rtsock.c
1159
switch (rtm->rtm_type) {
sys/net/rtsock.c
1162
if (rtm->rtm_type == RTM_ADD) {
sys/net/rtsock.c
1168
error = rib_action(fibnum, rtm->rtm_type, &info, &rc);
sys/net/rtsock.c
1182
rtm->rtm_index = nh->nh_ifp->if_index;
sys/net/rtsock.c
1183
rtm->rtm_flags = rc.rc_rt->rte_flags | nhop_get_rtflags(nh);
sys/net/rtsock.c
1204
error = handle_rtm_get(&info, fibnum, rtm, &rc);
sys/net/rtsock.c
1218
error = update_rtm_from_rc(&info, &rtm, alloc_len, &rc, nh);
sys/net/rtsock.c
1240
if (rtm != NULL) {
sys/net/rtsock.c
1254
if (update_rtm_from_info(&info, &rtm, alloc_len) != 0) {
sys/net/rtsock.c
1261
send_rtm_reply(so, rtm, m, saf, fibnum, error);
sys/net/rtsock.c
1272
send_rtm_reply(struct socket *so, struct rt_msghdr *rtm, struct mbuf *m,
sys/net/rtsock.c
1282
if (rtm != NULL)
sys/net/rtsock.c
1283
free(rtm, M_TEMP);
sys/net/rtsock.c
1291
if (rtm != NULL) {
sys/net/rtsock.c
1293
rtm->rtm_errno = rtm_errno;
sys/net/rtsock.c
1295
rtm->rtm_flags |= RTF_DONE;
sys/net/rtsock.c
1297
m_copyback(m, 0, rtm->rtm_msglen, (caddr_t)rtm);
sys/net/rtsock.c
1298
if (m->m_pkthdr.len < rtm->rtm_msglen) {
sys/net/rtsock.c
1301
} else if (m->m_pkthdr.len > rtm->rtm_msglen)
sys/net/rtsock.c
1302
m_adj(m, rtm->rtm_msglen - m->m_pkthdr.len);
sys/net/rtsock.c
1304
free(rtm, M_TEMP);
sys/net/rtsock.c
1712
struct rt_msghdr *rtm;
sys/net/rtsock.c
1755
rtm = mtod(m, struct rt_msghdr *);
sys/net/rtsock.c
1756
bzero((caddr_t)rtm, len);
sys/net/rtsock.c
1781
rtm->rtm_msglen = len;
sys/net/rtsock.c
1782
rtm->rtm_version = RTM_VERSION;
sys/net/rtsock.c
1783
rtm->rtm_type = type;
sys/net/rtsock.c
1802
struct rt_msghdr *rtm = NULL;
sys/net/rtsock.c
1854
rtm = (struct rt_msghdr *)w->w_tmem;
sys/net/rtsock.c
1912
rtm->rtm_version = RTM_VERSION;
sys/net/rtsock.c
1913
rtm->rtm_type = type;
sys/net/rtsock.c
1914
rtm->rtm_msglen = len;
sys/net/rtsock.c
1935
struct rt_msghdr *rtm;
sys/net/rtsock.c
1952
rtm = mtod(m, struct rt_msghdr *);
sys/net/rtsock.c
1953
rtm->rtm_flags = RTF_DONE | flags;
sys/net/rtsock.c
1954
rtm->rtm_errno = error;
sys/net/rtsock.c
1955
rtm->rtm_addrs = rtinfo->rti_addrs;
sys/net/rtsock.c
2072
struct rt_msghdr *rtm;
sys/net/rtsock.c
2093
rtm = mtod(m, struct rt_msghdr *);
sys/net/rtsock.c
2094
rtm->rtm_addrs = info->rti_addrs;
sys/net/rtsock.c
2096
rtm->rtm_index = info->rti_ifp->if_index;
sys/net/rtsock.c
2102
rtm->rtm_flags = info->rti_flags;
sys/net/rtsock.c
212
struct rt_msghdr *rtm, struct rib_cmd_info *rc);
sys/net/rtsock.c
216
static void send_rtm_reply(struct socket *so, struct rt_msghdr *rtm,
sys/net/rtsock.c
2301
struct rt_msghdr *rtm = (struct rt_msghdr *)w->w_tmem;
sys/net/rtsock.c
2303
bzero(&rtm->rtm_index,
sys/net/rtsock.c
2304
sizeof(*rtm) - offsetof(struct rt_msghdr, rtm_index));
sys/net/rtsock.c
2311
rtm->rtm_flags = rtflags | RTF_UP;
sys/net/rtsock.c
2312
if (rtm->rtm_flags & RTF_GWFLAG_COMPAT)
sys/net/rtsock.c
2313
rtm->rtm_flags = RTF_GATEWAY |
sys/net/rtsock.c
2314
(rtm->rtm_flags & ~RTF_GWFLAG_COMPAT);
sys/net/rtsock.c
2315
rt_getmetrics(rt, nh, &rtm->rtm_rmx);
sys/net/rtsock.c
2316
rtm->rtm_rmx.rmx_weight = weight;
sys/net/rtsock.c
2317
rtm->rtm_index = nh->nh_ifp->if_index;
sys/net/rtsock.c
2318
rtm->rtm_addrs = info.rti_addrs;
sys/net/rtsock.c
2319
error = SYSCTL_OUT(w->w_req, (caddr_t)rtm, size);
sys/net/rtsock.c
682
fill_addrinfo(struct rt_msghdr *rtm, int len, struct linear_buffer *lb, u_int fibnum,
sys/net/rtsock.c
687
rtm->rtm_pid = curproc->p_pid;
sys/net/rtsock.c
688
info->rti_addrs = rtm->rtm_addrs;
sys/net/rtsock.c
690
info->rti_mflags = rtm->rtm_inits;
sys/net/rtsock.c
691
info->rti_rmx = &rtm->rtm_rmx;
sys/net/rtsock.c
698
if (rt_xaddrs((caddr_t)(rtm + 1), len + (caddr_t)rtm, info))
sys/net/rtsock.c
701
info->rti_flags = rtm->rtm_flags;
sys/net/rtsock.c
709
if (rtm->rtm_type != RTM_GET) {
sys/net/rtsock.c
777
struct rt_msghdr *rtm, struct rib_cmd_info *rc)
sys/net/rtsock.c
799
if ((rtm->rtm_addrs & RTA_NETMASK) == 0) {
sys/net/rtsock.c
829
if (rtm->rtm_flags & RTF_ANNOUNCE) {
sys/net/rtsock.c
932
struct rt_msghdr *rtm, *orig_rtm = NULL;
sys/net/rtsock.c
936
rtm = *prtm;
sys/net/rtsock.c
938
rtsock_msg_buffer(rtm->rtm_type, info, NULL, &len);
sys/net/rtsock.c
945
bcopy(rtm, tmp_rtm, rtm->rtm_msglen);
sys/net/rtsock.c
946
orig_rtm = rtm;
sys/net/rtsock.c
947
rtm = tmp_rtm;
sys/net/rtsock.c
957
.w_tmem = (caddr_t)rtm,
sys/net/rtsock.c
960
rtsock_msg_buffer(rtm->rtm_type, info, &w, &len);
sys/net/rtsock.c
961
rtm->rtm_addrs = info->rti_addrs;
sys/net/rtsock.c
965
*prtm = rtm;
sys/net/rtsock.c
983
struct rt_msghdr *rtm;
sys/net/rtsock.c
987
rtm = *prtm;
sys/net/rtsock.c
998
if (rtm->rtm_addrs & (RTA_IFP | RTA_IFA)) {
sys/netinet/in.c
1828
struct rt_msghdr rtm;
sys/netinet/in.c
1849
arpc.rtm.rtm_msglen = sizeof(arpc);
sys/netinet/in.c
1850
arpc.rtm.rtm_version = RTM_VERSION;
sys/netinet/in.c
1851
arpc.rtm.rtm_type = RTM_GET;
sys/netinet/in.c
1852
arpc.rtm.rtm_flags = RTF_UP;
sys/netinet/in.c
1853
arpc.rtm.rtm_addrs = RTA_DST | RTA_GATEWAY;
sys/netinet/in.c
1857
arpc.rtm.rtm_flags |= RTF_ANNOUNCE;
sys/netinet/in.c
1872
arpc.rtm.rtm_rmx.rmx_expire =
sys/netinet/in.c
1874
arpc.rtm.rtm_flags |= (RTF_HOST | RTF_LLDATA);
sys/netinet/in.c
1876
arpc.rtm.rtm_flags |= RTF_STATIC;
sys/netinet/in.c
1878
arpc.rtm.rtm_flags |= RTF_PINNED;
sys/netinet/in.c
1879
arpc.rtm.rtm_index = ifp->if_index;
sys/netinet6/in6.c
2486
struct rt_msghdr rtm;
sys/netinet6/in6.c
2513
ndpc.rtm.rtm_msglen = sizeof(ndpc);
sys/netinet6/in6.c
2514
ndpc.rtm.rtm_version = RTM_VERSION;
sys/netinet6/in6.c
2515
ndpc.rtm.rtm_type = RTM_GET;
sys/netinet6/in6.c
2516
ndpc.rtm.rtm_flags = RTF_UP;
sys/netinet6/in6.c
2517
ndpc.rtm.rtm_addrs = RTA_DST | RTA_GATEWAY;
sys/netinet6/in6.c
2522
ndpc.rtm.rtm_flags |= RTF_ANNOUNCE;
sys/netinet6/in6.c
2537
ndpc.rtm.rtm_rmx.rmx_expire = lle->la_expire +
sys/netinet6/in6.c
2539
ndpc.rtm.rtm_flags |= (RTF_HOST | RTF_LLDATA);
sys/netinet6/in6.c
2541
ndpc.rtm.rtm_flags |= RTF_STATIC;
sys/netinet6/in6.c
2543
ndpc.rtm.rtm_flags |= RTF_PINNED;
sys/netinet6/in6.c
2545
ndpc.rtm.rtm_flags |= RTF_GATEWAY;
sys/netinet6/in6.c
2546
ndpc.rtm.rtm_rmx.rmx_pksent = lle->la_asked;
sys/netinet6/in6.c
2548
ndpc.rtm.rtm_rmx.rmx_state = lle->ln_state;
sys/netinet6/in6.c
2549
ndpc.rtm.rtm_index = ifp->if_index;
sys/netlink/route/rt.c
206
dump_rc_nhg(struct nl_writer *nw, const struct route_nhop_data *rnd, struct rtmsg *rtm)
sys/netlink/route/rt.c
279
dump_rc_nhop(struct nl_writer *nw, const struct route_nhop_data *rnd, struct rtmsg *rtm)
sys/netlink/route/rt.c
285
dump_rc_nhg(nw, rnd, rtm);
sys/netlink/route/rt.c
331
struct rtmsg *rtm;
sys/netlink/route/rt.c
341
rtm = nlmsg_reserve_object(nw, struct rtmsg);
sys/netlink/route/rt.c
342
rtm->rtm_family = family;
sys/netlink/route/rt.c
343
rtm->rtm_dst_len = 0;
sys/netlink/route/rt.c
344
rtm->rtm_src_len = 0;
sys/netlink/route/rt.c
345
rtm->rtm_tos = 0;
sys/netlink/route/rt.c
347
rtm->rtm_table = (unsigned char)fibnum;
sys/netlink/route/rt.c
348
rtm->rtm_scope = RT_SCOPE_UNIVERSE;
sys/netlink/route/rt.c
349
rtm->rtm_protocol = nl_get_rtm_protocol(rnd->rnd_nhop);
sys/netlink/route/rt.c
350
rtm->rtm_type = get_rtm_type(rnd->rnd_nhop);
sys/netlink/route/rt.c
383
rtm = nlattr_restore_offset(nw, rtm_off, struct rtmsg);
sys/netlink/route/rt.c
385
rtm->rtm_dst_len = plen;
sys/netlink/route/rt.c
387
dump_rc_nhg(nw, rnd, rtm);
sys/netlink/route/rt.c
389
dump_rc_nhop(nw, rnd, rtm);
tests/sys/net/routing/rtsock_common.h
654
rtsock_send_rtm(int fd, struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_common.h
659
rtsock_update_rtm_len(rtm);
tests/sys/net/routing/rtsock_common.h
661
len = write(fd, rtm, rtm->rtm_msglen);
tests/sys/net/routing/rtsock_common.h
663
RTSOCK_ATF_REQUIRE_MSG(rtm, len == rtm->rtm_msglen,
tests/sys/net/routing/rtsock_common.h
665
rtm->rtm_msglen, len, strerror(my_errno));
tests/sys/net/routing/rtsock_common.h
697
struct rt_msghdr *rtm;
tests/sys/net/routing/rtsock_common.h
70
void rtsock_update_rtm_len(struct rt_msghdr *rtm);
tests/sys/net/routing/rtsock_common.h
701
rtm = rtsock_read_rtm(fd, buffer, buflen);
tests/sys/net/routing/rtsock_common.h
702
if (rtm->rtm_pid == getpid() && rtm->rtm_seq == seq)
tests/sys/net/routing/rtsock_common.h
708
rtsock_print_rtm(rtm);
tests/sys/net/routing/rtsock_common.h
710
return (rtm);
tests/sys/net/routing/rtsock_common.h
717
rtsock_prepare_route_message_base(struct rt_msghdr *rtm, int cmd)
tests/sys/net/routing/rtsock_common.h
72
void rtsock_add_rtm_sa(struct rt_msghdr *rtm, int addr_type, struct sockaddr *sa);
tests/sys/net/routing/rtsock_common.h
720
memset(rtm, 0, sizeof(struct rt_msghdr));
tests/sys/net/routing/rtsock_common.h
721
rtm->rtm_type = cmd;
tests/sys/net/routing/rtsock_common.h
722
rtm->rtm_version = RTM_VERSION;
tests/sys/net/routing/rtsock_common.h
723
rtm->rtm_seq = _rtm_seq++;
tests/sys/net/routing/rtsock_common.h
727
rtsock_prepare_route_message(struct rt_msghdr *rtm, int cmd, struct sockaddr *dst,
tests/sys/net/routing/rtsock_common.h
731
rtsock_prepare_route_message_base(rtm, cmd);
tests/sys/net/routing/rtsock_common.h
733
rtsock_add_rtm_sa(rtm, RTA_DST, dst);
tests/sys/net/routing/rtsock_common.h
736
rtsock_add_rtm_sa(rtm, RTA_GATEWAY, gw);
tests/sys/net/routing/rtsock_common.h
737
rtm->rtm_flags |= RTF_GATEWAY;
tests/sys/net/routing/rtsock_common.h
741
rtsock_add_rtm_sa(rtm, RTA_NETMASK, mask);
tests/sys/net/routing/rtsock_common.h
745
rtsock_add_rtm_sa(struct rt_msghdr *rtm, int addr_type, struct sockaddr *sa)
tests/sys/net/routing/rtsock_common.h
747
char *ptr = (char *)(rtm + 1);
tests/sys/net/routing/rtsock_common.h
749
if (rtm->rtm_addrs & (1 << i)) {
tests/sys/net/routing/rtsock_common.h
755
rtm->rtm_addrs |= addr_type;
tests/sys/net/routing/rtsock_common.h
760
rtsock_find_rtm_sa(struct rt_msghdr *rtm, int addr_type)
tests/sys/net/routing/rtsock_common.h
762
char *ptr = (char *)(rtm + 1);
tests/sys/net/routing/rtsock_common.h
764
if (rtm->rtm_addrs & (1 << i)) {
tests/sys/net/routing/rtsock_common.h
776
rtsock_calc_rtm_len(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_common.h
780
char *ptr = (char *)(rtm + 1);
tests/sys/net/routing/rtsock_common.h
782
if (rtm->rtm_addrs & (1 << i)) {
tests/sys/net/routing/rtsock_common.h
794
rtsock_update_rtm_len(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_common.h
797
rtm->rtm_msglen = rtsock_calc_rtm_len(rtm);
tests/sys/net/routing/rtsock_common.h
835
struct rt_msghdr *rtm;
tests/sys/net/routing/rtsock_common.h
839
rtm = (struct rt_msghdr *)buffer;
tests/sys/net/routing/rtsock_common.h
840
ATF_REQUIRE_MSG(rtm->rtm_version == RTM_VERSION, "unknown RTM_VERSION: expected %d got %d",
tests/sys/net/routing/rtsock_common.h
841
RTM_VERSION, rtm->rtm_version);
tests/sys/net/routing/rtsock_common.h
842
ATF_REQUIRE_MSG(rtm->rtm_msglen <= len, "wrong message length: expected %d got %d",
tests/sys/net/routing/rtsock_common.h
843
(int)len, (int)rtm->rtm_msglen);
tests/sys/net/routing/rtsock_common.h
845
switch (rtm->rtm_type) {
tests/sys/net/routing/rtsock_common.h
850
_validate_message_sockaddrs(buffer, rtm->rtm_msglen,
tests/sys/net/routing/rtsock_common.h
851
sizeof(struct rt_msghdr), rtm->rtm_addrs);
tests/sys/net/routing/rtsock_common.h
855
_validate_message_sockaddrs(buffer, rtm->rtm_msglen,
tests/sys/net/routing/rtsock_common.h
862
rtsock_validate_pid_ours(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_common.h
864
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_pid == getpid(), "expected pid %d, got %d",
tests/sys/net/routing/rtsock_common.h
865
getpid(), rtm->rtm_pid);
tests/sys/net/routing/rtsock_common.h
869
rtsock_validate_pid_user(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_common.h
871
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_pid > 0, "expected non-zero pid, got %d",
tests/sys/net/routing/rtsock_common.h
872
rtm->rtm_pid);
tests/sys/net/routing/rtsock_common.h
876
rtsock_validate_pid_kernel(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_common.h
878
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_pid == 0, "expected zero pid, got %d",
tests/sys/net/routing/rtsock_common.h
879
rtm->rtm_pid);
tests/sys/net/routing/rtsock_print.h
262
rtsock_print_rtm(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_print.h
271
printf("Got message of size %hu on %s\n", rtm->rtm_msglen, buf);
tests/sys/net/routing/rtsock_print.h
274
rtsock_print_rtm_flags(flags_buf, sizeof(flags_buf), rtm->rtm_flags);
tests/sys/net/routing/rtsock_print.h
276
printf("%s: len %hu, pid: %d, seq %d, errno %d, flags: %s\n", msgtypes[rtm->rtm_type],
tests/sys/net/routing/rtsock_print.h
277
rtm->rtm_msglen, rtm->rtm_pid, rtm->rtm_seq, rtm->rtm_errno, flags_buf);
tests/sys/net/routing/rtsock_print.h
279
if (rtm->rtm_inits > 0) {
tests/sys/net/routing/rtsock_print.h
280
_printb(flags_buf, sizeof(flags_buf), rtm->rtm_inits, metricnames);
tests/sys/net/routing/rtsock_print.h
282
if (rtm->rtm_inits & RTV_MTU)
tests/sys/net/routing/rtsock_print.h
283
printf("mtu: %lu\n", rtm->rtm_rmx.rmx_mtu);
tests/sys/net/routing/rtsock_print.h
284
if (rtm->rtm_inits & RTV_EXPIRE) {
tests/sys/net/routing/rtsock_print.h
288
(int)(rtm->rtm_rmx.rmx_expire - tv.tv_sec), rtm->rtm_rmx.rmx_expire);
tests/sys/net/routing/rtsock_print.h
292
_printb(flags_buf, sizeof(flags_buf), rtm->rtm_addrs, addrnames);
tests/sys/net/routing/rtsock_print.h
293
printf("sockaddrs: 0x%X %s\n", rtm->rtm_addrs, flags_buf);
tests/sys/net/routing/rtsock_print.h
295
char *ptr = (char *)(rtm + 1);
tests/sys/net/routing/rtsock_print.h
297
if (rtm->rtm_addrs & (1 << i)) {
tests/sys/net/routing/rtsock_print.h
347
rtsock_print_message_hd(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_print.h
358
rtsock_print_cmdtype(rtm->rtm_type),
tests/sys/net/routing/rtsock_print.h
359
rtm->rtm_msglen, buf);
tests/sys/net/routing/rtsock_print.h
361
sa_print_hd(dumpbuf, sizeof(dumpbuf), (char *)rtm, rtm->rtm_msglen);
tests/sys/net/routing/rtsock_print.h
366
rtsock_print_message(struct rt_msghdr *rtm)
tests/sys/net/routing/rtsock_print.h
369
switch (rtm->rtm_type) {
tests/sys/net/routing/rtsock_print.h
374
rtsock_print_rtm(rtm);
tests/sys/net/routing/rtsock_print.h
378
rtsock_print_ifa((struct ifa_msghdr *)rtm);
tests/sys/net/routing/rtsock_print.h
381
printf("unknown rt message type %X\n", rtm->rtm_type);
tests/sys/net/routing/test_rtsock_l3.c
1001
ATF_REQUIRE_MSG(rtm != NULL, "unable to get rtsock reply for RTM_ADD");
tests/sys/net/routing/test_rtsock_l3.c
1002
if (rtm->rtm_type == RTM_DELETE) {
tests/sys/net/routing/test_rtsock_l3.c
1004
rtm = (struct rt_msghdr *)buffer2;
tests/sys/net/routing/test_rtsock_l3.c
1009
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_pid == getpid() && rtm->rtm_seq == seq,
tests/sys/net/routing/test_rtsock_l3.c
1011
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_inits & RTV_EXPIRE, "RTV_EXPIRE not set");
tests/sys/net/routing/test_rtsock_l3.c
1046
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
1048
seq = rtm->rtm_seq;
tests/sys/net/routing/test_rtsock_l3.c
1053
rtm->rtm_rmx.rmx_expire = tv.tv_sec - 1;
tests/sys/net/routing/test_rtsock_l3.c
1054
rtm->rtm_inits |= RTV_EXPIRE;
tests/sys/net/routing/test_rtsock_l3.c
1056
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
1059
ATF_REQUIRE_MSG(rtm != NULL, "unable to get rtsock reply for RTM_ADD");
tests/sys/net/routing/test_rtsock_l3.c
1060
if (rtm->rtm_type == RTM_DELETE) {
tests/sys/net/routing/test_rtsock_l3.c
1062
rtm = (struct rt_msghdr *)buffer2;
tests/sys/net/routing/test_rtsock_l3.c
1067
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_pid == getpid() && rtm->rtm_seq == seq,
tests/sys/net/routing/test_rtsock_l3.c
1069
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_inits & RTV_EXPIRE, "RTV_EXPIRE not set");
tests/sys/net/routing/test_rtsock_l3.c
1104
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1105
if ((rtm->rtm_type == RTM_ADD) && ((rtm->rtm_flags & RTF_LLINFO) == 0))
tests/sys/net/routing/test_rtsock_l3.c
1110
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&c->addr6, NULL, NULL);
tests/sys/net/routing/test_rtsock_l3.c
1111
rtsock_validate_pid_kernel(rtm);
tests/sys/net/routing/test_rtsock_l3.c
1113
RTSOCK_ATF_REQUIRE_MSG(rtm, rtsock_find_rtm_sa(rtm, RTA_NETMASK) == NULL, "netmask is set");
tests/sys/net/routing/test_rtsock_l3.c
1116
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
1119
verify_route_message_extra(rtm, if_nametoindex("lo0"), expected_rt_flags);
tests/sys/net/routing/test_rtsock_l3.c
1143
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1145
if ((rtm->rtm_type == RTM_ADD) && (rtsock_find_rtm_sa(rtm, RTA_NETMASK)))
tests/sys/net/routing/test_rtsock_l3.c
1150
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&c->net6,
tests/sys/net/routing/test_rtsock_l3.c
1154
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
1157
verify_route_message_extra(rtm, c->ifindex, expected_rt_flags);
tests/sys/net/routing/test_rtsock_l3.c
1187
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1190
if (rtm->rtm_type == RTM_NEWADDR) {
tests/sys/net/routing/test_rtsock_l3.c
1197
if ((rtm->rtm_type == RTM_ADD) && (rtsock_find_rtm_sa(rtm, RTA_NETMASK))) {
tests/sys/net/routing/test_rtsock_l3.c
1203
if ((rtm->rtm_type == RTM_ADD) && ((rtm->rtm_flags & RTF_LLDATA) == 0)) {
tests/sys/net/routing/test_rtsock_l3.c
1209
RLOG("skipping msg type %s, try: %d", rtsock_print_cmdtype(rtm->rtm_type),
tests/sys/net/routing/test_rtsock_l3.c
1234
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1235
if ((rtm->rtm_type == RTM_DELETE) &&
tests/sys/net/routing/test_rtsock_l3.c
1236
((rtm->rtm_flags & RTF_LLINFO) == 0) &&
tests/sys/net/routing/test_rtsock_l3.c
1237
rtsock_find_rtm_sa(rtm, RTA_NETMASK) == NULL)
tests/sys/net/routing/test_rtsock_l3.c
1242
verify_route_message(rtm, RTM_DELETE, (struct sockaddr *)&c->addr6, NULL, NULL);
tests/sys/net/routing/test_rtsock_l3.c
1243
rtsock_validate_pid_kernel(rtm);
tests/sys/net/routing/test_rtsock_l3.c
1245
RTSOCK_ATF_REQUIRE_MSG(rtm, rtsock_find_rtm_sa(rtm, RTA_NETMASK) == NULL, "netmask is set");
tests/sys/net/routing/test_rtsock_l3.c
1248
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
1252
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_flags == expected_rt_flags,
tests/sys/net/routing/test_rtsock_l3.c
1253
"expected rtm flags: 0x%X, got 0x%X", expected_rt_flags, rtm->rtm_flags);
tests/sys/net/routing/test_rtsock_l3.c
1272
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1274
if ((rtm->rtm_type == RTM_DELETE) && (rtsock_find_rtm_sa(rtm, RTA_NETMASK)))
tests/sys/net/routing/test_rtsock_l3.c
1279
verify_route_message(rtm, RTM_DELETE, (struct sockaddr *)&c->net6,
tests/sys/net/routing/test_rtsock_l3.c
1283
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
1286
verify_route_message_extra(rtm, c->ifindex, expected_rt_flags);
tests/sys/net/routing/test_rtsock_l3.c
1309
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1311
if ((rtm->rtm_type == RTM_ADD) && (rtsock_find_rtm_sa(rtm, RTA_NETMASK)))
tests/sys/net/routing/test_rtsock_l3.c
1316
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&c->net4,
tests/sys/net/routing/test_rtsock_l3.c
1320
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
1323
verify_route_message_extra(rtm, c->ifindex, expected_rt_flags);
tests/sys/net/routing/test_rtsock_l3.c
1352
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1355
if (rtm->rtm_type == RTM_NEWADDR) {
tests/sys/net/routing/test_rtsock_l3.c
1362
if ((rtm->rtm_type == RTM_ADD) && (rtsock_find_rtm_sa(rtm, RTA_NETMASK))) {
tests/sys/net/routing/test_rtsock_l3.c
1368
RLOG("skipping msg type %s, try: %d", rtsock_print_cmdtype(rtm->rtm_type),
tests/sys/net/routing/test_rtsock_l3.c
1394
rtm = rtsock_read_rtm(c->rtsock_fd, buffer, sizeof(buffer));
tests/sys/net/routing/test_rtsock_l3.c
1396
if ((rtm->rtm_type == RTM_DELETE) && (rtsock_find_rtm_sa(rtm, RTA_NETMASK)))
tests/sys/net/routing/test_rtsock_l3.c
1401
verify_route_message(rtm, RTM_DELETE, (struct sockaddr *)&c->net4,
tests/sys/net/routing/test_rtsock_l3.c
1405
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
1408
verify_route_message_extra(rtm, c->ifindex, expected_rt_flags);
tests/sys/net/routing/test_rtsock_l3.c
159
prepare_route_message(struct rt_msghdr *rtm, int cmd, struct sockaddr *dst,
tests/sys/net/routing/test_rtsock_l3.c
163
rtsock_prepare_route_message(rtm, cmd, dst, mask, gw);
tests/sys/net/routing/test_rtsock_l3.c
166
rtm->rtm_flags |= RTF_STATIC;
tests/sys/net/routing/test_rtsock_l3.c
170
verify_route_message(struct rt_msghdr *rtm, int cmd, struct sockaddr *dst,
tests/sys/net/routing/test_rtsock_l3.c
177
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_type == cmd,
tests/sys/net/routing/test_rtsock_l3.c
179
rtm->rtm_type, rtsock_print_cmdtype(rtm->rtm_type));
tests/sys/net/routing/test_rtsock_l3.c
180
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_errno == 0,
tests/sys/net/routing/test_rtsock_l3.c
181
"got got errno %d as message reply", rtm->rtm_errno);
tests/sys/net/routing/test_rtsock_l3.c
182
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->_rtm_spare1 == 0,
tests/sys/net/routing/test_rtsock_l3.c
183
"expected rtm_spare==0, got %d", rtm->_rtm_spare1);
tests/sys/net/routing/test_rtsock_l3.c
187
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_l3.c
188
RTSOCK_ATF_REQUIRE_MSG(rtm, sa != NULL, "DST is not set");
tests/sys/net/routing/test_rtsock_l3.c
190
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_l3.c
194
sa = rtsock_find_rtm_sa(rtm, RTA_NETMASK);
tests/sys/net/routing/test_rtsock_l3.c
195
RTSOCK_ATF_REQUIRE_MSG(rtm, sa != NULL, "NETMASK is not set");
tests/sys/net/routing/test_rtsock_l3.c
198
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "NETMASK sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_l3.c
202
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_l3.c
203
RTSOCK_ATF_REQUIRE_MSG(rtm, sa != NULL, "GATEWAY is not set");
tests/sys/net/routing/test_rtsock_l3.c
205
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_l3.c
210
verify_route_message_extra(struct rt_msghdr *rtm, int ifindex, int rtm_flags)
tests/sys/net/routing/test_rtsock_l3.c
212
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_index == ifindex,
tests/sys/net/routing/test_rtsock_l3.c
213
"expected ifindex %d, got %d", ifindex, rtm->rtm_index);
tests/sys/net/routing/test_rtsock_l3.c
215
if (rtm->rtm_flags != rtm_flags) {
tests/sys/net/routing/test_rtsock_l3.c
218
rtm->rtm_flags);
tests/sys/net/routing/test_rtsock_l3.c
222
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_flags == rtm_flags,
tests/sys/net/routing/test_rtsock_l3.c
225
rtm->rtm_flags, got_flags);
tests/sys/net/routing/test_rtsock_l3.c
230
verify_link_gateway(struct rt_msghdr *rtm, int ifindex)
tests/sys/net/routing/test_rtsock_l3.c
235
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_l3.c
236
RTSOCK_ATF_REQUIRE_MSG(rtm, sa != NULL, "GATEWAY is not set");
tests/sys/net/routing/test_rtsock_l3.c
237
RTSOCK_ATF_REQUIRE_MSG(rtm, sa->sa_family == AF_LINK, "GW sa family is %d", sa->sa_family);
tests/sys/net/routing/test_rtsock_l3.c
239
RTSOCK_ATF_REQUIRE_MSG(rtm, sdl->sdl_index == ifindex, "GW ifindex is %d", sdl->sdl_index);
tests/sys/net/routing/test_rtsock_l3.c
247
struct rt_msghdr *rtm = (struct rt_msghdr *)buffer; \
tests/sys/net/routing/test_rtsock_l3.c
278
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&c->net4,
tests/sys/net/routing/test_rtsock_l3.c
281
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
283
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
293
verify_route_message(rtm, RTM_GET, (struct sockaddr *)&c->net4,
tests/sys/net/routing/test_rtsock_l3.c
296
verify_route_message_extra(rtm, c->ifindex, RTF_UP | RTF_DONE | RTF_PINNED);
tests/sys/net/routing/test_rtsock_l3.c
299
verify_link_gateway(rtm, c->ifindex);
tests/sys/net/routing/test_rtsock_l3.c
300
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_l3.c
301
RTSOCK_ATF_REQUIRE_MSG(rtm, sa != NULL, "GATEWAY is not set");
tests/sys/net/routing/test_rtsock_l3.c
302
RTSOCK_ATF_REQUIRE_MSG(rtm, sa->sa_family == AF_LINK, "GW sa family is %d", sa->sa_family);
tests/sys/net/routing/test_rtsock_l3.c
304
RTSOCK_ATF_REQUIRE_MSG(rtm, sdl->sdl_index == c->ifindex, "GW ifindex is %d", sdl->sdl_index);
tests/sys/net/routing/test_rtsock_l3.c
324
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&c->net4, NULL, NULL);
tests/sys/net/routing/test_rtsock_l3.c
326
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
328
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
337
verify_route_message(rtm, RTM_GET, (struct sockaddr *)&c->net4,
tests/sys/net/routing/test_rtsock_l3.c
340
verify_route_message_extra(rtm, c->ifindex, RTF_UP | RTF_DONE | RTF_PINNED);
tests/sys/net/routing/test_rtsock_l3.c
367
rtsock_prepare_route_message(rtm, RTM_GET, NULL,
tests/sys/net/routing/test_rtsock_l3.c
369
rtsock_update_rtm_len(rtm);
tests/sys/net/routing/test_rtsock_l3.c
371
ATF_CHECK_ERRNO(EINVAL, write(c->rtsock_fd, rtm, rtm->rtm_msglen) == -1);
tests/sys/net/routing/test_rtsock_l3.c
392
rtsock_prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&c->addr4,
tests/sys/net/routing/test_rtsock_l3.c
394
rtsock_update_rtm_len(rtm);
tests/sys/net/routing/test_rtsock_l3.c
397
ATF_CHECK_ERRNO(0, write(c->rtsock_fd, rtm, rtm->rtm_msglen) > 0);
tests/sys/net/routing/test_rtsock_l3.c
423
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
426
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
427
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
436
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
438
verify_route_message_extra(rtm, c->ifindex,
tests/sys/net/routing/test_rtsock_l3.c
462
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
464
rtsock_update_rtm_len(rtm);
tests/sys/net/routing/test_rtsock_l3.c
468
ATF_CHECK_ERRNO(0, write(c->rtsock_fd, rtm, rtm->rtm_msglen) > 0);
tests/sys/net/routing/test_rtsock_l3.c
489
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
492
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
495
prepare_route_message(rtm, RTM_DELETE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
498
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
500
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
509
verify_route_message(rtm, RTM_DELETE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
512
verify_route_message_extra(rtm, c->ifindex, RTF_DONE | RTF_GATEWAY | RTF_STATIC);
tests/sys/net/routing/test_rtsock_l3.c
554
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
557
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
558
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
560
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
565
prepare_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
567
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
569
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
571
verify_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
574
verify_route_message_extra(rtm, if_nametoindex(c->ifnames[1]),
tests/sys/net/routing/test_rtsock_l3.c
578
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
581
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
591
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
592
verify_route_message_extra(rtm, if_nametoindex(c->ifnames[1]),
tests/sys/net/routing/test_rtsock_l3.c
614
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
617
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
618
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
621
prepare_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
623
rtm->rtm_inits |= RTV_MTU;
tests/sys/net/routing/test_rtsock_l3.c
624
rtm->rtm_rmx.rmx_mtu = test_mtu;
tests/sys/net/routing/test_rtsock_l3.c
626
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
627
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
629
verify_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
632
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_rmx.rmx_mtu == test_mtu,
tests/sys/net/routing/test_rtsock_l3.c
633
"expected mtu: %lu, got %lu", test_mtu, rtm->rtm_rmx.rmx_mtu);
tests/sys/net/routing/test_rtsock_l3.c
636
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
639
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
640
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
642
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_rmx.rmx_mtu == test_mtu,
tests/sys/net/routing/test_rtsock_l3.c
643
"expected mtu: %lu, got %lu", test_mtu, rtm->rtm_rmx.rmx_mtu);
tests/sys/net/routing/test_rtsock_l3.c
664
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
669
rtm->rtm_flags |= test_flags;
tests/sys/net/routing/test_rtsock_l3.c
670
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
671
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
674
prepare_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
676
rtm->rtm_flags &= ~test_flags;
tests/sys/net/routing/test_rtsock_l3.c
679
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
680
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
683
verify_route_message_extra(rtm, c->ifindex, desired_flags | RTF_DONE);
tests/sys/net/routing/test_rtsock_l3.c
686
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
689
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
690
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
692
verify_route_message_extra(rtm, c->ifindex, desired_flags | RTF_DONE);
tests/sys/net/routing/test_rtsock_l3.c
714
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
717
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
718
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
727
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
730
verify_route_message_extra(rtm, c->ifindex,
tests/sys/net/routing/test_rtsock_l3.c
758
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
761
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
764
prepare_route_message(rtm, RTM_DELETE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
767
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
768
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
778
verify_route_message(rtm, RTM_DELETE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
780
verify_route_message_extra(rtm, c->ifindex, RTF_DONE | RTF_GATEWAY | RTF_STATIC);
tests/sys/net/routing/test_rtsock_l3.c
826
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
829
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
830
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
832
verify_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
837
prepare_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
839
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
841
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
843
verify_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
846
verify_route_message_extra(rtm, if_nametoindex(c->ifnames[1]),
tests/sys/net/routing/test_rtsock_l3.c
850
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
853
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
863
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
864
verify_route_message_extra(rtm, if_nametoindex(c->ifnames[1]),
tests/sys/net/routing/test_rtsock_l3.c
885
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
889
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
890
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
893
prepare_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
895
rtm->rtm_inits |= RTV_MTU;
tests/sys/net/routing/test_rtsock_l3.c
896
rtm->rtm_rmx.rmx_mtu = test_mtu;
tests/sys/net/routing/test_rtsock_l3.c
898
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
899
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
901
verify_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
904
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_rmx.rmx_mtu == test_mtu,
tests/sys/net/routing/test_rtsock_l3.c
905
"expected mtu: %lu, got %lu", test_mtu, rtm->rtm_rmx.rmx_mtu);
tests/sys/net/routing/test_rtsock_l3.c
908
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
911
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
912
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
914
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_rmx.rmx_mtu == test_mtu,
tests/sys/net/routing/test_rtsock_l3.c
915
"expected mtu: %lu, got %lu", test_mtu, rtm->rtm_rmx.rmx_mtu);
tests/sys/net/routing/test_rtsock_l3.c
936
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
941
rtm->rtm_flags |= test_flags;
tests/sys/net/routing/test_rtsock_l3.c
942
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
943
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
946
prepare_route_message(rtm, RTM_CHANGE, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
948
rtm->rtm_flags &= ~test_flags;
tests/sys/net/routing/test_rtsock_l3.c
951
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
952
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
955
verify_route_message_extra(rtm, c->ifindex, desired_flags | RTF_DONE);
tests/sys/net/routing/test_rtsock_l3.c
958
prepare_route_message(rtm, RTM_GET, (struct sockaddr *)&net6,
tests/sys/net/routing/test_rtsock_l3.c
961
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_l3.c
962
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_l3.c
964
verify_route_message_extra(rtm, c->ifindex, desired_flags | RTF_DONE);
tests/sys/net/routing/test_rtsock_l3.c
988
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&net4,
tests/sys/net/routing/test_rtsock_l3.c
990
seq = rtm->rtm_seq;
tests/sys/net/routing/test_rtsock_l3.c
995
rtm->rtm_rmx.rmx_expire = tv.tv_sec - 1;
tests/sys/net/routing/test_rtsock_l3.c
996
rtm->rtm_inits |= RTV_EXPIRE;
tests/sys/net/routing/test_rtsock_l3.c
998
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
100
struct rt_msghdr *rtm = (struct rt_msghdr *)buffer; \
tests/sys/net/routing/test_rtsock_lladdr.c
140
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&sin6, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
141
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
151
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_lladdr.c
153
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_lladdr.c
155
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
157
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_lladdr.c
160
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
166
RTSOCK_ATF_REQUIRE_MSG(rtm, sdl->sdl_type > 0, "sdl_type not set");
tests/sys/net/routing/test_rtsock_lladdr.c
189
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&sin6, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
191
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
203
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_lladdr.c
205
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_lladdr.c
207
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
209
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_lladdr.c
212
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
218
RTSOCK_ATF_REQUIRE_MSG(rtm, sdl->sdl_type > 0, "sdl_type not set");
tests/sys/net/routing/test_rtsock_lladdr.c
240
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&sin, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
242
len = rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
251
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_lladdr.c
253
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_lladdr.c
255
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
257
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_lladdr.c
260
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
286
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&sin6, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
288
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
291
prepare_route_message(rtm, RTM_DELETE, (struct sockaddr *)&sin6, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
293
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
295
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_lladdr.c
297
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_type == RTM_DELETE, "rtm_type is not delete");
tests/sys/net/routing/test_rtsock_lladdr.c
299
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_lladdr.c
301
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
303
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_lladdr.c
306
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
332
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&sin6, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
334
len = rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
337
prepare_route_message(rtm, RTM_DELETE, (struct sockaddr *)&sin6, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
339
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
341
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_lladdr.c
343
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_type == RTM_DELETE, "rtm_type is not delete");
tests/sys/net/routing/test_rtsock_lladdr.c
345
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_lladdr.c
347
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
349
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_lladdr.c
352
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
377
prepare_route_message(rtm, RTM_ADD, (struct sockaddr *)&sin, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
379
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
382
prepare_route_message(rtm, RTM_DELETE, (struct sockaddr *)&sin, (struct sockaddr *)ðer);
tests/sys/net/routing/test_rtsock_lladdr.c
384
rtsock_send_rtm(c->rtsock_fd, rtm);
tests/sys/net/routing/test_rtsock_lladdr.c
386
rtm = rtsock_read_rtm_reply(c->rtsock_fd, buffer, sizeof(buffer), rtm->rtm_seq);
tests/sys/net/routing/test_rtsock_lladdr.c
388
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_type == RTM_DELETE, "rtm_type is not delete");
tests/sys/net/routing/test_rtsock_lladdr.c
390
sa = rtsock_find_rtm_sa(rtm, RTA_DST);
tests/sys/net/routing/test_rtsock_lladdr.c
392
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "DST sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
394
sa = rtsock_find_rtm_sa(rtm, RTA_GATEWAY);
tests/sys/net/routing/test_rtsock_lladdr.c
397
RTSOCK_ATF_REQUIRE_MSG(rtm, ret != 0, "GATEWAY sa diff: %s", msg);
tests/sys/net/routing/test_rtsock_lladdr.c
85
prepare_route_message(struct rt_msghdr *rtm, int cmd, struct sockaddr *dst,
tests/sys/net/routing/test_rtsock_lladdr.c
89
rtsock_prepare_route_message(rtm, cmd, dst, NULL, gw);
tests/sys/net/routing/test_rtsock_lladdr.c
91
rtm->rtm_flags |= (RTF_HOST | RTF_STATIC | RTF_LLDATA);
tests/sys/netlink/netlink_socket.c
311
struct rtmsg rtm;
tests/sys/netlink/netlink_socket.c
320
.rtm.rtm_family = AF_INET,
tests/sys/netlink/netlink_socket.c
321
.rtm.rtm_protocol = RTPROT_STATIC,
tests/sys/netlink/netlink_socket.c
322
.rtm.rtm_type = RTN_UNICAST,
tests/sys/netlink/netlink_socket.c
323
.rtm.rtm_dst_len = 32,
tests/sys/netlink/netlink_socket.c
342
ATF_REQUIRE(reply.rtm.rtm_type == msg.rtm.rtm_type);
tests/sys/netlink/netlink_socket.c
343
ATF_REQUIRE(reply.rtm.rtm_dst_len == msg.rtm.rtm_dst_len);
tests/sys/netlink/netlink_socket.c
353
ATF_REQUIRE(reply.rtm.rtm_type == msg.rtm.rtm_type);
tests/sys/netlink/netlink_socket.c
354
ATF_REQUIRE(reply.rtm.rtm_dst_len == msg.rtm.rtm_dst_len);
tests/sys/netlink/test_rtnl_route.c
126
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "192.0.2.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
153
struct rtmsg *rtm;
tests/sys/netlink/test_rtnl_route.c
165
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "198.51.100.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
176
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "198.51.100.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
188
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "198.51.100.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
199
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "198.51.100.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
226
struct rtmsg *rtm;
tests/sys/netlink/test_rtnl_route.c
241
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "203.0.113.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
276
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "203.0.113.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
290
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "203.0.113.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
30
struct rtmsg *rtm;
tests/sys/netlink/test_rtnl_route.c
304
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "203.0.113.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
330
struct rtmsg *rtm;
tests/sys/netlink/test_rtnl_route.c
34
rtm = snl_reserve_msg_object(nw, struct rtmsg);
tests/sys/netlink/test_rtnl_route.c
343
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "203.0.113.0")) != NULL);
tests/sys/netlink/test_rtnl_route.c
35
if (rtm == NULL)
tests/sys/netlink/test_rtnl_route.c
38
rtm->rtm_family = AF_INET;
tests/sys/netlink/test_rtnl_route.c
39
rtm->rtm_protocol = RTPROT_STATIC;
tests/sys/netlink/test_rtnl_route.c
40
rtm->rtm_type = RTN_UNICAST;
tests/sys/netlink/test_rtnl_route.c
41
rtm->rtm_dst_len = 24;
tests/sys/netlink/test_rtnl_route.c
42
rtm->rtm_flags = RTF_GATEWAY;
tests/sys/netlink/test_rtnl_route.c
45
return (rtm);
tests/sys/netlink/test_rtnl_route.c
79
struct rtmsg *rtm;
tests/sys/netlink/test_rtnl_route.c
92
ATF_REQUIRE((rtm = prepare_rtm_by_dst(&nw, "192.0.2.0")) != NULL);
tools/tools/net80211/wlanwatch/wlanwatch.c
285
print_rtmsg(struct rt_msghdr *rtm, int msglen)
tools/tools/net80211/wlanwatch/wlanwatch.c
294
if (rtm->rtm_version != RTM_VERSION) {
tools/tools/net80211/wlanwatch/wlanwatch.c
296
rtm->rtm_version);
tools/tools/net80211/wlanwatch/wlanwatch.c
299
switch (rtm->rtm_type) {
tools/tools/net80211/wlanwatch/wlanwatch.c
301
ifm = (struct if_msghdr *)rtm;
tools/tools/net80211/wlanwatch/wlanwatch.c
321
ifan = (struct if_announcemsghdr *)rtm;
tools/tools/net80211/wlanwatch/wlanwatch.c
340
ifan = (struct if_announcemsghdr *)rtm;
tools/tools/net80211/wlanwatch/wlanwatch.c
76
static void print_rtmsg(struct rt_msghdr *rtm, int msglen);
tools/tools/net80211/wlanwds/wlanwds.c
392
handle_rtmsg(struct rt_msghdr *rtm, ssize_t msglen)
tools/tools/net80211/wlanwds/wlanwds.c
398
if (rtm->rtm_version != RTM_VERSION) {
tools/tools/net80211/wlanwds/wlanwds.c
400
rtm->rtm_version);
tools/tools/net80211/wlanwds/wlanwds.c
403
switch (rtm->rtm_type) {
tools/tools/net80211/wlanwds/wlanwds.c
405
ifan = (struct if_announcemsghdr *)rtm;
tools/tools/net80211/wlanwds/wlanwds.c
423
ifan = (struct if_announcemsghdr *)rtm;
tools/tools/net80211/wlanwds/wlanwds.c
89
static void handle_rtmsg(struct rt_msghdr *rtm, ssize_t msglen);
usr.bin/netstat/common.h
76
struct rt_msghdr *rtm;
usr.bin/netstat/nhgrp.c
116
print_nhgroup_entry_sysctl(const char *name, struct rt_msghdr *rtm,
usr.bin/netstat/nhgrp.c
198
struct rt_msghdr *rtm;
usr.bin/netstat/nhgrp.c
226
for (next = buf; next < lim; next += rtm->rtm_msglen) {
usr.bin/netstat/nhgrp.c
227
rtm = (struct rt_msghdr *)next;
usr.bin/netstat/nhgrp.c
228
if (rtm->rtm_version != RTM_VERSION)
usr.bin/netstat/nhgrp.c
236
nhg = (struct nhgrp_external *)(rtm + 1);
usr.bin/netstat/nhgrp.c
238
nhg_map[nhg_count].rtm = rtm;
usr.bin/netstat/nhgrp.c
254
struct rt_msghdr *rtm;
usr.bin/netstat/nhgrp.c
269
rtm = nd.nh_map[i].rtm;
usr.bin/netstat/nhgrp.c
270
nhg = (struct nhgrp_external *)(rtm + 1);
usr.bin/netstat/nhgrp.c
271
print_nhgroup_entry_sysctl("nhgrp-entry", rtm, nhg);
usr.bin/netstat/nhgrp.c
313
struct rt_msghdr *rtm;
usr.bin/netstat/nhgrp.c
318
rtm = nd.nh_map[i].rtm;
usr.bin/netstat/nhgrp.c
319
nh = (struct nhop_external *)(rtm + 1);
usr.bin/netstat/nhops.c
238
print_nhop_entry_sysctl(const char *name, struct rt_msghdr *rtm, struct nhop_external *nh)
usr.bin/netstat/nhops.c
285
print_flags_generic(rtm->rtm_flags, rt_bits, buffer, "rt_flags_pretty");
usr.bin/netstat/nhops.c
342
struct rt_msghdr *rtm;
usr.bin/netstat/nhops.c
370
for (next = buf; next < lim; next += rtm->rtm_msglen) {
usr.bin/netstat/nhops.c
371
rtm = (struct rt_msghdr *)next;
usr.bin/netstat/nhops.c
372
if (rtm->rtm_version != RTM_VERSION)
usr.bin/netstat/nhops.c
380
nh = (struct nhop_external *)(rtm + 1);
usr.bin/netstat/nhops.c
382
nh_map[nh_count].rtm = rtm;
usr.bin/netstat/nhops.c
399
struct rt_msghdr *rtm;
usr.bin/netstat/nhops.c
406
nh = (struct nhop_external *)(nd.nh_map[0].rtm + 1);
usr.bin/netstat/nhops.c
425
rtm = nd.nh_map[i].rtm;
usr.bin/netstat/nhops.c
426
nh = (struct nhop_external *)(rtm + 1);
usr.bin/netstat/nhops.c
427
print_nhop_entry_sysctl("nh-entry", rtm, nh);
usr.bin/netstat/route.c
248
struct rt_msghdr *rtm;
usr.bin/netstat/route.c
272
for (next = buf; next < lim; next += rtm->rtm_msglen) {
usr.bin/netstat/route.c
273
rtm = (struct rt_msghdr *)next;
usr.bin/netstat/route.c
274
if (rtm->rtm_version != RTM_VERSION)
usr.bin/netstat/route.c
279
sa = (struct sockaddr *)(rtm + 1);
usr.bin/netstat/route.c
295
p_rtentry_sysctl("rt-entry", rtm);
usr.bin/netstat/route.c
307
p_rtentry_sysctl(const char *name, struct rt_msghdr *rtm)
usr.bin/netstat/route.c
315
sa = (struct sockaddr *)(rtm + 1);
usr.bin/netstat/route.c
317
if (rtm->rtm_addrs & (1 << i)) {
usr.bin/netstat/route.c
325
rtm->rtm_flags, wid.dst);
usr.bin/netstat/route.c
330
p_flags(rtm->rtm_flags, buffer);
usr.bin/netstat/route.c
332
xo_emit("{e:weight/%u}", rtm->rtm_rmx.rmx_weight);
usr.bin/netstat/route.c
333
xo_emit("{e:metric/%lu}", rtm->rtm_rmx.rmx_metric);
usr.bin/netstat/route.c
336
xo_emit("{t:nhop/%*lu} ", wid.mtu, rtm->rtm_rmx.rmx_nhidx);
usr.bin/netstat/route.c
338
if (rtm->rtm_rmx.rmx_mtu != 0)
usr.bin/netstat/route.c
339
xo_emit("{t:mtu/%*lu} ", wid.mtu, rtm->rtm_rmx.rmx_mtu);
usr.bin/netstat/route.c
345
if (rtm->rtm_index < ifmap_size) {
usr.bin/netstat/route.c
346
strlcpy(prettyname, ifmap[rtm->rtm_index].ifname,
usr.bin/netstat/route.c
354
xo_emit("{t:metric/%*lu} ", wid.metric, rtm->rtm_rmx.rmx_metric);
usr.bin/netstat/route.c
358
if (rtm->rtm_rmx.rmx_expire) {
usr.bin/netstat/route.c
361
if ((expire_time = rtm->rtm_rmx.rmx_expire - uptime.tv_sec) > 0)
usr.bin/netstat/route_netlink.c
316
struct rtmsg *rtm = (struct rtmsg *)(hdr + 1);
usr.bin/netstat/route_netlink.c
318
if (fam != rtm->rtm_family) {
usr.bin/netstat/route_netlink.c
324
fam = rtm->rtm_family;
usr.sbin/arp/arp.c
392
struct rt_msghdr *rtm;
usr.sbin/arp/arp.c
402
rtm = rtmsg(RTM_GET, dst, NULL);
usr.sbin/arp/arp.c
403
if (rtm == NULL) {
usr.sbin/arp/arp.c
407
addr = (struct sockaddr_in *)(rtm + 1);
usr.sbin/arp/arp.c
411
(rtm->rtm_flags & RTF_GATEWAY) ||
usr.sbin/arp/arp.c
465
struct rt_msghdr *rtm;
usr.sbin/arp/arp.c
478
rtm = rtmsg(RTM_GET, dst, NULL);
usr.sbin/arp/arp.c
479
if (rtm == NULL) {
usr.sbin/arp/arp.c
483
addr = (struct sockaddr_in *)(rtm + 1);
usr.sbin/arp/arp.c
495
!(rtm->rtm_flags & RTF_GATEWAY) &&
usr.sbin/arp/arp.c
512
rtm->rtm_flags |= RTF_LLDATA;
usr.sbin/arp/arp.c
541
struct rt_msghdr *rtm;
usr.sbin/arp/arp.c
573
for (next = buf; next < lim; next += rtm->rtm_msglen) {
usr.sbin/arp/arp.c
574
rtm = (struct rt_msghdr *)next;
usr.sbin/arp/arp.c
575
sin2 = (struct sockaddr_in *)(rtm + 1);
usr.sbin/arp/arp.c
584
(*action)(sdl, sin2, rtm);
usr.sbin/arp/arp.c
596
struct sockaddr_in *addr, struct rt_msghdr *rtm)
usr.sbin/arp/arp.c
644
if (rtm->rtm_rmx.rmx_expire == 0)
usr.sbin/arp/arp.c
652
if ((expire_time = rtm->rtm_rmx.rmx_expire - tp.tv_sec) > 0)
usr.sbin/arp/arp.c
659
if (rtm->rtm_flags & RTF_ANNOUNCE)
usr.sbin/arp/arp.c
709
struct sockaddr_in *addr, struct rt_msghdr *rtm)
usr.sbin/arp/arp.c
713
if (rtm->rtm_flags & RTF_PINNED)
usr.sbin/arp/arp.c
73
struct rt_msghdr *rtm);
usr.sbin/arp/arp.c
754
struct rt_msghdr *rtm = &m_rtmsg.m_rtm;
usr.sbin/arp/arp.c
772
rtm->rtm_flags = opts.flags;
usr.sbin/arp/arp.c
773
rtm->rtm_version = RTM_VERSION;
usr.sbin/arp/arp.c
779
rtm->rtm_addrs |= RTA_GATEWAY;
usr.sbin/arp/arp.c
784
rtm->rtm_rmx.rmx_expire = opts.expire_time + tp.tv_sec;
usr.sbin/arp/arp.c
786
rtm->rtm_inits = RTV_EXPIRE;
usr.sbin/arp/arp.c
787
rtm->rtm_flags |= (RTF_HOST | RTF_STATIC | RTF_LLDATA);
usr.sbin/arp/arp.c
790
rtm->rtm_addrs |= RTA_DST;
usr.sbin/arp/arp.c
794
if ((s) != NULL && rtm->rtm_addrs & (w)) { \
usr.sbin/arp/arp.c
803
rtm->rtm_msglen = cp - (char *)&m_rtmsg;
usr.sbin/arp/arp.c
805
l = rtm->rtm_msglen;
usr.sbin/arp/arp.c
806
rtm->rtm_seq = ++seq;
usr.sbin/arp/arp.c
807
rtm->rtm_type = cmd;
usr.sbin/arp/arp.c
816
} while (l > 0 && (rtm->rtm_type != cmd || rtm->rtm_seq != seq ||
usr.sbin/arp/arp.c
817
rtm->rtm_pid != pid));
usr.sbin/arp/arp.c
820
return (rtm);
usr.sbin/arp/arp_netlink.c
114
struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg);
usr.sbin/arp/arp_netlink.c
115
rtm->rtm_family = AF_INET;
usr.sbin/ndp/ndp.c
116
if (rtm->rtm_addrs & (w)) { \
usr.sbin/ndp/ndp.c
467
struct rt_msghdr *rtm = &(m_rtmsg.m_rtm);
usr.sbin/ndp/ndp.c
476
sin = (struct sockaddr_in6 *)(rtm + 1);
usr.sbin/ndp/ndp.c
480
!(rtm->rtm_flags & RTF_GATEWAY)) {
usr.sbin/ndp/ndp.c
548
register struct rt_msghdr *rtm = &m_rtmsg.m_rtm;
usr.sbin/ndp/ndp.c
566
sin = (struct sockaddr_in6 *)(rtm + 1);
usr.sbin/ndp/ndp.c
570
!(rtm->rtm_flags & RTF_GATEWAY)) {
usr.sbin/ndp/ndp.c
587
rtm->rtm_flags |= RTF_LLDATA;
usr.sbin/ndp/ndp.c
620
struct rt_msghdr *rtm;
usr.sbin/ndp/ndp.c
669
for (next = buf; next && next < lim; next += rtm->rtm_msglen) {
usr.sbin/ndp/ndp.c
672
rtm = (struct rt_msghdr *)next;
usr.sbin/ndp/ndp.c
673
sin = (struct sockaddr_in6 *)(rtm + 1);
usr.sbin/ndp/ndp.c
693
if (!(rtm->rtm_flags & RTF_HOST))
usr.sbin/ndp/ndp.c
714
if (rtm->rtm_flags & RTF_WASCLONED)
usr.sbin/ndp/ndp.c
717
if (rtm->rtm_flags & RTF_CLONED)
usr.sbin/ndp/ndp.c
720
if (rtm->rtm_flags & RTF_PINNED)
usr.sbin/ndp/ndp.c
754
expire = rtm->rtm_rmx.rmx_expire;
usr.sbin/ndp/ndp.c
764
switch (rtm->rtm_rmx.rmx_state) {
usr.sbin/ndp/ndp.c
794
isrouter = rtm->rtm_flags & RTF_GATEWAY;
usr.sbin/ndp/ndp.c
795
prbs = rtm->rtm_rmx.rmx_pksent;
usr.sbin/ndp/ndp.c
800
if ((rtm->rtm_addrs & RTA_NETMASK) == 0) {
usr.sbin/ndp/ndp.c
803
(rtm->rtm_flags & RTF_ANNOUNCE) ? "p" : "");
usr.sbin/ndp/ndp.c
812
(rtm->rtm_flags & RTF_ANNOUNCE) ? "p" : "");
usr.sbin/ndp/ndp.c
816
(rtm->rtm_flags & RTF_ANNOUNCE) ? "p" : "");
usr.sbin/ndp/ndp.c
942
register struct rt_msghdr *rtm = &m_rtmsg.m_rtm;
usr.sbin/ndp/ndp.c
950
rtm->rtm_flags = opts.flags;
usr.sbin/ndp/ndp.c
951
rtm->rtm_version = RTM_VERSION;
usr.sbin/ndp/ndp.c
957
rtm->rtm_addrs |= RTA_GATEWAY;
usr.sbin/ndp/ndp.c
959
rtm->rtm_rmx.rmx_expire = opts.expire_time;
usr.sbin/ndp/ndp.c
960
rtm->rtm_inits = RTV_EXPIRE;
usr.sbin/ndp/ndp.c
962
rtm->rtm_flags |= (RTF_HOST | RTF_STATIC | RTF_LLDATA);
usr.sbin/ndp/ndp.c
965
rtm->rtm_addrs |= RTA_DST;
usr.sbin/ndp/ndp.c
971
rtm->rtm_msglen = cp - (char *)&m_rtmsg;
usr.sbin/ndp/ndp.c
973
l = rtm->rtm_msglen;
usr.sbin/ndp/ndp.c
974
rtm->rtm_seq = ++seq;
usr.sbin/ndp/ndp.c
975
rtm->rtm_type = cmd;
usr.sbin/ndp/ndp.c
984
} while (l > 0 && (rtm->rtm_type != cmd || rtm->rtm_seq != seq ||
usr.sbin/ndp/ndp.c
985
rtm->rtm_pid != pid));
usr.sbin/ndp/ndp_netlink.c
147
struct rtmsg *rtm = snl_reserve_msg_object(&nw, struct rtmsg);
usr.sbin/ndp/ndp_netlink.c
148
rtm->rtm_family = AF_INET6;
usr.sbin/ppp/route.c
309
route_ParseHdr(struct rt_msghdr *rtm, struct sockaddr *sa[RTAX_MAX])
usr.sbin/ppp/route.c
314
wp = (char *)(rtm + 1);
usr.sbin/ppp/route.c
317
if (rtm->rtm_addrs & (1 << rtax)) {
usr.sbin/ppp/route.c
329
struct rt_msghdr *rtm;
usr.sbin/ppp/route.c
357
for (cp = sp; cp < ep; cp += rtm->rtm_msglen) {
usr.sbin/ppp/route.c
358
rtm = (struct rt_msghdr *)cp;
usr.sbin/ppp/route.c
360
route_ParseHdr(rtm, sa);
usr.sbin/ppp/route.c
366
p_flags(arg->prompt, rtm->rtm_flags, 6);
usr.sbin/ppp/route.c
367
prompt_Printf(arg->prompt, " %s\n", Index2Nam(rtm->rtm_index));
usr.sbin/ppp/route.c
381
struct rt_msghdr *rtm;
usr.sbin/ppp/route.c
426
for (cp = sp; cp < ep; cp += rtm->rtm_msglen) {
usr.sbin/ppp/route.c
427
rtm = (struct rt_msghdr *)cp;
usr.sbin/ppp/route.c
428
route_ParseHdr(rtm, sa);
usr.sbin/ppp/route.c
429
if (rtm->rtm_index == bundle->iface->index &&
usr.sbin/ppp/route.c
436
(all || (rtm->rtm_flags & RTF_GATEWAY))) {
usr.sbin/ppp/route.c
472
struct rt_msghdr *rtm;
usr.sbin/ppp/route.c
505
for (cp = sp; cp < ep; cp += rtm->rtm_msglen) {
usr.sbin/ppp/route.c
506
rtm = (struct rt_msghdr *)cp;
usr.sbin/ppp/route.c
507
route_ParseHdr(rtm, sa);
usr.sbin/ppp/route.c
513
sa[RTAX_GATEWAY] && rtm->rtm_index == bundle->iface->index) {
usr.sbin/ppp/route.c
517
" mtu %lu\n", rtm->rtm_index, Index2Nam(rtm->rtm_index),
usr.sbin/route6d/route6d.c
1696
struct rt_msghdr *rtm;
usr.sbin/route6d/route6d.c
1715
if (len < sizeof(*rtm)) {
usr.sbin/route6d/route6d.c
1717
len, (u_long)sizeof(*rtm));
usr.sbin/route6d/route6d.c
1741
rtm = NULL;
usr.sbin/route6d/route6d.c
1769
rtm = (struct rt_msghdr *)(void *)p;
usr.sbin/route6d/route6d.c
1770
if (rtm->rtm_version != RTM_VERSION) {
usr.sbin/route6d/route6d.c
1773
rtm->rtm_version, RTM_VERSION);
usr.sbin/route6d/route6d.c
1780
if (rtm->rtm_type > RTM_RESOLVE) {
usr.sbin/route6d/route6d.c
1782
rtm->rtm_type);
usr.sbin/route6d/route6d.c
1785
addrs = rtm->rtm_addrs;
usr.sbin/route6d/route6d.c
1786
q = (char *)(rtm + 1);
usr.sbin/route6d/route6d.c
1787
if (rtm->rtm_pid == pid) {
usr.sbin/route6d/route6d.c
1879
if ((rtm->rtm_flags & RTF_HOST) != 0) {
usr.sbin/route6d/route6d.c
2464
rttypes(struct rt_msghdr *rtm)
usr.sbin/route6d/route6d.c
2468
if (rtm->rtm_type == (f)) \
usr.sbin/route6d/route6d.c
2499
rtflags(struct rt_msghdr *rtm)
usr.sbin/route6d/route6d.c
2509
if (rtm->rtm_flags & (f)) \
usr.sbin/route6d/route6d.c
2600
struct rt_msghdr *rtm;
usr.sbin/route6d/route6d.c
2642
for (p = buf; p < lim; p += rtm->rtm_msglen) {
usr.sbin/route6d/route6d.c
2643
rtm = (struct rt_msghdr *)(void *)p;
usr.sbin/route6d/route6d.c
2644
rt_entry(rtm, again);
usr.sbin/route6d/route6d.c
2650
rt_entry(struct rt_msghdr *rtm, int again)
usr.sbin/route6d/route6d.c
2660
if ((rtm->rtm_flags & RTF_UP) == 0 || rtm->rtm_flags &
usr.sbin/route6d/route6d.c
2666
if (rtm->rtm_flags & RTF_WASCLONED)
usr.sbin/route6d/route6d.c
2670
if (rtm->rtm_flags & RTF_CLONED)
usr.sbin/route6d/route6d.c
2674
if (!(rtm->rtm_flags & (RTF_GATEWAY|RTF_HOST|RTF_STATIC)))
usr.sbin/route6d/route6d.c
2680
if (rtm->rtm_flags & RTF_DYNAMIC)
usr.sbin/route6d/route6d.c
2682
rtmp = (char *)(rtm + 1);
usr.sbin/route6d/route6d.c
2684
if ((rtm->rtm_addrs & RTA_DST) == 0)
usr.sbin/route6d/route6d.c
2688
if (rtm->rtm_addrs & RTA_GATEWAY) {
usr.sbin/route6d/route6d.c
2692
if (rtm->rtm_addrs & RTA_NETMASK) {
usr.sbin/route6d/route6d.c
2696
if (rtm->rtm_addrs & RTA_GENMASK) {
usr.sbin/route6d/route6d.c
2700
if (rtm->rtm_addrs & RTA_IFP) {
usr.sbin/route6d/route6d.c
2723
if (aflag == 0 && (rtm->rtm_flags & RTF_STATIC))
usr.sbin/route6d/route6d.c
2725
if (rtm->rtm_flags & Pflag)
usr.sbin/route6d/route6d.c
2727
if ((rtm->rtm_flags & (RTF_HOST|RTF_GATEWAY)) == RTF_HOST)
usr.sbin/route6d/route6d.c
2730
np->rip6_metric = rtm->rtm_rmx.rmx_hopcount;
usr.sbin/route6d/route6d.c
2733
rrt->rrt_flags = rtm->rtm_flags;
usr.sbin/route6d/route6d.c
2737
if (rtm->rtm_flags & RTF_HOST)
usr.sbin/route6d/route6d.c
2750
rtflags(rtm));
usr.sbin/route6d/route6d.c
2768
inet6_n2p(&np->rip6_dest), np->rip6_plen, rtflags(rtm));
usr.sbin/route6d/route6d.c
2772
ifindex = rtm->rtm_index;
usr.sbin/route6d/route6d.c
2804
rtflags(rtm));
usr.sbin/route6d/route6d.c
2817
struct rt_msghdr *rtm;
usr.sbin/route6d/route6d.c
2835
rtm = (struct rt_msghdr *)(void *)buf;
usr.sbin/route6d/route6d.c
2836
rtm->rtm_type = RTM_ADD;
usr.sbin/route6d/route6d.c
2837
rtm->rtm_version = RTM_VERSION;
usr.sbin/route6d/route6d.c
2838
rtm->rtm_seq = ++seq;
usr.sbin/route6d/route6d.c
2839
rtm->rtm_pid = pid;
usr.sbin/route6d/route6d.c
2840
rtm->rtm_flags = rrt->rrt_flags;
usr.sbin/route6d/route6d.c
2841
rtm->rtm_flags |= Qflag;
usr.sbin/route6d/route6d.c
2842
rtm->rtm_addrs = RTA_DST | RTA_GATEWAY | RTA_NETMASK;
usr.sbin/route6d/route6d.c
2843
rtm->rtm_rmx.rmx_hopcount = np->rip6_metric - 1;
usr.sbin/route6d/route6d.c
2844
rtm->rtm_inits = RTV_HOPCOUNT;
usr.sbin/route6d/route6d.c
2865
rtm->rtm_msglen = len;
usr.sbin/route6d/route6d.c
2889
struct rt_msghdr *rtm;
usr.sbin/route6d/route6d.c
2903
rtm = (struct rt_msghdr *)(void *)buf;
usr.sbin/route6d/route6d.c
2904
rtm->rtm_type = RTM_DELETE;
usr.sbin/route6d/route6d.c
2905
rtm->rtm_version = RTM_VERSION;
usr.sbin/route6d/route6d.c
2906
rtm->rtm_seq = ++seq;
usr.sbin/route6d/route6d.c
2907
rtm->rtm_pid = pid;
usr.sbin/route6d/route6d.c
2908
rtm->rtm_flags = RTF_UP | RTF_GATEWAY;
usr.sbin/route6d/route6d.c
2909
rtm->rtm_flags |= Qflag;
usr.sbin/route6d/route6d.c
2911
rtm->rtm_flags |= RTF_HOST;
usr.sbin/route6d/route6d.c
2912
rtm->rtm_addrs = RTA_DST | RTA_GATEWAY | RTA_NETMASK;
usr.sbin/route6d/route6d.c
2931
rtm->rtm_msglen = len;
usr.sbin/route6d/route6d.c
2958
struct rt_msghdr *rtm;
usr.sbin/route6d/route6d.c
2961
rtm = (struct rt_msghdr *)(void *)buf;
usr.sbin/route6d/route6d.c
2963
memset(rtm, 0, len);
usr.sbin/route6d/route6d.c
2964
rtm->rtm_type = RTM_GET;
usr.sbin/route6d/route6d.c
2965
rtm->rtm_version = RTM_VERSION;
usr.sbin/route6d/route6d.c
2967
rtm->rtm_seq = myseq;
usr.sbin/route6d/route6d.c
2968
rtm->rtm_addrs = RTA_DST;
usr.sbin/route6d/route6d.c
2969
rtm->rtm_msglen = len;
usr.sbin/route6d/route6d.c
2985
rtm = (struct rt_msghdr *)(void *)buf;
usr.sbin/route6d/route6d.c
2986
} while (rtm->rtm_type != RTM_GET || rtm->rtm_seq != myseq ||
usr.sbin/route6d/route6d.c
2987
rtm->rtm_pid != pid);
usr.sbin/route6d/route6d.c
2989
if (rtm->rtm_addrs & RTA_DST) {
usr.sbin/route6d/route6d.c
2993
if (rtm->rtm_addrs & RTA_GATEWAY) {
usr.sbin/rtadvd/if.c
166
struct rt_msghdr *rtm;
usr.sbin/rtadvd/if.c
171
for (rtm = (struct rt_msghdr *)buf;
usr.sbin/rtadvd/if.c
172
rtm < (struct rt_msghdr *)lim;
usr.sbin/rtadvd/if.c
173
rtm = (struct rt_msghdr *)(((char *)rtm) + rtm->rtm_msglen)) {
usr.sbin/rtadvd/if.c
175
if (!rtm->rtm_msglen) {
usr.sbin/rtadvd/if.c
178
buf, lim, rtm);
usr.sbin/rtadvd/if.c
185
buf, lim, rtm);
usr.sbin/rtadvd/if.c
189
if (FILTER_MATCH(rtm->rtm_type, filter) == 0)
usr.sbin/rtadvd/if.c
192
switch (rtm->rtm_type) {
usr.sbin/rtadvd/if.c
197
sa = (struct sockaddr *)(rtm + 1);
usr.sbin/rtadvd/if.c
198
get_rtaddrs(rtm->rtm_addrs, sa, rti_info);
usr.sbin/rtadvd/if.c
217
*lenp = rtm->rtm_msglen;
usr.sbin/rtadvd/if.c
218
return (char *)rtm;
usr.sbin/rtadvd/if.c
222
ifam = (struct ifa_msghdr *)rtm;
usr.sbin/rtadvd/if.c
242
return (char *)rtm;
usr.sbin/rtadvd/if.c
247
*lenp = rtm->rtm_msglen;
usr.sbin/rtadvd/if.c
248
return (char *)rtm;
usr.sbin/rtadvd/if.c
253
return ((char *)rtm);
usr.sbin/rtadvd/if.c
260
struct rt_msghdr *rtm = (struct rt_msghdr *)buf;
usr.sbin/rtadvd/if.c
263
sa = (struct sockaddr *)(rtm + 1);
usr.sbin/rtadvd/if.c
264
get_rtaddrs(rtm->rtm_addrs, sa, rti_info);
usr.sbin/rtadvd/if.c
272
struct rt_msghdr *rtm = (struct rt_msghdr *)buf;
usr.sbin/rtadvd/if.c
275
sa = (struct sockaddr *)(rtm + 1);
usr.sbin/rtadvd/if.c
276
get_rtaddrs(rtm->rtm_addrs, sa, rti_info);
usr.sbin/rtadvd/if.c
284
struct rt_msghdr *rtm = (struct rt_msghdr *)buf;
usr.sbin/rtadvd/if.c
288
sa = (struct sockaddr *)(rtm + 1);
usr.sbin/rtadvd/if.c
289
get_rtaddrs(rtm->rtm_addrs, sa, rti_info);
usr.sbin/rtadvd/rtadvd.c
472
struct rt_msghdr *rtm;
usr.sbin/rtadvd/rtadvd.c
485
rtm = (struct rt_msghdr *)msg;
usr.sbin/rtadvd/rtadvd.c
487
"(type = %d, len = %d)", __func__, rtm->rtm_type, n);
usr.sbin/rtadvd/rtadvd.c
489
if (n > rtm->rtm_msglen) {
usr.sbin/rtadvd/rtadvd.c
498
__func__, n, rtm->rtm_msglen);
usr.sbin/rtadvd/rtadvd.c
501
n = rtm->rtm_msglen;
usr.sbin/rtsold/rtsock.c
103
offsetof(struct rt_msghdr, rtm_msglen) + sizeof(rtm->rtm_msglen);
usr.sbin/rtsold/rtsock.c
109
rtm = (struct rt_msghdr *)(void *)next;
usr.sbin/rtsold/rtsock.c
112
len = rtm->rtm_msglen;
usr.sbin/rtsold/rtsock.c
118
"rtmsg type %d, len=%lu", rtm->rtm_type,
usr.sbin/rtsold/rtsock.c
123
if (rtm->rtm_type != rtsock_dispatch[idx].type)
usr.sbin/rtsold/rtsock.c
125
if (rtm->rtm_msglen < rtsock_dispatch[idx].minlen) {
usr.sbin/rtsold/rtsock.c
127
"rtmsg type %d too short!", rtm->rtm_type);
usr.sbin/rtsold/rtsock.c
131
ret = (*rtsock_dispatch[idx].func)(s, rtm, lim);
usr.sbin/rtsold/rtsock.c
140
rtsock_input_ifannounce(int s __unused, struct rt_msghdr *rtm, char *lim)
usr.sbin/rtsold/rtsock.c
145
ifan = (struct if_announcemsghdr *)rtm;
usr.sbin/rtsold/rtsock.c
98
struct rt_msghdr *rtm;
usr.sbin/uhsoctl/uhsoctl.c
881
struct rt_msghdr rtm;
usr.sbin/uhsoctl/uhsoctl.c
951
r.rtm.rtm_version = RTM_VERSION;
usr.sbin/uhsoctl/uhsoctl.c
952
r.rtm.rtm_type = RTM_ADD;
usr.sbin/uhsoctl/uhsoctl.c
953
r.rtm.rtm_flags = RTF_UP | RTF_STATIC;
usr.sbin/uhsoctl/uhsoctl.c
954
r.rtm.rtm_pid = getpid();
usr.sbin/uhsoctl/uhsoctl.c
964
r.rtm.rtm_addrs = RTA_DST | RTA_GATEWAY | RTA_NETMASK;
usr.sbin/uhsoctl/uhsoctl.c
965
r.rtm.rtm_msglen = sizeof(r);
usr.sbin/uhsoctl/uhsoctl.c
967
n = write(rs, &r, r.rtm.rtm_msglen);
usr.sbin/uhsoctl/uhsoctl.c
968
if (n != r.rtm.rtm_msglen) {
usr.sbin/uhsoctl/uhsoctl.c
969
r.rtm.rtm_type = RTM_DELETE;
usr.sbin/uhsoctl/uhsoctl.c
970
n = write(rs, &r, r.rtm.rtm_msglen);
usr.sbin/uhsoctl/uhsoctl.c
971
r.rtm.rtm_type = RTM_ADD;
usr.sbin/uhsoctl/uhsoctl.c
972
n = write(rs, &r, r.rtm.rtm_msglen);
usr.sbin/uhsoctl/uhsoctl.c
975
if (n != r.rtm.rtm_msglen) {