]> jfr.im git - solanum.git/commitdiff
extensions/extb_ssl.c: port e0f1c3b5bc6c55b88938 & 5572f43834b93b898ea0
authorAaron Jones <redacted>
Tue, 28 Jan 2020 20:37:39 +0000 (20:37 +0000)
committerAaron Jones <redacted>
Tue, 28 Jan 2020 20:37:39 +0000 (20:37 +0000)
Reported-by: Opal Hart <redacted>
extensions/extb_ssl.c

index 801d4e9be9eb3ebe70a45e597207c328f512d908..1e11a755e30426dbcb137a32b9fba1028d72bd47 100644 (file)
@@ -33,7 +33,18 @@ static int eb_ssl(const char *data, struct Client *client_p,
 
        (void)chptr;
        (void)mode_type;
+
+       if (! IsSSLClient(client_p))
+               return EXTBAN_NOMATCH;
+
        if (data != NULL)
-               return EXTBAN_INVALID;
-       return IsSSLClient(client_p) ? EXTBAN_MATCH : EXTBAN_NOMATCH;
+       {
+               if (EmptyString(client_p->certfp))
+                       return EXTBAN_NOMATCH;
+
+               if (strcmp(data, client_p->certfp) != 0)
+                       return EXTBAN_NOMATCH;
+       }
+
+       return EXTBAN_MATCH;
 }