Update Client_SetHostname() to not use strpbrk()
authorAlexander Barton <alex@barton.de>
Sun, 3 May 2020 22:55:25 +0000 (00:55 +0200)
committerAlexander Barton <alex@barton.de>
Sun, 3 May 2020 22:58:24 +0000 (00:58 +0200)
Not sure about the portability of strpbrk() in really ancient OS, and
this was the only place where it became used recently in ngIRCd ...
So let's play it safe! ;-)

src/ngircd/client.c

index 1c7bd1ead0cc510a814d59f0c43d12c1e1bb65da..67c0260423ac8a3e2ca9a099397691eeae40711a 100644 (file)
@@ -339,9 +339,9 @@ Client_SetHostname( CLIENT *Client, const char *Hostname )
 
        /* Only cloak the hostmask if it has not yet been cloaked.
         * The period or colon indicates it's still an IP address.
-        * An empty string means a rDNS lookup did not happen (yet).
-         */
-       if (Conf_CloakHost[0] && (!Client->host[0] || strpbrk(Client->host, ".:"))) {
+        * An empty string means a rDNS lookup did not happen (yet). */
+       if (Conf_CloakHost[0] && (!Client->host[0] || strchr(Client->host, '.')
+                                 || strchr(Client->host, ':'))) {
                char cloak[GETID_LEN];
 
                strlcpy(cloak, Hostname, GETID_LEN);