diff --git a/feeds/qca-wifi-7/hostapd/patches/zzz-socket-read-buffer-size.patch b/feeds/qca-wifi-7/hostapd/patches/zzz-socket-read-buffer-size.patch index 1f416c4e5..59f2482a3 100644 --- a/feeds/qca-wifi-7/hostapd/patches/zzz-socket-read-buffer-size.patch +++ b/feeds/qca-wifi-7/hostapd/patches/zzz-socket-read-buffer-size.patch @@ -1,11 +1,36 @@ ---- a/src/drivers/driver_nl80211.c -+++ b/src/drivers/driver_nl80211.c -@@ -127,7 +127,7 @@ static void nl80211_register_eloop_read( - */ - int err; +--- a/src/ap/vlan_full.c ++++ b/src/ap/vlan_full.c +@@ -772,6 +772,7 @@ full_dynamic_vlan_init(struct hostapd_da + { + struct sockaddr_nl local; + struct full_dynamic_vlan *priv; ++ int rxbuf = 262144; -- err = nl_socket_set_buffer_size(*handle, 262144, 0); -+ err = nl_socket_set_buffer_size(*handle, 1048576, 0); - if (err < 0) { - wpa_printf(MSG_DEBUG, - "nl80211: Could not set nl_socket RX buffer size: %s", + priv = os_zalloc(sizeof(*priv)); + if (priv == NULL) +@@ -790,6 +791,7 @@ full_dynamic_vlan_init(struct hostapd_da + os_free(priv); + return NULL; + } ++ setsockopt(priv->s, SOL_SOCKET, SO_RCVBUF, &rxbuf, sizeof(rxbuf)); + + os_memset(&local, 0, sizeof(local)); + local.nl_family = AF_NETLINK; +--- a/src/drivers/netlink.c ++++ b/src/drivers/netlink.c +@@ -92,6 +92,7 @@ struct netlink_data * netlink_init(struc + { + struct netlink_data *netlink; + struct sockaddr_nl local; ++ int rxbuf = 262144; + + netlink = os_zalloc(sizeof(*netlink)); + if (netlink == NULL) +@@ -105,6 +106,7 @@ struct netlink_data * netlink_init(struc + return NULL; + } + ++ setsockopt(netlink->sock, SOL_SOCKET, SO_RCVBUF, &rxbuf, sizeof(rxbuf)); + os_memset(&local, 0, sizeof(local)); + local.nl_family = AF_NETLINK; + local.nl_groups = RTMGRP_LINK;