#include "users.h"
#include "channels.h"
#include "modules.h"
-#include "helperfuncs.h"
+
#include "inspircd.h"
-static Server *Srv;
+
#define SHA256_DIGEST_SIZE (256 / 8)
#define SHA256_BLOCK_SIZE (512 / 8)
typedef unsigned int uint32_t;
#endif
+/** An sha 256 context, used by m_opersha256
+ */
class SHA256Context : public classbase
{
public:
}
}
+/** Handle /MKSHA256
+ */
class cmd_mksha256 : public command_t
{
public:
- cmd_mksha256() : command_t("MKSHA256", 'o', 1)
+ cmd_mksha256 (InspIRCd* Instance) : command_t(Instance,"MKSHA256", 'o', 1)
{
this->source = "m_opersha256.so";
syntax = "<any-text>";
}
- void Handle(const char** parameters, int pcnt, userrec *user)
+ CmdResult Handle(const char** parameters, int pcnt, userrec *user)
{
char buffer[SHA256_BLOCK_SIZE + 1];
SHA256(parameters[0], buffer, strlen(parameters[0]));
- user->WriteServ( "NOTICE %s :SHA256 hashed password for %s is %s", user->nick, parameters[0], buffer);
+ user->WriteServ("NOTICE %s :SHA256 hashed password for %s is %s", user->nick, parameters[0], buffer);
+ return CMD_SUCCESS;
}
};
ModuleOperSHA256(InspIRCd* Me) : Module::Module(Me)
{
- mksha256cmd = new cmd_mksha256();
- Srv->AddCommand(mksha256cmd);
+ mksha256cmd = new cmd_mksha256(ServerInstance);
+ ServerInstance->AddCommand(mksha256cmd);
}
virtual ~ModuleOperSHA256()