Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
iiod: Make sure network is alive before poking avahi
In the past, we were only checking hostname, as a way to see if the network was ready, but unfortantely - that doesn't work. The kernel really only needs to have a hostname set for uname() to work, which is what glibc and uclibc actaully do in gethostname(). So - now we actualyl check there is a working, configured ethernet card, that supports mdns (ie multicast) that is up before moving on to making sure there is a hostname. We also don't allow "none" or "(none)" to be the hostname until after things time out (3 min). This fixes analogdevicesinc#1072 and turns: 192.168.2.1:5353 : answer _iio._tcp.local. PTR "iiod on (none)._iio._tcp.local." rclass 0x1 ttl 10 length 17 into: 192.168.2.1:5353 : answer _iio._tcp.local. PTR "iiod on pluto._iio._tcp.local." rclass 0x1 ttl 10 length 16 Signed-off-by: Robin Getz <[email protected]>
- Loading branch information