Commit Diff
Diff:
2f6d7a649cf2428991cba3b9d2250b95a5904675
25f48a2a342caf962920ee316b258812526f7a9d
Commit:
25f48a2a342caf962920ee316b258812526f7a9d
Tree:
21c4d37578086e15599ce4c41e4950a194f6b2db
Author:
Alexander Barton <alex@barton.de>
Committer:
Alexander Barton <alex@barton.de>
Date:
Thu Apr 24 21:46:59 2008 UTC
Message:
IRC_PART(): code and comment cleanup.
blob - 55770571f61b68b13d39d60bc89abad0100b1642
blob + c678ceeb3f4160a933c6e845ed427e45c7aff70c
--- src/ngircd/irc-channel.c
+++ src/ngircd/irc-channel.c
@@ -286,29 +286,36 @@ IRC_JOIN( CLIENT *Client, REQUEST *Req )
} /* IRC_JOIN */
+/**
+ * Handler for the IRC "PART" command.
+ */
GLOBAL bool
-IRC_PART( CLIENT *Client, REQUEST *Req )
+IRC_PART(CLIENT * Client, REQUEST * Req)
{
CLIENT *target;
char *chan;
- assert( Client != NULL );
- assert( Req != NULL );
+ assert(Client != NULL);
+ assert(Req != NULL);
if (Req->argc < 1 || Req->argc > 2)
return IRC_WriteStrClient(Client, ERR_NEEDMOREPARAMS_MSG,
- Client_ID(Client), Req->command);
+ Client_ID(Client), Req->command);
- /* Wer ist der Absender? */
- if( Client_Type( Client ) == CLIENT_SERVER ) target = Client_Search( Req->prefix );
- else target = Client;
- if( ! target ) return IRC_WriteStrClient( Client, ERR_NOSUCHNICK_MSG, Client_ID( Client ), Req->prefix );
+ /* Get the sender */
+ if (Client_Type(Client) == CLIENT_SERVER)
+ target = Client_Search(Req->prefix);
+ else
+ target = Client;
+ if (!target)
+ return IRC_WriteStrClient(Client, ERR_NOSUCHNICK_MSG,
+ Client_ID(Client), Req->prefix);
- /* Channel-Namen durchgehen */
+ /* Loop over all the given channel names */
chan = strtok(Req->argv[0], ",");
while (chan) {
- Channel_Part(target, Client, chan, Req->argc > 1 ? Req->argv[1] : Client_ID(target));
-
+ Channel_Part(target, Client, chan,
+ Req->argc > 1 ? Req->argv[1] : Client_ID(target));
chan = strtok(NULL, ",");
}
return CONNECTED;
IRCNow