DES_LONG
DES_LONG deslong[2];
void des_encrypt1(DES_LONG *, des_key_schedule, int);
void des_encrypt2(DES_LONG *, des_key_schedule, int);
void des_encrypt3(DES_LONG *, des_key_schedule, des_key_schedule,
void des_decrypt3(DES_LONG *, des_key_schedule, des_key_schedule,
des_encrypt1((DES_LONG *)tin,schedule,DES_DECRYPT);
des_encrypt1((DES_LONG *)tin,schedule,DES_DECRYPT);
register DES_LONG tin0,tin1;
register DES_LONG tout0,tout1,xor0,xor1;
DES_LONG tin[2];
des_encrypt3((DES_LONG *)tin,ks1,ks2,ks3);
des_encrypt3((DES_LONG *)tin,ks1,ks2,ks3);
register DES_LONG t0,t1;
des_decrypt3((DES_LONG *)tin,ks1,ks2,ks3);
des_decrypt3((DES_LONG *)tin,ks1,ks2,ks3);
register DES_LONG tin0,tin1;
register DES_LONG tout0,tout1,xor0,xor1;
DES_LONG tin[2];
des_encrypt1((DES_LONG *)tin,schedule,DES_ENCRYPT);
des_encrypt1((DES_LONG *)tin,schedule,DES_ENCRYPT);
register DES_LONG l;
DES_LONG ll[2];
register DES_LONG l0,l1;
DES_LONG ll[2];
if (sizeof(DES_LONG) != sizeof(long))
void des_encrypt2(DES_LONG *data, des_key_schedule ks, int enc)
register DES_LONG l,r,t,u;
register DES_LONG *s;
void des_encrypt3(DES_LONG *data, des_key_schedule ks1, des_key_schedule ks2,
register DES_LONG l,r;
des_encrypt2((DES_LONG *)data,ks1,DES_ENCRYPT);
des_encrypt2((DES_LONG *)data,ks2,DES_DECRYPT);
des_encrypt2((DES_LONG *)data,ks3,DES_ENCRYPT);
void des_decrypt3(DES_LONG *data, des_key_schedule ks1, des_key_schedule ks2,
register DES_LONG l,r;
des_encrypt2((DES_LONG *)data,ks3,DES_DECRYPT);
des_encrypt2((DES_LONG *)data,ks2,DES_ENCRYPT);
des_encrypt2((DES_LONG *)data,ks1,DES_DECRYPT);
extern const DES_LONG des_SPtrans[8][64];
void des_encrypt1(DES_LONG *data, des_key_schedule ks, int enc)
register DES_LONG l,r,t,u;
register DES_LONG *s;
l|=((DES_LONG)(*((c)++)))<<16L, \
l|=((DES_LONG)(*((c)++)))<< 8L, \
l|=((DES_LONG)(*((c)++))))
LL^= *(const DES_LONG *)(des_SP +u1); \
LL^= *(const DES_LONG *)(des_SP+0x200+u2); \
LL^= *(const DES_LONG *)(des_SP+0x400+u1); \
LL^= *(const DES_LONG *)(des_SP+0x600+u3); \
LL^= *(const DES_LONG *)(des_SP+0x100+u1); \
LL^= *(const DES_LONG *)(des_SP+0x300+u2); \
LL^= *(const DES_LONG *)(des_SP+0x500+u1); \
LL^= *(const DES_LONG *)(des_SP+0x700+u3); }
LL^= *(const DES_LONG *)(des_SP +u1); \
LL^= *(const DES_LONG *)(des_SP+0x200+u2); \
LL^= *(const DES_LONG *)(des_SP+0x400+s1); \
LL^= *(const DES_LONG *)(des_SP+0x600+s2); \
LL^= *(const DES_LONG *)(des_SP+0x100+u1); \
LL^= *(const DES_LONG *)(des_SP+0x300+u2); \
LL^= *(const DES_LONG *)(des_SP+0x400+s1); \
LL^= *(const DES_LONG *)(des_SP+0x600+s2); \
LL^= *(const DES_LONG *)(des_SP+0x100+u1); \
LL^= *(const DES_LONG *)(des_SP+0x300+u2); \
LL^= *(const DES_LONG *)(des_SP+0x500+s1); \
LL^= *(const DES_LONG *)(des_SP+0x700+s2); }
*(const DES_LONG *)(des_SP +((u )&0xfc))^ \
*(const DES_LONG *)(des_SP+0x200+((u>> 8L)&0xfc))^ \
*(const DES_LONG *)(des_SP+0x400+((u>>16L)&0xfc))^ \
*(const DES_LONG *)(des_SP+0x600+((u>>24L)&0xfc))^ \
*(const DES_LONG *)(des_SP+0x100+((t )&0xfc))^ \
*(const DES_LONG *)(des_SP+0x300+((t>> 8L)&0xfc))^ \
*(const DES_LONG *)(des_SP+0x500+((t>>16L)&0xfc))^ \
*(const DES_LONG *)(des_SP+0x700+((t>>24L)&0xfc)); }
register DES_LONG tt; \
register DES_LONG tt; \
#define c2l(c,l) (l =((DES_LONG)(*((c)++))) , \
l|=((DES_LONG)(*((c)++)))<< 8L, \
l|=((DES_LONG)(*((c)++)))<<16L, \
l|=((DES_LONG)(*((c)++)))<<24L)
case 8: l2 =((DES_LONG)(*(--(c))))<<24L; /* FALLTHROUGH */\
case 7: l2|=((DES_LONG)(*(--(c))))<<16L; /* FALLTHROUGH */\
case 6: l2|=((DES_LONG)(*(--(c))))<< 8L; /* FALLTHROUGH */\
case 5: l2|=((DES_LONG)(*(--(c)))); /* FALLTHROUGH */\
case 4: l1 =((DES_LONG)(*(--(c))))<<24L; /* FALLTHROUGH */\
case 3: l1|=((DES_LONG)(*(--(c))))<<16L; /* FALLTHROUGH */\
case 2: l1|=((DES_LONG)(*(--(c))))<< 8L; /* FALLTHROUGH */\
case 1: l1|=((DES_LONG)(*(--(c)))); /* FALLTHROUGH */\
#define n2l(c,l) (l =((DES_LONG)(*((c)++)))<<24L, \
register DES_LONG c,d,t,s,t2;
register DES_LONG *k;
static const DES_LONG des_skb[8][64]={
const DES_LONG des_SPtrans[8][64]={
static DES_LONG cbc_cksum_ret = 0xB462FEF7L;
DES_LONG cs;
DES_LONG cs, lqret[4];