Trivial ASN.1 decoding functions.

This commit is contained in:
Michael Brown
2007-04-21 18:53:26 +00:00
parent ed7dc02a95
commit 95206577a7
2 changed files with 191 additions and 0 deletions

32
src/include/gpxe/asn1.h Normal file
View File

@@ -0,0 +1,32 @@
#ifndef _GPXE_ASN1_H
#define _GPXE_ASN1_H
/** @file
*
* ASN.1 encoding
*
*/
#define ASN1_INTEGER 0x02
#define ASN1_BIT_STRING 0x03
#define ASN1_OCTET_STRING 0x04
#define ASN1_NULL 0x05
#define ASN1_OID 0x06
#define ASN1_SEQUENCE 0x30
#define ASN1_IP_ADDRESS 0x40
#define ASN1_EXPLICIT_TAG 0xa0
/**
* A DER-encoded ASN.1 object cursor
*/
struct asn1_cursor {
/** Start of data */
uint8_t *data;
/** Length of data */
size_t len;
};
extern int asn1_enter_object ( struct asn1_cursor *cursor, unsigned int type );
extern int asn1_skip_object ( struct asn1_cursor *cursor, unsigned int type );
#endif /* _GPXE_ASN1_H */