Block
void fb64_stream_iv(Block, struct stinfo *);
void fb64_stream_key(Block, struct stinfo *);
DES_random_key((Block *)fbp->temp_feed);
DES_ecb_encrypt((Block *)fbp->temp_feed, (Block *)fbp->temp_feed,
for (x = 0; x < sizeof(Block); ++x) {
if (cnt != sizeof(Block)) {
memset(fbp->temp_feed, 0, sizeof(Block));
memmove((void *)fbp->krbdes_key, (void *)key->data, sizeof(Block));
DES_key_sched((Block *)fbp->krbdes_key, &fbp->krbdes_sched);
fb64_stream_iv(Block seed, struct stinfo *stp)
memmove((void *)stp->str_iv, (void *)seed, sizeof(Block));
memmove((void *)stp->str_output, (void *)seed, sizeof(Block));
DES_key_sched((Block *)stp->str_ikey, &stp->str_sched);
stp->str_index = sizeof(Block);
fb64_stream_key(Block key, struct stinfo *stp)
memmove((void *)stp->str_ikey, (void *)key, sizeof(Block));
DES_key_sched((Block *)key, &stp->str_sched);
memmove((void *)stp->str_output, (void *)stp->str_iv, sizeof(Block));
stp->str_index = sizeof(Block);
if (idx == sizeof(Block)) {
Block b;
DES_ecb_encrypt((Block *)stp->str_output, (Block *)b, &stp->str_sched, 1);
memmove((void *)stp->str_feed, (void *)b, sizeof(Block));
if (idx == sizeof(Block)) {
Block b;
DES_ecb_encrypt((Block *)stp->str_output, (Block *)b, &stp->str_sched, 1);
memmove((void *)stp->str_feed, (void *)b, sizeof(Block));
if (idx == sizeof(Block)) {
Block b;
DES_ecb_encrypt((Block *)stp->str_feed, (Block *)b, &stp->str_sched, 1);
memmove((void *)stp->str_feed, (void *)b, sizeof(Block));
Block krbdes_key;
Block temp_feed;
if (idx == sizeof(Block)) {
Block b;
DES_ecb_encrypt((Block *)stp->str_feed, (Block *)b, &stp->str_sched, 1);
memmove((void *)stp->str_feed, (void *)b, sizeof(Block));
Block str_output;
Block str_feed;
Block str_iv;
Block str_ikey;
typedef struct { Block __; } Schedule[16];
#define SAMEKEY(k1, k2) (!bcmp((void *)k1, (void *)k2, sizeof(Block)))
void key_lookup(unsigned char *, Block);
void key_stream_init(Block, Block, int);
static Block session_key = { 0 };
memmove((void *)session_key, (void *)adat.session, sizeof(Block));
memmove((void *)challenge, (void *)data, sizeof(Block));
Block *blk;
Block **pblk;
Block **ppblk;
struct Block *b_HNext; /* must be first field */
static Block **BlockHash;
Block *base;
base = calloc(sizeof(Block), NBlocks);
BlockHash = calloc(sizeof(Block *), HSize);