int sme_sys_resume(unifi_priv_t *priv) { #ifdef CSR_SUPPORT_WEXT /* Send disconnect event so clients will re-initialise connection. */ memset(priv->wext_conf.current_ssid, 0, UNIFI_MAX_SSID_LEN); memset((void*)priv->wext_conf.current_bssid, 0, ETH_ALEN); priv->wext_conf.capability = 0; wext_send_disassoc_event(priv); #endif return 0; } /* sme_sys_resume() */
void unifi_mgt_media_status_ind(void *drvpriv, CsrUint16 appHandlesCount, void* *appHandles, unifi_MediaStatus mediaStatus, const unifi_ConnectionInfo* connection_info, unifi_IEEE80211Reason disassocReason, unifi_IEEE80211Reason deauthReason) { unifi_priv_t *priv = (unifi_priv_t*)drvpriv; if (priv->smepriv == NULL) { unifi_error(priv, "unifi_mgt_media_status_ind: invalid smepriv\n"); return; } if (mediaStatus == unifi_MediaConnected) { /* * Send wireless-extension event up to userland to announce * connection. */ wext_send_assoc_event(priv, (unsigned char *)connection_info->bssid.data, (unsigned char *)connection_info->assocReqInfoElements, connection_info->assocReqInfoElementsLength, (unsigned char *)connection_info->assocRspInfoElements, connection_info->assocRspInfoElementsLength, (unsigned char *)connection_info->assocScanInfoElements, connection_info->assocScanInfoElementsLength); unifi_trace(priv, UDBG2, "unifi_mgt_media_status_ind: IBSS=%02X:%02X:%02X:%02X:%02X:%02X\n", connection_info->bssid.data[0], connection_info->bssid.data[1], connection_info->bssid.data[2], connection_info->bssid.data[3], connection_info->bssid.data[4], connection_info->bssid.data[5]); sme_mgt_packet_filter_set(priv); } else { /* * Send wireless-extension event up to userland to announce * connection lost to a BSS. */ wext_send_disassoc_event(priv); } }