mirror of
https://github.com/anope/anope.git
synced 2026-06-29 05:06:38 +02:00
e459e5833e
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1578 5417fbe8-f217-4b02-8779-1006273d7864
83 lines
1.9 KiB
C
83 lines
1.9 KiB
C
/* Module for encryption using MD5.
|
|
*
|
|
* (C) 2003-2008 Anope Team
|
|
* Contact us at dev@anope.org
|
|
*
|
|
* This program is free but copyrighted software; see the file COPYING for
|
|
* details.
|
|
*/
|
|
|
|
#include "module.h"
|
|
|
|
int plain_encrypt(const char *src,int len,char *dest,int size);
|
|
int plain_encrypt_in_place(char *buf, int size);
|
|
int plain_encrypt_check_len(int passlen, int bufsize);
|
|
int plain_decrypt(const char *src, char *dest, int size);
|
|
int plain_check_password(const char *plaintext, const char *password);
|
|
|
|
class ENone : public Module
|
|
{
|
|
public:
|
|
ENone(const std::string &modname, const std::string &creator) : Module(modname, creator)
|
|
{
|
|
moduleAddAuthor("Anope");
|
|
moduleAddVersion("$Id$");
|
|
moduleSetType(ENCRYPTION);
|
|
|
|
encmodule_encrypt(plain_encrypt);
|
|
encmodule_encrypt_in_place(plain_encrypt_in_place);
|
|
encmodule_encrypt_check_len(plain_encrypt_check_len);
|
|
encmodule_decrypt(plain_decrypt);
|
|
encmodule_check_password(plain_check_password);
|
|
}
|
|
|
|
~ENone()
|
|
{
|
|
encmodule_encrypt(NULL);
|
|
encmodule_encrypt_in_place(NULL);
|
|
encmodule_encrypt_check_len(NULL);
|
|
encmodule_decrypt(NULL);
|
|
encmodule_check_password(NULL);
|
|
}
|
|
};
|
|
|
|
int plain_encrypt(const char *src,int len,char *dest,int size) {
|
|
if(size>=len) {
|
|
memset(dest,0,size);
|
|
strncpy(dest,src,len);
|
|
dest[len] = '\0';
|
|
return 0;
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
int plain_encrypt_in_place(char *buf, int size) {
|
|
return 0;
|
|
}
|
|
|
|
int plain_encrypt_check_len(int passlen, int bufsize) {
|
|
if(bufsize>=passlen) {
|
|
return 0;
|
|
}
|
|
return bufsize;
|
|
}
|
|
|
|
int plain_decrypt(const char *src, char *dest, int size) {
|
|
memset(dest,0,size);
|
|
strncpy(dest,src,size);
|
|
dest[size] = '\0';
|
|
return 1;
|
|
}
|
|
|
|
int plain_check_password(const char *plaintext, const char *password) {
|
|
if(strcmp(plaintext,password)==0) {
|
|
return 1;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
/* EOF */
|
|
|
|
|
|
MODULE_INIT("enc_none", ENone)
|