Lines Matching defs:sk

404 bool mptcp_syn_options(struct sock *sk, const struct sk_buff *skb,
407 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
415 opts->csum_reqd = mptcp_is_checksum_enabled(sock_net(sk));
416 opts->allow_join_id0 = mptcp_allow_join_id0(sock_net(sk));
433 static void clear_3rdack_retransmission(struct sock *sk)
435 struct inet_connection_sock *icsk = inet_csk(sk);
437 sk_stop_timer(sk, &icsk->icsk_delack_timer);
443 static bool mptcp_established_options_mp(struct sock *sk, struct sk_buff *skb,
448 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
466 sk->sk_state != TCP_ESTABLISHED)
482 opts->allow_join_id0 = mptcp_allow_join_id0(sock_net(sk));
515 * If we are in process context - sk is flushing the backlog at
519 if (sock_owned_by_user(sk))
556 static bool mptcp_established_options_dss(struct sock *sk, struct sk_buff *skb,
561 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
649 static bool mptcp_established_options_add_addr(struct sock *sk, struct sk_buff *skb,
654 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
691 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ADDADDRTX);
696 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ECHOADDTX);
704 static bool mptcp_established_options_rm_addr(struct sock *sk,
709 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
730 MPTCP_ADD_STATS(sock_net(sk), MPTCP_MIB_RMADDRTX, opts->rm_list.nr);
734 static bool mptcp_established_options_mp_prio(struct sock *sk,
739 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
760 static noinline bool mptcp_established_options_rst(struct sock *sk, struct sk_buff *skb,
765 const struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
774 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPRSTTX);
779 static bool mptcp_established_options_fastclose(struct sock *sk,
784 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
798 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPFASTCLOSETX);
802 static bool mptcp_established_options_mp_fail(struct sock *sk,
807 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
820 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPFAILTX);
825 bool mptcp_established_options(struct sock *sk, struct sk_buff *skb,
829 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
841 if (mptcp_established_options_fastclose(sk, &opt_size, remaining, opts) ||
842 mptcp_established_options_mp_fail(sk, &opt_size, remaining, opts)) {
847 if (mptcp_established_options_rst(sk, skb, &opt_size, remaining, opts)) {
855 if (mptcp_established_options_mp(sk, skb, snd_data_fin, &opt_size, opts))
857 else if (mptcp_established_options_dss(sk, skb, snd_data_fin, &opt_size, opts)) {
861 if (mptcp_established_options_mp_fail(sk, &mp_fail_size,
877 if (mptcp_established_options_add_addr(sk, skb, &opt_size, remaining, opts)) {
881 } else if (mptcp_established_options_rm_addr(sk, &opt_size, remaining, opts)) {
887 if (mptcp_established_options_mp_prio(sk, &opt_size, remaining, opts)) {
985 pr_warn_once("bogus mpc option on established client sk");
1042 struct sock *sk = (struct sock *)msk;
1045 mptcp_data_lock(sk);
1065 __mptcp_check_push(sk, ssk);
1069 __mptcp_data_acked(sk);
1072 mptcp_data_unlock(sk);
1115 bool mptcp_incoming_options(struct sock *sk, struct sk_buff *skb)
1117 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
1129 if (sk_stream_memory_free(sk))
1130 __mptcp_check_push(subflow->conn, sk);
1147 if (!check_fully_established(msk, sk, subflow, skb, &mp_opt))
1148 return sk->sk_state != TCP_CLOSE;
1155 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPFASTCLOSERX);
1161 mptcp_pm_add_addr_received(sk, &mp_opt.addr);
1162 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ADDADDR);
1166 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_ECHOADD);
1170 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_PORTADD);
1177 mptcp_pm_mp_prio_received(sk, mp_opt.backup);
1178 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPPRIORX);
1182 mptcp_pm_mp_fail_received(sk, mp_opt.fail_seq);
1183 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPFAILRX);
1190 MPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_MPRSTRX);
1201 ack_update_msk(msk, sk, &mp_opt);