diff options
| author | Alexander Barton <alex@barton.de> | 2008-08-17 15:19:45 +0200 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2008-09-23 11:53:16 +0200 |
| commit | 28e98887643bf881c11ba3b8df5e9cbcc7e967ba (patch) | |
| tree | 7ec1429a693dbd1d08442720b180f9b12e788841 /src | |
| parent | 3afa0e06583d7f5d353f398147e9a3fd570d2720 (diff) | |
| download | ngircd-28e98887643bf881c11ba3b8df5e9cbcc7e967ba.tar.gz ngircd-28e98887643bf881c11ba3b8df5e9cbcc7e967ba.zip | |
Convert SQUERY to PRIVMSG on RFC 1459 compliant links.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ngircd/irc.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/ngircd/irc.c b/src/ngircd/irc.c index b88d5d7d..0bfb3eed 100644 --- a/src/ngircd/irc.c +++ b/src/ngircd/irc.c @@ -438,6 +438,17 @@ Send_Message(CLIENT * Client, REQUEST * Req, int ForceType, bool SendErrors) Client_ID(from), currentTarget); } + +#ifndef STRICT_RFC + if (ForceType == CLIENT_SERVICE && + (Conn_Options(Client_Conn(Client_NextHop(cl))) + & CONN_RFC1459)) { + /* SQUERY command but RFC 1459 link: convert + * request to PRIVMSG command */ + Req->command = "PRIVMSG"; + } +#endif + if (SendErrors && (Client_Type(Client) != CLIENT_SERVER) && strchr(Client_Modes(cl), 'a')) { /* Target is away */ |