refname_is_safe(): improve docstring
Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Jeff King <peff@peff.net>
This commit is contained in:
parent
a935ebd4a7
commit
03b32623d8
16
refs.c
16
refs.c
@ -341,13 +341,17 @@ static struct ref_dir *get_ref_dir(struct ref_entry *entry)
|
||||
}
|
||||
|
||||
/*
|
||||
* Check if a refname is safe.
|
||||
* For refs that start with "refs/" we consider it safe as long they do
|
||||
* not try to resolve to outside of refs/.
|
||||
* Return true iff refname is minimally safe. "Safe" here means that
|
||||
* deleting a loose reference by this name will not do any damage, for
|
||||
* example by causing a file that is not a reference to be deleted.
|
||||
* This function does not check that the reference name is legal; for
|
||||
* that, use check_refname_format().
|
||||
*
|
||||
* For all other refs we only consider them safe iff they only contain
|
||||
* upper case characters and '_' (like "HEAD" AND "MERGE_HEAD", and not like
|
||||
* "config").
|
||||
* We consider a refname that starts with "refs/" to be safe as long
|
||||
* as any ".." components that it might contain do not escape "refs/".
|
||||
* Names that do not start with "refs/" are considered safe iff they
|
||||
* consist entirely of upper case characters and '_' (like "HEAD" and
|
||||
* "MERGE_HEAD" but not "config" or "FOO/BAR").
|
||||
*/
|
||||
static int refname_is_safe(const char *refname)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user