ANY.h
Go to the documentation of this file.
1 /*-
2  * Copyright (c) 2004-2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
3  * Redistribution and modifications are permitted subject to BSD license.
4  */
5 #ifndef ASN_TYPE_ANY_H
6 #define ASN_TYPE_ANY_H
7 
8 #include <etsi_its_cam_ts_coding/OCTET_STRING.h> /* Implemented via OCTET STRING type */
9 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 typedef struct ANY {
15  uint8_t *buf; /* BER-encoded ANY contents */
16  int size; /* Size of the above buffer */
17 
18  asn_struct_ctx_t _asn_ctx; /* Parsing across buffer boundaries */
19 } ANY_t;
20 
24 
25 #define ANY_free OCTET_STRING_free
26 
27 #if !defined(ASN_DISABLE_PRINT_SUPPORT)
28 #define ANY_print OCTET_STRING_print
29 #endif /* !defined(ASN_DISABLE_PRINT_SUPPORT) */
30 
31 #define ANY_compare OCTET_STRING_compare
32 #define ANY_copy OCTET_STRING_copy
33 
34 #define ANY_constraint asn_generic_no_constraint
35 
36 #if !defined(ASN_DISABLE_BER_SUPPORT)
37 #define ANY_decode_ber OCTET_STRING_decode_ber
38 #define ANY_encode_der OCTET_STRING_encode_der
39 #endif /* !defined(ASN_DISABLE_BER_SUPPORT) */
40 
41 #if !defined(ASN_DISABLE_XER_SUPPORT)
42 #define ANY_decode_xer OCTET_STRING_decode_xer_hex
43 xer_type_encoder_f ANY_encode_xer;
44 #endif /* !defined(ASN_DISABLE_XER_SUPPORT) */
45 
46 #if !defined(ASN_DISABLE_JER_SUPPORT)
49 #endif /* !defined(ASN_DISABLE_JER_SUPPORT) */
50 
51 #if !defined(ASN_DISABLE_UPER_SUPPORT)
54 #endif /* !defined(ASN_DISABLE_UPER_SUPPORT) */
55 #if !defined(ASN_DISABLE_APER_SUPPORT)
58 #endif /* !defined(ASN_DISABLE_APER_SUPPORT) */
59 
60 /******************************
61  * Handy conversion routines. *
62  ******************************/
63 
64 /* Convert another ASN.1 type into the ANY. This implies DER encoding. */
65 int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr);
66 ANY_t *ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr);
67 #if !defined(ASN_DISABLE_APER_SUPPORT)
68 int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr);
70 #endif /* !defined(ASN_DISABLE_APER_SUPPORT) */
71 
72 /* Convert the contents of the ANY type into the specified type. */
73 int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr);
74 #if !defined(ASN_DISABLE_APER_SUPPORT)
75 int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr);
76 int ANY_to_type_aper_checked(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr);
77 #endif /* !defined(ASN_DISABLE_APER_SUPPORT) */
78 
79 #define ANY_fromBuf(s, buf, size) OCTET_STRING_fromBuf((s), (buf), (size))
80 #define ANY_new_fromBuf(buf, size) OCTET_STRING_new_fromBuf( \
81  &asn_DEF_ANY, (buf), (size))
82 
83 #ifdef __cplusplus
84 }
85 #endif
86 
87 #endif /* ASN_TYPE_ANY_H */
asn_struct_ctx_s
Definition: constr_TYPE.h:29
per_type_decoder_f
asn_dec_rval_t() per_type_decoder_f(const asn_codec_ctx_t *opt_codec_ctx, const struct asn_TYPE_descriptor_s *type_descriptor, const asn_per_constraints_t *constraints, void **struct_ptr, asn_per_data_t *per_data)
Definition: per_decoder.h:20
asn_TYPE_operation_s
Definition: constr_TYPE.h:184
ANY::_asn_ctx
asn_struct_ctx_t _asn_ctx
Definition: ANY.h:18
ANY::buf
uint8_t * buf
Definition: ANY.h:15
asn_DEF_ANY
asn_TYPE_descriptor_t asn_DEF_ANY
Definition: ANY.c:67
ANY_fromType_aper
int ANY_fromType_aper(ANY_t *st, asn_TYPE_descriptor_t *td, void *sptr)
Definition: ANY_aper.c:20
asn_OCTET_STRING_specifics_s
Definition: OCTET_STRING.h:125
ANY_encode_uper
per_type_encoder_f ANY_encode_uper
Definition: ANY.h:53
asn_TYPE_descriptor_s
Definition: constr_TYPE.h:224
jer_type_encoder_f
asn_enc_rval_t() jer_type_encoder_f(const struct asn_TYPE_descriptor_s *type_descriptor, const asn_jer_constraints_t *constraints, const void *struct_ptr, int ilevel, enum jer_encoder_flags_e jer_flags, asn_app_consume_bytes_f *consume_bytes_cb, void *app_key)
Definition: jer_encoder.h:73
ANY_to_type_aper_checked
int ANY_to_type_aper_checked(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr)
Definition: ANY_aper.c:102
ANY_encode_aper
per_type_encoder_f ANY_encode_aper
Definition: ANY.h:57
jer_type_decoder_f
asn_dec_rval_t() jer_type_decoder_f(const asn_codec_ctx_t *opt_codec_ctx, const struct asn_TYPE_descriptor_s *type_descriptor, const asn_jer_constraints_t *constraints, void **struct_ptr, const void *buf_ptr, size_t size)
Definition: jer_decoder.h:32
ANY_decode_jer
jer_type_decoder_f ANY_decode_jer
Definition: ANY.h:47
ANY_t
struct ANY ANY_t
per_type_encoder_f
asn_enc_rval_t() per_type_encoder_f(const struct asn_TYPE_descriptor_s *type_descriptor, const asn_per_constraints_t *constraints, const void *struct_ptr, asn_per_outp_t *per_output)
Definition: per_encoder.h:20
ANY::size
int size
Definition: ANY.h:16
ANY_decode_uper
per_type_decoder_f ANY_decode_uper
Definition: ANY.h:52
ANY_encode_xer
xer_type_encoder_f ANY_encode_xer
Definition: ANY.h:43
ANY_to_type
int ANY_to_type(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr)
ANY_decode_aper
per_type_decoder_f ANY_decode_aper
Definition: ANY.h:56
asn_SPC_ANY_specs
asn_OCTET_STRING_specifics_t asn_SPC_ANY_specs
Definition: ANY.c:8
ANY
Definition: ANY.h:14
ANY_new_fromType
ANY_t * ANY_new_fromType(asn_TYPE_descriptor_t *td, void *struct_ptr)
ANY_fromType
int ANY_fromType(ANY_t *, asn_TYPE_descriptor_t *td, void *struct_ptr)
ANY_encode_jer
jer_type_encoder_f ANY_encode_jer
Definition: ANY.h:48
ANY_new_fromType_aper
ANY_t * ANY_new_fromType_aper(asn_TYPE_descriptor_t *td, void *sptr)
Definition: ANY_aper.c:51
asn_OP_ANY
asn_TYPE_operation_t asn_OP_ANY
Definition: ANY.c:13
OCTET_STRING.h
ANY_to_type_aper
int ANY_to_type_aper(ANY_t *, asn_TYPE_descriptor_t *td, void **struct_ptr)
Definition: ANY_aper.c:75


etsi_its_cam_ts_coding
Author(s): Jean-Pierre Busch , Guido Küppers , Lennart Reiher
autogenerated on Sun May 18 2025 02:21:22