2004-06-03 03:38:44 +00:00
|
|
|
/*-
|
|
|
|
* Copyright (c) 2003 Lev Walkin <vlm@lionet.info>. All rights reserved.
|
|
|
|
* Redistribution and modifications are permitted subject to BSD license.
|
|
|
|
*/
|
2004-09-22 16:06:28 +00:00
|
|
|
#include <asn_internal.h>
|
2004-06-03 03:38:44 +00:00
|
|
|
#include <GraphicString.h>
|
|
|
|
|
|
|
|
/*
|
|
|
|
* GraphicString basic type description.
|
|
|
|
*/
|
2014-07-29 18:30:10 +00:00
|
|
|
static const ber_tlv_tag_t asn_DEF_GraphicString_tags[] = {
|
2004-09-13 08:31:01 +00:00
|
|
|
(ASN_TAG_CLASS_UNIVERSAL | (25 << 2)), /* [UNIVERSAL 25] IMPLICIT ...*/
|
|
|
|
(ASN_TAG_CLASS_UNIVERSAL | (4 << 2)) /* ... OCTET STRING */
|
2004-06-03 03:38:44 +00:00
|
|
|
};
|
Move type operations to another structure
Every type has free, print, check_constraints, ber_decoder, der_encoder,
xer_decoder, xer_encoder, uper_decoder, uper_encoder and outmost_tag
operations. We move them out to a separate structure asn_TYPE_operation_t.
Combined with previous logic simplification, these operations are based
on ASN.1 basic types, constructed types and string types. So we can
reduce the space occupied by asn_TYPE_descriptor_t variables.
2017-08-19 17:25:45 +00:00
|
|
|
asn_TYPE_operation_t asn_OP_GraphicString = {
|
2004-09-22 16:06:28 +00:00
|
|
|
OCTET_STRING_free,
|
|
|
|
OCTET_STRING_print, /* non-ascii string */
|
2017-08-10 09:14:59 +00:00
|
|
|
OCTET_STRING_compare,
|
2004-06-03 03:38:44 +00:00
|
|
|
asn_generic_unknown_constraint,
|
|
|
|
OCTET_STRING_decode_ber, /* Implemented in terms of OCTET STRING */
|
2004-10-20 15:50:55 +00:00
|
|
|
OCTET_STRING_encode_der,
|
|
|
|
OCTET_STRING_decode_xer_hex,
|
|
|
|
OCTET_STRING_encode_xer, /* Can't expect it to be ASCII/UTF8 */
|
2017-07-06 15:26:36 +00:00
|
|
|
#ifdef ASN_DISABLE_OER_SUPPORT
|
|
|
|
0,
|
|
|
|
0,
|
|
|
|
#else
|
2017-07-25 14:58:05 +00:00
|
|
|
OCTET_STRING_decode_oer,
|
|
|
|
OCTET_STRING_encode_oer,
|
2017-07-06 15:26:36 +00:00
|
|
|
#endif /* ASN_DISABLE_OER_SUPPORT */
|
2017-07-14 10:59:52 +00:00
|
|
|
#ifdef ASN_DISABLE_PER_SUPPORT
|
|
|
|
0,
|
|
|
|
0,
|
|
|
|
#else
|
|
|
|
OCTET_STRING_decode_uper, /* Implemented in terms of OCTET STRING */
|
|
|
|
OCTET_STRING_encode_uper,
|
|
|
|
#endif /* ASN_DISABLE_PER_SUPPORT */
|
Move type operations to another structure
Every type has free, print, check_constraints, ber_decoder, der_encoder,
xer_decoder, xer_encoder, uper_decoder, uper_encoder and outmost_tag
operations. We move them out to a separate structure asn_TYPE_operation_t.
Combined with previous logic simplification, these operations are based
on ASN.1 basic types, constructed types and string types. So we can
reduce the space occupied by asn_TYPE_descriptor_t variables.
2017-08-19 17:25:45 +00:00
|
|
|
0 /* Use generic outmost tag fetcher */
|
|
|
|
};
|
|
|
|
asn_TYPE_descriptor_t asn_DEF_GraphicString = {
|
|
|
|
"GraphicString",
|
|
|
|
"GraphicString",
|
|
|
|
&asn_OP_GraphicString,
|
|
|
|
asn_generic_unknown_constraint,
|
2004-09-29 13:26:15 +00:00
|
|
|
asn_DEF_GraphicString_tags,
|
|
|
|
sizeof(asn_DEF_GraphicString_tags)
|
|
|
|
/ sizeof(asn_DEF_GraphicString_tags[0]) - 1,
|
|
|
|
asn_DEF_GraphicString_tags,
|
|
|
|
sizeof(asn_DEF_GraphicString_tags)
|
|
|
|
/ sizeof(asn_DEF_GraphicString_tags[0]),
|
2017-07-07 17:07:30 +00:00
|
|
|
0, /* No OER visible constraints */
|
2005-11-26 11:25:14 +00:00
|
|
|
0, /* No PER visible constraints */
|
2004-08-20 13:23:42 +00:00
|
|
|
0, 0, /* No members */
|
2004-06-05 08:17:50 +00:00
|
|
|
0 /* No specifics */
|
2004-06-03 03:38:44 +00:00
|
|
|
};
|
|
|
|
|