aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRunxi Yu <me@runxiyu.org>2025-02-16 01:04:38 +0800
committerRunxi Yu <me@runxiyu.org>2025-02-16 01:04:38 +0800
commitd777be4a9a84b5493f11883946f97e7b851d0832 (patch)
tree98460e161d10ab724466f15ffc97fe349d25773d
parentssh_*: Use pure go-git SSH handling (receive and upload) (diff)
downloadforge-d777be4a9a84b5493f11883946f97e7b851d0832.tar.gz
forge-d777be4a9a84b5493f11883946f97e7b851d0832.tar.zst
forge-d777be4a9a84b5493f11883946f97e7b851d0832.zip
ssh_*: Pass pubkey to SSH handlers
-rw-r--r--ssh_handle_receive_pack.go2
-rw-r--r--ssh_handle_upload_pack.go2
-rw-r--r--ssh_server.go4
3 files changed, 4 insertions, 4 deletions
diff --git a/ssh_handle_receive_pack.go b/ssh_handle_receive_pack.go
index 69af8f5..3395e24 100644
--- a/ssh_handle_receive_pack.go
+++ b/ssh_handle_receive_pack.go
@@ -8,7 +8,7 @@ import (
transport_server "github.com/go-git/go-git/v5/plumbing/transport/server"
)
-func ssh_handle_receive_pack(session glider_ssh.Session, repo_identifier string) (err error) {
+func ssh_handle_receive_pack(session glider_ssh.Session, pubkey string, repo_identifier string) (err error) {
repo_path, err := get_repo_path_from_ssh_path(session.Context(), repo_identifier)
if err != nil {
return err
diff --git a/ssh_handle_upload_pack.go b/ssh_handle_upload_pack.go
index 8f7d9c9..7812f1a 100644
--- a/ssh_handle_upload_pack.go
+++ b/ssh_handle_upload_pack.go
@@ -8,7 +8,7 @@ import (
"github.com/go-git/go-git/v5/plumbing/transport/server"
)
-func ssh_handle_upload_pack(session glider_ssh.Session, repo_identifier string) (err error) {
+func ssh_handle_upload_pack(session glider_ssh.Session, pubkey string, repo_identifier string) (err error) {
repo_path, err := get_repo_path_from_ssh_path(session.Context(), repo_identifier)
if err != nil {
return err
diff --git a/ssh_server.go b/ssh_server.go
index b3a6a52..c95305e 100644
--- a/ssh_server.go
+++ b/ssh_server.go
@@ -56,13 +56,13 @@ func serve_ssh(listener net.Listener) error {
fmt.Fprintln(session.Stderr(), "Too many arguments\r")
return
}
- err = ssh_handle_upload_pack(session, cmd[1])
+ err = ssh_handle_upload_pack(session, client_public_key_string, cmd[1])
case "git-receive-pack":
if len(cmd) > 2 {
fmt.Fprintln(session.Stderr(), "Too many arguments\r")
return
}
- err = ssh_handle_receive_pack(session, cmd[1])
+ err = ssh_handle_receive_pack(session, client_public_key_string, cmd[1])
default:
fmt.Fprintln(session.Stderr(), "Unsupported command: "+cmd[0]+"\r")
return