Diff
1diff --git a/go.mod b/go.mod
2index 1b4fc2479e06800443fd641be396ccfc318d3dab..673f1b132e2959f53c8107fe7838998a434ee3a0 100644
3--- a/go.mod
4+++ b/go.mod
5@@ -24,7 +24,7 @@ require (
6 github.com/charmbracelet/git-lfs-transfer v0.1.1-0.20230725143853-5dd0632f9245
7 github.com/charmbracelet/keygen v0.4.3
8 github.com/charmbracelet/log v0.2.3
9- github.com/charmbracelet/ssh v0.0.0-20230720143903-5bdd92839155
10+ github.com/charmbracelet/ssh v0.0.0-20230822194956-1a051f898e09
11 github.com/go-jose/go-jose/v3 v3.0.0
12 github.com/gobwas/glob v0.2.3
13 github.com/gogs/git-module v1.8.2
14diff --git a/go.sum b/go.sum
15index 9a44f257d9c681b35cced7eb261999fe57a89d6f..94541c2b39b2dee144ccfa5f8c85b0fb23c4a95c 100644
16--- a/go.sum
17+++ b/go.sum
18@@ -37,6 +37,8 @@ github.com/charmbracelet/log v0.2.3 h1:YVmBhJtpGL7nW/nlf5u+SEloU8XYljxozGzZpgwIv
19 github.com/charmbracelet/log v0.2.3/go.mod h1:ZApwwzDbbETVTIRTk7724yQRJAXIktt98yGVMMaa3y8=
20 github.com/charmbracelet/ssh v0.0.0-20230720143903-5bdd92839155 h1:vJqYhlL0doAWQPz+EX/hK5x/ZYguoua773oRz77zYKo=
21 github.com/charmbracelet/ssh v0.0.0-20230720143903-5bdd92839155/go.mod h1:F1vgddWsb/Yr/OZilFeRZEh5sE/qU0Dt1mKkmke6Zvg=
22+github.com/charmbracelet/ssh v0.0.0-20230822194956-1a051f898e09 h1:ZDIQmTtohv0S/AAYE//w8mYTxCzqphhF1+4ACPDMiLU=
23+github.com/charmbracelet/ssh v0.0.0-20230822194956-1a051f898e09/go.mod h1:F1vgddWsb/Yr/OZilFeRZEh5sE/qU0Dt1mKkmke6Zvg=
24 github.com/charmbracelet/wish v1.1.1 h1:KdICASKd2oh2JPvk1Z4CJtAi97cFErXF7NKienPICO4=
25 github.com/charmbracelet/wish v1.1.1/go.mod h1:xh4KZpSULw+Xqb9bcbhw92QAinVB75CVLWrFuyY6IVs=
26 github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY=
27diff --git a/server/ssh/middleware.go b/server/ssh/middleware.go
28index 9a387f49b50f6d3f206a201d6b81905953275c30..300dd3798b2b71670dd2e036b0908b400b02a70f 100644
29--- a/server/ssh/middleware.go
30+++ b/server/ssh/middleware.go
31@@ -68,6 +68,13 @@ func CommandMiddleware(sh ssh.Handler) ssh.Handler {
32 cmd.GitUploadArchiveCommand(),
33 cmd.GitReceivePackCommand(),
34 cmd.RepoCommand(),
35+ cmd.SettingsCommand(),
36+ cmd.UserCommand(),
37+ cmd.InfoCommand(),
38+ cmd.PubkeyCommand(),
39+ cmd.SetUsernameCommand(),
40+ cmd.JWTCommand(),
41+ cmd.TokenCommand(),
42 )
43
44 if cfg.LFS.Enabled {
45@@ -92,25 +99,6 @@ func CommandMiddleware(sh ssh.Handler) ssh.Handler {
46 rootCmd.SetErr(s.Stderr())
47 rootCmd.SetContext(ctx)
48
49- user := proto.UserFromContext(ctx)
50- isAdmin := cmd.IsPublicKeyAdmin(cfg, s.PublicKey()) || (user != nil && user.IsAdmin())
51- if user != nil || isAdmin {
52- if isAdmin {
53- rootCmd.AddCommand(
54- cmd.SettingsCommand(),
55- cmd.UserCommand(),
56- )
57- }
58-
59- rootCmd.AddCommand(
60- cmd.InfoCommand(),
61- cmd.PubkeyCommand(),
62- cmd.SetUsernameCommand(),
63- cmd.JWTCommand(),
64- cmd.TokenCommand(),
65- )
66- }
67-
68 if err := rootCmd.ExecuteContext(ctx); err != nil {
69 s.Exit(1) // nolint: errcheck
70 return