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

Bug#924374: busybox ip --oneline displays nothing



Control: tag -1 + patch

Hi,

> I use LTSP which requires the following command to show a list of interfaces in which it can use. 
> The following command worked in 1.27 of busybox but broke in the 1.30.1-2 version;
> busybox ip -oneline link show
> 
> This stopped all my thin clients from booting.

here's what happened:

busybox upstream found out that their ip address show command, with the
oneline option, includes link layer addresses, which iproute2 normally
doesn't. They patched that, without realising their ip link show code
ultimately calls their ip address show code.

Attached debdiff reverts this change. This makes the ip address show
behaviour "wrong" again, but including too much in a machine-readable
output seems less broken than this regression.

-nik
diff -Nru busybox-1.30.1/debian/changelog busybox-1.30.1/debian/changelog
--- busybox-1.30.1/debian/changelog	2019-03-02 09:11:13.000000000 +0100
+++ busybox-1.30.1/debian/changelog	2019-03-20 17:20:27.000000000 +0100
@@ -1,3 +1,10 @@
+busybox (1:1.30.1-2.1) UNRELEASED; urgency=high
+
+  * Non-maintainer upload.
+  * Re-enable ip -oneline. (Closes: #924374)
+
+ -- Dominik George <natureshadow@debian.org>  Wed, 20 Mar 2019 17:20:27 +0100
+
 busybox (1:1.30.1-2) unstable; urgency=high
 
   * Complete the fix for [CVE-2018-20679] Closes: #918846
diff -Nru busybox-1.30.1/debian/patches/fix-ip-oneline.patch busybox-1.30.1/debian/patches/fix-ip-oneline.patch
--- busybox-1.30.1/debian/patches/fix-ip-oneline.patch	1970-01-01 01:00:00.000000000 +0100
+++ busybox-1.30.1/debian/patches/fix-ip-oneline.patch	2019-03-20 17:20:22.000000000 +0100
@@ -0,0 +1,14 @@
+--- a/networking/libiproute/ipaddress.c
++++ b/networking/libiproute/ipaddress.c
+@@ -570,10 +570,7 @@ int FAST_FUNC ipaddr_list_or_flush(char
+ 	}
+ 
+ 	for (l = linfo; l; l = l->next) {
+-		if (no_link
+-		 || (oneline || print_linkinfo(&l->h) == 0)
+-		/* ^^^^^^^^^ "ip -oneline a" does not print link info */
+-		) {
++		if (no_link  || print_linkinfo(&l->h) == 0) {
+ 			struct ifinfomsg *ifi = NLMSG_DATA(&l->h);
+ 			if (G_filter.family != AF_PACKET)
+ 				print_selected_addrinfo(ifi->ifi_index, ainfo);
diff -Nru busybox-1.30.1/debian/patches/series busybox-1.30.1/debian/patches/series
--- busybox-1.30.1/debian/patches/series	2019-03-02 09:07:28.000000000 +0100
+++ busybox-1.30.1/debian/patches/series	2019-03-20 17:19:08.000000000 +0100
@@ -12,3 +12,4 @@
 stop-checking-ancient-kernel-version.patch
 install-readlink-in-bin.patch
 stop-overriding-stack-alignment-on-i386.patch
+fix-ip-oneline.patch

Attachment: signature.asc
Description: PGP signature


Reply to: