./ MultiCS.r82 / des.h
#ifndef _DES_H_
#define _DES_H_
#define CRYPT 0
#define HASH 1
#define UPDATE 2
#define DES_IP 1
#define DES_IP_1 2
#define DES_RIGHT 4
#define DES_HASH 8
#define DES_ECM_CRYPT 0
#define DES_ECM_HASH DES_HASH
#define DES_ECS2_DECRYPT (DES_IP | DES_IP_1 | DES_RIGHT)
#define DES_ECS2_CRYPT (DES_IP | DES_IP_1)
#define F_EURO_S2 0
#define F_TRIPLE_DES 1
#define SetBit(addr, bit) (addr) |= (1 << (bit))
#define UnsetBit(addr, bit) (addr) &= ~(1<< (bit))
#define TestBit(addr, bit) ((addr) & (1 << bit))
typedef unsigned char byte;
#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */
extern void EuroDes(byte key1[], byte key2[], byte DesMode, byte OperatingMode,
byte data[]);
extern int des_encrypt(byte *buffer, int len, byte *deskey);
extern int des_decrypt(byte *buffer, int len, byte *deskey);
extern void des_login_key_get(byte *key1, byte *key2, int len, byte *des16);
#ifdef __cplusplus
}
#endif /* __cplusplus */
extern void doPC1(byte data[]);
extern void des(byte key[], byte mode, byte data[]);
enum { ECM=0, ECS2=1, ECS3=2 };
#endif