Skip to content

Commit

Permalink
Staging: vt6655: simplify broadcast and multicast ethernet address test
Browse files Browse the repository at this point in the history
A broadcast address is also a multicast address so simplify test cases where
possible.

As suggested by Joe Perches.

Signed-off-by: Charles Clément <caratorn@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Charles Clément authored and Greg Kroah-Hartman committed Jul 8, 2010
1 parent 5583dcf commit 388bf2e
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 19 deletions.
2 changes: 1 addition & 1 deletion drivers/staging/vt6655/dpc.c
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ device_receive_frame (
return FALSE;
}

if (!is_multicast_ether_addr(pbyFrame) && !is_broadcast_ether_addr(pbyFrame)) {
if (!is_multicast_ether_addr(pbyFrame)) {
if (WCTLbIsDuplicate(&(pDevice->sDupRxCache), (PS802_11Header) (skb->data + 4))) {
pDevice->s802_11Counter.FrameDuplicateCount++;
return FALSE;
Expand Down
26 changes: 8 additions & 18 deletions drivers/staging/vt6655/rxtx.c
Original file line number Diff line number Diff line change
Expand Up @@ -1372,13 +1372,10 @@ s_cbFillTxBufHead(PSDevice pDevice, unsigned char byPktType, unsigned char *pbyT
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
(pDevice->eOPMode == OP_MODE_AP)) {

if (is_multicast_ether_addr(&(psEthHeader->abyDstAddr[0])) ||
is_broadcast_ether_addr(&(psEthHeader->abyDstAddr[0]))) {
bNeedACK = FALSE;
}
else {
if (is_multicast_ether_addr(&(psEthHeader->abyDstAddr[0])))
bNeedACK = FALSE;
else
bNeedACK = TRUE;
}
bIsAdhoc = TRUE;
}
else {
Expand Down Expand Up @@ -2091,8 +2088,7 @@ vGenerateFIFOHeader(PSDevice pDevice, unsigned char byPktType, unsigned char *pb

if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
(pDevice->eOPMode == OP_MODE_AP)) {
if (is_multicast_ether_addr(&(psEthHeader->abyDstAddr[0])) ||
is_broadcast_ether_addr(&(psEthHeader->abyDstAddr[0]))) {
if (is_multicast_ether_addr(&(psEthHeader->abyDstAddr[0]))) {
bNeedACK = FALSE;
pTxBufHead->wFIFOCtl = pTxBufHead->wFIFOCtl & (~FIFOCTL_NEEDACK);
}
Expand Down Expand Up @@ -2392,10 +2388,8 @@ CMD_STATUS csMgmt_xmit(PSDevice pDevice, PSTxMgmtPacket pPacket) {
pTxBufHead->wTimeStamp = cpu_to_le16(DEFAULT_MGN_LIFETIME_RES_64us);


if (is_multicast_ether_addr(&(pPacket->p80211Header->sA3.abyAddr1[0])) ||
is_broadcast_ether_addr(&(pPacket->p80211Header->sA3.abyAddr1[0]))) {
if (is_multicast_ether_addr(&(pPacket->p80211Header->sA3.abyAddr1[0])))
bNeedACK = FALSE;
}
else {
bNeedACK = TRUE;
pTxBufHead->wFIFOCtl |= FIFOCTL_NEEDACK;
Expand Down Expand Up @@ -2728,13 +2722,10 @@ cbGetFragCount (

if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
(pDevice->eOPMode == OP_MODE_AP)) {
if (is_multicast_ether_addr(&(psEthHeader->abyDstAddr[0])) ||
is_broadcast_ether_addr(&(psEthHeader->abyDstAddr[0]))) {
if (is_multicast_ether_addr(&(psEthHeader->abyDstAddr[0])))
bNeedACK = FALSE;
}
else {
else
bNeedACK = TRUE;
}
}
else {
// MSDUs in Infra mode always need ACK
Expand Down Expand Up @@ -2906,8 +2897,7 @@ vDMA0_tx_80211(PSDevice pDevice, struct sk_buff *skb, unsigned char *pbMPDU, un
pTxBufHead->wTimeStamp = cpu_to_le16(DEFAULT_MGN_LIFETIME_RES_64us);


if (is_multicast_ether_addr(&(p80211Header->sA3.abyAddr1[0])) ||
is_broadcast_ether_addr(&(p80211Header->sA3.abyAddr1[0]))) {
if (is_multicast_ether_addr(&(p80211Header->sA3.abyAddr1[0]))) {
bNeedACK = FALSE;
if (pDevice->bEnableHostWEP) {
uNodeIndex = 0;
Expand Down

0 comments on commit 388bf2e

Please sign in to comment.