]> arthur.barton.de Git - ngircd.git/commitdiff
Spoofed prefixes: Really kill connection on non-server links
authorAlexander Barton <alex@barton.de>
Tue, 18 Mar 2014 15:27:03 +0000 (16:27 +0100)
committerAlexander Barton <alex@barton.de>
Wed, 19 Mar 2014 01:31:06 +0000 (02:31 +0100)
This fixes commit 6cbe1308 which only killed the connection when the
spoofed prefix itself belonged to a non-server client.

(cherry picked from commit 5009ab3e8c5a6fe7db5c5ad1d3fdc8aecfc64b55)

src/ngircd/parse.c

index 2c7ba94d5a1e793cf37b25d8c25f3e36185c96d4..ba4d8f5b3a434b3382887a5b6bf71217b41e9766 100644 (file)
@@ -345,7 +345,7 @@ Validate_Prefix( CONN_ID Idx, REQUEST *Req, bool *Closed )
        /* check if the client named in the prefix is expected
         * to come from that direction */
        if (Client_NextHop(c) != client) {
-               if (Client_Type(c) != CLIENT_SERVER) {
+               if (Client_Type(client) != CLIENT_SERVER) {
                        Log(LOG_ERR,
                            "Spoofed prefix \"%s\" from \"%s\" (connection %d, command \"%s\"), closing connection!",
                            Req->prefix, Client_ID(client), Idx, Req->command);