-
Notifications
You must be signed in to change notification settings - Fork 0
/
asn1parser.h
56 lines (48 loc) · 1.36 KB
/
asn1parser.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/*
* This is a parser of the ASN.1 grammar.
*/
#ifndef ASN1PARSER_H
#define ASN1PARSER_H
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif /* HAVE_CONFIG_H */
#include "asn1_ref.h"
#include "asn1_buffer.h"
#include "asn1_namespace.h"
#include "asn1p_integer.h"
#include "asn1p_list.h"
#include "asn1p_oid.h" /* Object identifiers (OIDs) */
#include "asn1p_module.h" /* ASN.1 definition module */
#include "asn1p_value.h" /* Value definition */
#include "asn1p_param.h" /* Parameterization */
#include "asn1p_constr.h" /* Type Constraints */
#include "asn1p_xports.h" /* IMports/EXports */
#include "asn1p_class.h" /* CLASS-related stuff */
#include "asn1p_expr.h" /* A single ASN.1 expression */
/*
* Parser flags.
*/
enum asn1p_flags {
A1P_NOFLAGS,
/*
* Enable verbose debugging output from lexer and parser.
*/
A1P_DEBUG_LEXER = 0x01,
A1P_DEBUG_PARSER = 0x02,
/*
* Unlock internal helper value types.
*/
A1P_EXTENDED_VALUES = 0x04
};
/*
* Perform low-level parsing of ASN.1 module[s]
* and return a list of module trees.
*/
asn1p_t *asn1p_parse_file(const char *filename,
enum asn1p_flags);
asn1p_t *asn1p_parse_buffer(const char *buffer, int size /* = -1 */,
const char *debug_filename, int initial_lineno,
enum asn1p_flags);
extern const char *asn1p_parse_debug_filename;
int asn1p_lex_destroy();
#endif /* ASN1PARSER_H */