Lines Matching refs:opt
135 __be32 saddr, __be32 daddr, struct ip_options_rcu *opt) in ip_build_and_send_pkt() argument
142 skb_push(skb, sizeof(struct iphdr) + (opt ? opt->opt.optlen : 0)); in ip_build_and_send_pkt()
153 iph->daddr = (opt && opt->opt.srr ? opt->opt.faddr : daddr); in ip_build_and_send_pkt()
158 if (opt && opt->opt.optlen) { in ip_build_and_send_pkt()
159 iph->ihl += opt->opt.optlen>>2; in ip_build_and_send_pkt()
160 ip_options_build(skb, &opt->opt, daddr, rt, 0); in ip_build_and_send_pkt()
396 if (inet_opt && inet_opt->opt.srr) in ip_queue_xmit()
397 daddr = inet_opt->opt.faddr; in ip_queue_xmit()
417 if (inet_opt && inet_opt->opt.is_strictroute && rt->rt_uses_gateway) in ip_queue_xmit()
421 skb_push(skb, sizeof(struct iphdr) + (inet_opt ? inet_opt->opt.optlen : 0)); in ip_queue_xmit()
435 if (inet_opt && inet_opt->opt.optlen) { in ip_queue_xmit()
436 iph->ihl += inet_opt->opt.optlen >> 2; in ip_queue_xmit()
437 ip_options_build(skb, &inet_opt->opt, inet->inet_daddr, rt, 0); in ip_queue_xmit()
851 struct ip_options *opt = cork->opt; in __ip_append_data() local
873 fragheaderlen = sizeof(struct iphdr) + (opt ? opt->optlen : 0); in __ip_append_data()
879 mtu - (opt ? opt->optlen : 0)); in __ip_append_data()
1090 struct ip_options_rcu *opt; in ip_setup_cork() local
1096 opt = ipc->opt; in ip_setup_cork()
1097 if (opt) { in ip_setup_cork()
1098 if (!cork->opt) { in ip_setup_cork()
1099 cork->opt = kmalloc(sizeof(struct ip_options) + 40, in ip_setup_cork()
1101 if (unlikely(!cork->opt)) in ip_setup_cork()
1104 memcpy(cork->opt, &opt->opt, sizeof(struct ip_options) + opt->opt.optlen); in ip_setup_cork()
1170 struct ip_options *opt = NULL; in ip_append_page() local
1190 opt = cork->opt; in ip_append_page()
1198 fragheaderlen = sizeof(struct iphdr) + (opt ? opt->optlen : 0); in ip_append_page()
1204 mtu - (opt ? opt->optlen : 0)); in ip_append_page()
1314 kfree(cork->opt); in ip_cork_release()
1315 cork->opt = NULL; in ip_cork_release()
1333 struct ip_options *opt = NULL; in __ip_make_skb() local
1374 opt = cork->opt; in __ip_make_skb()
1393 if (opt) { in __ip_make_skb()
1394 iph->ihl += opt->optlen>>2; in __ip_make_skb()
1395 ip_options_build(skb, opt, cork->addr, rt, 0); in __ip_make_skb()
1482 cork.opt = NULL; in ip_make_skb()
1529 if (__ip_options_echo(&replyopts.opt.opt, skb, sopt)) in ip_send_unicast_reply()
1533 ipc.opt = NULL; in ip_send_unicast_reply()
1538 if (replyopts.opt.opt.optlen) { in ip_send_unicast_reply()
1539 ipc.opt = &replyopts.opt; in ip_send_unicast_reply()
1541 if (replyopts.opt.opt.srr) in ip_send_unicast_reply()
1542 daddr = replyopts.opt.opt.faddr; in ip_send_unicast_reply()