---
name: "scan_asn1dertag"
section: "3"
platform: "linux"
package: "libowfat-dev"
version: "0.32-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/scan_asn1dertag"
---

# scan\_asn1dertag(3)

decode an unsigned integer from ASN.1 DER length encoding

## NAME

scan\_asn1dertag - decode an unsigned integer from ASN.1 DER length encoding

## SYNTAX

**#include \<libowfat/scan.h\>**

size\_t **scan\_asn1dertag**(const char \**src*,size\_t *len*,unsigned long long \**dest*);

## DESCRIPTION

scan\_asn1dertag decodes an unsigned integer in ASN.1 DER tag 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\_asn1dertag never reads more than *len* bytes from *src*.  If the sequence is longer than that, or the memory area contains an invalid sequence, scan\_asn1dertag 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\_asn1dertag(3)](/fmt_asn1dertag/3.md)
