version 1.6, 2003/06/03 02:56:18 |
version 1.7, 2014/07/19 23:50:38 |
|
|
*bottom, /* lowest address in buffer */ |
*bottom, /* lowest address in buffer */ |
*top, /* highest address+1 in buffer */ |
*top, /* highest address+1 in buffer */ |
*mark; /* marker (user defined) */ |
*mark; /* marker (user defined) */ |
#if defined(ENCRYPTION) |
|
unsigned char *clearto; /* Data to this point is clear text */ |
|
unsigned char *encryyptedto; /* Data is encrypted to here */ |
|
#endif |
|
int size; /* size in bytes of buffer */ |
int size; /* size in bytes of buffer */ |
u_long consumetime, /* help us keep straight full, empty, etc. */ |
u_long consumetime, /* help us keep straight full, empty, etc. */ |
supplytime; |
supplytime; |
|
|
/* Data movement routines */ |
/* Data movement routines */ |
extern void |
extern void |
ring_supply_data(Ring *ring, unsigned char *buffer, int count); |
ring_supply_data(Ring *ring, unsigned char *buffer, int count); |
#ifdef notdef |
|
extern void |
|
ring_consume_data(Ring *ring, unsigned char *buffer, int count); |
|
#endif |
|
|
|
/* Buffer state transition routines */ |
/* Buffer state transition routines */ |
extern void |
extern void |
|
|
ring_empty_consecutive(Ring *ring), |
ring_empty_consecutive(Ring *ring), |
ring_full_count(Ring *ring), |
ring_full_count(Ring *ring), |
ring_full_consecutive(Ring *ring); |
ring_full_consecutive(Ring *ring); |
|
|
#if defined(ENCRYPTION) |
|
extern void |
|
ring_encrypt (Ring *ring, void (*func)()), |
|
ring_clearto (Ring *ring); |
|
#endif |
|
|
|
|
|
extern void |
extern void |
ring_clear_mark(Ring *), |
ring_clear_mark(Ring *), |