diff --git a/esp32_marauder/WiFiScan.cpp b/esp32_marauder/WiFiScan.cpp index 7b9dab7..bde1940 100644 --- a/esp32_marauder/WiFiScan.cpp +++ b/esp32_marauder/WiFiScan.cpp @@ -176,7 +176,7 @@ int WiFiScan::clearSSIDs() { } bool WiFiScan::addSSID(String essid) { - ssid s = {essid, {random(256), random(256), random(256), random(256), random(256), random(256)}, false}; + ssid s = {essid, random(1, 12), {random(256), random(256), random(256), random(256), random(256), random(256)}, false}; ssids->add(s); Serial.println(ssids->get(ssids->size() - 1).essid); @@ -191,7 +191,7 @@ int WiFiScan::generateSSIDs(int count) { for (uint8_t i = 0; i < 6; i++) essid.concat(alfa[random(65)]); - ssid s = {essid, {random(256), random(256), random(256), random(256), random(256), random(256)}, false}; + ssid s = {essid, random(1, 12), {random(256), random(256), random(256), random(256), random(256), random(256)}, false}; ssids->add(s); Serial.println(ssids->get(ssids->size() - 1).essid); } @@ -2437,7 +2437,7 @@ void WiFiScan::broadcastCustomBeacon(uint32_t current_time, AccessPoint custom_s } void WiFiScan::broadcastCustomBeacon(uint32_t current_time, ssid custom_ssid) { - set_channel = random(1,12); + set_channel = custom_ssid.channel; esp_wifi_set_channel(set_channel, WIFI_SECOND_CHAN_NONE); delay(1); @@ -3623,12 +3623,12 @@ void WiFiScan::main(uint32_t currentTime) // which makes beacon spam less effective for (int i = 0; i < access_points->size(); i++) { if (access_points->get(i).selected) - this->broadcastCustomBeacon(currentTime, ssid{access_points->get(i).essid, {random(256), - random(256), - random(256), - random(256), - random(256), - random(256)}}); + this->broadcastCustomBeacon(currentTime, ssid{access_points->get(i).essid, random(1, 12), {random(256), + random(256), + random(256), + random(256), + random(256), + random(256)}}); } diff --git a/esp32_marauder/WiFiScan.h b/esp32_marauder/WiFiScan.h index 46c7203..f0c775a 100644 --- a/esp32_marauder/WiFiScan.h +++ b/esp32_marauder/WiFiScan.h @@ -88,6 +88,7 @@ esp_err_t esp_wifi_80211_tx(wifi_interface_t ifx, const void *buffer, int len, b struct ssid { String essid; + int channel; int bssid[6]; bool selected; };