Subject: Re: git_inetd_server: run git-http-backend using inetd

From: Jonathan Nieder <[email-masked]>
Date: Thu, 17 Jul 2014 19:22:08 -0700

Kyle J. McKay wrote:
> On Jul 17, 2014, at 15:10, Jonathan Nieder wrote:

>> It was added to respond to a feature request within Debian but it is
>> intended to eventually go upstream.  I'm glad you found this issue
>> before that could happen. :)
>
> Is there some reason the patch is not opt-in at runtime?

Yes, it's a feature for server admins to control where clients
connect, to control where the load goes.  If the client has to enable
it explicitly, that defeats the purpose.

I'd much rather fix it than turn it off completely.

[...]
>> Should git automatically disable the SRV lookups when it sees one of
>> the six domains named in RFC6762, or is there some system library call
>> that can use mDNS when appropriate automatically (or get partway there
>> without having to hard-code the domains)?
>
> Sadly I think mDNS support is relegated to an add-on package on
> Linux.  And Avahi [1] is the package that generally provides it
> there.  The recommended interface for C is the avahi-client API (see
> [2]).  However, that is Avahi-only.
[...]
> Even if the choice is to just disable SRV lookups for mDNS hosts at
> a minimum the code will have to determine whether or not the given
> host name is a mDNS name and it can't reliably do that for a host
> name without any dots in it without at least looking at the default
> domain name and possibly the search domain(s) as well.
>
> I think it would be much simpler just to make this opt-in via a
> config option

Thanks for these details.  I'll file a bug and mull it over some more.

RFC 6762 makes it clear that what the package is currently doing is
wrong.  Given that Debian's libc knows nothing about mdns on its own,
I think I'll need to parse resolv.conf (that's what libc-ares does).

Jonathan