diff options
| author | Damien George <damien.p.george@gmail.com> | 2018-05-17 22:12:24 +1000 |
|---|---|---|
| committer | Damien George <damien.p.george@gmail.com> | 2018-05-17 22:12:24 +1000 |
| commit | dd13065843060b8351c80ba62a32a24713fd27b1 (patch) | |
| tree | 0bb8b4149dddd10694a419bef76dbd76708b1d8d | |
| parent | f8a5cd24d898f06f742839e0629016e704affadc (diff) | |
esp8266/modnetwork: Raise ValueError when getting invalid WLAN id.
Instead of crashing due to out-of-bounds array access. Fixes #3348.
| -rw-r--r-- | ports/esp8266/modnetwork.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ports/esp8266/modnetwork.c b/ports/esp8266/modnetwork.c index 7ececaf95..c7f3397c4 100644 --- a/ports/esp8266/modnetwork.c +++ b/ports/esp8266/modnetwork.c @@ -65,6 +65,9 @@ STATIC mp_obj_t get_wlan(size_t n_args, const mp_obj_t *args) { int idx = 0; if (n_args > 0) { idx = mp_obj_get_int(args[0]); + if (idx < 0 || idx >= sizeof(wlan_objs)) { + mp_raise_ValueError(NULL); + } } return MP_OBJ_FROM_PTR(&wlan_objs[idx]); } |
