Re: [PATCH] AP MLD: Ensure hostapd_deinit_driver() is called when driver_init() fails

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 15, 2025 at 01:21:46PM +0000, Richard Yu-游宗勳 wrote:
> AP MLD: Ensure hostapd_deinit_driver() is called when driver_init() fails
> 
> Ensure hostapd_deinit_driver() is called when driver_init() fails in both
> hostapd_enable_iface() and hostapd_add_iface().
> 
> When initializing an AP MLD interface, driver_init() first assigns a valid
> private driver interface data pointer (drv_priv) to the hostapd_iface
> structure. It then attempts to add a link by calling hostapd_drv_link_add().
> This call may fail under certain conditions, such as ENETDOWN, EALREADY,
> or other transient errors.
> 
> In such failure cases, the hostapd interface retains a valid drv_priv
> pointer, but no cleanup is performed. This results in an untracked reference
> to the private driver interface data. While the memory backing drv_priv will
> eventually be freed when the last interface sharing it is deinitialized, the
> lack of cleanup in early failure paths can then lead to invalid memory access,
> potentially resulting in a segmentation fault.
> 
> This patch ensures that hostapd_deinit_driver() is invoked in both failure
> paths to properly release references to driver resources and maintain
> consistency across interface initialization routines.

Thanks, applied.
 
-- 
Jouni Malinen                                            PGP id EFC895FA

_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap




[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux