[FS#1294] ip-tiny / ip-full insanity

LEDE Bugs lede-bugs at lists.infradead.org
Wed Jan 24 06:06:29 PST 2018


A new Flyspray task has been opened.  Details are below. 

User who did this - systemcrash (systemcrash) 

Attached to Project - OpenWrt/LEDE Project
Summary - ip-tiny / ip-full insanity
Task Type - Bug Report
Category - Packages
Status - Unconfirmed
Assigned To - 
Operating System - All
Severity - Low
Priority - Very Low
Reported Version - lede-17.01
Due in Version - Undecided
Due Date - Undecided
Details - 
Environment: Powered by LuCI lede-17.01 branch (git-17.298.45605-07e7ff0) / LEDE Reboot 17.01.4 r3560-79f57e422d
Model	TP-Link Archer C7 v2
Firmware Version	LEDE Reboot 17.01.4 r3560-79f57e422d / LuCI lede-17.01 branch (git-17.298.45605-07e7ff0)
Kernel Version	4.4.92
mips_24kc / ar71xx


Description:

Installing strongswan-full got me here. Install ip-tiny, and ip works 'correctly', but claims to provide xfrm, but does not. Remove ip-tiny, install ip-full, busybox owns the show, but xfrm works when calling the ip binary with full path. Remove ip-full, install ip-tiny, and ip rules once again, but no ip xfrm.

ip-tiny also claims to provide ip xfrm, but does not. Can provide further info if necessary.



console session follows:



```
# opkg install ip-full
...

# opkg install strongswan-full
Installing strongswan-full (5.5.3-1) to root...
...

# opkg whatprovides ip
What provides ip
    ip-full

# opkg files ip-full
Package ip-full (4.4.0-10) is installed on root and has the following files:
/usr/sbin/ip

# /usr/sbin/ip -V
ip utility, iproute2-ss4.4.0-10-lede

# which ip
/usr/sbin/ip

# export
...
export PATH='/usr/sbin:/usr/bin:/sbin:/bin'

# ls -l /sbin/ip
lrwxrwxrwx    1 root     root            14 Oct 17 19:46 /sbin/ip -> ../bin/busybox
# ls -l /usr/sbin/ip
-rwxr-xr-x    1 root     root        229044 Dec 30 20:26 /usr/sbin/ip
# ls -l /usr/bin/ip
ls: /usr/bin/ip: No such file or directory


# ip
BusyBox v1.25.1 () multi-call binary.

Usage: ip [OPTIONS] {address | route | link | rule} {COMMAND}

ip [OPTIONS] OBJECT {COMMAND}
where OBJECT := {address | route | link | rule}
OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }

# ip -V
BusyBox v1.25.1 () multi-call binary.

Usage: ip [OPTIONS] {address | route | link | rule} {COMMAND}

ip [OPTIONS] OBJECT {COMMAND}
where OBJECT := {address | route | link | rule}
OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }

# /usr/sbin/ip -V
ip utility, iproute2-ss4.4.0-10-lede

# /usr/sbin/ip xfrm
Usage: ip xfrm XFRM-OBJECT { COMMAND | help }
where  XFRM-OBJECT := state | policy | monitor

# opkg remove ip-full
Removing package ip-full from root...

# opkg install ip-full
Installing ip-full (4.4.0-10) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/base/ip-full_4.4.0-10_mips_24kc.ipk
Configuring ip-full.

# ip
BusyBox v1.25.1 () multi-call binary.

...


# opkg remove ip-full
No packages removed.
Collected errors:
 * print_dependents_warning: Package ip-full is depended upon by packages:
 * print_dependents_warning: 	strongswan


# opkg remove strongswan --force-depends
Removing package strongswan from root...
Stopping strongSwan IPsec...

# opkg remove ip-full
Removing package ip-full from root...

# opkg install ip-tiny
Installing ip-tiny (4.4.0-10) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/base/ip-tiny_4.4.0-10_mips_24kc.ipk
Configuring ip-tiny.

# ip -V
ip utility, iproute2-ss4.4.0-10-lede

# ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | address | addrlabel | route | rule | neighbor | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | tcp_metrics | token | netconf }
...

# opkg whatprovides ip
What provides ip
    ip-tiny

# opkg files ip-tiny
Package ip-tiny (4.4.0-10) is installed on root and has the following files:
/usr/bin/ip

# export
...
export PATH='/usr/sbin:/usr/bin:/sbin:/bin'


# ls -l /usr/sbin/ip
ls: /usr/sbin/ip: No such file or directory
# ls -l /usr/bin/ip
-rwxr-xr-x    1 root     root        159196 Dec 30 20:27 /usr/bin/ip
# ls -l /bin/ip
ls: /bin/ip: No such file or directory
# ls -l /sbin/ip
lrwxrwxrwx    1 root     root            14 Oct 17 19:46 /sbin/ip -> ../bin/busybox
#

# opkg remove ip-tiny
Removing package ip-tiny from root...

# opkg remove ip-full
No packages removed.

# opkg install ip-full
Installing ip-full (4.4.0-10) to root...
Downloading ...
Configuring ip-full.
# ip
BusyBox v1.25.1 () multi-call binary.
...

# opkg remove ip-full
Removing package ip-full from root...
# opkg install strongswan-full
Package strongswan-full (5.5.3-1) installed in root is up to date.

# ip
BusyBox v1.25.1 () multi-call binary.

# rm /sbin/ip

# opkg remove strongswan-full --force-depends
Removing package strongswan-full from root...
# opkg install strongswan-full
Installing strongswan-full (5.5.3-1) to root...
Downloading ...
Installing ip-tiny (4.4.0-10) to root...
Downloading ...
Installing strongswan (5.5.3-1) to root...
Downloading ...
Configuring ip-tiny.
Configuring strongswan.

# ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | address | addrlabel | route | rule | neighbor | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | tcp_metrics | token | netconf }
...

# ip xfrm
Object "xfrm" is unknown, try "ip help".

# opkg remove strongswan-full --force-depends
Removing package strongswan-full from root...

# opkg remove strongswan --force-depends
Removing package strongswan from root...
Stopping strongSwan IPsec...

# ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | address | addrlabel | route | rule | neighbor | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | tcp_metrics | token | netconf }

...

# opkg remove ip-tiny
Removing package ip-tiny from root...

# ip
-ash: ip: not found
# ls -l /usr/sbin/ip
ls: /usr/sbin/ip: No such file or directory
# ls -l /usr/bin/ip
ls: /usr/bin/ip: No such file or directory
# ls -l /sbin/ip
ls: /sbin/ip: No such file or directory
# ls -l /bin/ip
ls: /bin/ip: No such file or directory

# opkg install ip-full
Installing ip-full (4.4.0-10) to root...
Downloading ...
Configuring ip-full.

# ip xfrm
-ash: ip: not found
# ip
-ash: ip: not found

# which ip
/usr/sbin/ip

# ip
-ash: ip: not found
# ls -l /usr/sbin/ip
-rwxr-xr-x    1 root     root        229044 Dec 30 20:26 /usr/sbin/ip

# which busybox
/bin/busybox

# ln -s /bin/busybox /sbin/ip
# ip
BusyBox v1.25.1 () multi-call binary.
...

# opkg remove ip-full
Removing package ip-full from root...
# opkg install ip-full
Installing ip-full (4.4.0-10) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/base/ip-full_4.4.0-10_mips_24kc.ipk
Configuring ip-full.
# ip
BusyBox v1.25.1 () multi-call binary.
...


# opkg remove ip-full
Removing package ip-full from root...
# opkg install ip-tiny
Installing ip-tiny (4.4.0-10) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/base/ip-tiny_4.4.0-10_mips_24kc.ipk
Configuring ip-tiny.
# ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | address | addrlabel | route | rule | neighbor | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | tcp_metrics | token | netconf }
...

# which ip
/usr/bin/ip

# /usr/bin/ip xfrm
Object "xfrm" is unknown, try "ip help".

# export
...
export PATH='/usr/sbin:/usr/bin:/sbin:/bin'

# opkg remove ip-tiny
Removing package ip-tiny from root...
# opkg install ip-full
Installing ip-full (4.4.0-10) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/base/ip-full_4.4.0-10_mips_24kc.ipk
Configuring ip-full.
# which ip
/usr/sbin/ip

# opkg whatprovides ip
What provides ip
    ip-full
# opkg files ip
Package ip-full (4.4.0-10) is installed on root and has the following files:
/usr/sbin/ip


# ip
BusyBox v1.25.1 () multi-call binary.

Usage: ip [OPTIONS] {address | route | link | rule} {COMMAND}

ip [OPTIONS] OBJECT {COMMAND}
where OBJECT := {address | route | link | rule}
OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }

# strace ip
execve("/usr/sbin/ip", ["ip"], [/* 12 vars */]) = 0
set_thread_area(0x78001d48)             = 0
set_tid_address(0x77ffacac)             = 26625
open("/etc/ld-musl-mips-sf.path", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/lib/libgcc_s.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=77040, ...}) = 0
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\10\0\0\0\1\0\0(\20\0\0\0004"..., 936) = 936
mmap2(NULL, 143360, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x77f32000
mmap2(0x77f54000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x12000) = 0x77f54000
close(3)                                = 0
mprotect(0x445000, 4096, PROT_READ)     = 0
socket(AF_NETLINK, SOCK_RAW|SOCK_CLOEXEC, NETLINK_ROUTE) = 3
setsockopt(3, SOL_SOCKET, SO_SNDBUF, [32768], 4) = 0
setsockopt(3, SOL_SOCKET, SO_RCVBUF, [1048576], 4) = 0
bind(3, {sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, 12) = 0
getsockname(3, {sa_family=AF_NETLINK, nl_pid=26625, nl_groups=00000000}, [12]) = 0
clock_gettime(CLOCK_REALTIME, {tv_sec=1516802132, tv_nsec=297396679}) = 0
close(3)                                = 0
writev(2, [{iov_base="", iov_len=0}, {iov_base="Usage: ip [ OPTIONS ] OBJECT { C"..., iov_len=810}], 2Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | address | addrlabel | route | rule | neighbor | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | tcp_metrics | token | netconf }
       OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                    -h[uman-readable] | -iec |
                    -f[amily] { inet | inet6 | ipx | dnet | mpls | bridge | link } |
                    -4 | -6 | -I | -D | -B | -0 |
                    -l[oops] { maximum-addr-flush-attempts } | -br[ief] |
                    -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |
                    -rc[vbuf] [size] | -n[etns] name | -a[ll] | -c[olor]}
) = 810
exit_group(-1)                          = ?
+++ exited with 255 +++

# ip
BusyBox v1.25.1 () multi-call binary.

Usage: ip [OPTIONS] {address | route | link | rule} {COMMAND}

ip [OPTIONS] OBJECT {COMMAND}
where OBJECT := {address | route | link | rule}
OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }

# opkg remove ip-tiny
No packages removed.
# opkg remove ip-full
Removing package ip-full from root...

# ip
BusyBox v1.25.1 () multi-call binary.

Usage: ip [OPTIONS] {address | route | link | rule} {COMMAND}

ip [OPTIONS] OBJECT {COMMAND}
where OBJECT := {address | route | link | rule}
OPTIONS := { -f[amily] { inet | inet6 | link } | -o[neline] }

# opkg install strongswan-full
Installing strongswan-full (5.5.3-1) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/packages/strongswan-full_5.5.3-1_mips_24kc.ipk
Installing ip-tiny (4.4.0-10) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/base/ip-tiny_4.4.0-10_mips_24kc.ipk
Installing strongswan (5.5.3-1) to root...
Downloading http://ftp.halifax.rwth-aachen.de/lede/releases/17.01.4/packages/mips_24kc/packages/strongswan_5.5.3-1_mips_24kc.ipk
Configuring ip-tiny.
Configuring strongswan.

# which ip
/usr/bin/ip
# ip xfrm
Object "xfrm" is unknown, try "ip help".
# ip
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | address | addrlabel | route | rule | neighbor | ntable |
                   tunnel | tuntap | maddress | mroute | mrule | monitor | xfrm |
                   netns | l2tp | fou | tcp_metrics | token | netconf }
...
```

Possible causes: http://lists.infradead.org/pipermail/lede-commits/2016-November/001266.html


More information can be found at the following URL:
https://bugs.lede-project.org/index.php?do=details&task_id=1294



More information about the lede-bugs mailing list