]> jfr.im git - solanum.git/blobdiff - extensions/extb_ssl.c
callerid: actually the guard should be for source_p
[solanum.git] / extensions / extb_ssl.c
index 801d4e9be9eb3ebe70a45e597207c328f512d908..aa6ea95505fa31f1ac4d688b0fa36c39488dfe8d 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 (irccmp(data, client_p->certfp) != 0)
+                       return EXTBAN_NOMATCH;
+       }
+
+       return EXTBAN_MATCH;
 }