wpa_supplicant: Fix overlapping memcpy on WPS interface addition
I think this should fix the following valgrind complaint: ==1972== Source and destination overlap in memcpy(0x5181708, 0x5181708, 16) ==1972== at 0x4A073BA: memcpy (mc_replace_strmem.c:602) ==1972== by 0x45872B: wpas_wps_set_uuid (wps_supplicant.c:1116) ==1972== by 0x4599EC: wpas_wps_update_config (wps_supplicant.c:1747) ==1972== by 0x4C8DB0: wpa_supplicant_update_config (wpa_supplicant.c:3090) ==1972== by 0x4C3E5E: wpa_supplicant_reload_configuration (wpa_supplicant.c:746) ==1972== by 0x4B8B37: wpa_supplicant_ctrl_iface_process (ctrl_iface.c:4082) ==1972== by 0x4BA39C: wpa_supplicant_ctrl_iface_receive (ctrl_iface_unix.c:168) ==1972== by 0x4114D4: eloop_sock_table_dispatch_table (eloop.c:335) ==1972== by 0x411541: eloop_sock_table_dispatch (eloop.c:352) ==1972== by 0x41200D: eloop_run (eloop.c:766) ==1972== by 0x4C8B43: wpa_supplicant_run (wpa_supplicant.c:3010) ==1972== by 0x4D44AD: main (main.c:286) Signed-hostap: Ben Greear <greearb@candelatech.com> intended-for: hostap-1
This commit is contained in:
parent
ab28911dbf
commit
157cdad59f
1 changed files with 4 additions and 2 deletions
|
@ -1113,8 +1113,10 @@ static void wpas_wps_set_uuid(struct wpa_supplicant *wpa_s,
|
|||
while (first && first->next)
|
||||
first = first->next;
|
||||
if (first && first != wpa_s) {
|
||||
os_memcpy(wps->uuid, wpa_s->global->ifaces->wps->uuid,
|
||||
WPS_UUID_LEN);
|
||||
if (wps != wpa_s->global->ifaces->wps)
|
||||
os_memcpy(wps->uuid,
|
||||
wpa_s->global->ifaces->wps->uuid,
|
||||
WPS_UUID_LEN);
|
||||
wpa_hexdump(MSG_DEBUG, "WPS: UUID from the first "
|
||||
"interface", wps->uuid, WPS_UUID_LEN);
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue