VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / net / decnet / sysctl_net_decnet.c
index 65ce3bb..02bca49 100644 (file)
@@ -162,13 +162,14 @@ static int dn_node_address_strategy(ctl_table *table, int __user *name, int nlen
 
 static int dn_node_address_handler(ctl_table *table, int write, 
                                struct file *filp,
-                               void __user *buffer, size_t *lenp)
+                               void __user *buffer,
+                               size_t *lenp, loff_t *ppos)
 {
        char addr[DN_ASCBUF_LEN];
        size_t len;
        dn_address dnaddr;
 
-       if (!*lenp || (filp->f_pos && !write)) {
+       if (!*lenp || (*ppos && !write)) {
                *lenp = 0;
                return 0;
        }
@@ -191,7 +192,7 @@ static int dn_node_address_handler(ctl_table *table, int write,
 
                dn_dev_devices_on();
 
-               filp->f_pos += len;
+               *ppos += len;
 
                return 0;
        }
@@ -206,7 +207,7 @@ static int dn_node_address_handler(ctl_table *table, int write,
                return -EFAULT;
 
        *lenp = len;
-       filp->f_pos += len;
+       *ppos += len;
 
        return 0;
 }
@@ -273,13 +274,14 @@ static int dn_def_dev_strategy(ctl_table *table, int __user *name, int nlen,
 
 static int dn_def_dev_handler(ctl_table *table, int write, 
                                struct file * filp,
-                               void __user *buffer, size_t *lenp)
+                               void __user *buffer,
+                               size_t *lenp, loff_t *ppos)
 {
        size_t len;
        struct net_device *dev;
        char devname[17];
 
-       if (!*lenp || (filp->f_pos && !write)) {
+       if (!*lenp || (*ppos && !write)) {
                *lenp = 0;
                return 0;
        }
@@ -307,7 +309,7 @@ static int dn_def_dev_handler(ctl_table *table, int write,
                        dev_put(dev);
                        return -ENODEV;
                }
-               filp->f_pos += *lenp;
+               *ppos += *lenp;
 
                return 0;
        }
@@ -329,7 +331,7 @@ static int dn_def_dev_handler(ctl_table *table, int write,
                return -EFAULT;
 
        *lenp = len;
-       filp->f_pos += len;
+       *ppos += len;
 
        return 0;
 }