Lines Matching refs:mpo
1476 mptcp_setopt_apply(struct mptses *mpte, struct mptopt *mpo) in mptcp_setopt_apply() argument
1484 if (!(mpo->mpo_flags & MPOF_SUBFLOW_OK)) { in mptcp_setopt_apply()
1494 if (mpo->mpo_level == SOL_SOCKET && in mptcp_setopt_apply()
1495 (mpo->mpo_name == SO_NOSIGPIPE || mpo->mpo_name == SO_NOADDRERR)) { in mptcp_setopt_apply()
1510 mpo->mpo_flags |= MPOF_INTERIM; in mptcp_setopt_apply()
1517 smpo.mpo_level = mpo->mpo_level; in mptcp_setopt_apply()
1518 smpo.mpo_name = mpo->mpo_name; in mptcp_setopt_apply()
1542 error = mptcp_subflow_sosetopt(mpte, mpts, mpo); in mptcp_setopt_apply()
1585 struct mptopt smpo, *mpo = NULL; in mptcp_setopt() local
1891 if ((mpo = mptcp_sopt_find(mpte, sopt)) == NULL) { in mptcp_setopt()
1892 mpo = mptcp_sopt_alloc(); in mptcp_setopt()
1896 mpo->mpo_intval = optval; in mptcp_setopt()
1897 if (!(mpo->mpo_flags & MPOF_ATTACHED)) { in mptcp_setopt()
1898 mpo->mpo_level = level; in mptcp_setopt()
1899 mpo->mpo_name = optname; in mptcp_setopt()
1900 mptcp_sopt_insert(mpte, mpo); in mptcp_setopt()
1903 mpo->mpo_flags |= MPOF_SUBFLOW_OK; in mptcp_setopt()
1906 mpo = &smpo; in mptcp_setopt()
1907 mpo->mpo_flags |= MPOF_SUBFLOW_OK; in mptcp_setopt()
1908 mpo->mpo_level = level; in mptcp_setopt()
1909 mpo->mpo_name = optname; in mptcp_setopt()
1910 mpo->mpo_intval = optval; in mptcp_setopt()
1914 error = mptcp_setopt_apply(mpte, mpo); in mptcp_setopt()
1915 if (error != 0 && (mpo->mpo_flags & MPOF_ATTACHED)) { in mptcp_setopt()
1916 VERIFY(mpo != &smpo); in mptcp_setopt()
1917 mptcp_sopt_remove(mpte, mpo); in mptcp_setopt()
1918 mptcp_sopt_free(mpo); in mptcp_setopt()
1920 if (mpo == &smpo) { in mptcp_setopt()
1921 mpo->mpo_flags &= ~MPOF_INTERIM; in mptcp_setopt()
2107 struct mptopt *__single mpo = mptcp_sopt_find(mpte, sopt); in mptcp_getopt() local
2109 if (mpo != NULL) { in mptcp_getopt()
2110 optval = mpo->mpo_intval; in mptcp_getopt()