server: Make "exit" command behave consistently
Before this fix, the "exit" command behaved differently depending on where it was called from: - "exit" in a telnet session: Session disconnected. - "exit" in a Tcl session: Empty response sent but the session remained connected. - "exit" in a script (outside of Telnet or Tcl): OpenOCD exited with code 0. Based on the help and documentation "exit" was apparently not intended for these cases. What's more, if "exit" is allowed in Tcl scripts, user may confuse it with the Tcl's native "exit" command that is not available in OpenOCD (it is shadowed with this OpenOCD's "exit" command). This fix makes the behavior of "exit" consistent: - "exit" in a telnet session: Session disconnected (no change). - "exit" in a Tcl session: Session disconnected (same as for telnet). - "exit" in a script: Notify the user that "exit" is deprecated outside of telnet/tcl but still shut down OpenOCD (to preserve the original behavior). Update the documentation to make it very clear to users when to use "exit" vs. "shutdown". Change-Id: I790495330e1fa705b34097a1347fdc57aaa86de1 Signed-off-by: Jan Matyas <jan.matyas@codasip.com> Reviewed-on: https://review.openocd.org/c/openocd/+/9380 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
This commit is contained in:
committed by
Antonio Borneo
parent
5b3db97c42
commit
0c6fe74351
@@ -54,5 +54,6 @@ struct telnet_service {
|
||||
int telnet_init(char *banner);
|
||||
int telnet_register_commands(struct command_context *command_context);
|
||||
void telnet_service_free(void);
|
||||
bool telnet_is_from_telnet_session(struct command_context *cmd_ctx);
|
||||
|
||||
#endif /* OPENOCD_SERVER_TELNET_SERVER_H */
|
||||
|
||||
Reference in New Issue
Block a user