[Dnsmasq-discuss] server option interface name don't work

Simon Kelley simon at thekelleys.org.uk
Sun Feb 15 19:56:26 GMT 2009


MURASE Katsunori wrote:
> Hello.
> 
> I am using dnsmasq 2.47.
> "server" option with *long* interface name don't work.
> 
> This is my configuration file.
>     server=/example.jp/10.0.0.1 at eth10
> 
> Dnsmasq say following message.
>     dnsmasq: ignoring nameserver 10.0.0.1 - cannot make/bind socket: No such device
> 
> My patch. Replase to strlen from sizeof.
> 
> diff -ruNp org/dnsmasq-2.47/src/network.c dnsmasq-2.47/src/network.c
> --- org/dnsmasq-2.47/src/network.c	2009-02-02 01:00:58.000000000 +0900
> +++ dnsmasq-2.47/src/network.c	2009-02-14 21:36:29.000000000 +0900
> @@ -529,7 +529,7 @@ int local_bind(int fd, union mysockaddr 
>      
>  #if defined(SO_BINDTODEVICE)
>    if (intname[0] != 0 &&
> -      setsockopt(fd, SOL_SOCKET, SO_BINDTODEVICE, intname, sizeof(intname)) == -1)
> +      setsockopt(fd, SOL_SOCKET, SO_BINDTODEVICE, intname, strlen(intname)) == -1)
>      return 0;
>  #endif
>  

Thanks, Patch taken for next release.

Cheers,
Simon.



More information about the Dnsmasq-discuss mailing list