Module: ngircd.git Branch: master Commit: 07f241ff6d3afee88d6c6b3e2ed1e195c0367c91 URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=07f24...
Author: Alexander Barton alex@barton.de Date: Wed Dec 29 14:10:18 2010 +0100
Enhance documentation for the WEBIRC command
---
doc/Protocol.txt | 14 ++++++++++++++ src/ngircd/irc-login.c | 10 ++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/doc/Protocol.txt b/doc/Protocol.txt index 354b814..2b7e7b8 100644 --- a/doc/Protocol.txt +++ b/doc/Protocol.txt @@ -161,3 +161,17 @@ and therefore can't be omitted. The parameter <limit> must be ignored when a channel has no user limit (the parameter <modes> doesn't list the "l" channel mode). In this case <limit> should be "0".
+ +II.4 Update webchat/proxy client information + + Command: WEBIRC + Parameters: <password> <username> <hostname> <ip-address> + Used by: unregistered clients only + +The WEBIRC command is used by some Web-to-IRC gateways to set the correct +user name and host name of users instead of their own. It must be the very +first command sent to the server, even before USER and NICK commands! + +The <password> must be set in the server configuration file to prevent +unauthorized clients to fake their identity; it is an arbitrary string. + diff --git a/src/ngircd/irc-login.c b/src/ngircd/irc-login.c index 1557f18..6a97074 100644 --- a/src/ngircd/irc-login.c +++ b/src/ngircd/irc-login.c @@ -596,8 +596,14 @@ IRC_SERVICE(CLIENT *Client, REQUEST *Req)
/** - * Handler for the IRC command "WEBIRC". - * Syntax: WEBIRC <password> <username> <real-hostname> <real-IP-address> + * Handler for the IRC "WEBIRC" command. + * + * See doc/Protocol.txt, section II.4: + * "Update webchat/proxy client information". + * + * @param Client The client from which this command has been received. + * @param Req Request structure with prefix and all parameters. + * @returns CONNECTED or DISCONNECTED. */ GLOBAL bool IRC_WEBIRC(CLIENT *Client, REQUEST *Req)