Commit 1998b5ed authored by Guillaume Nault's avatar Guillaume Nault Committed by David S. Miller

l2tp: drop ->flags from struct pppol2tp_session

This field is not used.

Keep validating user input in PPPIOCSFLAGS. Even though we discard the
value, it would look wrong to succeed if an invalid address was passed
from userspace.
Signed-off-by: default avatarGuillaume Nault <g.nault@alphalink.fr>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ae51a7c6
...@@ -127,8 +127,6 @@ struct pppol2tp_session { ...@@ -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 */
int flags; /* accessed by PPPIOCGFLAGS.
* Unused. */
}; };
static int pppol2tp_xmit(struct ppp_channel *chan, struct sk_buff *skb); static int pppol2tp_xmit(struct ppp_channel *chan, struct sk_buff *skb);
...@@ -1057,7 +1055,6 @@ static int pppol2tp_session_ioctl(struct l2tp_session *session, ...@@ -1057,7 +1055,6 @@ static int pppol2tp_session_ioctl(struct l2tp_session *session,
int err = 0; int err = 0;
struct sock *sk; struct sock *sk;
int val = (int) arg; int val = (int) arg;
struct pppol2tp_session *ps = l2tp_session_priv(session);
struct l2tp_tunnel *tunnel = session->tunnel; struct l2tp_tunnel *tunnel = session->tunnel;
struct pppol2tp_ioc_stats stats; struct pppol2tp_ioc_stats stats;
...@@ -1134,21 +1131,15 @@ static int pppol2tp_session_ioctl(struct l2tp_session *session, ...@@ -1134,21 +1131,15 @@ static int pppol2tp_session_ioctl(struct l2tp_session *session,
case PPPIOCGFLAGS: case PPPIOCGFLAGS:
err = -EFAULT; err = -EFAULT;
if (put_user(ps->flags, (int __user *) arg)) if (put_user(0, (int __user *)arg))
break; break;
l2tp_info(session, L2TP_MSG_CONTROL, "%s: get flags=%d\n",
session->name, ps->flags);
err = 0; err = 0;
break; break;
case PPPIOCSFLAGS: case PPPIOCSFLAGS:
err = -EFAULT; err = -EFAULT;
if (get_user(val, (int __user *) arg)) if (get_user(val, (int __user *)arg))
break; break;
ps->flags = val;
l2tp_info(session, L2TP_MSG_CONTROL, "%s: set flags=%d\n",
session->name, ps->flags);
err = 0; err = 0;
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment