From 4b4963c0e1aa094900951df9e66459443111ccc9 Mon Sep 17 00:00:00 2001 From: Dmitry Ivankov Date: Thu, 11 Aug 2011 16:21:08 +0600 Subject: fast-import: check committer name more strictly The documentation declares following identity format: ( SP)? LT GT where name is any string without LF and LT characters. But fast-import just accepts any string up to first GT instead of checking the whole format, and moreover just writes it as is to the commit object. git-fsck checks for [^<\n]* <[^<>\n]*> format. Note that the space is mandatory. And the space quirk is already handled via extending the string to the left when needed. Modify fast-import input identity format to a slightly stricter one - deny LF, LT and GT in both and . And check for it. This is stricter then git-fsck as fsck accepts "Name> " currently, but soon fsck check will be adjusted likewise. Signed-off-by: Dmitry Ivankov Signed-off-by: Junio C Hamano --- Documentation/git-fast-import.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-fast-import.txt b/Documentation/git-fast-import.txt index 3f5b9126b1..0ca24a89f8 100644 --- a/Documentation/git-fast-import.txt +++ b/Documentation/git-fast-import.txt @@ -413,8 +413,8 @@ Here `` is the person's display name (for example (``cm@example.com''). `LT` and `GT` are the literal less-than (\x3c) and greater-than (\x3e) symbols. These are required to delimit the email address from the other fields in the line. Note that -`` is free-form and may contain any sequence of bytes, except -`LT` and `LF`. It is typically UTF-8 encoded. +`` and `` are free-form and may contain any sequence +of bytes, except `LT`, `GT` and `LF`. `` is typically UTF-8 encoded. The time of the change is specified by `` using the date format that was selected by the \--date-format= command line option. -- cgit v1.2.3