wlan_bearer/wlanldd/wlan_common/umac_common/src/UmacDot11Associated.cpp
branchRCL_3
changeset 21 af3fb27c7511
parent 3 6524e815f76f
child 34 13838cf40350
--- a/wlan_bearer/wlanldd/wlan_common/umac_common/src/UmacDot11Associated.cpp	Tue May 11 17:54:03 2010 +0300
+++ b/wlan_bearer/wlanldd/wlan_common/umac_common/src/UmacDot11Associated.cpp	Tue May 25 14:40:09 2010 +0300
@@ -16,7 +16,7 @@
 */
 
 /*
-* %version: 96 %
+* %version: 96.1.1 %
 */
 
 #include "config.h"
@@ -2157,177 +2157,6 @@
 // 
 // ---------------------------------------------------------------------------
 //
-TBool WlanDot11Associated::AddMulticastAddr(
-    WlanContextImpl& aCtxImpl,
-    const TMacAddress& aMacAddr )
-    {
-    TBool stateTransitionOccurred( EFalse );
-    
-    OsTracePrint( 
-        KWlmCmdDetails, 
-        (TUint8*)
-        ("UMAC: WlanDot11Associated::AddMulticastAddr(): addr to be added:"),
-        aMacAddr);
-
-    if ( aCtxImpl.MulticastFilteringDisAllowed() )
-        {
-        OsTracePrint( 
-            KWlmCmdDetails, 
-            (TUint8*)
-            ("UMAC: WlanDot11Associated::AddMulticastAddr(): Multicast filtering disallowed"));
-            
-        OnOidComplete( aCtxImpl, KErrGeneral );        
-        }
-    else
-        {        
-        if ( aCtxImpl.WHASettings().iNumOfGroupTableEntrys > 
-             aCtxImpl.MulticastAddressCount() )
-            {
-            // wha layer is able to take in an address
-            
-            // 1st try to add the address to our own internal bookkeeping
-            WlanContextImpl::TGroupAddStatus addStatus = 
-                aCtxImpl.AddMulticastAddress( aMacAddr );
-
-            switch ( addStatus )
-                {
-                case WlanContextImpl::EOk:
-                    OsTracePrint( 
-                        KWlmCmdDetails, 
-                        (TUint8*)
-                        ("UMAC: WlanDot11Associated::AddMulticastAddr(): Address will be added to the MIB"));
-                    // the address needed to be added and adding went ok.
-                    // Now update the group addresses MIB
-                    stateTransitionOccurred = SetGroupAddressesTableMib( aCtxImpl ); 
-                    break;
-                case WlanContextImpl::EAlreadyExists: 
-                    OsTracePrint( 
-                        KWlmCmdDetails, 
-                        (TUint8*)
-                        ("UMAC: WlanDot11Associated::AddMulticastAddr(): Address already exists"));
-                    // the specified address already exists so there's no need
-                    // to update the group addresses MIB
-                    // just complete the request with OK status
-                    OnOidComplete( aCtxImpl );
-                    stateTransitionOccurred = EFalse;           
-                    break;
-                case WlanContextImpl::EFull:
-                    OsTracePrint( 
-                        KWlmCmdDetails, 
-                        (TUint8*)
-                        ("UMAC: WlanDot11Associated::AddMulticastAddr(): Internal address table full; disallow multicast filtering"));
-                    // we are not able to take in any more addresses.
-                    // We will totally disable the multicast filtering
-                    // and we won't allow it to be enabled any more during 
-                    // the current nw connection
-                    //
-                    aCtxImpl.ResetMulticastAddresses();               
-                    aCtxImpl.MulticastFilteringDisAllowed( ETrue );
-                    stateTransitionOccurred = 
-                        SetGroupAddressesTableMib( aCtxImpl );
-                    break;
-                default:
-                    // programming error
-                    OsTracePrint( KErrorLevel, (TUint8*)
-                        ("UMAC: addStatus: %d"), addStatus );
-                    OsAssert( (TUint8*)("UMAC: panic"), 
-                        (TUint8*)(WLAN_FILE), __LINE__ );
-                }
-            }
-        else
-            {
-            OsTracePrint( 
-                KWlmCmdDetails, 
-                (TUint8*)
-                ("UMAC: WlanDot11Associated::AddMulticastAddr(): WHA not able to accept address; disallow multicast filtering"));
-            // wha layer is not able to take in an address. Either this is one 
-            // address too many, or it doesn't support even a single address.
-            // In either case we will totally disable the multicast filtering
-            // and we won't allow it to be enabled any more during the current 
-            // nw connection
-            aCtxImpl.ResetMulticastAddresses();               
-            aCtxImpl.MulticastFilteringDisAllowed( ETrue );
-            stateTransitionOccurred = SetGroupAddressesTableMib( aCtxImpl );
-            }
-        }
-
-    // signal caller whether a state transition occurred or not
-    return stateTransitionOccurred;
-    }
-
-// ---------------------------------------------------------------------------
-// 
-// ---------------------------------------------------------------------------
-//
-TBool WlanDot11Associated::RemoveMulticastAddr(
-    WlanContextImpl& aCtxImpl,
-    TBool aRemoveAll,
-    const TMacAddress& aMacAddr )
-    {
-    TBool stateTransitionOccurred( EFalse );
-    
-    OsTracePrint( 
-        KWlmCmdDetails, 
-        (TUint8*)
-        ("UMAC: WlanDot11Associated::RemoveMulticastAddr(): addr to be removed:"),
-        aMacAddr);
-
-    if ( aCtxImpl.MulticastFilteringDisAllowed() )
-        {
-        OsTracePrint( 
-            KWlmCmdDetails, 
-            (TUint8*)
-            ("UMAC: WlanDot11Associated::RemoveMulticastAddr(): Multicast filtering disallowed"));
-        // filtering is not allowed currently so there can't be any addresses
-        // to remove. Just complete the request with OK status            
-        OnOidComplete( aCtxImpl );        
-        }
-    else
-        {
-        if ( aRemoveAll )        
-            {
-            OsTracePrint( 
-                KWlmCmdDetails, 
-                (TUint8*)
-                ("UMAC: WlanDot11Associated::RemoveMulticastAddr(): remove all"));
-            // remove all addresses; naturally will also disable filtering
-            aCtxImpl.ResetMulticastAddresses();
-            stateTransitionOccurred = SetGroupAddressesTableMib( aCtxImpl );            
-            }
-        else
-            {            
-            // 1st remove the specified address from our own internal 
-            // bookkeeping, if it exists
-            if ( aCtxImpl.RemoveMulticastAddress( aMacAddr ) )
-                {
-                OsTracePrint( 
-                    KWlmCmdDetails, 
-                    (TUint8*)
-                    ("UMAC: WlanDot11Associated::RemoveMulticastAddr(): removing the specified address"));
-                // it existed, so update the group addresses MIB, too
-                stateTransitionOccurred = SetGroupAddressesTableMib( aCtxImpl );                 
-                }
-            else
-                {
-                OsTracePrint( 
-                    KWlmCmdDetails, 
-                    (TUint8*)
-                    ("UMAC: WlanDot11Associated::RemoveMulticastAddr(): specified address doesn't exist, nothing to do"));
-                // it did't exist, so there's nothing to remove
-                // Just complete the request with OK status            
-                OnOidComplete( aCtxImpl );                    
-                }
-            }
-        }
-
-    // signal caller whether a state transition occurred or not
-    return stateTransitionOccurred;
-    }
-
-// ---------------------------------------------------------------------------
-// 
-// ---------------------------------------------------------------------------
-//
 TBool WlanDot11Associated::AddBroadcastWepKey(
     WlanContextImpl& aCtxImpl,
     TUint32 aKeyIndex,             
@@ -2395,89 +2224,6 @@
 // 
 // ---------------------------------------------------------------------------
 //
-TBool WlanDot11Associated::SetGroupAddressesTableMib(
-    WlanContextImpl& aCtxImpl )
-    {
-    const TMacAddress* multicastAddresses( NULL );
-    const TUint32 nbrOfAddrs( 
-        aCtxImpl.GetMulticastAddresses( multicastAddresses ) );
-
-    TUint32 mibLength(  
-        // mib header length
-        WHA::Sdot11GroupAddressesTable::KHeaderSize
-        // + mib data length
-        + ( sizeof( TMacAddress ) * nbrOfAddrs ) );
-
-    // align length of MIB to 4-byte boundary
-    mibLength = Align4( mibLength );
-    
-    OsTracePrint( 
-        KWlmCmdDetails, 
-        (TUint8*)
-        ("UMAC: WlanDot11Associated::SetGroupAddressesTableMib(): mibLength: %d"), 
-        mibLength );        
-
-    // allocate memory for the mib to write
-    WHA::Sdot11GroupAddressesTable* mib 
-        = static_cast<WHA::Sdot11GroupAddressesTable*>
-        (os_alloc( mibLength )); 
-
-    if ( !mib )
-        {
-        // allocation failed
-        // simulate macnotresponding error
-        OsTracePrint( KWarningLevel, (TUint8*)
-            ("UMAC: WlanDot11Associated::SetGroupAddressesTableMib(): memory allocating failed") );
-        return DoErrorIndication( aCtxImpl, WHA::KErrorMacNotResponding );
-        }
-    
-    if ( nbrOfAddrs )
-        {
-        // at least one address exists, so enable multicast address filtering
-        mib->iEnable = ETrue;
-        }
-    else
-        {
-        // no addresses, so disable filtering
-        mib->iEnable = EFalse;
-        OsTracePrint( KWlmCmdDetails, (TUint8*)
-            ("UMAC: WlanDot11Associated::SetGroupAddressesTableMib(): no addresses; disable filtering") );
-        }
-
-    mib->iNumOfAddrs = nbrOfAddrs;
-    
-    // copy the multicast addresses after the mib header
-    os_memcpy( mib->iAddrData,
-               reinterpret_cast<TUint8*>(const_cast<TMacAddress*>(
-                    multicastAddresses)),
-               ( sizeof( TMacAddress ) * nbrOfAddrs ) );
-        
-    WlanWsaWriteMib& wha_cmd = aCtxImpl.WsaWriteMib();
-        
-    wha_cmd.Set( 
-        aCtxImpl, 
-        WHA::KMibDot11GroupAddressesTable, 
-        mibLength, 
-        mib );
-        
-    // change global state: entry procedure triggers action
-    ChangeState( aCtxImpl, 
-        *this,              // prev state
-        wha_cmd,            // next state
-        // the ACT
-        KCompleteManagementRequest
-        );   
-
-    os_free( mib ); // release the allocated memory
-
-    // signal caller that a state transition occurred
-    return ETrue;
-    }         
-
-// ---------------------------------------------------------------------------
-// 
-// ---------------------------------------------------------------------------
-//
 TBool WlanDot11Associated::PowerMgmtModeChange(
     WlanContextImpl& aCtxImpl,
     TPowerMgmtModeChange aPowerMgmtModeChange )