From d866fe84a4e1c5a18f12ca4d5e28d7bb9b2691f0 Mon Sep 17 00:00:00 2001 From: qiyueixa Date: Tue, 13 Sep 2016 17:11:53 +0800 Subject: [PATCH] modify arguments for vendor ie APIs by using enum instead --- components/esp32/include/esp_wifi.h | 64 +++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/components/esp32/include/esp_wifi.h b/components/esp32/include/esp_wifi.h index 19ba856dea..2c0a76bb95 100644 --- a/components/esp32/include/esp_wifi.h +++ b/components/esp32/include/esp_wifi.h @@ -689,6 +689,70 @@ esp_err_t esp_wifi_set_auto_connect(bool en); */ esp_err_t esp_wifi_get_auto_connect(bool *en); +/** + * @brief Vendor IE type + * + */ +typedef enum { + VND_IE_TYPE_BEACON, + VND_IE_TYPE_PROBE_REQ, + VND_IE_TYPE_PROBE_RESP, + VND_IE_TYPE_ASSOC_REQ, + VND_IE_TYPE_ASSOC_RESP, +}vendor_ie_type_t; + +/** + * @brief Vendor IE index + * + */ +typedef enum { + VND_IE_ID_0, + VND_IE_ID_1, +}vendor_ie_id_t; + +/** + * @brief Set vendor specific element + * + * @param bool enable : enable or not + * @param vendor_ie_type_t type : 0 - VND_IE_TYPE_BEACON + * 1 - VND_IE_TYPE_PROBE_REQ + * 2 - VND_IE_TYPE_PROBE_RESP + * 3 - VND_IE_TYPE_ASSOC_REQ + * 4 - VND_IE_TYPE_ASSOC_RESP + * @param vendor_ie_id_t idx : 0 - VND_IE_ID_0 + 1 - VND_IE_ID_1 + * @param uint8_t *vnd_ie : pointer to a vendor specific element + * + * @return ESP_OK : succeed + * @return others : fail + */ +esp_err_t esp_wifi_set_vendor_ie(bool enable, vendor_ie_type_t type, vendor_ie_id_t idx, uint8_t *vnd_ie); + +/** + * @brief Define function pointer for vendor specific element callback + * @param void *ctx : reserved + * @param vendor_ie_type_t type : 0 - VND_IE_TYPE_BEACON + * 1 - VND_IE_TYPE_PROBE_REQ + * 2 - VND_IE_TYPE_PROBE_RESP + * 3 - VND_IE_TYPE_ASSOC_REQ + * 4 - VND_IE_TYPE_ASSOC_RESP + * @param const uint8_t sa[6] : source address + * @param const uint8_t *vnd_ie : pointer to a vendor specific element + * @param int rssi : received signal strength indication + */ +typedef void (*esp_vendor_ie_cb_t) (void *ctx, vendor_ie_type_t type, const uint8_t sa[6], const uint8_t *vnd_ie, int rssi); + +/** + * @brief Set vendor specific element callback + * + * @param esp_vendor_ie_cb_t cb : callback function + * @param void *ctx : reserved + * + * @return ESP_OK : succeed + * @return others : fail + */ +esp_err_t esp_wifi_set_vendor_ie_cb(esp_vendor_ie_cb_t cb, void *ctx); + #ifdef __cplusplus } #endif