From: Junio C Hamano <gitster@pobox.com>
To: Rasmus Villemoes <rv@rasmusvillemoes.dk>
Cc: git <git@vger.kernel.org>, Jeff King <peff@peff.net>,
Joe Perches <joe@perches.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [RFC/PATCH 1/2] config: Add safe-include directive
Date: Mon, 06 Oct 2014 10:58:36 -0700 [thread overview]
Message-ID: <xmqq7g0djd0z.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <878uktwnqs.fsf@rasmusvillemoes.dk> (Rasmus Villemoes's message of "Mon, 06 Oct 2014 11:28:43 +0200")
Rasmus Villemoes <rv@rasmusvillemoes.dk> writes:
> Junio C Hamano <gitster@pobox.com> wrote:
>
>> (by the way, we do not do dashes in names for configuration by
>> convention)
>
> OK. Actually, I now think I'd prefer a subsection [include "safe"], but
> I don't have any strong preferences regarding the names.
I think Peff mentioned something about having the second level
between include and path, so I'll defer it to him.
>> That syntax _could_ be just a relative path (e.g. project.gitconfig names
>> the file with that name at the top-level of the working tree), and if we are
>> to do so, we should forbid any relative path that escapes from the working
>> tree (e.g. ../project.gitconfig is forbidden, but down/down/../../.gitconfig
>> could be OK as it is the same as .gitconfig). For that matter, anything with
>> /./ and /../ in it can safely be forbidden without losing functionality.
>
> I agree that it would be most useful to interpret relative paths as
> being relative to the working tree. I'm not sure what would be gained by
> checking for ./ and ../ components, a symlink could easily be used to
> circumvent that.
If the "limit to the the working tree" is the reason to suggest a
relative path to be taken as relative to the working tree, which my
suggestion clearly was, the reader should be intelligent enough to
infer that an implementation working in that mode should make sure
symlinks and any other means do not step outside it.
And as you noticed that, you apparently are ;-)
> One might (ab)use the feature to only use some settings from a global
> file, e.g.
>
> [include "safe"]
> whitelist = !foo.*
> path = ~/extra.gitconfig
You do not have to write something you do not want to use in your
own ~/extra.gitconfig that is under your $HOME/, so I'd prefer to
explicitly forbidding such a use case at least in the beginning.
next prev parent reply other threads:[~2014-10-06 17:58 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.44L0.1409241106100.1580-100000@iolanthe.rowland.org>
[not found] ` <1411591401-5874-1-git-send-email-sojka@merica.cz>
[not found] ` <1411591401-5874-4-git-send-email-sojka@merica.cz>
[not found] ` <20140925150353.GA15325@kroah.com>
2014-09-25 15:48 ` project wide: git config entry for [diff] renames=true Joe Perches
2014-09-25 18:00 ` Jeff King
2014-09-25 18:06 ` Joe Perches
2014-09-25 18:43 ` Junio C Hamano
[not found] ` <20140925180005.GA11755-AdEPDUrAXsQ@public.gmane.org>
2014-09-25 18:53 ` Junio C Hamano
2014-09-25 18:55 ` Junio C Hamano
2014-10-03 1:37 ` [RFC/PATCH 0/2] Introduce safe-include config feature Rasmus Villemoes
2014-10-03 1:37 ` [RFC/PATCH 1/2] config: Add safe-include directive Rasmus Villemoes
2014-10-03 5:27 ` Junio C Hamano
2014-10-03 5:34 ` Junio C Hamano
2014-10-03 18:52 ` Junio C Hamano
2014-10-06 9:28 ` Rasmus Villemoes
2014-10-06 17:58 ` Junio C Hamano [this message]
2014-10-03 1:37 ` [RFC/PATCH 2/2] config: Add test of safe-include feature Rasmus Villemoes
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqq7g0djd0z.fsf@gitster.dls.corp.google.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=joe@perches.com \
--cc=peff@peff.net \
--cc=rv@rasmusvillemoes.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).