Commit 1b1a6ef5 authored by Geliang Tang's avatar Geliang Tang Committed by David S. Miller
Browse files

mptcp: drop MPTCP_ADDR_IPVERSION_4/6



Since the type of the address family in struct mptcp_options_received
became sa_family_t, we should set AF_INET/AF_INET6 to it, instead of
using MPTCP_ADDR_IPVERSION_4/6.

Signed-off-by: default avatarGeliang Tang <geliangtang@gmail.com>
Signed-off-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f7dafee1
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -220,22 +220,22 @@ static void mptcp_parse_option(const struct sk_buff *skb,
		if (!mp_opt->echo) {
			if (opsize == TCPOLEN_MPTCP_ADD_ADDR ||
			    opsize == TCPOLEN_MPTCP_ADD_ADDR_PORT)
				mp_opt->addr.family = MPTCP_ADDR_IPVERSION_4;
				mp_opt->addr.family = AF_INET;
#if IS_ENABLED(CONFIG_MPTCP_IPV6)
			else if (opsize == TCPOLEN_MPTCP_ADD_ADDR6 ||
				 opsize == TCPOLEN_MPTCP_ADD_ADDR6_PORT)
				mp_opt->addr.family = MPTCP_ADDR_IPVERSION_6;
				mp_opt->addr.family = AF_INET6;
#endif
			else
				break;
		} else {
			if (opsize == TCPOLEN_MPTCP_ADD_ADDR_BASE ||
			    opsize == TCPOLEN_MPTCP_ADD_ADDR_BASE_PORT)
				mp_opt->addr.family = MPTCP_ADDR_IPVERSION_4;
				mp_opt->addr.family = AF_INET;
#if IS_ENABLED(CONFIG_MPTCP_IPV6)
			else if (opsize == TCPOLEN_MPTCP_ADD_ADDR6_BASE ||
				 opsize == TCPOLEN_MPTCP_ADD_ADDR6_BASE_PORT)
				mp_opt->addr.family = MPTCP_ADDR_IPVERSION_6;
				mp_opt->addr.family = AF_INET6;
#endif
			else
				break;
@@ -243,7 +243,7 @@ static void mptcp_parse_option(const struct sk_buff *skb,

		mp_opt->add_addr = 1;
		mp_opt->addr.id = *ptr++;
		if (mp_opt->addr.family == MPTCP_ADDR_IPVERSION_4) {
		if (mp_opt->addr.family == AF_INET) {
			memcpy((u8 *)&mp_opt->addr.addr.s_addr, (u8 *)ptr, 4);
			ptr += 4;
			if (opsize == TCPOLEN_MPTCP_ADD_ADDR_PORT ||
@@ -268,7 +268,7 @@ static void mptcp_parse_option(const struct sk_buff *skb,
			ptr += 8;
		}
		pr_debug("ADD_ADDR%s: id=%d, ahmac=%llu, echo=%d, port=%d",
			 (mp_opt->addr.family == MPTCP_ADDR_IPVERSION_6) ? "6" : "",
			 (mp_opt->addr.family == AF_INET6) ? "6" : "",
			 mp_opt->addr.id, mp_opt->ahmac, mp_opt->echo, ntohs(mp_opt->addr.port));
		break;

@@ -991,7 +991,7 @@ static bool add_addr_hmac_valid(struct mptcp_sock *msk,
	if (mp_opt->echo)
		return true;

	if (mp_opt->addr.family == MPTCP_ADDR_IPVERSION_4)
	if (mp_opt->addr.family == AF_INET)
		hmac = add_addr_generate_hmac(msk->remote_key,
					      msk->local_key,
					      mp_opt->addr.id, &mp_opt->addr.addr,
+0 −2
Original line number Diff line number Diff line
@@ -90,8 +90,6 @@

/* MPTCP ADD_ADDR flags */
#define MPTCP_ADDR_ECHO		BIT(0)
#define MPTCP_ADDR_IPVERSION_4	4
#define MPTCP_ADDR_IPVERSION_6	6

/* MPTCP MP_PRIO flags */
#define MPTCP_PRIO_BKUP		BIT(0)