X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Firc-info.c;h=763c9302341bf18e6fb6f961e0a8d8b32ff9a4ea;hp=aa98a5b560b163f4b96a5b4c7b1a20b7f4f6f2f3;hb=3de972e0bdbb5da7b13db5628e5373e3ec57cf51;hpb=86bdf6e1d4539da1076afe10b57b177fb54dd147 diff --git a/src/ngircd/irc-info.c b/src/ngircd/irc-info.c index aa98a5b5..763c9302 100644 --- a/src/ngircd/irc-info.c +++ b/src/ngircd/irc-info.c @@ -1,6 +1,6 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001-2013 Alexander Barton (alex@barton.de) and Contributors. + * Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,13 +16,12 @@ * IRC info commands */ -#include "imp.h" #include -#include #include #include #include #include +#include #include "ngircd.h" #include "conn-func.h" @@ -30,12 +29,9 @@ #include "channel.h" #include "class.h" #include "conf.h" -#include "defines.h" #include "lists.h" -#include "log.h" #include "messages.h" #include "match.h" -#include "tool.h" #include "parse.h" #include "irc.h" #include "irc-macros.h" @@ -43,7 +39,6 @@ #include "client-cap.h" #include "op.h" -#include "exp.h" #include "irc-info.h" /* Local functions */ @@ -401,6 +396,13 @@ IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c) Client_ID(from), Client_ID(c))) return DISCONNECTED; + /* Account name metadata? */ + if (Client_AccountName(c) && + !IRC_WriteStrClient(from, RPL_WHOISLOGGEDIN_MSG, + Client_ID(from), Client_ID(c), + Client_AccountName(c))) + return DISCONNECTED; + /* 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')))) { @@ -1099,10 +1101,19 @@ IRC_VERSION( CLIENT *Client, REQUEST *Req ) } /* send version information */ - return IRC_WriteStrClient(Client, RPL_VERSION_MSG, Client_ID(prefix), - PACKAGE_NAME, PACKAGE_VERSION, - NGIRCd_DebugLevel, Conf_ServerName, - NGIRCd_VersionAddition); + if (!IRC_WriteStrClient(Client, RPL_VERSION_MSG, Client_ID(prefix), + PACKAGE_NAME, PACKAGE_VERSION, + NGIRCd_DebugLevel, Conf_ServerName, + NGIRCd_VersionAddition)) + return DISCONNECTED; + +#ifndef STRICT_RFC + /* send RPL_ISUPPORT(005) numerics */ + if (!IRC_Send_ISUPPORT(prefix)) + return DISCONNECTED; +#endif + + return CONNECTED; } /* IRC_VERSION */ /**