X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=drivers%2Fnet%2Ftehuti.c;h=91f9054a1d9522b5f60f0347d6264beeba8d4c60;hb=1ff50bda6eef4466366e197541508fc69af0f0c0;hp=d2e1b219673d4ea0cb063fe9324ee935a9b78f60;hpb=6131a2601f42cd7fdbac0e960713396fe68af59f;p=safe%2Fjmp%2Flinux-2.6 diff --git a/drivers/net/tehuti.c b/drivers/net/tehuti.c index d2e1b21..91f9054 100644 --- a/drivers/net/tehuti.c +++ b/drivers/net/tehuti.c @@ -649,6 +649,9 @@ static int bdx_ioctl_priv(struct net_device *ndev, struct ifreq *ifr, int cmd) DBG("%d 0x%x 0x%x\n", data[0], data[1], data[2]); } + if (!capable(CAP_SYS_RAWIO)) + return -EPERM; + switch (data[0]) { case BDX_OP_READ: @@ -664,8 +667,6 @@ static int bdx_ioctl_priv(struct net_device *ndev, struct ifreq *ifr, int cmd) break; case BDX_OP_WRITE: - if (!capable(CAP_NET_ADMIN)) - return -EPERM; error = bdx_range_check(priv, data[1]); if (error < 0) return error; @@ -1164,7 +1165,7 @@ NETIF_RX_MUX(struct bdx_priv *priv, u32 rxd_val1, u16 rxd_vlan, GET_RXD_VLAN_ID(rxd_vlan))->name); /* NAPI variant of receive functions */ vlan_hwaccel_receive_skb(skb, priv->vlgrp, - GET_RXD_VLAN_ID(rxd_vlan)); + GET_RXD_VLAN_TCI(rxd_vlan)); } else { netif_receive_skb(skb); }