/linux/net/ipv4/ |
H A D | datagram.c | 103 const struct ip_options_rcu *inet_opt; in ip4_datagram_release_cb() local 116 inet_opt = rcu_dereference(inet->inet_opt); in ip4_datagram_release_cb() 117 if (inet_opt && inet_opt->opt.srr) in ip4_datagram_release_cb() 118 daddr = inet_opt->opt.faddr; in ip4_datagram_release_cb()
|
H A D | ip_output.c | 462 struct ip_options_rcu *inet_opt; in __ip_queue_xmit() local 472 inet_opt = rcu_dereference(inet->inet_opt); in __ip_queue_xmit() 485 if (inet_opt && inet_opt->opt.srr) in __ip_queue_xmit() 486 daddr = inet_opt->opt.faddr; in __ip_queue_xmit() 506 if (inet_opt && inet_opt->opt.is_strictroute && rt->rt_uses_gateway) in __ip_queue_xmit() 510 skb_push(skb, sizeof(struct iphdr) + (inet_opt ? inet_opt->opt.optlen : 0)); in __ip_queue_xmit() 524 if (inet_opt && inet_opt->opt.optlen) { in __ip_queue_xmit() 525 iph->ihl += inet_opt->opt.optlen >> 2; in __ip_queue_xmit() 526 ip_options_build(skb, &inet_opt->opt, inet->inet_daddr, rt); in __ip_queue_xmit()
|
H A D | af_inet.c | 158 kfree(rcu_dereference_protected(inet->inet_opt, 1)); in inet_sock_destruct() 1263 struct ip_options_rcu *inet_opt; in inet_sk_reselect_saddr() 1266 inet_opt = rcu_dereference_protected(inet->inet_opt, in inet_sk_reselect_saddr() 1268 if (inet_opt && inet_opt->opt.srr) in inet_sk_reselect_saddr() 1269 daddr = inet_opt->opt.faddr; in inet_sk_reselect_saddr() 1315 struct ip_options_rcu *inet_opt; in inet_sk_rebuild_header() 1325 inet_opt = rcu_dereference(inet->inet_opt); in inet_sk_rebuild_header() 1261 struct ip_options_rcu *inet_opt; inet_sk_reselect_saddr() local 1313 struct ip_options_rcu *inet_opt; inet_sk_rebuild_header() local [all...] |
H A D | raw.c | 559 struct ip_options_rcu *inet_opt; in raw_sendmsg() local 562 inet_opt = rcu_dereference(inet->inet_opt); in raw_sendmsg() 563 if (inet_opt) { in raw_sendmsg() 564 memcpy(&opt_copy, inet_opt, in raw_sendmsg() 565 sizeof(*inet_opt) + inet_opt->opt.optlen); in raw_sendmsg()
|
H A D | ping.c | 749 struct ip_options_rcu *inet_opt; in ping_v4_sendmsg() local 752 inet_opt = rcu_dereference(inet->inet_opt); in ping_v4_sendmsg() 753 if (inet_opt) { in ping_v4_sendmsg() 754 memcpy(&opt_copy, inet_opt, in ping_v4_sendmsg() 755 sizeof(*inet_opt) + inet_opt->opt.optlen); in ping_v4_sendmsg()
|
H A D | tcp_ipv4.c | 224 struct ip_options_rcu *inet_opt; in tcp_v4_connect() local 239 inet_opt = rcu_dereference_protected(inet->inet_opt, in tcp_v4_connect() 241 if (inet_opt && inet_opt->opt.srr) { in tcp_v4_connect() 244 nexthop = inet_opt->opt.faddr; in tcp_v4_connect() 265 if (!inet_opt || !inet_opt->opt.srr) in tcp_v4_connect() 292 if (inet_opt) in tcp_v4_connect() 293 inet_csk(sk)->icsk_ext_hdr_len = inet_opt->opt.optlen; in tcp_v4_connect() 1755 struct ip_options_rcu *inet_opt; local 1774 inet_opt = rcu_dereference(ireq->ireq_opt); 1775 RCU_INIT_POINTER(newinet->inet_opt, inet_opt); [all …]
|
H A D | ip_sockglue.c | 1090 old = rcu_dereference_protected(inet->inet_opt, in do_ip_setsockopt() 1109 rcu_assign_pointer(inet->inet_opt, opt); in do_ip_setsockopt() 1606 struct ip_options_rcu *inet_opt; in do_ip_getsockopt() local 1609 inet_opt = rcu_dereference(inet->inet_opt); in do_ip_getsockopt() 1611 if (inet_opt) in do_ip_getsockopt() 1612 memcpy(optbuf, &inet_opt->opt, in do_ip_getsockopt() 1614 inet_opt->opt.optlen); in do_ip_getsockopt()
|
H A D | inet_connection_sock.c | 1551 const struct ip_options_rcu *inet_opt; in inet_csk_rebuild_route() 1557 inet_opt = rcu_dereference(inet->inet_opt); in inet_csk_rebuild_route() 1558 if (inet_opt && inet_opt->opt.srr) in inet_csk_rebuild_route() 1559 daddr = inet_opt->opt.faddr; in inet_csk_rebuild_route() 1550 const struct ip_options_rcu *inet_opt; inet_csk_rebuild_route() local
|
H A D | cipso_ipv4.c | 1904 old = rcu_dereference_protected(sk_inet->inet_opt, sk_locked); in cipso_v4_sock_setattr() 1912 rcu_assign_pointer(sk_inet->inet_opt, opt); in cipso_v4_sock_setattr() 2062 hdr_delta = cipso_v4_delopt(&sk_inet->inet_opt); in cipso_v4_sock_delattr() 2151 opt = rcu_dereference(inet_sk(sk)->inet_opt); in cipso_v4_sock_getattr()
|
H A D | udp.c | 1153 struct ip_options_rcu *inet_opt; in udp_sendmsg() local 1156 inet_opt = rcu_dereference(inet->inet_opt); in udp_sendmsg() 1157 if (inet_opt) { in udp_sendmsg() 1158 memcpy(&opt_copy, inet_opt, in udp_sendmsg() 1159 sizeof(*inet_opt) + inet_opt->opt.optlen); in udp_sendmsg()
|
H A D | route.c | 536 const struct ip_options_rcu *inet_opt; in build_sk_flow_key() local 540 inet_opt = rcu_dereference(inet->inet_opt); in build_sk_flow_key() 541 if (inet_opt && inet_opt->opt.srr) in build_sk_flow_key() 542 daddr = inet_opt->opt.faddr; in build_sk_flow_key()
|
/linux/net/dccp/ |
H A D | ipv4.c | 56 struct ip_options_rcu *inet_opt; in dccp_v4_connect() local 68 inet_opt = rcu_dereference_protected(inet->inet_opt, in dccp_v4_connect() 70 if (inet_opt != NULL && inet_opt->opt.srr) { in dccp_v4_connect() 73 nexthop = inet_opt->opt.faddr; in dccp_v4_connect() 90 if (inet_opt == NULL || !inet_opt->opt.srr) in dccp_v4_connect() 107 if (inet_opt) in dccp_v4_connect() 108 inet_csk(sk)->icsk_ext_hdr_len = inet_opt in dccp_v4_connect() [all...] |
H A D | ipv6.c | 516 newinet->inet_opt = NULL; in dccp_v6_request_recv_sock()
|
/linux/net/sctp/ |
H A D | protocol.c | 180 struct ip_options_rcu *inet_opt, *newopt = NULL; in sctp_v4_copy_ip_options() local 185 inet_opt = rcu_dereference(inet->inet_opt); in sctp_v4_copy_ip_options() 186 if (inet_opt) { in sctp_v4_copy_ip_options() 187 newopt = sock_kmalloc(newsk, sizeof(*inet_opt) + in sctp_v4_copy_ip_options() 188 inet_opt->opt.optlen, GFP_ATOMIC); in sctp_v4_copy_ip_options() 190 memcpy(newopt, inet_opt, sizeof(*inet_opt) + in sctp_v4_copy_ip_options() 191 inet_opt->opt.optlen); in sctp_v4_copy_ip_options() 195 RCU_INIT_POINTER(newinet->inet_opt, newopt); in sctp_v4_copy_ip_options() 203 struct ip_options_rcu *inet_opt; in sctp_v4_ip_options_len() local 207 inet_opt = rcu_dereference(inet->inet_opt); in sctp_v4_ip_options_len() [all …]
|
/linux/net/l2tp/ |
H A D | l2tp_ip.c | 491 const struct ip_options_rcu *inet_opt; in l2tp_ip_sendmsg() local 493 inet_opt = rcu_dereference(inet->inet_opt); in l2tp_ip_sendmsg() 496 if (inet_opt && inet_opt->opt.srr) in l2tp_ip_sendmsg() 497 daddr = inet_opt->opt.faddr; in l2tp_ip_sendmsg()
|
/linux/Documentation/networking/net_cachelines/ |
H A D | inet_sock.rst | 20 struct_ip_options_rcu* inet_opt read_mostly - __ip_queue_xm…
|
/linux/net/mptcp/ |
H A D | protocol.c | 3252 struct ip_options_rcu *inet_opt, *newopt = NULL; in mptcp_copy_ip_options() local 3259 inet_opt = rcu_dereference(inet->inet_opt); in mptcp_copy_ip_options() 3260 if (inet_opt) { in mptcp_copy_ip_options() 3261 newopt = sock_kmalloc(newsk, sizeof(*inet_opt) + in mptcp_copy_ip_options() 3262 inet_opt->opt.optlen, GFP_ATOMIC); in mptcp_copy_ip_options() 3264 memcpy(newopt, inet_opt, sizeof(*inet_opt) + in mptcp_copy_ip_options() 3265 inet_opt->opt.optlen); in mptcp_copy_ip_options() 3269 RCU_INIT_POINTER(newinet->inet_opt, newopt); in mptcp_copy_ip_options()
|
/linux/include/net/ |
H A D | inet_sock.h | 226 struct ip_options_rcu __rcu *inet_opt; member
|
/linux/drivers/net/ethernet/chelsio/inline_crypto/chtls/ |
H A D | chtls_cm.c | 1208 newinet->inet_opt = NULL; in chtls_recv_sock()
|
/linux/net/ipv6/ |
H A D | tcp_ipv6.c | 1460 newinet->inet_opt = NULL;
|
/linux/net/ |
H A D | socket.c | 3724 opt = rcu_dereference_protected(inet->inet_opt, in kernel_sock_ip_overhead()
|