-static int rlogin_receive (Socket s, int urgent, char *data, int len) {
- if (!len) {
+static int rlogin_receive (Socket skt, int urgent, char *data, int len) {
+ if (urgent==3) {
+ /* A socket error has occurred. */
+ sk_close(s);
+ s = NULL;
+ connection_fatal(data);
+ return 0;
+ } else if (!len) {