asn1_der_decoding_startEnd (3) - Linux Manuals

asn1_der_decoding_startEnd: API function


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.


Copyright © 2006-2015 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.


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: