- cmd_spynames () : command_t("SPYNAMES", 'o', 0)
- {
- this->source = "m_spy.so";
- }
-
- void Handle (const char** parameters, int pcnt, userrec *user)
- {
- chanrec* c;
-
- if (!pcnt)
- {
- WriteServ(user->fd,"366 %s * :End of /NAMES list.",user->nick);
- return;
- }
-
- if (ServerInstance->Parser->LoopCall(user, this, parameters, pcnt, 1))
- return;
-
- WriteOpers("*** Oper %s used SPYNAMES to view the users on %s",user->nick,parameters[0]);
-
- c = FindChan(parameters[0]);
- if (c)
- {
- spy_userlist(user,c);
- WriteServ(user->fd,"366 %s %s :End of /NAMES list.", user->nick, c->name);
- }
- else
- {
- WriteServ(user->fd,"401 %s %s :No such nick/channel",user->nick, parameters[0]);
- }
- }
+ cmd_spynames (InspIRCd* Instance) : command_t(Instance,"SPYNAMES", 'o', 0)
+ {
+ this->source = "m_spy.so";
+ syntax = "{<channel>{,<channel>}}";
+ }
+
+ CmdResult Handle (const char** parameters, int pcnt, userrec *user)
+ {
+ chanrec* c = NULL;
+
+ if (!pcnt)
+ {
+ user->WriteServ("366 %s * :End of /NAMES list.",user->nick);
+ return CMD_FAILURE;
+ }
+
+ if (ServerInstance->Parser->LoopCall(user, this, parameters, pcnt, 0))
+ return CMD_FAILURE;
+
+ c = ServerInstance->FindChan(parameters[0]);
+ if (c)
+ {
+ ServerInstance->WriteOpers("*** Oper %s used SPYNAMES to view the users on %s", user->nick, parameters[0]);
+ spy_userlist(user,c);
+ }
+ else
+ {
+ user->WriteServ("401 %s %s :No such nick/channel",user->nick, parameters[0]);
+ }
+
+ return CMD_FAILURE;
+ }