des_buf
des_ct = cbc_decode(des_buf, fp);
return (des_ct > 0) ? des_buf[des_n++] : EOF;
if (des_n == sizeof des_buf) {
des_ct = cbc_encode(des_buf, des_n, fp);
return (des_ct >= 0) ? (des_buf[des_n++] = c) : EOF;
if (des_n == sizeof des_buf) {
des_ct = cbc_encode(des_buf, des_n, fp);
return (des_ct >= 0 && cbc_encode(des_buf, des_n, fp) >= 0) ? 0 : EOF;
static unsigned char des_buf[8];/* shared buffer for get_des_char/put_des_char */