Просмотр исходного кода

Merge branch 'bugfix/smartconfig_ack' into 'master'

smartconfig_ack.c : Fixed the declaration of remote_ip in sc_ack_send_task()

See merge request idf/esp-idf!2689
Ivan Grokhotkov 7 лет назад
Родитель
Сommit
82047ff181

+ 1 - 1
components/esp32/include/esp_smartconfig.h

@@ -42,7 +42,7 @@ typedef enum {
   *
   * @param  status  Status of SmartConfig:
   *    - SC_STATUS_GETTING_SSID_PSWD : pdata is a pointer of smartconfig_type_t, means config type.
-  *    - SC_STATUS_LINK : pdata is a pointer of struct station_config.
+  *    - SC_STATUS_LINK : pdata is a pointer to wifi_config_t.
   *    - SC_STATUS_LINK_OVER : pdata is a pointer of phone's IP address(4 bytes) if pdata unequal NULL.
   *    - otherwise : parameter void *pdata is NULL.
   * @param  pdata  According to the different status have different values.

+ 2 - 1
components/smartconfig_ack/smartconfig_ack.c

@@ -46,7 +46,8 @@ static void sc_ack_send_task(void *pvParameters)
 {
     sc_ack_t *ack = (sc_ack_t *)pvParameters;
     tcpip_adapter_ip_info_t local_ip;
-    uint8_t *remote_ip = ack->ctx.ip;
+    uint8_t remote_ip[4];
+    memcpy(remote_ip, ack->ctx.ip, sizeof(remote_ip));
     int remote_port = (ack->type == SC_ACK_TYPE_ESPTOUCH) ? SC_ACK_TOUCH_SERVER_PORT : SC_ACK_AIRKISS_SERVER_PORT;
     struct sockaddr_in server_addr;
     socklen_t sin_size = sizeof(server_addr);