AW: Question on udhcpc script
Walter Harms
wharms at bfs.de
Mon Feb 1 10:33:25 UTC 2021
hello,
indeed that looks wrong:
it would be easy to invert but i have no setup to test.
can you do that ?
just change:
if [ -z "$(ip -6 route list | grep default)" ]; then
into
if ! [ -z "$(ip -6 route list | grep default)" ]; then
(note the ! here)
re,
wh
________________________________________
Von: busybox <busybox-bounces at busybox.net> im Auftrag von Bhattiprolu RaviKumar <ravikumar.bhattiprolu at gmail.com>
Gesendet: Montag, 1. Februar 2021 10:36:02
An: busybox at busybox.net
Betreff: Question on udhcpc script
All,
We are using busybox to get DHCPv6 address. However, I am bit confused on the part of the script /etc/udhcpc.d/50default:
wait_for_ipv6_default_route() {
printf "Waiting for IPv6 default route to appear"
while [ $IF_WAIT_DELAY -gt 0 ]; do
if [ -z "$(ip -6 route list | grep default)" ]; then
printf "\n"
return
fi
sleep 1
printf "."
: $((IF_WAIT_DELAY -= 1))
done
printf " timeout!\n"
}
The print says "Waiting for IPv6 default route to appear". However the if statement is checking for "$(ip -6 route list | grep default)"to be null (-z check) which means default route is not present.
In our case, after DHCP, default route gets setup and "$(ip -6 route list | grep default)"returns an entry starting with default and since check is -z, it continues in the loop and finally prints "timeout".
I am confused here. Am I missing something here?
regards,
Ravi
More information about the busybox
mailing list