asn1\_der\_coding(3) libtasn1 asn1\_der\_coding(3)

# [NAME](#NAME)

asn1\_der\_coding - API function

# [SYNOPSIS](#SYNOPSIS)

**#include &lt;libtasn1.h&gt;**

**int asn1\_der\_coding(asn1\_node\_const element, const char * name, void * ider, int * len, char * ErrorDescription);**

# [ARGUMENTS](#ARGUMENTS)

[asn1\_node\_const element](#asn1_node_const)

pointer to an ASN1 element

[const char * name](#const)

the name of the structure you want to encode (it must be inside \*POINTER).

[void * ider](#void)

vector that will contain the DER encoding. DER must be a pointer to memory cells already allocated.

[int * len](#int)

number of bytes of * *ider* : *ider* \[0].. *ider* \[len-1], Initially holds the sizeof of der vector.

[char * ErrorDescription](#char)

return the error description or an empty string if success.

# [DESCRIPTION](#DESCRIPTION)

Creates the DER encoding for the NAME structure (inside \*POINTER structure).

# [RETURNS](#RETURNS)

**ASN1\_SUCCESS** if DER encoding OK, **ASN1\_ELEMENT\_NOT\_FOUND** if *name* is not a valid element, **ASN1\_VALUE\_NOT\_FOUND** if there is an element without a value, **ASN1\_MEM\_ERROR** if the *ider* vector isn't big enough and in this case *len* will contain the length needed.

# [COPYRIGHT](#COPYRIGHT)

Copyright © 2006-2025 Free Software Foundation, Inc..  
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

# [SEE ALSO](#SEE_ALSO)

The full documentation for **libtasn1** is maintained as a Texinfo manual. If the **info** and **libtasn1** programs are properly installed at your site, the command

**info libtasn1**

should give you access to the complete manual. As an alternative you may obtain the manual from:

**https://www.gnu.org/software/libtasn1/manual/**

4.21.0 libtasn1

---

Document: asn1_der_coding(3) from libtasn1 4.21.0-r9 (Chainguard OS)
Source: https://gitlab.com/gnutls/libtasn1
