asn1_der_decoding2 - Man Page

API function

Synopsis

#include <libtasn1.h>

int asn1_der_decoding2(asn1_node * element, const void * ider, int * max_ider_len, unsigned int flags, char * errorDescription);

Arguments

asn1_node * element

pointer to an ASN1 structure.

const void * ider

vector that contains the DER encoding.

int * max_ider_len

pointer to an integer giving the information about the maximal number of bytes occupied by * ider . The real size of the DER encoding is returned through this pointer.

unsigned int flags

flags controlling the behaviour of the function.

char * errorDescription

null-terminated string contains details when an error occurred.

Description

Fill the structure * element with values of a DER encoding string. The structure must just be created with function asn1_create_element().

If ASN1_DECODE_FLAG_ALLOW_PADDING flag is set then the function will ignore padding after the decoded DER data. Upon a successful return the value of * max_ider_len will be set to the number of bytes decoded.

If ASN1_DECODE_FLAG_STRICT_DER flag is set then the function will not decode any BER-encoded elements.

Returns

ASN1_SUCCESS if DER encoding OK, ASN1_ELEMENT_NOT_FOUND if  ELEMENT is NULL, and ASN1_TAG_ERROR or ASN1_DER_ERROR if the der encoding doesn't match the structure name (* ELEMENT deleted).

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/

Info

4.19.0 libtasn1