asn1_der_decoding_startEnd man page

asn1_der_decoding_startEnd — API function


#include <libtasn1.h>

int asn1_der_decoding_startEnd(asn1_node element, const void * ider, int ider_len, const char * name_element, int * start, int * end);


asn1_node element
pointer to an ASN1 element
const void * ider
vector that contains the DER encoding.
int ider_len
number of bytes of * ider : ider [0].. ider [len-1]
const char * name_element
an element of NAME structure.
int * start
the position of the first byte of NAME_ELEMENT decoding ( ider [*start])
int * end
the position of the last byte of NAME_ELEMENT decoding ( ider [*end])


Find the start and end point of an element in a DER encoding string. I mean that if you have a der encoding and you have already used the function asn1_der_decoding() to fill a structure, it may happen that you want to find the piece of string concerning an element of the structure.

One example is the sequence "tbsCertificate" inside an X509 certificate.

Note that since libtasn1 3.7 the ider and ider_len parameters can be omitted, if the element is already decoded using asn1_der_decoding().


ASN1_SUCCESS if DER encoding OK, ASN1_ELEMENT_NOT_FOUND if ELEMENT is asn1_node EMPTY or name_element is not a valid element, ASN1_TAG_ERROR or ASN1_DER_ERROR if the der encoding doesn't match the structure ELEMENT.

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: