summaryrefslogtreecommitdiff
path: root/internal/command/commandargs
diff options
context:
space:
mode:
authorIgor Drozdov <idrozdov@gitlab.com>2021-09-28 19:08:34 +0000
committerIgor Drozdov <idrozdov@gitlab.com>2021-09-28 19:08:34 +0000
commit6d146c217dc1ba78aa4a0c47c59b5b2e7be774d9 (patch)
tree0d70e3e65b0192089d6dd04b0ac8120341ba7de8 /internal/command/commandargs
parenta1ae9e5ad2900d512a58ce64f4ad0f02769c3edd (diff)
parentf40ddda89781aeb156f9b36bdb7d733c55b363c0 (diff)
downloadgitlab-shell-6d146c217dc1ba78aa4a0c47c59b5b2e7be774d9.tar.gz
Merge branch '499-log-me-more' into 'main'
Add more logging to gitlab-sshd See merge request gitlab-org/gitlab-shell!531
Diffstat (limited to 'internal/command/commandargs')
-rw-r--r--internal/command/commandargs/shell.go13
1 files changed, 4 insertions, 9 deletions
diff --git a/internal/command/commandargs/shell.go b/internal/command/commandargs/shell.go
index 589f58d..7a76be5 100644
--- a/internal/command/commandargs/shell.go
+++ b/internal/command/commandargs/shell.go
@@ -1,7 +1,7 @@
package commandargs
import (
- "errors"
+ "fmt"
"regexp"
"github.com/mattn/go-shellwords"
@@ -49,21 +49,16 @@ func (s *Shell) GetArguments() []string {
func (s *Shell) validate() error {
if !s.Env.IsSSHConnection {
- return errors.New("Only SSH allowed")
+ return fmt.Errorf("Only SSH allowed")
}
- if !s.isValidSSHCommand() {
- return errors.New("Invalid SSH command")
+ if err := s.ParseCommand(s.Env.OriginalCommand); err != nil {
+ return fmt.Errorf("Invalid SSH command: %w", err)
}
return nil
}
-func (s *Shell) isValidSSHCommand() bool {
- err := s.ParseCommand(s.Env.OriginalCommand)
- return err == nil
-}
-
func (s *Shell) parseWho() {
for _, argument := range s.Arguments {
if keyId := tryParseKeyId(argument); keyId != "" {