You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

51 lines
2.6 KiB

Index: src/code.gitea.io/gitea/models/repo.go
--- src/code.gitea.io/gitea/models/repo.go.orig 2019-09-20 17:27:29.000000000 +0200
+++ src/code.gitea.io/gitea/models/repo.go 2019-09-20 17:32:46.389750000 +0200
@@ -830,11 +830,23 @@
repo.Owner = repo.mustOwner(e)
cl := new(CloneLink)
if setting.SSH.Port != 22 {
- cl.SSH = fmt.Sprintf("ssh://%s@%s:%d/%s/%s.git", sshUser, setting.SSH.Domain, setting.SSH.Port, repo.Owner.Name, repoName)
+ if setting.SSH.StartBuiltinServer {
+ cl.SSH = fmt.Sprintf("ssh://%s:%d/%s/%s.git", setting.SSH.Domain, setting.SSH.Port, repo.Owner.Name, repoName)
+ } else {
+ cl.SSH = fmt.Sprintf("ssh://%s@%s:%d/%s/%s.git", sshUser, setting.SSH.Domain, setting.SSH.Port, repo.Owner.Name, repoName)
+ }
} else if setting.Repository.UseCompatSSHURI {
- cl.SSH = fmt.Sprintf("ssh://%s@%s/%s/%s.git", sshUser, setting.SSH.Domain, repo.Owner.Name, repoName)
+ if setting.SSH.StartBuiltinServer {
+ cl.SSH = fmt.Sprintf("ssh://%s/%s/%s.git", setting.SSH.Domain, repo.Owner.Name, repoName)
+ } else {
+ cl.SSH = fmt.Sprintf("ssh://%s@%s/%s/%s.git", sshUser, setting.SSH.Domain, repo.Owner.Name, repoName)
+ }
} else {
- cl.SSH = fmt.Sprintf("%s@%s:%s/%s.git", sshUser, setting.SSH.Domain, repo.Owner.Name, repoName)
+ if setting.SSH.StartBuiltinServer {
+ cl.SSH = fmt.Sprintf("%s:%s/%s.git", setting.SSH.Domain, repo.Owner.Name, repoName)
+ } else {
+ cl.SSH = fmt.Sprintf("%s@%s:%s/%s.git", sshUser, setting.SSH.Domain, repo.Owner.Name, repoName)
+ }
}
cl.HTTPS = ComposeHTTPSCloneURL(repo.Owner.Name, repoName)
return cl
Index: src/code.gitea.io/gitea/models/ssh_key.go
--- src/code.gitea.io/gitea/models/ssh_key.go.orig 2019-09-20 17:32:46.390065000 +0200
+++ src/code.gitea.io/gitea/models/ssh_key.go 2019-09-20 17:39:15.030573000 +0200
@@ -36,7 +36,7 @@
const (
tplCommentPrefix = `# gitea public key`
- tplPublicKey = tplCommentPrefix + "\n" + `command="%s --config='%s' serv key-%d",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty %s` + "\n"
+ tplPublicKey = tplCommentPrefix + "\n" + `command="%s --config='%s' key-%d",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty %s` + "\n"
)
var sshOpLocker sync.Mutex
@@ -81,7 +81,7 @@
// AuthorizedString returns formatted public key string for authorized_keys file.
func (key *PublicKey) AuthorizedString() string {
- return fmt.Sprintf(tplPublicKey, setting.AppPath, setting.CustomConf, key.ID, key.Content)
+ return fmt.Sprintf(tplPublicKey, "@l_prefix@/sbin/gitea-serv", setting.CustomConf, key.ID, key.Content)
}
func extractTypeFromBase64Key(key string) (string, error) {