mptcp: Retransmitted SYN/ACK's+MP_JOIN should have the MP_JOIN

Since ba5d9b653e9, when a retransmitted SYN does not contain an
MP_CAPABLE, the SYN/ACK should also not contain an MP_CAPABLE.

Now, this is the way the RFC is specified.

However, for MP_JOIN's we also set the saw_mpc-flag in the request-sock,
but do not set it in the mopt's. Thus, in tcp_check_req upon a
retransmitted SYN+MP_JOIN, we will reply without an MP_JOIN inside the
SYN/ACK.

This patch fixes it, by setting the saw_mpc-flag in the mopt.

Fixes: ba5d9b653e9 (Fall back to TCP when receiving a packet without MP_CAPABLE.)
Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>
mptcp: Fix memory leak in mptcp_fullmesh

mptcp_local is already allocated when doing the "goto exit;". So, even
when going to that label, we will have to free it.

Signed-off-by: Niels Möller <nisse@southpole.se>
Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>