projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Refuse to create funny refs in clone-pack, git-fetch and receive-pack.
[git.git]
/
receive-pack.c
diff --git
a/receive-pack.c
b/receive-pack.c
index
06857eb
..
8f157bc
100644
(file)
--- a/
receive-pack.c
+++ b/
receive-pack.c
@@
-95,6
+95,10
@@
static int update(const char *name,
char new_hex[60], *old_hex, *lock_name;
int newfd, namelen, written;
char new_hex[60], *old_hex, *lock_name;
int newfd, namelen, written;
+ if (!strncmp(name, "refs/", 5) && check_ref_format(name + 5))
+ return error("refusing to create funny ref '%s' locally",
+ name);
+
namelen = strlen(name);
lock_name = xmalloc(namelen + 10);
memcpy(lock_name, name, namelen);
namelen = strlen(name);
lock_name = xmalloc(namelen + 10);
memcpy(lock_name, name, namelen);