On Sun, Apr 30, 2023 at 12:04 AM Krishna Chaitanya <chaitanya.mgit@xxxxxxxxx> wrote: > > On Fri, Apr 28, 2023 at 9:09 PM Jouni Malinen <j@xxxxx> wrote: > > > > On Fri, Apr 21, 2023 at 12:58:21AM +0530, Krishna wrote: > > > gcc 12.1 complains about using pointer after realloc as it could > > > potentially be moved/freed, causing any uses after UB. > > > > > > Fix this by doing checks before alloc and use those statuses and update > > > with new BSS. > > > > Could you please provide the exact warning message produced by the > > compiler? gcc 12.1 did not complain about anything in my test setup when > > compiling wpa_supplicant, so I'm assuming this would need some extra > > warnings to be enabled. > > ../../../../../modules/lib/hostap/wpa_supplicant/bss.c:701:25: error: > pointer 'bss' may be used after 'realloc' [-Werror=use-after-free] > 701 | wpa_bss_update_pending_connect(wpa_s, bss, nbss); > > > > > As far as the "use of a pointer after realloc" is concerned, it should > > be noted that the implementation here does not dereference the old > > pointer after the realloc() call. What is being done here is a > > check of whether the buffer was indeed moved by comparing the pointer > > values before and after the realloc call. Is that really UB or is that > > an excessive warning from the compiler? > Well, the code looks fine, but as the pointer after realloc might not > exist, compiler > can optimize the code causing indeterminate behaviour. This is discussed > here https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104069 and > https://www.reddit.com/r/C_Programming/comments/vffgpo/comment/icvvw8e/?utm_source=share&utm_medium=web2x&context=3 Gentle reminder. _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap