예제 #1
0
tSirRetStatus
wdaPostCfgMsg(tpAniSirGlobal pMac, tSirMsgQ *pMsg)
{
   tSirRetStatus rc = eSIR_SUCCESS;

   do
   {
#ifdef ANI_OS_TYPE_RTAI_LINUX

      // Posts message to the queue

      if (tx_queue_send(&pMac->sys.gSirMntMsgQ, pMsg,
                       TX_NO_WAIT) != TX_SUCCESS)
      {
         wdaLog(pMac, LOGP, FL("Queue send Failed! rc (%X)\n"),
                eSIR_SYS_TX_Q_SEND_FAILED);
         rc = eSIR_SYS_TX_Q_SEND_FAILED;
         break;
      }

#else
      // For Windows based MAC, instead of posting message to different
      // queues we will call the handler routines directly

      cfgProcessMbMsg(pMac, (tSirMbMsg*)pMsg->bodyptr);
      rc = eSIR_SUCCESS;
#endif
   } while (0);

   return rc;
} // halMntPostMsg()
tSirRetStatus
wdaPostCfgMsg(tpAniSirGlobal pMac, tSirMsgQ *pMsg)
{
    tSirRetStatus rc = eSIR_SUCCESS;

    do
    {
        // For Windows based MAC, instead of posting message to different
        // queues we will call the handler routines directly

        cfgProcessMbMsg(pMac, (tSirMbMsg*)pMsg->bodyptr);
        rc = eSIR_SUCCESS;
    } while (0);

    return rc;
} // halMntPostMsg()