summaryrefslogtreecommitdiffstats
path: root/drivers/net/tun.c
diff options
context:
space:
mode:
authorAnton Arapov <anton@redhat.com>2012-09-12 09:18:33 +0200
committerAnton Arapov <anton@redhat.com>2012-09-12 09:19:26 +0200
commit985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2 (patch)
treeeb9091ebd60e14eea65a9e6b5140f98d88e8a590 /drivers/net/tun.c
parent1d44b6f3fcf6058fb7c960b7558766967e8028f7 (diff)
downloadkernel-uprobes-985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2.tar.gz
kernel-uprobes-985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2.tar.xz
kernel-uprobes-985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2.zip
fedora kernel: 021ce7bee3cfdcbf16da1256b2c9f40f7e9bbd9ev3.5.3-1
Signed-off-by: Anton Arapov <anton@redhat.com>
Diffstat (limited to 'drivers/net/tun.c')
-rw-r--r--drivers/net/tun.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/tun.c b/drivers/net/tun.c
index 66e9ebbcd2b..5fb59aef0e7 100644
--- a/drivers/net/tun.c
+++ b/drivers/net/tun.c
@@ -185,7 +185,6 @@ static void __tun_detach(struct tun_struct *tun)
netif_tx_lock_bh(tun->dev);
netif_carrier_off(tun->dev);
tun->tfile = NULL;
- tun->socket.file = NULL;
netif_tx_unlock_bh(tun->dev);
/* Drop read queue */
@@ -1255,10 +1254,12 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd,
int vnet_hdr_sz;
int ret;
- if (cmd == TUNSETIFF || _IOC_TYPE(cmd) == 0x89)
+ if (cmd == TUNSETIFF || _IOC_TYPE(cmd) == 0x89) {
if (copy_from_user(&ifr, argp, ifreq_len))
return -EFAULT;
-
+ } else {
+ memset(&ifr, 0, sizeof(ifr));
+ }
if (cmd == TUNGETFEATURES) {
/* Currently this just means: "what IFF flags are valid?".
* This is needed because we never checked for invalid flags on