Lines Matching refs:msk

490 	struct mptcp_sock *msk = mptcp_sk(subflow->conn);
498 snd_data_fin_enable = READ_ONCE(msk->snd_data_fin_enable);
515 /* passive sockets msk will set the 'can_ack' after accept(), even
519 if (!READ_ONCE(msk->can_ack)) {
524 if (READ_ONCE(msk->use_64bit_ack)) {
526 opts->ext_copy.data_ack = READ_ONCE(msk->ack_seq);
530 opts->ext_copy.data_ack32 = (uint32_t)READ_ONCE(msk->ack_seq);
585 struct mptcp_sock *msk = mptcp_sk(subflow->conn);
590 if (!mptcp_pm_should_add_signal(msk) ||
591 !(mptcp_pm_add_addr_signal(msk, remaining, &saddr, &echo)))
604 opts->ahmac = add_addr_generate_hmac(msk->local_key,
605 msk->remote_key,
615 opts->ahmac = add_addr6_generate_hmac(msk->local_key,
616 msk->remote_key,
633 struct mptcp_sock *msk = mptcp_sk(subflow->conn);
636 if (!mptcp_pm_should_rm_signal(msk) ||
637 !(mptcp_pm_rm_addr_signal(msk, remaining, &rm_id)))
724 static bool check_fully_established(struct mptcp_sock *msk, struct sock *ssk,
734 * note that msk is always set by subflow_syn_recv_sock()
740 READ_ONCE(msk->pm.server_side))
761 WRITE_ONCE(msk->fully_established, true);
773 pr_fallback(msk);
774 __mptcp_do_fallback(msk);
778 if (unlikely(!READ_ONCE(msk->pm.server_side)))
789 mptcp_pm_subflow_established(msk, subflow);
791 mptcp_pm_fully_established(msk);
815 static void update_una(struct mptcp_sock *msk,
818 u64 new_snd_una, snd_una, old_snd_una = atomic64_read(&msk->snd_una);
819 u64 write_seq = READ_ONCE(msk->write_seq);
833 old_snd_una = atomic64_cmpxchg(&msk->snd_una, snd_una,
836 mptcp_data_acked((struct sock *)msk);
842 bool mptcp_update_rcv_data_fin(struct mptcp_sock *msk, u64 data_fin_seq, bool use_64bit)
849 if (READ_ONCE(msk->rcv_data_fin) || !READ_ONCE(msk->first))
852 WRITE_ONCE(msk->rcv_data_fin_seq,
853 expand_ack(READ_ONCE(msk->ack_seq), data_fin_seq, use_64bit));
854 WRITE_ONCE(msk->rcv_data_fin, 1);
859 static bool add_addr_hmac_valid(struct mptcp_sock *msk,
868 hmac = add_addr_generate_hmac(msk->remote_key,
869 msk->local_key,
873 hmac = add_addr6_generate_hmac(msk->remote_key,
874 msk->local_key,
878 pr_debug("msk=%p, ahmac=%llu, mp_opt->ahmac=%llu\n",
879 msk, (unsigned long long)hmac,
888 struct mptcp_sock *msk = mptcp_sk(subflow->conn);
892 if (__mptcp_check_fallback(msk))
896 if (!check_fully_established(msk, sk, subflow, skb, &mp_opt))
899 if (mp_opt.add_addr && add_addr_hmac_valid(msk, &mp_opt)) {
915 mptcp_pm_add_addr_received(msk, &addr);
918 mptcp_pm_del_add_timer(msk, &addr);
925 mptcp_pm_rm_addr_received(msk, mp_opt.rm_id);
936 update_una(msk, &mp_opt);
945 mptcp_update_rcv_data_fin(msk, mp_opt.data_seq, mp_opt.dsn64) &&
946 schedule_work(&msk->work))