X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=telnet.c;h=8ce3cf4fb8fbb6e1e76ebf66344c4238eef67969;hb=3b20d71a7ee9b8efa00bba86ea16dc52be4dd3ff;hp=5c5d2ce3818feb4b46186fc0a6827a8a3401a130;hpb=3270c74f9e72136e396775cf2d071c3a358e1489;p=PuTTY.git diff --git a/telnet.c b/telnet.c index 5c5d2ce3..8ce3cf4f 100644 --- a/telnet.c +++ b/telnet.c @@ -575,7 +575,8 @@ static int telnet_closing(Plug plug, char *error_msg, int error_code, } if (error_msg) { /* A socket error has occurred. */ - connection_fatal(error_msg); + logevent(error_msg); + connection_fatal("%s", error_msg); } /* Otherwise, the remote side closed the connection normally. */ return 0; } @@ -636,7 +637,7 @@ static char *telnet_init(char *host, int port, char **realhost, int nodelay) sprintf(buf, "Connecting to %.100s port %d", addrbuf, port); logevent(buf); } - s = sk_new(addr, port, 0, 1, nodelay, &fn_table_ptr); + s = new_connection(addr, *realhost, port, 0, 1, nodelay, &fn_table_ptr); if ((err = sk_socket_error(s))) return err; @@ -848,6 +849,12 @@ static int telnet_ldisc(int option) return FALSE; } +static int telnet_exitcode(void) +{ + /* Telnet doesn't transmit exit codes back to the client */ + return 0; +} + Backend telnet_backend = { telnet_init, telnet_send, @@ -855,6 +862,7 @@ Backend telnet_backend = { telnet_size, telnet_special, telnet_socket, + telnet_exitcode, telnet_sendok, telnet_ldisc, telnet_unthrottle,