On 26/02/11 00:06, Dan Williams wrote:
On Fri, 2011-02-25 at 20:25 +0000, Simon Kelley wrote:
On 25/02/11 20:03, Michael Biebl wrote:
Am 25.02.2011 20:45, schrieb Simon Kelley:
On 25/02/11 19:29, Michael Biebl wrote:
Am 25.02.2011 18:58, schrieb Simon Kelley:

Is there maybe a nicer way to tell dnsmasq to *not* read the global
configuration file?

Ah, I hadn't read up in the source code to that part.

It's completely unnecessary:

dnsmasq --conf-file

suppresses reading the default configuration file. Just stop adding the
junk filename (which never did anything, anyway) and dnsmasq will no
longer complain.

Perfect, thanks for your input. Seems like the way to go then.

Just to be sure: Can I rely on dnsmasq --conf-file to work on versions<   2.57?

You can.

Is there a minimum version when this behaviour was introduced?

There must be and I'm not sure exactly which it is, but I just checked
2.39 which is four years old, and this behaviour was in then.

I can only assume Dan added this hack (back then) for a reason.

My guess is that it arises from unclear documentation rather than lack
of functionality.

I just added it because I ran into a problem at one point (and somebody
else did too) where a package installed global dnsmasq config file had
some conflicting options with what NM spawns dnsmasq with.  Since NM
sends all the arguments on the command-line, because they change
depending on your IP connection and because we can't guarantee what's in
the global config file, I did this hack.  I was not aware of leaving off
the config file name.

We can and should fix it though.  Just one question: does the
"--conf-file" have to be at the end of the arg list, or is dnsmasq smart
enough to know that something that comes after it that starts with "--"
is an argument?  I'd expect this to be the case, but just checking.


--conf-file doesn't have to be at the end of the list. This is all controlled by getopt_long(), which supports conventional short options

-C<space>filename

or long options

--conf-file=filename

as far as getopt-long is concerned, in

--conf-file<space>filename
or
--conf-file=<space>filename

the filename has nothing to do with --conf-file, its just another bit of the argument list, not associated with a switch: the argument to --conf-file is empty.

What has changed in 2.57 is that it complains about arguments not associated with a switch, since they have no function in dnsmasq and their presence indicates likely confusion of this type.



Cheers,
Simon.






--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to