l2tp: remove the .tunnel_sock field from struct pppol2tp_session
The last user of .tunnel_sock is pppol2tp_connect() which defensively uses it to verify internal data consistency. This check isn't necessary: l2tp_session_get() guarantees that the returned session belongs to the tunnel passed as parameter. And .tunnel_sock is never updated, so checking that it still points to the parent tunnel socket is useless; that test can never fail. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7198c77aa0
commit
da9ca825ef
|
@ -127,8 +127,6 @@ struct pppol2tp_session {
|
||||||
* PPPoX socket */
|
* PPPoX socket */
|
||||||
struct sock *__sk; /* Copy of .sk, for cleanup */
|
struct sock *__sk; /* Copy of .sk, for cleanup */
|
||||||
struct rcu_head rcu; /* For asynchronous release */
|
struct rcu_head rcu; /* For asynchronous release */
|
||||||
struct sock *tunnel_sock; /* Pointer to the tunnel UDP
|
|
||||||
* socket */
|
|
||||||
int flags; /* accessed by PPPIOCGFLAGS.
|
int flags; /* accessed by PPPIOCGFLAGS.
|
||||||
* Unused. */
|
* Unused. */
|
||||||
};
|
};
|
||||||
|
@ -592,7 +590,6 @@ static void pppol2tp_session_init(struct l2tp_session *session)
|
||||||
|
|
||||||
ps = l2tp_session_priv(session);
|
ps = l2tp_session_priv(session);
|
||||||
mutex_init(&ps->sk_lock);
|
mutex_init(&ps->sk_lock);
|
||||||
ps->tunnel_sock = session->tunnel->sock;
|
|
||||||
ps->owner = current->pid;
|
ps->owner = current->pid;
|
||||||
|
|
||||||
/* If PMTU discovery was enabled, use the MTU that was discovered */
|
/* If PMTU discovery was enabled, use the MTU that was discovered */
|
||||||
|
@ -743,13 +740,6 @@ static int pppol2tp_connect(struct socket *sock, struct sockaddr *uservaddr,
|
||||||
error = -EEXIST;
|
error = -EEXIST;
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* consistency checks */
|
|
||||||
if (ps->tunnel_sock != tunnel->sock) {
|
|
||||||
mutex_unlock(&ps->sk_lock);
|
|
||||||
error = -EEXIST;
|
|
||||||
goto end;
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
/* Default MTU must allow space for UDP/L2TP/PPP headers */
|
/* Default MTU must allow space for UDP/L2TP/PPP headers */
|
||||||
cfg.mtu = 1500 - PPPOL2TP_HEADER_OVERHEAD;
|
cfg.mtu = 1500 - PPPOL2TP_HEADER_OVERHEAD;
|
||||||
|
|
Loading…
Reference in New Issue