summaryrefslogtreecommitdiffstats
path: root/cmd
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2015-11-23 22:32:07 -0500
committerUnknwon <u@gogs.io>2015-11-23 22:32:07 -0500
commit0128036514ed40b2c878053e633762a8cffed74d (patch)
treeb268fd74611c9307bf0cd946ca7d804b6b265386 /cmd
parentec8d41765d507e1f0b04ccf94dc934a0026498f2 (diff)
downloadgitea-0128036514ed40b2c878053e633762a8cffed74d.tar.gz
gitea-0128036514ed40b2c878053e633762a8cffed74d.zip
#1681 some fixes for builtin SSH server on Windows
Diffstat (limited to 'cmd')
-rw-r--r--cmd/serve.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/cmd/serve.go b/cmd/serve.go
index b6ab9bb860..3d299e8875 100644
--- a/cmd/serve.go
+++ b/cmd/serve.go
@@ -65,7 +65,7 @@ func parseCmd(cmd string) (string, string) {
}
var (
- COMMANDS = map[string]models.AccessMode{
+ allowedCommands = map[string]models.AccessMode{
"git-upload-pack": models.ACCESS_MODE_READ,
"git-upload-archive": models.ACCESS_MODE_READ,
"git-receive-pack": models.ACCESS_MODE_WRITE,
@@ -163,7 +163,7 @@ func runServ(c *cli.Context) {
fail("Internal error", "Failed to get repository: %v", err)
}
- requestedMode, has := COMMANDS[verb]
+ requestedMode, has := allowedCommands[verb]
if !has {
fail("Unknown git command", "Unknown git command %s", verb)
}
@@ -234,6 +234,11 @@ func runServ(c *cli.Context) {
uuid := uuid.NewV4().String()
os.Setenv("uuid", uuid)
+ // Special handle for Windows.
+ if setting.IsWindows {
+ verb = strings.Replace(verb, "-", " ", 1)
+ }
+
var gitcmd *exec.Cmd
verbs := strings.Split(verb, " ")
if len(verbs) == 2 {