]> jfr.im git - irc/unrealircd/unrealircd.git/commitdiff
dead_link() was not sending the error message to the user.
authorBram Matthys <redacted>
Fri, 29 Dec 2017 08:15:11 +0000 (09:15 +0100)
committerBram Matthys <redacted>
Fri, 29 Dec 2017 08:15:11 +0000 (09:15 +0100)
This affected the following errors:
* Max SendQ exceeded
* Excess Flood
* Flood from unknown connection
* SSL Handshake flood detected
* Rejected link without SSL/TLS
* Various errors from the websocket module
* Other errors generated by 3rd party modules

src/ircd.c

index 3f09a144c8c05ae0e1fa822e7d5e9e444d8889d2..e0d34aaa2952ceaca2bd0d6404a79d96b3b71c3e 100644 (file)
@@ -652,6 +652,7 @@ EVENT(check_deadsockets)
 #ifdef DEBUGMODE
                        ircd_log(LOG_ERROR, "Closing deadsock: %d/%s", cptr->fd, cptr->name);
 #endif
+                       cptr->flags &= ~FLAGS_DEADSOCKET; /* CPR. So we send the error. */
                        (void)exit_client(cptr, cptr, &me, cptr->local->error_str ? cptr->local->error_str : "Dead socket");
                        continue;
                }
@@ -664,6 +665,7 @@ EVENT(check_deadsockets)
 #ifdef DEBUGMODE
                        ircd_log(LOG_ERROR, "Closing deadsock: %d/%s", cptr->fd, cptr->name);
 #endif
+                       cptr->flags &= ~FLAGS_DEADSOCKET; /* CPR. So we send the error. */
                        (void)exit_client(cptr, cptr, &me, cptr->local->error_str ? cptr->local->error_str : "Dead socket");
                        continue;
                }