Browse Source

Make sure that a mirror can't be written to by http or ssh

for-closed-social
Peter Smit 9 years ago
parent
commit
f9454cc32c
2 changed files with 10 additions and 0 deletions
  1. +5
    -0
      cmd/serve.go
  2. +5
    -0
      routers/repo/http.go

+ 5
- 0
cmd/serve.go View File

@ -164,6 +164,11 @@ func runServ(c *cli.Context) {
println("You have no right to write this repository")
log.GitLogger.Fatal(2, "User %s has no right to write repository %s", user.Name, repoPath)
}
if repo.IsMirror {
println("You can't write to a mirror repository")
log.GitLogger.Fatal(2, "User %s tried to write to a mirror repository %s", user.Name, repoPath)
}
case isRead:
if !repo.IsPrivate {
break

+ 5
- 0
routers/repo/http.go View File

@ -158,6 +158,11 @@ func Http(ctx *middleware.Context) {
return
}
}
if !isPull && repo.IsMirror {
ctx.Handle(401, "can't push to mirror", nil)
return
}
}
}

Loading…
Cancel
Save