[tls] Use our own ASN.1 routines for certificate parsing
[people/asdlkf/gpxe.git] / src / include / gpxe / asn1.h
1 #ifndef _GPXE_ASN1_H
2 #define _GPXE_ASN1_H
3
4 /** @file
5  *
6  * ASN.1 encoding
7  *
8  */
9
10 #define ASN1_INTEGER 0x02
11 #define ASN1_BIT_STRING 0x03
12 #define ASN1_OCTET_STRING 0x04
13 #define ASN1_NULL 0x05
14 #define ASN1_OID 0x06
15 #define ASN1_SEQUENCE 0x30
16 #define ASN1_IP_ADDRESS 0x40
17 #define ASN1_EXPLICIT_TAG 0xa0
18
19 /**
20  * A DER-encoded ASN.1 object cursor
21  */
22 struct asn1_cursor {
23         /** Start of data */
24         void *data;
25         /** Length of data */
26         size_t len;
27 };
28
29 extern int asn1_enter ( struct asn1_cursor *cursor, unsigned int type );
30 extern int asn1_skip ( struct asn1_cursor *cursor, unsigned int type );
31
32 #endif /* _GPXE_ASN1_H */