int sj_wifi_setup_sta(const struct sys_config_wifi_sta *cfg) { s_wifi_sta_config.status = SJ_WIFI_DISCONNECTED; free(s_wifi_sta_config.ssid); free(s_wifi_sta_config.pass); free(s_wifi_sta_config.ip); s_wifi_sta_config.ssid = strdup(cfg->ssid); s_wifi_sta_config.pass = strdup(cfg->pass); s_wifi_sta_config.ip = NULL; return sj_wifi_connect(); }
int sj_wifi_setup_sta(const struct sys_config_wifi_sta *cfg) { free_wifi_config(); s_wifi_sta_config.ssid = strdup(cfg->ssid); s_wifi_sta_config.pass = strdup(cfg->pass); memset(&s_wifi_sta_config.static_ip, 0, sizeof(s_wifi_sta_config.static_ip)); if (cfg->ip != NULL && cfg->netmask != NULL) { SlNetCfgIpV4Args_t *ipcfg = &s_wifi_sta_config.static_ip; if (!inet_pton(AF_INET, cfg->ip, &ipcfg->ipV4) || !inet_pton(AF_INET, cfg->netmask, &ipcfg->ipV4Mask) || (cfg->ip != NULL && !inet_pton(AF_INET, cfg->gw, &ipcfg->ipV4Gateway))) { return 0; } } return sj_wifi_connect(); }
SJ_PRIVATE enum v7_err Wifi_connect(struct v7 *v7, v7_val_t *res) { (void) v7; *res = v7_mk_boolean(v7, sj_wifi_connect()); return V7_OK; }
static v7_val_t Wifi_connect(struct v7 *v7) { return v7_create_boolean(sj_wifi_connect()); }