From ca96e04e5fafc179f2b0a5460754e0fb4fe9e2d8 Mon Sep 17 00:00:00 2001
From: Unknwon <u@gogs.io>
Date: Mon, 30 Nov 2015 15:40:05 -0500
Subject: [PATCH] #1681 carry --config flag for builtin SSH

---
 modules/ssh/ssh.go | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/modules/ssh/ssh.go b/modules/ssh/ssh.go
index fec43b7901..12e5892945 100644
--- a/modules/ssh/ssh.go
+++ b/modules/ssh/ssh.go
@@ -65,7 +65,10 @@ func handleServerConn(keyID string, chans <-chan ssh.NewChannel) {
 					cmdName := strings.TrimLeft(payload, "'()")
 					os.Setenv("SSH_ORIGINAL_COMMAND", cmdName)
 					log.Trace("Payload: %v", cmdName)
-					cmd := exec.Command(setting.AppPath, "serv", "key-"+keyID)
+
+					args := []string{"serv", "key-" + keyID, "--config=" + setting.CustomConf}
+					log.Trace("Arguments: %v", args)
+					cmd := exec.Command(setting.AppPath, args...)
 
 					stdout, err := cmd.StdoutPipe()
 					if err != nil {
@@ -153,6 +156,7 @@ func Listen(port int) {
 		if err != nil {
 			panic(fmt.Sprintf("Fail to generate private key: %v - %s", err, stderr))
 		}
+		log.Trace("New private key is generateed: %s", keyPath)
 	}
 
 	privateBytes, err := ioutil.ReadFile(keyPath)