diff options
author | Marin Hannache <git@mareo.fr> | 2023-01-23 07:54:09 +0000 |
---|---|---|
committer | Igor Drozdov <idrozdov@gitlab.com> | 2023-01-23 07:54:09 +0000 |
commit | 51ea0f50f52d5d1dade02aadff3c163a0a792779 (patch) | |
tree | d36cc06a14545bf627a988dbd2aec60c85cc5f9b /cmd/gitlab-shell/command | |
parent | 977a7e80f03db2d2e2646abfc6ad9d95bfc71fb9 (diff) | |
download | gitlab-shell-51ea0f50f52d5d1dade02aadff3c163a0a792779.tar.gz |
Add support for the gssapi-with-mic auth method
Diffstat (limited to 'cmd/gitlab-shell/command')
-rw-r--r-- | cmd/gitlab-shell/command/command.go | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/cmd/gitlab-shell/command/command.go b/cmd/gitlab-shell/command/command.go index 08b3af6..b2a0266 100644 --- a/cmd/gitlab-shell/command/command.go +++ b/cmd/gitlab-shell/command/command.go @@ -44,6 +44,20 @@ func NewWithKey(gitlabKeyId string, env sshenv.Env, config *config.Config, readW return nil, disallowedcommand.Error } +func NewWithKrb5Principal(gitlabKrb5Principal string, env sshenv.Env, config *config.Config, readWriter *readwriter.ReadWriter) (command.Command, error) { + args, err := Parse(nil, env) + if err != nil { + return nil, err + } + + args.GitlabKrb5Principal = gitlabKrb5Principal + if cmd := Build(args, config, readWriter); cmd != nil { + return cmd, nil + } + + return nil, disallowedcommand.Error +} + func Parse(arguments []string, env sshenv.Env) (*commandargs.Shell, error) { args := &commandargs.Shell{Arguments: arguments, Env: env} |