busybox: nslookup_lede: fix compatibility with v1.25
The ":*" optstring syntax was only recently introduced with BusyBox v1.26, older versions need a corresponding hint in the "opt_complementary" variable to denote flag values that should be stored as llist entries. Add the required opt_complementary entry to fix random SIGBUS, SIGILL or SIGSEGV related crashes on BusyBox 1.25.x when attempting to use the "-q" flag of the "nslookup_lede" applet. Ref: https://forum.lede-project.org/t/nslookup-ipv6-in-lede-17-01-1 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
This commit is contained in:
parent
3a2cc2c8ad
commit
f1e3285461
2 changed files with 7 additions and 6 deletions
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=busybox
|
PKG_NAME:=busybox
|
||||||
PKG_VERSION:=1.26.2
|
PKG_VERSION:=1.26.2
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=3
|
||||||
PKG_FLAGS:=essential
|
PKG_FLAGS:=essential
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
From 2285cd400a10b1bde5472fe1cec3311300ee943c Mon Sep 17 00:00:00 2001
|
From 1188f159e0b0a9c07bed835c7313bedf5322a9e3 Mon Sep 17 00:00:00 2001
|
||||||
From: Jo-Philipp Wich <jo@mein.io>
|
From: Jo-Philipp Wich <jo@mein.io>
|
||||||
Date: Tue, 14 Mar 2017 22:21:34 +0100
|
Date: Tue, 14 Mar 2017 22:21:34 +0100
|
||||||
Subject: [PATCH] networking: add LEDE nslookup applet
|
Subject: [PATCH] networking: add LEDE nslookup applet
|
||||||
|
@ -12,16 +12,16 @@ and the libresolv primitives to parse received DNS responses.
|
||||||
|
|
||||||
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
|
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
|
||||||
---
|
---
|
||||||
networking/nslookup_lede.c | 893 +++++++++++++++++++++++++++++++++++++++++++++
|
networking/nslookup_lede.c | 894 +++++++++++++++++++++++++++++++++++++++++++++
|
||||||
1 file changed, 893 insertions(+)
|
1 file changed, 894 insertions(+)
|
||||||
create mode 100644 networking/nslookup_lede.c
|
create mode 100644 networking/nslookup_lede.c
|
||||||
|
|
||||||
diff --git a/networking/nslookup_lede.c b/networking/nslookup_lede.c
|
diff --git a/networking/nslookup_lede.c b/networking/nslookup_lede.c
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 000000000..6f1f86502
|
index 000000000..f3e42d3bb
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/networking/nslookup_lede.c
|
+++ b/networking/nslookup_lede.c
|
||||||
@@ -0,0 +1,893 @@
|
@@ -0,0 +1,894 @@
|
||||||
+/*
|
+/*
|
||||||
+ * nslookup_lede - musl compatible replacement for busybox nslookup
|
+ * nslookup_lede - musl compatible replacement for busybox nslookup
|
||||||
+ *
|
+ *
|
||||||
|
@ -760,6 +760,7 @@ index 000000000..6f1f86502
|
||||||
+ applet_long_options = nslookup_longopts;
|
+ applet_long_options = nslookup_longopts;
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
|
+ opt_complementary = "q::";
|
||||||
+ opts = getopt32(argv, "+q:*p:+r:+t:+s",
|
+ opts = getopt32(argv, "+q:*p:+r:+t:+s",
|
||||||
+ &type_strings, &default_port,
|
+ &type_strings, &default_port,
|
||||||
+ &default_retry, &default_timeout);
|
+ &default_retry, &default_timeout);
|
||||||
|
|
Loading…
Reference in a new issue