12 const char *
const h2c =
"0123456789ABCDEF";
14 char scratch[16 * 3 + 4];
22 if(!st || (!st->
buf && st->
size))
23 return (cb(
"<absent>", 8, app_key) < 0) ? -1 : 0;
29 end = (buf == NULL)? NULL : buf + st->
size;
30 for(i = 0; buf < end; buf++, i++) {
31 if(!(i % 16) && (i || st->
size > 16)) {
32 if(cb(scratch, p - scratch, app_key) < 0)
37 *p++ = h2c[(*buf >> 4) & 0x0F];
38 *p++ = h2c[*buf & 0x0F];
44 if(cb(scratch, p - scratch, app_key) < 0)
60 if(st && (st->
buf || !st->
size)) {
61 return (cb(st->
buf, st->
size, app_key) < 0) ? -1 : 0;
63 return (cb(
"<absent>", 8, app_key) < 0) ? -1 : 0;