aboutsummaryrefslogtreecommitdiffstats
path: root/package/libs
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2014-12-11 19:35:48 +0000
committerJonas Gorski <jogo@openwrt.org>2014-12-11 19:35:48 +0000
commit75fe024f0c05567467951b5c6264704049f2ce99 (patch)
tree3190147542c87ce1807423d7604c20b6f8b27132 /package/libs
parentea89ee2a7b48569c4f88a89e8cfaf82a3ee1267b (diff)
downloadmaster-187ad058-75fe024f0c05567467951b5c6264704049f2ce99.tar.gz
master-187ad058-75fe024f0c05567467951b5c6264704049f2ce99.tar.bz2
master-187ad058-75fe024f0c05567467951b5c6264704049f2ce99.zip
libnl-tiny: fix receiving netlink messages larger than 4K
Apply libnl commit 807fddc4cd9ecb12ba64e1b7fa26d86b6c2f19b0 ("nl: Increase receive buffer size to 4 pages") also to libnl-tiny to ensure netlink messages larger than 4KiB can be received, as the restart logic seems to be broken. This fixes iwinfo accessing info on dual band b43 cards, as they can support a lot of channels, breaking the 4K default limit (seen was >5k). Signed-off-by: Jonas Gorski <jogo@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43633 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/libs')
-rw-r--r--package/libs/libnl-tiny/Makefile2
-rw-r--r--package/libs/libnl-tiny/src/nl.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/package/libs/libnl-tiny/Makefile b/package/libs/libnl-tiny/Makefile
index b3957b0b14..2445ad440b 100644
--- a/package/libs/libnl-tiny/Makefile
+++ b/package/libs/libnl-tiny/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libnl-tiny
PKG_VERSION:=0.1
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_LICENSE:=LGPL-2.1
PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
diff --git a/package/libs/libnl-tiny/src/nl.c b/package/libs/libnl-tiny/src/nl.c
index 99e9aebeba..ea7d96898b 100644
--- a/package/libs/libnl-tiny/src/nl.c
+++ b/package/libs/libnl-tiny/src/nl.c
@@ -397,7 +397,7 @@ int nl_recv(struct nl_sock *sk, struct sockaddr_nl *nla,
flags |= MSG_PEEK;
if (page_size == 0)
- page_size = getpagesize();
+ page_size = getpagesize() * 4;
iov.iov_len = page_size;
iov.iov_base = *buf = malloc(iov.iov_len);