]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/irc-info.c
Reproducible builds
[ngircd-alex.git] / src / ngircd / irc-info.c
index 7bb453df67cc853addca41e34861201cba2b7982..1788bf60feebf6e1733b0e92c4070d1f0848250f 100644 (file)
@@ -340,6 +340,7 @@ IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c)
                                strlcat(str, " ", sizeof(str));
 
                        who_flags_qualifier(Client, Channel_UserModes(chan, c),
+                                           str, sizeof(str));
                        strlcat(str, Channel_Name(chan), sizeof(str));
 
                        if (strlen(str) > (COMMAND_LEN - CHANNEL_NAME_LEN - 4)) {
@@ -406,7 +407,7 @@ IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c)
 
        /* Local client and requester is the user itself or an IRC Op? */
        if (Client_Conn(c) > NONE &&
-           (from == c || (!Conf_MorePrivacy && Client_HasMode(from, 'o')))) {
+           (from == c || Client_HasMode(from, 'o'))) {
                /* Client hostname */
                if (!IRC_WriteStrClient(from, RPL_WHOISHOST_MSG,
                                        Client_ID(from), Client_ID(c),
@@ -557,7 +558,15 @@ IRC_INFO(CLIENT * Client, REQUEST * Req)
                                NGIRCd_Version))
                return DISCONNECTED;
 
-#if defined(__DATE__) && defined(__TIME__)
+#if defined(BIRTHDATE)
+       char t_str[60];
+       time_t t = BIRTHDATE;
+       (void)strftime(t_str, sizeof(t_str), "%a %b %d %Y at %H:%M:%S (%Z)",
+                       localtime(&t));
+       snprintf(msg, sizeof(msg), "Birth Date: %s", t_str);
+       if (!IRC_WriteStrClient(Client, RPL_INFO_MSG, Client_ID(prefix), msg))
+               return DISCONNECTED;
+#elif defined(__DATE__) && defined(__TIME__)
        snprintf(msg, sizeof(msg), "Birth Date: %s at %s", __DATE__, __TIME__);
        if (!IRC_WriteStrClient(Client, RPL_INFO_MSG, Client_ID(prefix), msg))
                return DISCONNECTED;