aboutsummaryrefslogtreecommitdiffstats
path: root/libasn1fix/asn1fix_export.h
blob: bfa055b8f98382e16b1ebf93c8eb3d09e3e74319 (plain)
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
57
58
59
60
61
62
63
/*
 * This header exports fixer procedures that are common enough to be used
 * in other modules.
 */
#ifndef	ASN1FIX_EXPORT_H
#define	ASN1FIX_EXPORT_H

#include "asn1fix_tags.h"

struct asn1_namespace_s;   /* Forward declaration. */

void asn1f_use_standard_namespaces(asn1p_t *asn);

/*
 * Lookup the module by its oid. oid is mandatory.
 */
asn1p_module_t *asn1f_lookup_module_ex(asn1p_t *asn, const char *module_name,
                                       const asn1p_oid_t *oid);

/*
 * Create a human-readable representation of a reference and value.
 */
char const *asn1f_printable_reference(const asn1p_ref_t *ref);
char const *asn1f_printable_value(asn1p_value_t *value);

/*
 *  Exportable version of an asn1f_lookup_symbol().
 */
asn1p_expr_t *asn1f_lookup_symbol_ex(
		asn1p_t *asn,
		struct asn1_namespace_s *ns,
		asn1p_expr_t *expr,
		const asn1p_ref_t *ref);

/*
 *  Exportable version of an asn1f_class_access().
 */
asn1p_expr_t *asn1f_class_access_ex(asn1p_t *asn, asn1p_module_t *mod,
                                    struct asn1_namespace_s *ns,
                                    asn1p_expr_t *expr,
                                    asn1p_expr_t *rhs_rspecs,
                                    const asn1p_ref_t *);

/*
 * Exportable version of asn1f_find_terminal_type().
 */
asn1p_expr_t *asn1f_find_terminal_type_ex(asn1p_t *asn,
                                          struct asn1_namespace_s *ns,
                                          asn1p_expr_t *tc);

/*
 * Exportable version of asn1f_fix_dereference_values();
 */
int asn1f_fix_dereference_values_ex(asn1p_t *asn, asn1p_module_t *mod,
	asn1p_expr_t *expr);

/*
 * Exportable version of asn1f_find_ancestor_type_with_PER_constraint().
 */
asn1p_expr_t *asn1f_find_ancestor_type_with_PER_constraint_ex(asn1p_t *asn,
	asn1p_expr_t *expr);

#endif	/* ASN1FIX_EXPORT_H */