patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / drivers / usb / net / pegasus.c
index 5174c9f..5142d8a 100644 (file)
@@ -1030,7 +1030,7 @@ static int pegasus_ethtool_ioctl(struct net_device *net, void __user *uaddr)
        int cmd;
 
        pegasus = net->priv;
-       if (get_user(cmd, (int *) uaddr))
+       if (get_user(cmd, (int __user *) uaddr))
                return -EFAULT;
        switch (cmd) {
        case ETHTOOL_GDRVINFO:{
@@ -1107,13 +1107,13 @@ static int pegasus_ethtool_ioctl(struct net_device *net, void __user *uaddr)
 #endif
 static int pegasus_ioctl(struct net_device *net, struct ifreq *rq, int cmd)
 {
-       __u16 *data = (__u16 *) & rq->ifr_data;
+       __u16 *data = (__u16 *) & rq->ifr_ifru;
        pegasus_t *pegasus = net->priv;
        int res;
 
        switch (cmd) {
        case SIOCETHTOOL:
-               res = pegasus_ethtool_ioctl(net, (void __user *)rq->ifr_data);
+               res = pegasus_ethtool_ioctl(net, rq->ifr_data);
                break;
        case SIOCDEVPRIVATE:
                data[0] = pegasus->phy;
@@ -1321,13 +1321,13 @@ static struct usb_driver pegasus_driver = {
        .id_table = pegasus_ids,
 };
 
-int __init pegasus_init(void)
+static int __init pegasus_init(void)
 {
        info(DRIVER_VERSION ":" DRIVER_DESC);
        return usb_register(&pegasus_driver);
 }
 
-void __exit pegasus_exit(void)
+static void __exit pegasus_exit(void)
 {
        usb_deregister(&pegasus_driver);
 }