Go to the documentation of this file.
18 #if !defined(ASN_DISABLE_PRINT_SUPPORT)
25 #if !defined(ASN_DISABLE_BER_SUPPORT)
32 #if !defined(ASN_DISABLE_XER_SUPPORT)
39 #if !defined(ASN_DISABLE_JER_SUPPORT)
46 #if !defined(ASN_DISABLE_OER_SUPPORT)
53 #if !defined(ASN_DISABLE_UPER_SUPPORT)
60 #if !defined(ASN_DISABLE_APER_SUPPORT)
67 #if !defined(ASN_DISABLE_RFILL_SUPPORT)
85 #if !defined(ASN_DISABLE_OER_SUPPORT)
88 #if !defined(ASN_DISABLE_UPER_SUPPORT) || !defined(ASN_DISABLE_APER_SUPPORT)
91 #if !defined(ASN_DISABLE_JER_SUPPORT)
107 1, 1, 1, 1, 1, 1, 1, 1,
109 0, 0, 0, 0, 2, 2, 3, -1 },
112 4, 4, 4, 4, 4, 4, 4, 4,
113 5, 5, 5, 5, 6, 6, -1, -1 }
125 #define U8E_ILLSTART -2
126 #define U8E_NOTCONT -3
127 #define U8E_NOTMIN -4
128 #define U8E_EINVAL -5
137 "%s: value not given", td->
name);
141 "%s: truncated UTF-8 sequence (%s:%d)",
142 td->
name, __FILE__, __LINE__);
146 "%s: UTF-8 illegal start of encoding (%s:%d)",
147 td->
name, __FILE__, __LINE__);
151 "%s: UTF-8 not continuation (%s:%d)",
152 td->
name, __FILE__, __LINE__);
156 "%s: UTF-8 not minimal sequence (%s:%d)",
157 td->
name, __FILE__, __LINE__);
160 return (len < 0) ? -1 : 0;
166 uint8_t *buf = (st == NULL)? NULL : st->
buf;
167 uint8_t *end = (buf == NULL)? NULL : buf + st->
size;
168 uint32_t *dstend = (dst == NULL)? NULL : dst + dstlen;
170 for(length = 0; buf < end; length++) {
182 if(want != -1)
break;
193 value = ch & (0xff >> want);
195 for(buf++; buf < cend; buf++) {
198 value = (value << 6) | (ch & 0x3F);
206 if(dst < dstend) *dst = 0;
225 return (ret < 0) ? 0 : ret;
static const ber_tlv_tag_t asn_DEF_UTF8String_tags[]
static const int UTF8String_ht[2][16]
asn_struct_free_f OCTET_STRING_free
void() asn_app_constraint_failed_f(void *application_specific_key, const struct asn_TYPE_descriptor_s *type_descriptor_which_failed, const void *structure_which_failed_ptr, const char *error_message_format,...) CC_PRINTFLIKE(4
der_type_encoder_f OCTET_STRING_encode_der
static const int32_t UTF8String_mv[7]
@ ASN_TAG_CLASS_UNIVERSAL
ssize_t UTF8String_length(const UTF8String_t *st)
asn_TYPE_descriptor_t asn_DEF_UTF8String
oer_type_decoder_f OCTET_STRING_decode_oer
per_type_encoder_f OCTET_STRING_encode_aper
asn_struct_print_f UTF8String_print
per_type_decoder_f OCTET_STRING_decode_aper
xer_type_encoder_f OCTET_STRING_encode_xer_utf8
asn_random_fill_f UTF8String_random_fill
size_t UTF8String_to_wcs(const UTF8String_t *st, uint32_t *dst, size_t dstlen)
static ssize_t UTF8String__process(const UTF8String_t *st, uint32_t *dst, size_t dstlen)
oer_type_encoder_f OCTET_STRING_encode_oer
ber_type_decoder_f OCTET_STRING_decode_ber
per_type_decoder_f OCTET_STRING_decode_uper
asn_struct_copy_f OCTET_STRING_copy
xer_type_decoder_f OCTET_STRING_decode_xer_utf8
jer_type_decoder_f OCTET_STRING_decode_jer_utf8
per_type_encoder_f OCTET_STRING_encode_uper
jer_type_encoder_f OCTET_STRING_encode_jer_utf8
int UTF8String_constraint(const asn_TYPE_descriptor_t *td, const void *sptr, asn_app_constraint_failed_f *ctfailcb, void *app_key)
asn_struct_compare_f OCTET_STRING_compare
asn_TYPE_operation_t asn_OP_UTF8String
etsi_its_spatem_ts_coding
Author(s): Jean-Pierre Busch
, Guido Küppers , Lennart Reiher
autogenerated on Sun May 18 2025 02:29:29