homeworkc / lazycast

A Simple Wireless Display Receiver
GNU General Public License v3.0
689 stars 89 forks source link

Workaround for random P2P device MAC in wpa_supplicant #57

Open mraliec opened 4 years ago

mraliec commented 4 years ago

Download wpa_supplicant source as described in command.txt

Edit p2p_supplicant.c function wpas_p2p_mac_setup After: u8 addr[ETH_ALEN] = {0}; Add two lines: os_memcpy(wpa_s->own_addr, wpa_s->conf->p2p_device_persistent_mac_addr, ETH_ALEN); os_memcpy(wpa_s->global->p2p_dev_addr, wpa_s->conf->p2p_device_persistent_mac_addr, ETH_ALEN);

Add following option to wpa_supplicant.conf p2p_device_persistent_mac_addr= wanted mac address

Now P2P Go device always = p2p_device_persistent_mac_addr For example my conf: ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=0 country=US persistent_reconnect=1 p2p_device_persistent_mac_addr=3e:50:84:9d:7e:11 mac_addr=0 p2p_interface_random_mac_addr=0 network={ ssid="DIRECT-AO" bssid=3e:50:84:9d:7e:a5 psk="yrf6u5IC" proto=RSN key_mgmt=WPA-PSK pairwise=CCMP auth_alg=OPEN mode=3 disabled=2 }