#include <dlfcn.h>
#endif
-int InspIRCd::PassCompare(Extensible* ex, const char* data,const char* input, const char* hashtype)
+int InspIRCd::PassCompare(Extensible* ex, const std::string &data, const std::string &input, const std::string &hashtype)
{
int MOD_RESULT = 0;
FOREACH_RESULT_I(this,I_OnPassCompare,OnPassCompare(ex, data, input, hashtype))
return 0;
if (MOD_RESULT == -1)
return 1;
- return strcmp(data,input);
+ return data != input; // this seems back to front, but returns 0 if they *match*, 1 else
}
/* LoopCall is used to call a command classes handler repeatedly based on the contents of a comma seperated list.
new_parameters[splithere] = item.c_str();
- /* Execute the command handler over and over. If someone pulls our user
- * record out from under us (e.g. if we /kill a comma sep list, and we're
- * in that list ourselves) abort if we're gone.
- */
+ /* Execute the command handler. */
CommandObj->Handle(new_parameters, user);
dupes[item.c_str()] = true;
/* command is disabled! */
user->WriteNumeric(421, "%s %s :This command has been disabled.",user->nick.c_str(),command.c_str());
ServerInstance->SNO->WriteToSnoMask('d', "%s denied for %s (%s@%s)",
- command.c_str(), user->nick.c_str(), user->ident.c_str(), user->host);
+ command.c_str(), user->nick.c_str(), user->ident.c_str(), user->host.c_str());
return do_more;
}
if (command_p.size() < cm->second->min_params)