Open Konstantin-Glukhov opened 9 months ago
same issue for me, I'm musl - 1.2.4-4
I found out the root casuse: https://github.com/openwrt/odhcpd/blob/d8118f6e76e5519881f9a37137c3a06b3cb60fd2/src/dhcpv6-ia.c#L583 called /usr/sbin/odhcpd-update
which refered /lib/functions/procd.sh
When odhcpd receives a DHCPv6 client request it calls basename() function. Somehow it invokes the external /usr/bin/basename with incorrect arguments. Is it a linkage problem with libc.so on arm hardware?
I wrote a simple test function and it works as expected:
Run on router:
I also checked all of the dynamic libraries loaded by odhcpd, and the only one that has basename() in it is libc.so:
What causes odhcpd to invoke the external program?