[Dnsmasq-discuss] Failure of dnsmasq v2.81 in docker (qemu emulated armhf hardware)

Simon Kelley simon at thekelleys.org.uk
Sun Apr 19 23:30:14 BST 2020


On 19/04/2020 06:19, Dominik wrote:
> On Wed, 2020-04-15 at 21:34 +0200, Dominik wrote:
>> A possible solution seems to be what Petr Gotthard suggested
>> (dnsmasq-discuss /Thu Mar 19 13:16:11 GMT 2020/):
>>
>>> +#ifdef NETLINK_NO_ENOBUFS
>>>        setsockopt(daemon->netlinkfd, SOL_NETLINK,
>>> NETLINK_NO_ENOBUFS, &opt, sizeof(opt)) == -1 ||
>>> +#endif
> 
> Patch attached which restored dnsmasq operation for us.
> 
> Have a nice weekend!
> Best regards,
> Dominik
> 

Hmm, leaving aside that the patch, if NETLINK_NO_ENOBUFS is not defined
in the system headers, stops calling  getsockname() on kernels older
than 2.6.30, this isn't really much of a fix. The presence or absence of
NETLINK_NO_ENOBUFS in the system headers is only coincidentally related
to whether qemu-user supports the syscall.

The best we can do is to convert the setsockopt() failure into a warning
rather than a hard failure, or fix qemu-user, of course.



http://thekelleys.org.uk/gitweb/?p=dnsmasq.git;a=commit;h=913fa15fb1d11f50aeb7a9a1f68de5af0eac0419


Simon.







More information about the Dnsmasq-discuss mailing list