telnet: cleanup comments
seems comments were mangled during the last cleanup. Change-Id: If759f62032705c7baffd3973e9717eb7e8a5d17c Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk> Reviewed-on: http://openocd.zylin.com/752 Tested-by: jenkins Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
This commit is contained in:
parent
246f8492da
commit
40801d21ff
|
@ -155,8 +155,8 @@ static int telnet_new_connection(struct connection *connection)
|
||||||
telnet_write(connection, "\r\n", 2);
|
telnet_write(connection, "\r\n", 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
telnet_write(connection, "\r", 1); /* the prompt is always placed at the line beginning
|
/* the prompt is always placed at the line beginning */
|
||||||
**/
|
telnet_write(connection, "\r", 1);
|
||||||
telnet_prompt(connection);
|
telnet_prompt(connection);
|
||||||
|
|
||||||
/* initialize history */
|
/* initialize history */
|
||||||
|
@ -213,19 +213,11 @@ static int telnet_input(struct connection *connection)
|
||||||
else {
|
else {
|
||||||
if (isprint(*buf_p)) { /* printable character */
|
if (isprint(*buf_p)) { /* printable character */
|
||||||
/* watch buffer size leaving one spare character for
|
/* watch buffer size leaving one spare character for
|
||||||
*string null termination */
|
* string null termination */
|
||||||
if (t_con->line_size == TELNET_LINE_MAX_SIZE-1) {
|
if (t_con->line_size == TELNET_LINE_MAX_SIZE-1) {
|
||||||
/* output audible bell if buffer is full */
|
/* output audible bell if buffer is full
|
||||||
telnet_write(connection, "\x07", 1); /*
|
* "\a" does not work, at least on windows */
|
||||||
*"\a"
|
telnet_write(connection, "\x07", 1);
|
||||||
*does
|
|
||||||
*not
|
|
||||||
*work,
|
|
||||||
*at
|
|
||||||
*least
|
|
||||||
*on
|
|
||||||
*windows
|
|
||||||
**/
|
|
||||||
} else if (t_con->line_cursor == t_con->line_size) {
|
} else if (t_con->line_cursor == t_con->line_size) {
|
||||||
telnet_write(connection, buf_p, 1);
|
telnet_write(connection, buf_p, 1);
|
||||||
t_con->line[t_con->line_size++] = *buf_p;
|
t_con->line[t_con->line_size++] = *buf_p;
|
||||||
|
@ -248,13 +240,10 @@ static int telnet_input(struct connection *connection)
|
||||||
if (*buf_p == 0x1b) { /* escape */
|
if (*buf_p == 0x1b) { /* escape */
|
||||||
t_con->state = TELNET_STATE_ESCAPE;
|
t_con->state = TELNET_STATE_ESCAPE;
|
||||||
t_con->last_escape = '\x00';
|
t_con->last_escape = '\x00';
|
||||||
} else if ((*buf_p == 0xd) || (*buf_p == 0xa)) { /*
|
} else if ((*buf_p == 0xd) || (*buf_p == 0xa)) { /* CR/LF */
|
||||||
*CR/LF
|
|
||||||
**/
|
|
||||||
int retval;
|
int retval;
|
||||||
|
|
||||||
/* skip over combinations with CR/LF and NUL
|
/* skip over combinations with CR/LF and NUL characters */
|
||||||
*characters */
|
|
||||||
if ((bytes_read > 1) && ((*(buf_p + 1) == 0xa) ||
|
if ((bytes_read > 1) && ((*(buf_p + 1) == 0xa) ||
|
||||||
(*(buf_p + 1) == 0xd))) {
|
(*(buf_p + 1) == 0xd))) {
|
||||||
buf_p++;
|
buf_p++;
|
||||||
|
@ -271,10 +260,8 @@ static int telnet_input(struct connection *connection)
|
||||||
if (strcmp(t_con->line, "history") == 0) {
|
if (strcmp(t_con->line, "history") == 0) {
|
||||||
int i;
|
int i;
|
||||||
for (i = 1; i < TELNET_LINE_HISTORY_SIZE; i++) {
|
for (i = 1; i < TELNET_LINE_HISTORY_SIZE; i++) {
|
||||||
/* the t_con->next_history
|
/* the t_con->next_history line contains empty string
|
||||||
*line contains empty string
|
* (unless NULL), thus it is not printed */
|
||||||
*(unless NULL), thus it is
|
|
||||||
*not printed */
|
|
||||||
char *history_line = t_con->history[(t_con->
|
char *history_line = t_con->history[(t_con->
|
||||||
next_history + i) %
|
next_history + i) %
|
||||||
TELNET_LINE_HISTORY_SIZE];
|
TELNET_LINE_HISTORY_SIZE];
|
||||||
|
@ -289,27 +276,23 @@ static int telnet_input(struct connection *connection)
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* save only non-blank not repeating lines
|
/* save only non-blank not repeating lines in the history */
|
||||||
*in the history */
|
|
||||||
char *prev_line = t_con->history[(t_con->current_history > 0) ?
|
char *prev_line = t_con->history[(t_con->current_history > 0) ?
|
||||||
t_con->current_history - 1 : TELNET_LINE_HISTORY_SIZE-1];
|
t_con->current_history - 1 : TELNET_LINE_HISTORY_SIZE-1];
|
||||||
if (*t_con->line && (prev_line == NULL ||
|
if (*t_con->line && (prev_line == NULL ||
|
||||||
strcmp(t_con->line, prev_line))) {
|
strcmp(t_con->line, prev_line))) {
|
||||||
/* if the history slot is already
|
/* if the history slot is already taken, free it */
|
||||||
*taken, free it */
|
|
||||||
if (t_con->history[t_con->next_history])
|
if (t_con->history[t_con->next_history])
|
||||||
free(t_con->history[t_con->next_history]);
|
free(t_con->history[t_con->next_history]);
|
||||||
|
|
||||||
/* add line to history */
|
/* add line to history */
|
||||||
t_con->history[t_con->next_history] = strdup(t_con->line);
|
t_con->history[t_con->next_history] = strdup(t_con->line);
|
||||||
|
|
||||||
/* wrap history at
|
/* wrap history at TELNET_LINE_HISTORY_SIZE */
|
||||||
*TELNET_LINE_HISTORY_SIZE */
|
|
||||||
t_con->next_history = (t_con->next_history + 1) %
|
t_con->next_history = (t_con->next_history + 1) %
|
||||||
TELNET_LINE_HISTORY_SIZE;
|
TELNET_LINE_HISTORY_SIZE;
|
||||||
|
|
||||||
/* current history line starts at
|
/* current history line starts at the new entry */
|
||||||
*the new entry */
|
|
||||||
t_con->current_history =
|
t_con->current_history =
|
||||||
t_con->next_history;
|
t_con->next_history;
|
||||||
|
|
||||||
|
@ -320,10 +303,8 @@ static int telnet_input(struct connection *connection)
|
||||||
|
|
||||||
t_con->line_size = 0;
|
t_con->line_size = 0;
|
||||||
|
|
||||||
t_con->line_cursor = -1; /* to supress prompt
|
/* to suppress prompt in log callback during command execution */
|
||||||
*in log callback
|
t_con->line_cursor = -1;
|
||||||
*during command
|
|
||||||
*execution */
|
|
||||||
|
|
||||||
retval = command_run_line(command_context, t_con->line);
|
retval = command_run_line(command_context, t_con->line);
|
||||||
|
|
||||||
|
@ -332,25 +313,14 @@ static int telnet_input(struct connection *connection)
|
||||||
if (retval == ERROR_COMMAND_CLOSE_CONNECTION)
|
if (retval == ERROR_COMMAND_CLOSE_CONNECTION)
|
||||||
return ERROR_SERVER_REMOTE_CLOSED;
|
return ERROR_SERVER_REMOTE_CLOSED;
|
||||||
|
|
||||||
telnet_write(connection, "\r", 1); /*
|
/* the prompt is always * placed at the line beginning */
|
||||||
*the
|
telnet_write(connection, "\r", 1);
|
||||||
*prompt
|
|
||||||
*is
|
|
||||||
*always
|
|
||||||
*placed
|
|
||||||
*at
|
|
||||||
*the
|
|
||||||
*line
|
|
||||||
*beginning
|
|
||||||
**/
|
|
||||||
retval = telnet_prompt(connection);
|
retval = telnet_prompt(connection);
|
||||||
if (retval == ERROR_SERVER_REMOTE_CLOSED)
|
if (retval == ERROR_SERVER_REMOTE_CLOSED)
|
||||||
return ERROR_SERVER_REMOTE_CLOSED;
|
return ERROR_SERVER_REMOTE_CLOSED;
|
||||||
|
|
||||||
} else if ((*buf_p == 0x7f) || (*buf_p == 0x8)) { /*
|
} else if ((*buf_p == 0x7f) || (*buf_p == 0x8)) { /* delete character */
|
||||||
*delete
|
|
||||||
*character
|
|
||||||
**/
|
|
||||||
if (t_con->line_cursor > 0) {
|
if (t_con->line_cursor > 0) {
|
||||||
if (t_con->line_cursor != t_con->line_size) {
|
if (t_con->line_cursor != t_con->line_size) {
|
||||||
int i;
|
int i;
|
||||||
|
@ -372,10 +342,8 @@ static int telnet_input(struct connection *connection)
|
||||||
} else {
|
} else {
|
||||||
t_con->line_size--;
|
t_con->line_size--;
|
||||||
t_con->line_cursor--;
|
t_con->line_cursor--;
|
||||||
/* back space: move the
|
/* back space: move the 'printer' head one char
|
||||||
*'printer' head one char
|
* back, overwrite with space, move back again */
|
||||||
*back, overwrite with
|
|
||||||
*space, move back again */
|
|
||||||
telnet_write(connection, "\b \b", 3);
|
telnet_write(connection, "\b \b", 3);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue