ESP-IDF have exported function esp_err_t esp_wifi_80211_tx(wifi_interface_t ifx, const void *buffer, int len, bool en_sys_seq);
It allows user to send raw ieee802.11 packets, it allows only certain types of packet.
To bypass check and send all packets you want you need to remove one call and replace it with mov instruction.
To use bypass copy "bypass.S" next to your "main.c", change CMakeLists.txt to something like this:
idf_component_register(SRCS "main.c" "bypass.S" "other_c_files.c" INCLUDE_DIRS ".")
and use esp_wifi_80211_tx_mod
to send any packet you want using example code from bypass.c
This is only for educational purposes and provided "AS IS"
@acautomacaoecontrole
You can use
address 2
oraddress 3
based onTo DS
andFrom DS
bit flags.You can read more in this pdf
table 7-7
and7.1.3.3 Address fields
.You need to edit
ieee80211header
variable to change that.You can use Beacon for your purpose.