Lines Matching refs:dss_ack_opt

697 		struct mptcp_dss_ack_opt dss_ack_opt;  in mptcp_setup_opts()  local
698 uint8_t dssoptlen = sizeof(dss_ack_opt); in mptcp_setup_opts()
707 bzero(&dss_ack_opt, sizeof(dss_ack_opt)); in mptcp_setup_opts()
708 dss_ack_opt.mdss_copt.mdss_kind = TCPOPT_MULTIPATH; in mptcp_setup_opts()
709 dss_ack_opt.mdss_copt.mdss_len = dssoptlen; in mptcp_setup_opts()
710 dss_ack_opt.mdss_copt.mdss_subtype = MPO_DSS; in mptcp_setup_opts()
711 dss_ack_opt.mdss_copt.mdss_flags |= MDSS_A | MDSS_M; in mptcp_setup_opts()
712 dss_ack_opt.mdss_ack = in mptcp_setup_opts()
717 mptcp_output_getm_dsnmap32(so, off, &dss_ack_opt.mdss_dsn, in mptcp_setup_opts()
718 &dss_ack_opt.mdss_subflow_seqn, in mptcp_setup_opts()
719 &dss_ack_opt.mdss_data_len, in mptcp_setup_opts()
722 if ((dss_ack_opt.mdss_data_len == 0) || in mptcp_setup_opts()
723 (dss_ack_opt.mdss_dsn == 0)) { in mptcp_setup_opts()
728 DO_FIN(dss_ack_opt); in mptcp_setup_opts()
731 dss_ack_opt.mdss_dsn = htonl(dss_ack_opt.mdss_dsn); in mptcp_setup_opts()
732 dss_ack_opt.mdss_subflow_seqn = in mptcp_setup_opts()
733 htonl(dss_ack_opt.mdss_subflow_seqn); in mptcp_setup_opts()
734 dss_ack_opt.mdss_data_len = htons(dss_ack_opt.mdss_data_len); in mptcp_setup_opts()
735 memcpy(opt + optlen, &dss_ack_opt, sizeof(dss_ack_opt)); in mptcp_setup_opts()
737 *((uint16_t *)(void *)(opt + optlen + sizeof(dss_ack_opt))) = dss_csum; in mptcp_setup_opts()
754 struct mptcp_dss32_ack64_opt dss_ack_opt; in mptcp_setup_opts() local
755 uint8_t dssoptlen = sizeof(dss_ack_opt); in mptcp_setup_opts()
764 bzero(&dss_ack_opt, sizeof(dss_ack_opt)); in mptcp_setup_opts()
765 dss_ack_opt.mdss_copt.mdss_kind = TCPOPT_MULTIPATH; in mptcp_setup_opts()
766 dss_ack_opt.mdss_copt.mdss_len = dssoptlen; in mptcp_setup_opts()
767 dss_ack_opt.mdss_copt.mdss_subtype = MPO_DSS; in mptcp_setup_opts()
768 dss_ack_opt.mdss_copt.mdss_flags |= MDSS_M | MDSS_A | MDSS_a; in mptcp_setup_opts()
769 dss_ack_opt.mdss_ack = in mptcp_setup_opts()
774 mptcp_output_getm_dsnmap32(so, off, &dss_ack_opt.mdss_dsn, in mptcp_setup_opts()
775 &dss_ack_opt.mdss_subflow_seqn, in mptcp_setup_opts()
776 &dss_ack_opt.mdss_data_len, in mptcp_setup_opts()
779 if ((dss_ack_opt.mdss_data_len == 0) || in mptcp_setup_opts()
780 (dss_ack_opt.mdss_dsn == 0)) { in mptcp_setup_opts()
785 DO_FIN(dss_ack_opt); in mptcp_setup_opts()
788 dss_ack_opt.mdss_dsn = htonl(dss_ack_opt.mdss_dsn); in mptcp_setup_opts()
789 dss_ack_opt.mdss_subflow_seqn = in mptcp_setup_opts()
790 htonl(dss_ack_opt.mdss_subflow_seqn); in mptcp_setup_opts()
791 dss_ack_opt.mdss_data_len = htons(dss_ack_opt.mdss_data_len); in mptcp_setup_opts()
792 memcpy(opt + optlen, &dss_ack_opt, sizeof(dss_ack_opt)); in mptcp_setup_opts()
794 *((uint16_t *)(void *)(opt + optlen + sizeof(dss_ack_opt))) = dss_csum; in mptcp_setup_opts()
811 struct mptcp_dss_ack_opt dss_ack_opt; in mptcp_setup_opts() local
830 bzero(&dss_ack_opt, sizeof(dss_ack_opt)); in mptcp_setup_opts()
841 dss_ack_opt.mdss_copt.mdss_kind = TCPOPT_MULTIPATH; in mptcp_setup_opts()
842 dss_ack_opt.mdss_copt.mdss_len = dssoptlen; in mptcp_setup_opts()
843 dss_ack_opt.mdss_copt.mdss_subtype = MPO_DSS; in mptcp_setup_opts()
844 dss_ack_opt.mdss_copt.mdss_flags |= MDSS_A | MDSS_M | MDSS_F; in mptcp_setup_opts()
845 dss_ack_opt.mdss_ack = in mptcp_setup_opts()
847 dss_ack_opt.mdss_dsn = in mptcp_setup_opts()
849 dss_ack_opt.mdss_subflow_seqn = 0; in mptcp_setup_opts()
850 dss_ack_opt.mdss_data_len = 1; in mptcp_setup_opts()
851 dss_ack_opt.mdss_data_len = htons(dss_ack_opt.mdss_data_len); in mptcp_setup_opts()
852 memcpy(opt + optlen, &dss_ack_opt, sizeof(dss_ack_opt)); in mptcp_setup_opts()
854 *((uint16_t *)(void *)(opt + optlen + sizeof(dss_ack_opt))) = dss_csum; in mptcp_setup_opts()