Re: [PATCH/RFC] Documentation: git-daemon inetd configuration fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Matthias Kestenholz <matthias@xxxxxxxxxxx> writes:

>  On my debian server, this change was needed to get git-daemon running.
>  I am no inetd expert, so I don't know where the error was.
>
>  Perhaps this patch might help someone else.
>
>
> diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt
> index 9ddab71..499c1f3 100644
> --- a/Documentation/git-daemon.txt
> +++ b/Documentation/git-daemon.txt
> @@ -177,7 +177,7 @@ git-daemon as inetd server::
>  +
>  ------------------------------------------------
>  	git stream tcp nowait nobody  /usr/bin/git-daemon
> -		git-daemon --inetd --verbose --export-all
> +		/usr/bin/git-daemon --inetd --verbose --export-all
>  		/pub/foo /pub/bar
>  ------------------------------------------------

That sounds _very_ wrong.  What you changed is argv[0] (i.e. the
beginning of "service program arguments" field) and it should
not matter what you have there for inetd to launch git-daemon.
Presumably your inetd runs with /usr/bin in your path so even
the "service program" field (the one after 'nobody') should not
need the full path (but it is a good idea to be explicit in that
field as a principle), but needing the full path in argv[0]?

On _my_ debian box, I do not need a full path there, so it is
not even Debian in general but problem is on your particular
box.  Can you dig a bit more to see what you are doing any
differently?

For example, do you really mean the "service program arguments"
field that matters?

One plausible mistake scenario you _could_ have made is
something like this.  You compile git yourself and install it in
/home/matt/bin/git-daemon, and you needed to spell that path out
in "service program" field, but you found it out by trial and
error, and during that experiment you did not change "service
program" field (which actually matters) but "service program
arguments" field first.  And the working configuration you
happened to end up with was like this:

	git stream tcp nowait nobody /home/matt/bin/git-daemon \
        	/home/matt/bin/git-daemon --inetd ...

and then you tried to generalize it like this:

	git stream tcp nowait nobody /usr/bin/git-daemon \
        	/usr/bin/git-daemon --inetd ...

For one thing, I just tried to make sure argv[0] does not matter
at all by having this entry in my inetd.conf:

	git stream tcp nowait nobody /git/bin/git-daemon \
        	foobla --inetd ...

/git/bin is where I installed my git.  If I replace foobla with
anything else, it responds just fine.


-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]