asn1_der_decoding2(3)

NAME
asn1_der_decoding2 - 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).

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
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/