- if (command == "CONNECT")
- {
- return this->HandleConnect(parameters,pcnt,user);
- }
- else if (command == "STATS")
- {
- return this->HandleStats(parameters,pcnt,user);
- }
- else if (command == "MOTD")
- {
- return this->HandleMotd(parameters,pcnt,user);
- }
- else if (command == "ADMIN")
- {
- return this->HandleAdmin(parameters,pcnt,user);
- }
- else if (command == "SQUIT")
- {
- return this->HandleSquit(parameters,pcnt,user);
- }
- else if (command == "MAP")
- {
- this->HandleMap(parameters,pcnt,user);
- return 1;
- }
- else if ((command == "TIME") && (pcnt > 0))
- {
- return this->HandleTime(parameters,pcnt,user);
- }
- else if (command == "LUSERS")
- {
- this->HandleLusers(parameters,pcnt,user);
- return 1;
- }
- else if (command == "LINKS")
- {
- this->HandleLinks(parameters,pcnt,user);
- return 1;
- }
- else if (command == "WHOIS")
- {
- if (pcnt > 1)
- {
- // remote whois
- return this->HandleRemoteWhois(parameters,pcnt,user);
- }
- }
- else if ((command == "VERSION") && (pcnt > 0))
- {
- this->HandleVersion(parameters,pcnt,user);
- return 1;
- }
- else if ((command == "MODULES") && (pcnt > 0))
- {
- return this->HandleModules(parameters,pcnt,user);
- }
- return 0;
+ if (command == "CONNECT")
+ {
+ return this->HandleConnect(parameters,user);
+ }
+ else if (command == "SQUIT")
+ {
+ return this->HandleSquit(parameters,user);
+ }
+ else if (command == "MAP")
+ {
+ return this->HandleMap(parameters,user) ? MOD_RES_DENY : MOD_RES_PASSTHRU;
+ }
+ else if (command == "LINKS")
+ {
+ this->HandleLinks(parameters,user);
+ return MOD_RES_DENY;
+ }
+ else if (command == "WHOIS")
+ {
+ if (parameters.size() > 1)
+ {
+ // remote whois
+ return this->HandleRemoteWhois(parameters,user);
+ }
+ }
+ else if ((command == "VERSION") && (parameters.size() > 0))
+ {
+ return this->HandleVersion(parameters,user);
+ }
+ return MOD_RES_PASSTHRU;