00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00043 #ifndef __DES_H__
00044 #define __DES_H__
00045
00046 #include "ipsec/types.h"
00047
00048
00049
00050
00051
00052
00053
00054 #define DES_LONG __u32
00055
00056 typedef unsigned char DES_cblock[8];
00057 typedef const unsigned char const_DES_cblock[8];
00058
00059 typedef struct DES_ks
00060 {
00061 union
00062 {
00063 DES_cblock cblock;
00064 DES_LONG deslong[2];
00065 } ks[16];
00066 } DES_key_schedule;
00067
00068 #define DES_ENCRYPT 1
00069 #define DES_DECRYPT 0
00071 int DES_set_key_checked(const_DES_cblock *key,DES_key_schedule *schedule);
00072 void DES_set_key_unchecked(const_DES_cblock *key,DES_key_schedule *schedule);
00073 void cipher_3des_cbc(unsigned char*, int, unsigned char*, unsigned char*, int, unsigned char*);
00074
00075 #endif
00076
00077