Lines Matching refs:req

185 		printk("req buf is too small: %zu < %zu", req_sz, nl_size);
277 } req;
281 memset(&req, 0, sizeof(req));
282 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.info));
283 req.nh.nlmsg_type = RTM_NEWLINK;
284 req.nh.nlmsg_flags = flags;
285 req.nh.nlmsg_seq = seq;
286 req.info.ifi_family = AF_UNSPEC;
287 req.info.ifi_change = 0xFFFFFFFF;
289 if (rtattr_pack(&req.nh, sizeof(req), IFLA_IFNAME, peera, strlen(peera)))
292 if (rtattr_pack(&req.nh, sizeof(req), IFLA_NET_NS_FD, &ns_a, sizeof(ns_a)))
295 link_info = rtattr_begin(&req.nh, sizeof(req), IFLA_LINKINFO);
299 if (rtattr_pack(&req.nh, sizeof(req), IFLA_INFO_KIND, veth_type, sizeof(veth_type)))
302 info_data = rtattr_begin(&req.nh, sizeof(req), IFLA_INFO_DATA);
306 if (veth_pack_peerb(&req.nh, sizeof(req), peerb, ns_b))
309 rtattr_end(&req.nh, info_data);
310 rtattr_end(&req.nh, link_info);
312 if (send(sock, &req, req.nh.nlmsg_len, 0) < 0) {
327 } req;
329 memset(&req, 0, sizeof(req));
330 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.info));
331 req.nh.nlmsg_type = RTM_NEWADDR;
332 req.nh.nlmsg_flags = flags;
333 req.nh.nlmsg_seq = seq;
334 req.info.ifa_family = AF_INET;
335 req.info.ifa_prefixlen = prefix;
336 req.info.ifa_index = if_nametoindex(intf);
348 if (rtattr_pack(&req.nh, sizeof(req), IFA_LOCAL, &addr, sizeof(addr)))
351 if (rtattr_pack(&req.nh, sizeof(req), IFA_ADDRESS, &addr, sizeof(addr)))
354 if (send(sock, &req, req.nh.nlmsg_len, 0) < 0) {
367 } req;
369 memset(&req, 0, sizeof(req));
370 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.info));
371 req.nh.nlmsg_type = RTM_NEWLINK;
372 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
373 req.nh.nlmsg_seq = seq;
374 req.info.ifi_family = AF_UNSPEC;
375 req.info.ifi_change = 0xFFFFFFFF;
376 req.info.ifi_index = if_nametoindex(intf);
377 req.info.ifi_flags = IFF_UP;
378 req.info.ifi_change = IFF_UP;
380 if (send(sock, &req, req.nh.nlmsg_len, 0) < 0) {
394 } req;
397 memset(&req, 0, sizeof(req));
398 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.rt));
399 req.nh.nlmsg_type = RTM_NEWROUTE;
400 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK | NLM_F_CREATE;
401 req.nh.nlmsg_seq = seq;
402 req.rt.rtm_family = AF_INET;
403 req.rt.rtm_dst_len = 32;
404 req.rt.rtm_table = RT_TABLE_MAIN;
405 req.rt.rtm_protocol = RTPROT_BOOT;
406 req.rt.rtm_scope = RT_SCOPE_LINK;
407 req.rt.rtm_type = RTN_UNICAST;
409 if (rtattr_pack(&req.nh, sizeof(req), RTA_DST, &dst, sizeof(dst)))
412 if (rtattr_pack(&req.nh, sizeof(req), RTA_PREFSRC, &src, sizeof(src)))
415 if (rtattr_pack(&req.nh, sizeof(req), RTA_OIF, &index, sizeof(index)))
418 if (send(sock, &req, req.nh.nlmsg_len, 0) < 0) {
934 } req;
936 memset(&req, 0, sizeof(req));
937 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.info));
938 req.nh.nlmsg_type = XFRM_MSG_NEWSA;
939 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
940 req.nh.nlmsg_seq = seq;
943 memcpy(&req.info.sel.daddr, &dst, sizeof(dst));
944 memcpy(&req.info.sel.saddr, &src, sizeof(src));
945 req.info.sel.family = AF_INET;
946 req.info.sel.prefixlen_d = PREFIX_LEN;
947 req.info.sel.prefixlen_s = PREFIX_LEN;
950 memcpy(&req.info.id.daddr, &dst, sizeof(dst));
952 req.info.id.spi = spi;
953 req.info.id.proto = desc->proto;
955 memcpy(&req.info.saddr, &src, sizeof(src));
958 req.info.lft.soft_byte_limit = XFRM_INF;
959 req.info.lft.hard_byte_limit = XFRM_INF;
960 req.info.lft.soft_packet_limit = XFRM_INF;
961 req.info.lft.hard_packet_limit = XFRM_INF;
963 req.info.family = AF_INET;
964 req.info.mode = XFRM_MODE_TUNNEL;
966 if (xfrm_state_pack_algo(&req.nh, sizeof(req), desc))
969 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1022 } req;
1035 memset(&req, 0, sizeof(req));
1036 req.nh.nlmsg_len = NLMSG_LENGTH(0);
1037 req.nh.nlmsg_type = XFRM_MSG_GETSA;
1038 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_DUMP;
1039 req.nh.nlmsg_seq = seq;
1048 if (rtattr_pack(&req.nh, sizeof(req), XFRMA_ADDRESS_FILTER,
1052 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1116 } req;
1119 memset(&req, 0, sizeof(req));
1121 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.info));
1122 req.nh.nlmsg_type = XFRM_MSG_NEWPOLICY;
1123 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
1124 req.nh.nlmsg_seq = seq;
1127 memcpy(&req.info.sel.daddr, &dst, sizeof(tundst));
1128 memcpy(&req.info.sel.saddr, &src, sizeof(tunsrc));
1129 req.info.sel.family = AF_INET;
1130 req.info.sel.prefixlen_d = PREFIX_LEN;
1131 req.info.sel.prefixlen_s = PREFIX_LEN;
1134 req.info.lft.soft_byte_limit = XFRM_INF;
1135 req.info.lft.hard_byte_limit = XFRM_INF;
1136 req.info.lft.soft_packet_limit = XFRM_INF;
1137 req.info.lft.hard_packet_limit = XFRM_INF;
1139 req.info.dir = dir;
1153 if (rtattr_pack(&req.nh, sizeof(req), XFRMA_TMPL, &tmpl, sizeof(tmpl)))
1156 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1191 } req;
1193 memset(&req, 0, sizeof(req));
1194 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.id));
1195 req.nh.nlmsg_type = XFRM_MSG_DELPOLICY;
1196 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
1197 req.nh.nlmsg_seq = seq;
1200 memcpy(&req.id.sel.daddr, &dst, sizeof(tundst));
1201 memcpy(&req.id.sel.saddr, &src, sizeof(tunsrc));
1202 req.id.sel.family = AF_INET;
1203 req.id.sel.prefixlen_d = PREFIX_LEN;
1204 req.id.sel.prefixlen_s = PREFIX_LEN;
1205 req.id.dir = dir;
1207 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1241 } req;
1244 memset(&req, 0, sizeof(req));
1245 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.id));
1246 req.nh.nlmsg_type = XFRM_MSG_DELSA;
1247 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
1248 req.nh.nlmsg_seq = seq;
1250 memcpy(&req.id.daddr, &dst, sizeof(dst));
1251 req.id.family = AF_INET;
1252 req.id.proto = proto;
1254 req.id.spi = spi;
1257 if (rtattr_pack(&req.nh, sizeof(req), XFRMA_SRCADDR, &saddr, sizeof(saddr)))
1260 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1291 } req;
1300 memset(&req, 0, sizeof(req));
1301 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.spi));
1302 req.nh.nlmsg_type = XFRM_MSG_ALLOCSPI;
1303 req.nh.nlmsg_flags = NLM_F_REQUEST;
1304 req.nh.nlmsg_seq = (*seq)++;
1306 req.spi.info.family = AF_INET;
1307 req.spi.min = spi;
1308 req.spi.max = spi;
1309 req.spi.info.id.proto = proto;
1311 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1385 } req;
1393 memset(&req, 0, sizeof(req));
1394 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.acq));
1395 req.nh.nlmsg_type = XFRM_MSG_ACQUIRE;
1396 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
1397 req.nh.nlmsg_seq = (*seq)++;
1399 req.acq.policy.sel.family = AF_INET;
1400 req.acq.aalgos = 0xfeed;
1401 req.acq.ealgos = 0xbaad;
1402 req.acq.calgos = 0xbabe;
1406 if (rtattr_pack(&req.nh, sizeof(req), XFRMA_TMPL, &xfrm_tmpl, sizeof(xfrm_tmpl)))
1409 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1414 if (recv(xfrm_sock, &req, sizeof(req), 0) < 0) {
1417 } else if (req.nh.nlmsg_type != NLMSG_ERROR) {
1418 printk("expected NLMSG_ERROR, got %d", (int)req.nh.nlmsg_type);
1422 if (req.error) {
1423 printk("NLMSG_ERROR: %d: %s", req.error, strerror(-req.error));
1424 ret = req.error;
1428 if (recv(xfrm_listen, &req, sizeof(req), 0) < 0) {
1433 if (req.acq.aalgos != 0xfeed || req.acq.ealgos != 0xbaad
1434 || req.acq.calgos != 0xbabe) {
1436 req.acq.aalgos, req.acq.ealgos, req.acq.calgos);
1455 } req;
1471 memset(&req, 0, sizeof(req));
1472 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.expire));
1473 req.nh.nlmsg_type = XFRM_MSG_EXPIRE;
1474 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
1475 req.nh.nlmsg_seq = (*seq)++;
1477 memcpy(&req.expire.state.id.daddr, &dst, sizeof(dst));
1478 req.expire.state.id.spi = gen_spi(src);
1479 req.expire.state.id.proto = desc->proto;
1480 req.expire.state.family = AF_INET;
1481 req.expire.hard = 0xff;
1483 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1488 if (recv(xfrm_sock, &req, sizeof(req), 0) < 0) {
1491 } else if (req.nh.nlmsg_type != NLMSG_ERROR) {
1492 printk("expected NLMSG_ERROR, got %d", (int)req.nh.nlmsg_type);
1496 if (req.error) {
1497 printk("NLMSG_ERROR: %d: %s", req.error, strerror(-req.error));
1498 ret = req.error;
1502 if (recv(xfrm_listen, &req, sizeof(req), 0) < 0) {
1507 if (req.expire.hard != 0x1) {
1508 printk("expire.hard is not set: %x", req.expire.hard);
1527 } req;
1546 memset(&req, 0, sizeof(req));
1547 req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(req.expire));
1548 req.nh.nlmsg_type = XFRM_MSG_POLEXPIRE;
1549 req.nh.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
1550 req.nh.nlmsg_seq = (*seq)++;
1553 memcpy(&req.expire.pol.sel.daddr, &dst, sizeof(tundst));
1554 memcpy(&req.expire.pol.sel.saddr, &src, sizeof(tunsrc));
1555 req.expire.pol.sel.family = AF_INET;
1556 req.expire.pol.sel.prefixlen_d = PREFIX_LEN;
1557 req.expire.pol.sel.prefixlen_s = PREFIX_LEN;
1558 req.expire.pol.dir = XFRM_POLICY_OUT;
1559 req.expire.hard = 0xff;
1561 if (send(xfrm_sock, &req, req.nh.nlmsg_len, 0) < 0) {
1566 if (recv(xfrm_sock, &req, sizeof(req), 0) < 0) {
1569 } else if (req.nh.nlmsg_type != NLMSG_ERROR) {
1570 printk("expected NLMSG_ERROR, got %d", (int)req.nh.nlmsg_type);
1574 if (req.error) {
1575 printk("NLMSG_ERROR: %d: %s", req.error, strerror(-req.error));
1576 ret = req.error;
1580 if (recv(xfrm_listen, &req, sizeof(req), 0) < 0) {
1585 if (req.expire.hard != 0x1) {
1586 printk("expire.hard is not set: %x", req.expire.hard);