X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fnet%2Fwan%2Fsbni.c;h=6596cd0742b9dfd0256c4361d0fe3909b711d4f5;hb=41c9229498a2eb89db1c0a77321c61b448738de4;hp=76db40d200d8e3000c2c588bcbe86d4d275241b7;hpb=408af0dab78ef4145203b849d6bfd3195f6e3ec9;p=linux-2.6 diff --git a/drivers/net/wan/sbni.c b/drivers/net/wan/sbni.c index 76db40d200..6596cd0742 100644 --- a/drivers/net/wan/sbni.c +++ b/drivers/net/wan/sbni.c @@ -391,8 +391,8 @@ sbni_probe1( struct net_device *dev, unsigned long ioaddr, int irq ) spin_lock_init( &nl->lock ); /* store MAC address (generate if that isn't known) */ - *(u16 *)dev->dev_addr = htons( 0x00ff ); - *(u32 *)(dev->dev_addr + 2) = htonl( 0x01000000 | + *(__be16 *)dev->dev_addr = htons( 0x00ff ); + *(__be32 *)(dev->dev_addr + 2) = htonl( 0x01000000 | ( (mac[num] ? mac[num] : (u32)((long)dev->priv)) & 0x00ffffff) ); /* store link settings (speed, receive level ) */ @@ -502,8 +502,8 @@ sbni_start_xmit( struct sk_buff *skb, struct net_device *dev ) static irqreturn_t sbni_interrupt( int irq, void *dev_id ) { - struct net_device *dev = (struct net_device *) dev_id; - struct net_local *nl = (struct net_local *) dev->priv; + struct net_device *dev = dev_id; + struct net_local *nl = dev->priv; int repeat; spin_lock( &nl->lock ); @@ -751,7 +751,7 @@ upload_data( struct net_device *dev, unsigned framelen, unsigned frameno, } -static __inline void +static inline void send_complete( struct net_local *nl ) { #ifdef CONFIG_SBNI_MULTILINE @@ -1317,7 +1317,7 @@ sbni_ioctl( struct net_device *dev, struct ifreq *ifr, int cmd ) break; case SIOCDEVRESINSTATS : - if( current->euid != 0 ) /* root only */ + if (!capable(CAP_NET_ADMIN)) return -EPERM; memset( &nl->in_stats, 0, sizeof(struct sbni_in_stats) ); break; @@ -1334,7 +1334,7 @@ sbni_ioctl( struct net_device *dev, struct ifreq *ifr, int cmd ) break; case SIOCDEVSHWSTATE : - if( current->euid != 0 ) /* root only */ + if (!capable(CAP_NET_ADMIN)) return -EPERM; spin_lock( &nl->lock ); @@ -1355,7 +1355,7 @@ sbni_ioctl( struct net_device *dev, struct ifreq *ifr, int cmd ) #ifdef CONFIG_SBNI_MULTILINE case SIOCDEVENSLAVE : - if( current->euid != 0 ) /* root only */ + if (!capable(CAP_NET_ADMIN)) return -EPERM; if (copy_from_user( slave_name, ifr->ifr_data, sizeof slave_name )) @@ -1370,7 +1370,7 @@ sbni_ioctl( struct net_device *dev, struct ifreq *ifr, int cmd ) return enslave( dev, slave_dev ); case SIOCDEVEMANSIPATE : - if( current->euid != 0 ) /* root only */ + if (!capable(CAP_NET_ADMIN)) return -EPERM; return emancipate( dev );