Home
last modified time | relevance | path

Searched refs:ssk (Results 1 – 22 of 22) sorted by relevance

/linux-6.12.1/net/mptcp/
Dsockopt.c79 struct sock *ssk = mptcp_subflow_tcp_sock(subflow); in mptcp_sol_socket_sync_intval() local
80 bool slow = lock_sock_fast(ssk); in mptcp_sol_socket_sync_intval()
84 sock_valbool_flag(ssk, SOCK_DBG, !!val); in mptcp_sol_socket_sync_intval()
87 if (ssk->sk_prot->keepalive) in mptcp_sol_socket_sync_intval()
88 ssk->sk_prot->keepalive(ssk, !!val); in mptcp_sol_socket_sync_intval()
89 sock_valbool_flag(ssk, SOCK_KEEPOPEN, !!val); in mptcp_sol_socket_sync_intval()
92 WRITE_ONCE(ssk->sk_priority, val); in mptcp_sol_socket_sync_intval()
96 ssk->sk_userlocks |= SOCK_SNDBUF_LOCK; in mptcp_sol_socket_sync_intval()
97 WRITE_ONCE(ssk->sk_sndbuf, sk->sk_sndbuf); in mptcp_sol_socket_sync_intval()
98 mptcp_subflow_ctx(ssk)->cached_sndbuf = sk->sk_sndbuf; in mptcp_sol_socket_sync_intval()
[all …]
Dprotocol.c320 static bool mptcp_rmem_schedule(struct sock *sk, struct sock *ssk, int size) in mptcp_rmem_schedule() argument
338 static bool __mptcp_move_skb(struct mptcp_sock *msk, struct sock *ssk, in __mptcp_move_skb() argument
342 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk); in __mptcp_move_skb()
347 __skb_unlink(skb, &ssk->sk_receive_queue); in __mptcp_move_skb()
353 if (!mptcp_rmem_schedule(sk, ssk, skb->truesize)) { in __mptcp_move_skb()
486 const struct sock *ssk = mptcp_subflow_tcp_sock(subflow); in mptcp_timeout_from_subflow() local
488 return inet_csk(ssk)->icsk_pending && !subflow->stale_count ? in mptcp_timeout_from_subflow()
489 inet_csk(ssk)->icsk_timeout - jiffies : 0; in mptcp_timeout_from_subflow()
502 static inline bool tcp_can_send_ack(const struct sock *ssk) in tcp_can_send_ack() argument
504 return !((1 << inet_sk_state_load(ssk)) & in tcp_can_send_ack()
[all …]
Dsubflow.c30 static void mptcp_subflow_ops_undo_override(struct sock *ssk);
429 void mptcp_subflow_reset(struct sock *ssk) in mptcp_subflow_reset() argument
431 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk); in mptcp_subflow_reset()
437 if (ssk->sk_state == TCP_CLOSE) in mptcp_subflow_reset()
443 mptcp_send_active_reset_reason(ssk); in mptcp_subflow_reset()
444 tcp_done(ssk); in mptcp_subflow_reset()
460 struct sock *ssk = msk->first; in __mptcp_sync_state() local
462 subflow = mptcp_subflow_ctx(ssk); in __mptcp_sync_state()
463 __mptcp_propagate_sndbuf(sk, ssk); in __mptcp_sync_state()
465 mptcp_rcv_space_init(msk, ssk); in __mptcp_sync_state()
[all …]
Dprotocol.h652 void mptcp_subflow_process_delegated(struct sock *ssk, long actions);
704 bool mptcp_active_should_disable(struct sock *ssk);
716 void mptcp_subflow_shutdown(struct sock *sk, struct sock *ssk, int how);
717 void mptcp_close_ssk(struct sock *sk, struct sock *ssk,
719 void __mptcp_subflow_send_ack(struct sock *ssk);
720 void mptcp_subflow_reset(struct sock *ssk);
721 void mptcp_subflow_queue_clean(struct sock *sk, struct sock *ssk);
774 static inline bool __tcp_can_send(const struct sock *ssk) in __tcp_can_send() argument
777 return ((1 << inet_sk_state_load(ssk)) & (TCPF_ESTABLISHED | TCPF_CLOSE_WAIT)); in __tcp_can_send()
793 void mptcp_subflow_drop_ctx(struct sock *ssk);
[all …]
Dpm_netlink.c135 struct sock *ssk = mptcp_subflow_tcp_sock(subflow); in lookup_subflow_by_daddr() local
137 if (!((1 << inet_sk_state_load(ssk)) & in lookup_subflow_by_daddr()
141 remote_address((struct sock_common *)ssk, &cur); in lookup_subflow_by_daddr()
424 struct sock *sk = (struct sock *)msk, *ssk; in fill_remote_addresses_vec() local
457 ssk = mptcp_subflow_tcp_sock(subflow); in fill_remote_addresses_vec()
458 remote_address((struct sock_common *)ssk, &addrs[i]); in fill_remote_addresses_vec()
486 struct sock *ssk = mptcp_subflow_tcp_sock(subflow); in __mptcp_pm_send_ack() local
492 slow = lock_sock_fast(ssk); in __mptcp_pm_send_ack()
498 __mptcp_subflow_send_ack(ssk); in __mptcp_pm_send_ack()
499 unlock_sock_fast(ssk, slow); in __mptcp_pm_send_ack()
[all …]
Dfastopen.c12 struct sock *sk, *ssk; in mptcp_fastopen_subflow_synack_set_params() local
22 ssk = subflow->tcp_sock; in mptcp_fastopen_subflow_synack_set_params()
24 tp = tcp_sk(ssk); in mptcp_fastopen_subflow_synack_set_params()
28 skb = skb_peek(&ssk->sk_receive_queue); in mptcp_fastopen_subflow_synack_set_params()
33 __skb_unlink(skb, &ssk->sk_receive_queue); in mptcp_fastopen_subflow_synack_set_params()
Dpm.c65 void mptcp_pm_new_connection(struct mptcp_sock *msk, const struct sock *ssk, int server_side) in mptcp_pm_new_connection() argument
72 mptcp_event(MPTCP_EVENT_CREATED, msk, ssk, GFP_ATOMIC); in mptcp_pm_new_connection()
127 void mptcp_pm_fully_established(struct mptcp_sock *msk, const struct sock *ssk) in mptcp_pm_fully_established() argument
151 mptcp_event(MPTCP_EVENT_ESTABLISHED, msk, ssk, GFP_ATOMIC); in mptcp_pm_fully_established()
208 void mptcp_pm_add_addr_received(const struct sock *ssk, in mptcp_pm_add_addr_received() argument
211 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk); in mptcp_pm_add_addr_received()
218 mptcp_event_addr_announced(ssk, addr); in mptcp_pm_add_addr_received()
285 void mptcp_pm_mp_prio_received(struct sock *ssk, u8 bkup) in mptcp_pm_mp_prio_received() argument
287 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk); in mptcp_pm_mp_prio_received()
296 mptcp_event(MPTCP_EVENT_SUB_PRIORITY, msk, ssk, GFP_ATOMIC); in mptcp_pm_mp_prio_received()
[all …]
Dctrl.c345 bool mptcp_active_should_disable(struct sock *ssk) in mptcp_active_should_disable() argument
347 struct net *net = sock_net(ssk); in mptcp_active_should_disable()
391 void mptcp_active_detect_blackhole(struct sock *ssk, bool expired) in mptcp_active_detect_blackhole() argument
396 if (!sk_is_mptcp(ssk)) in mptcp_active_detect_blackhole()
399 timeouts = inet_csk(ssk)->icsk_retransmits; in mptcp_active_detect_blackhole()
400 subflow = mptcp_subflow_ctx(ssk); in mptcp_active_detect_blackhole()
402 if (subflow->request_mptcp && ssk->sk_state == TCP_SYN_SENT) { in mptcp_active_detect_blackhole()
404 MPTCP_INC_STATS(sock_net(ssk), MPTCP_MIB_MPCAPABLEACTIVEDROP); in mptcp_active_detect_blackhole()
Dpm_userspace.c432 struct sock *ssk; in mptcp_nl_find_ssk() local
434 ssk = mptcp_subflow_tcp_sock(subflow); in mptcp_nl_find_ssk()
436 if (local->family != ssk->sk_family) in mptcp_nl_find_ssk()
439 issk = inet_sk(ssk); in mptcp_nl_find_ssk()
441 switch (ssk->sk_family) { in mptcp_nl_find_ssk()
449 const struct ipv6_pinfo *pinfo = inet6_sk(ssk); in mptcp_nl_find_ssk()
452 !ipv6_addr_equal(&remote->addr6, &ssk->sk_v6_daddr)) in mptcp_nl_find_ssk()
463 return ssk; in mptcp_nl_find_ssk()
477 struct sock *sk, *ssk; in mptcp_pm_nl_subflow_destroy_doit() local
536 ssk = mptcp_nl_find_ssk(msk, &addr_l, &addr_r); in mptcp_pm_nl_subflow_destroy_doit()
[all …]
Dsched.c22 struct sock *ssk; in mptcp_sched_default_get_subflow() local
24 ssk = data->reinject ? mptcp_subflow_get_retrans(msk) : in mptcp_sched_default_get_subflow()
26 if (!ssk) in mptcp_sched_default_get_subflow()
29 mptcp_subflow_set_scheduled(mptcp_subflow_ctx(ssk), true); in mptcp_sched_default_get_subflow()
Doptions.c925 static bool check_fully_established(struct mptcp_sock *msk, struct sock *ssk, in check_fully_established() argument
942 tcp_send_ack(ssk); in check_fully_established()
978 mptcp_do_fallback(ssk); in check_fully_established()
1004 clear_3rdack_retransmission(ssk); in check_fully_established()
1007 mptcp_pm_fully_established(msk, ssk); in check_fully_established()
1012 mptcp_subflow_reset(ssk); in check_fully_established()
1039 struct sock *ssk, in ack_update_msk() argument
1059 new_wnd_end = new_snd_una + tcp_sk(ssk)->snd_wnd; in ack_update_msk()
1066 __mptcp_check_push(sk, ssk); in ack_update_msk()
1254 const struct sock *ssk = (const struct sock *)tp; in mptcp_set_rwin() local
[all …]
Dtoken.c151 int mptcp_token_new_connect(struct sock *ssk) in mptcp_token_new_connect() argument
153 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk); in mptcp_token_new_connect()
173 ssk, subflow->local_key, subflow->token, subflow->idsn); in mptcp_token_new_connect()
/linux-6.12.1/include/trace/events/
Dmptcp.h34 struct sock *ssk;
44 ssk = mptcp_subflow_tcp_sock(subflow);
45 if (ssk && sk_fullsock(ssk)) {
46 __entry->snd_wnd = tcp_sk(ssk)->snd_wnd;
47 __entry->pace = READ_ONCE(ssk->sk_pacing_rate);
53 if (ssk && sk_fullsock(ssk) && __entry->pace)
54 __entry->ratio = div_u64((u64)ssk->sk_wmem_queued << 32, __entry->pace);
/linux-6.12.1/include/linux/
Dnetlink.h227 int netlink_unicast(struct sock *ssk, struct sk_buff *skb, __u32 portid, int nonblock);
228 int netlink_broadcast(struct sock *ssk, struct sk_buff *skb, __u32 portid,
233 int netlink_broadcast_filtered(struct sock *ssk, struct sk_buff *skb,
237 int netlink_set_err(struct sock *ssk, __u32 portid, __u32 group, int code);
244 long *timeo, struct sock *ssk);
329 int __netlink_dump_start(struct sock *ssk, struct sk_buff *skb,
332 static inline int netlink_dump_start(struct sock *ssk, struct sk_buff *skb, in netlink_dump_start() argument
339 return __netlink_dump_start(ssk, skb, nlh, control); in netlink_dump_start()
Dsecurity.h1608 int security_mptcp_add_subflow(struct sock *sk, struct sock *ssk);
1837 static inline int security_mptcp_add_subflow(struct sock *sk, struct sock *ssk) in security_mptcp_add_subflow() argument
Dlsm_hook_defs.h372 LSM_HOOK(int, 0, mptcp_add_subflow, struct sock *sk, struct sock *ssk)
/linux-6.12.1/net/netlink/
Daf_netlink.c1148 static struct sock *netlink_getsockbyportid(struct sock *ssk, u32 portid) in netlink_getsockbyportid() argument
1153 sock = netlink_lookup(sock_net(ssk), ssk->sk_protocol, portid); in netlink_getsockbyportid()
1161 READ_ONCE(nlk->dst_portid) != nlk_sk(ssk)->portid) { in netlink_getsockbyportid()
1217 long *timeo, struct sock *ssk) in netlink_attachskb() argument
1227 if (!ssk || netlink_is_kernel(ssk)) in netlink_attachskb()
1305 struct sock *ssk) in netlink_unicast_kernel() argument
1314 NETLINK_CB(skb).sk = ssk; in netlink_unicast_kernel()
1315 netlink_deliver_tap_kernel(sk, ssk, skb); in netlink_unicast_kernel()
1325 int netlink_unicast(struct sock *ssk, struct sk_buff *skb, in netlink_unicast() argument
1334 timeo = sock_sndtimeo(ssk, nonblock); in netlink_unicast()
[all …]
/linux-6.12.1/include/net/
Dmptcp.h141 void mptcp_space(const struct sock *ssk, int *space, int *full_space);
294 static inline void mptcp_space(const struct sock *ssk, int *s, int *fs) { } in mptcp_space() argument
/linux-6.12.1/tools/testing/selftests/bpf/progs/
Dmptcp_sock.c82 const struct sock *ssk, int server_side) in BPF_PROG() argument
/linux-6.12.1/security/
Dsecurity.c5160 int security_mptcp_add_subflow(struct sock *sk, struct sock *ssk) in security_mptcp_add_subflow() argument
5162 return call_int_hook(mptcp_add_subflow, sk, ssk); in security_mptcp_add_subflow()
/linux-6.12.1/security/selinux/
Dhooks.c5502 static int selinux_mptcp_add_subflow(struct sock *sk, struct sock *ssk) in selinux_mptcp_add_subflow() argument
5504 struct sk_security_struct *ssksec = selinux_sock(ssk); in selinux_mptcp_add_subflow()
5514 return selinux_netlbl_socket_post_create(ssk, ssk->sk_family); in selinux_mptcp_add_subflow()
/linux-6.12.1/net/core/
Drtnetlink.c6553 static int rtnetlink_dump_start(struct sock *ssk, struct sk_buff *skb, in rtnetlink_dump_start() argument
6564 return netlink_dump_start(ssk, skb, nlh, control); in rtnetlink_dump_start()