10 const char *tohex(uint8
*data
, int len
, char *buf
) {
16 sprintf(p
,"%02x",*data
);
20 void unhex(const char *what
, const char *txt
, uint8
*datar
, int *lenr
,
21 int minlen
, int maxlen
) {
26 if (l
%1) { fprintf(stderr
,"odd number of hex digits in %s\n",what
); exit(EX_DATAERR
); }
28 if (l
<minlen
) { fprintf(stderr
,"too few hex digits in %s\n",what
); exit(EX_DATAERR
); }
29 if (l
>maxlen
) { fprintf(stderr
,"too many hex digits in %s\n",what
); exit(EX_DATAERR
); }
36 v
= strtoul(buf
,&ep
,16);
37 if (*ep
) { fprintf(stderr
,"not hex digit in %s: %c\n",what
,*ep
); exit(EX_DATAERR
); }