ip_output.c (db985cbd67c45f875ef43cb5febfaa8cbd203c27) | ip_output.c (24a2d43d8886f5a29c3cf108927f630c545a9a38) |
---|---|
1/* 2 * INET An implementation of the TCP/IP protocol suite for the LINUX 3 * operating system. INET is implemented using the BSD Socket 4 * interface as the means of communication with the user level. 5 * 6 * The Internet Protocol (IP) output module. 7 * 8 * Authors: Ross Biro --- 1508 unchanged lines hidden (view full) --- 1517 .sk_wmem_alloc = ATOMIC_INIT(1), 1518 .sk_allocation = GFP_ATOMIC, 1519 .sk_flags = (1UL << SOCK_USE_WRITE_QUEUE), 1520 }, 1521 .pmtudisc = IP_PMTUDISC_WANT, 1522 .uc_ttl = -1, 1523}; 1524 | 1/* 2 * INET An implementation of the TCP/IP protocol suite for the LINUX 3 * operating system. INET is implemented using the BSD Socket 4 * interface as the means of communication with the user level. 5 * 6 * The Internet Protocol (IP) output module. 7 * 8 * Authors: Ross Biro --- 1508 unchanged lines hidden (view full) --- 1517 .sk_wmem_alloc = ATOMIC_INIT(1), 1518 .sk_allocation = GFP_ATOMIC, 1519 .sk_flags = (1UL << SOCK_USE_WRITE_QUEUE), 1520 }, 1521 .pmtudisc = IP_PMTUDISC_WANT, 1522 .uc_ttl = -1, 1523}; 1524 |
1525void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, __be32 daddr, 1526 __be32 saddr, const struct ip_reply_arg *arg, | 1525void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, 1526 const struct ip_options *sopt, 1527 __be32 daddr, __be32 saddr, 1528 const struct ip_reply_arg *arg, |
1527 unsigned int len) 1528{ 1529 struct ip_options_data replyopts; 1530 struct ipcm_cookie ipc; 1531 struct flowi4 fl4; 1532 struct rtable *rt = skb_rtable(skb); 1533 struct sk_buff *nskb; 1534 struct sock *sk; 1535 struct inet_sock *inet; 1536 | 1529 unsigned int len) 1530{ 1531 struct ip_options_data replyopts; 1532 struct ipcm_cookie ipc; 1533 struct flowi4 fl4; 1534 struct rtable *rt = skb_rtable(skb); 1535 struct sk_buff *nskb; 1536 struct sock *sk; 1537 struct inet_sock *inet; 1538 |
1537 if (ip_options_echo(&replyopts.opt.opt, skb)) | 1539 if (__ip_options_echo(&replyopts.opt.opt, skb, sopt)) |
1538 return; 1539 1540 ipc.addr = daddr; 1541 ipc.opt = NULL; 1542 ipc.tx_flags = 0; 1543 ipc.ttl = 0; 1544 ipc.tos = -1; 1545 --- 57 unchanged lines hidden --- | 1540 return; 1541 1542 ipc.addr = daddr; 1543 ipc.opt = NULL; 1544 ipc.tx_flags = 0; 1545 ipc.ttl = 0; 1546 ipc.tos = -1; 1547 --- 57 unchanged lines hidden --- |