@@ -14,15 +14,14 @@ import (
1414
1515// handleCommand executes an SSH command with privilege validation
1616func (s * Server ) handleCommand (logger * log.Entry , session ssh.Session , privilegeResult PrivilegeCheckResult , winCh <- chan ssh.Window ) {
17- localUser := privilegeResult .User
1817 hasPty := winCh != nil
1918
2019 commandType := "command"
2120 if hasPty {
2221 commandType = "Pty command"
2322 }
2423
25- logger .Infof ("executing %s for %s from %s : %s" , commandType , localUser . Username , session . RemoteAddr () , safeLogCommand (session .Command ()))
24+ logger .Infof ("executing %s: %s" , commandType , safeLogCommand (session .Command ()))
2625
2726 execCmd , err := s .createCommand (privilegeResult , session , hasPty )
2827 if err != nil {
@@ -38,7 +37,7 @@ func (s *Server) handleCommand(logger *log.Entry, session ssh.Session, privilege
3837 logger .Debugf (errWriteSession , writeErr )
3938 }
4039 if err := session .Exit (1 ); err != nil {
41- logger . Debugf ( errExitSession , err )
40+ logSessionExitError ( logger , err )
4241 }
4342 return
4443 }
@@ -74,7 +73,7 @@ func (s *Server) executeCommand(logger *log.Entry, session ssh.Session, execCmd
7473 if err != nil {
7574 logger .Errorf ("create stdin pipe: %v" , err )
7675 if err := session .Exit (1 ); err != nil {
77- logger . Debugf ( errExitSession , err )
76+ logSessionExitError ( logger , err )
7877 }
7978 return false
8079 }
@@ -93,7 +92,7 @@ func (s *Server) executeCommand(logger *log.Entry, session ssh.Session, execCmd
9392 logger .Errorf ("command start failed: %v" , err )
9493 // no user message for exec failure, just exit
9594 if err := session .Exit (1 ); err != nil {
96- logger . Debugf ( errExitSession , err )
95+ logSessionExitError ( logger , err )
9796 }
9897 return false
9998 }
@@ -135,7 +134,7 @@ func (s *Server) waitForCommandCleanup(logger *log.Entry, session ssh.Session, e
135134 }
136135
137136 if err := session .Exit (130 ); err != nil {
138- logger . Debugf ( errExitSession , err )
137+ logSessionExitError ( logger , err )
139138 }
140139 return false
141140
@@ -160,20 +159,20 @@ func (s *Server) handleCommandCompletion(logger *log.Entry, session ssh.Session,
160159func (s * Server ) handleSessionExit (session ssh.Session , err error , logger * log.Entry ) {
161160 if err == nil {
162161 if err := session .Exit (0 ); err != nil {
163- logger . Debugf ( errExitSession , err )
162+ logSessionExitError ( logger , err )
164163 }
165164 return
166165 }
167166
168167 var exitError * exec.ExitError
169168 if errors .As (err , & exitError ) {
170169 if err := session .Exit (exitError .ExitCode ()); err != nil {
171- logger . Debugf ( errExitSession , err )
170+ logSessionExitError ( logger , err )
172171 }
173172 } else {
174173 logger .Debugf ("non-exit error in command execution: %v" , err )
175174 if err := session .Exit (1 ); err != nil {
176- logger . Debugf ( errExitSession , err )
175+ logSessionExitError ( logger , err )
177176 }
178177 }
179178}
0 commit comments