mud/fluffos-2.23-ds03/crypt.h
2020-09-06 05:43:07 -07:00

38 lines
1.2 KiB
C

#ifndef CRYPT_H
#define CRYPT_H
/* Number of bytes in salt (raw, fully used, not printable-encoded bytes).
* This is configurable, but don't set it too high (up to say 10). But 4
* is plenty really, 2^32 salts possible (the DES-style crypt used only 4096).
*/
#define MD5_SALTLEN 4
/* Magic string, used in hashing. Configurable. */
#define MD5_MAGIC "xyzz"
/* Maximum length (in bytes) of digested data.
* This is /not/ configurable! Don't change it.
*/
#define MD5_MAXLEN 55
/* This salt value is used in generating salts. It must
* be a valid salt as returned by md5crypt(), or the
* routine will go into an infinite loop when generating
* a salt from an unrecognized string. Any value returned
* from md5crypt("anything", NULL, NULL) is valid here.
*/
#define MD5_VALID_SALT "anhlklck!ggddl`l`lg`bjblodlfcljdcnhffib`c"
typedef unsigned char BytE;
char *custom_crypt(const char *key, const char *salt, unsigned char *rawout);
int MD5Digest ( BytE *, unsigned long buflen, BytE *);
int encode ( unsigned char *, BytE *, int );
void decode ( unsigned char *, BytE *, int );
void getsalt (BytE *, BytE * );
void crunchbuffer (BytE *buf, SIGNED int *, char *, SIGNED int, int );
#endif