summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2018-05-17 22:11:22 +1000
committerDamien George <damien.p.george@gmail.com>2018-05-17 22:11:22 +1000
commitf8a5cd24d898f06f742839e0629016e704affadc (patch)
tree3c5f0df728dd1e0ccaca1faa24033441ee4c96e2
parent94a79f340dd86ce698f8f55c6c6111f21256b91f (diff)
esp8266/modnetwork: Return empty str for hostname if STA is inactive.
Instead of crashing due to NULL pointer dereference. Fixes issue #3341.
-rw-r--r--ports/esp8266/modnetwork.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ports/esp8266/modnetwork.c b/ports/esp8266/modnetwork.c
index dcc64d40f..7ececaf95 100644
--- a/ports/esp8266/modnetwork.c
+++ b/ports/esp8266/modnetwork.c
@@ -443,7 +443,11 @@ STATIC mp_obj_t esp_config(size_t n_args, const mp_obj_t *args, mp_map_t *kwargs
case MP_QSTR_dhcp_hostname: {
req_if = STATION_IF;
char* s = wifi_station_get_hostname();
- val = mp_obj_new_str(s, strlen(s));
+ if (s == NULL) {
+ val = MP_OBJ_NEW_QSTR(MP_QSTR_);
+ } else {
+ val = mp_obj_new_str(s, strlen(s));
+ }
break;
}
default: