NAME¶
scan_asn1derlength - decode an unsigned integer from ASN.1 DER length encoding
SYNTAX¶
#include <scan.h>
size_t
scan_asn1derlength(const char *
src,size_t
len,unsigned long long *
dest);
DESCRIPTION¶
scan_asn1derlength decodes an unsigned integer in ASN.1 DER length encoding from
a memory area holding binary data. It writes the decode value in
dest
and returns the number of bytes it read from
src.
scan_asn1derlength never reads more than
len bytes from
src. If
the sequence is longer than that, or the memory area contains an invalid
sequence, scan_asn1derlength returns 0 and does not touch
dest.
The length of the longest ASN.1 DER length sequence is 128 bytes. In practice
the largest sequence is sizeof(*dest)+1.
SEE ALSO¶
fmt_asn1derlength(3)