Commit 61b40d81 authored by Lev Walkin's avatar Lev Walkin

CHOICE XER decoder

parent da3ca411
...@@ -1508,11 +1508,15 @@ emit_type_DEF(arg_t *arg, asn1p_expr_t *expr, enum tvm_compat tv_mode, int tags_ ...@@ -1508,11 +1508,15 @@ emit_type_DEF(arg_t *arg, asn1p_expr_t *expr, enum tvm_compat tv_mode, int tags_
OUT("%s_constraint,\n", p); OUT("%s_constraint,\n", p);
OUT("%s_decode_ber,\n", p); OUT("%s_decode_ber,\n", p);
OUT("%s_encode_der,\n", p); OUT("%s_encode_der,\n", p);
if(!(expr->expr_type & ASN_CONSTR_MASK) switch(expr->expr_type) {
&& (expr->expr_type != ASN_CONSTR_SEQUENCE)) case ASN_CONSTR_SET:
OUT("%s_decode_xer,\n", p); case ASN_CONSTR_SET_OF:
else case ASN_CONSTR_SEQUENCE_OF:
OUT("0,\t\t\t\t/* Not implemented yet */\n"); OUT("0,\t\t\t\t/* Not implemented yet */\n");
break;
default:
OUT("%s_decode_xer,\n", p);
}
OUT("%s_encode_xer,\n", p); OUT("%s_encode_xer,\n", p);
p = MKID(expr->Identifier); p = MKID(expr->Identifier);
......
...@@ -114,7 +114,7 @@ asn_TYPE_descriptor_t asn_DEF_toBeSigned = { ...@@ -114,7 +114,7 @@ asn_TYPE_descriptor_t asn_DEF_toBeSigned = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_toBeSigned_tags, asn_DEF_toBeSigned_tags,
...@@ -175,7 +175,7 @@ asn_TYPE_descriptor_t asn_DEF_Certificate = { ...@@ -175,7 +175,7 @@ asn_TYPE_descriptor_t asn_DEF_Certificate = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_Certificate_tags, asn_DEF_Certificate_tags,
......
...@@ -122,7 +122,7 @@ asn_TYPE_descriptor_t asn_DEF_Tree = { ...@@ -122,7 +122,7 @@ asn_TYPE_descriptor_t asn_DEF_Tree = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_Tree_tags, asn_DEF_Tree_tags,
...@@ -289,7 +289,7 @@ asn_TYPE_descriptor_t asn_DEF_anything_member = { ...@@ -289,7 +289,7 @@ asn_TYPE_descriptor_t asn_DEF_anything_member = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_anything_member_tags, asn_DEF_anything_member_tags,
...@@ -382,7 +382,7 @@ asn_TYPE_descriptor_t asn_DEF_other = { ...@@ -382,7 +382,7 @@ asn_TYPE_descriptor_t asn_DEF_other = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
......
...@@ -167,7 +167,7 @@ asn_TYPE_descriptor_t asn_DEF_Error = { ...@@ -167,7 +167,7 @@ asn_TYPE_descriptor_t asn_DEF_Error = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_Error_tags, asn_DEF_Error_tags,
......
...@@ -108,7 +108,7 @@ asn_TYPE_descriptor_t asn_DEF_T = { ...@@ -108,7 +108,7 @@ asn_TYPE_descriptor_t asn_DEF_T = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_T_tags, asn_DEF_T_tags,
...@@ -185,7 +185,7 @@ asn_TYPE_descriptor_t asn_DEF_T2 = { ...@@ -185,7 +185,7 @@ asn_TYPE_descriptor_t asn_DEF_T2 = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_T2_tags, asn_DEF_T2_tags,
......
...@@ -144,7 +144,7 @@ asn_TYPE_descriptor_t asn_DEF_LogLine = { ...@@ -144,7 +144,7 @@ asn_TYPE_descriptor_t asn_DEF_LogLine = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_LogLine_tags, asn_DEF_LogLine_tags,
...@@ -294,7 +294,7 @@ asn_TYPE_descriptor_t asn_DEF_VariablePartSet = { ...@@ -294,7 +294,7 @@ asn_TYPE_descriptor_t asn_DEF_VariablePartSet = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_VariablePartSet_tags, asn_DEF_VariablePartSet_tags,
...@@ -474,7 +474,7 @@ asn_TYPE_descriptor_t asn_DEF_vrange = { ...@@ -474,7 +474,7 @@ asn_TYPE_descriptor_t asn_DEF_vrange = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_vrange_tags, asn_DEF_vrange_tags,
...@@ -525,7 +525,7 @@ asn_TYPE_descriptor_t asn_DEF_VariablePart = { ...@@ -525,7 +525,7 @@ asn_TYPE_descriptor_t asn_DEF_VariablePart = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
...@@ -671,7 +671,7 @@ asn_TYPE_descriptor_t asn_DEF_notify = { ...@@ -671,7 +671,7 @@ asn_TYPE_descriptor_t asn_DEF_notify = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_notify_tags, asn_DEF_notify_tags,
...@@ -724,7 +724,7 @@ asn_TYPE_descriptor_t asn_DEF_ActionItem = { ...@@ -724,7 +724,7 @@ asn_TYPE_descriptor_t asn_DEF_ActionItem = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_ActionItem_tags, asn_DEF_ActionItem_tags,
......
...@@ -175,7 +175,7 @@ asn_TYPE_descriptor_t asn_DEF_Test_structure_1 = { ...@@ -175,7 +175,7 @@ asn_TYPE_descriptor_t asn_DEF_Test_structure_1 = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_Test_structure_1_tags, asn_DEF_Test_structure_1_tags,
...@@ -330,7 +330,7 @@ asn_TYPE_descriptor_t asn_DEF_Choice_1 = { ...@@ -330,7 +330,7 @@ asn_TYPE_descriptor_t asn_DEF_Choice_1 = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
......
...@@ -106,7 +106,7 @@ asn_TYPE_descriptor_t asn_DEF_e = { ...@@ -106,7 +106,7 @@ asn_TYPE_descriptor_t asn_DEF_e = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
...@@ -156,7 +156,7 @@ asn_TYPE_descriptor_t asn_DEF_h = { ...@@ -156,7 +156,7 @@ asn_TYPE_descriptor_t asn_DEF_h = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
...@@ -223,7 +223,7 @@ asn_TYPE_descriptor_t asn_DEF_b = { ...@@ -223,7 +223,7 @@ asn_TYPE_descriptor_t asn_DEF_b = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
...@@ -279,7 +279,7 @@ asn_TYPE_descriptor_t asn_DEF_T = { ...@@ -279,7 +279,7 @@ asn_TYPE_descriptor_t asn_DEF_T = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_T_tags, asn_DEF_T_tags,
......
...@@ -70,7 +70,7 @@ asn_TYPE_descriptor_t asn_DEF_ConstructedType = { ...@@ -70,7 +70,7 @@ asn_TYPE_descriptor_t asn_DEF_ConstructedType = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_ConstructedType_tags, asn_DEF_ConstructedType_tags,
......
...@@ -237,7 +237,7 @@ asn_TYPE_descriptor_t asn_DEF_T3 = { ...@@ -237,7 +237,7 @@ asn_TYPE_descriptor_t asn_DEF_T3 = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
...@@ -312,7 +312,7 @@ asn_TYPE_descriptor_t asn_DEF_T4 = { ...@@ -312,7 +312,7 @@ asn_TYPE_descriptor_t asn_DEF_T4 = {
CHOICE_constraint, CHOICE_constraint,
CHOICE_decode_ber, CHOICE_decode_ber,
CHOICE_encode_der, CHOICE_encode_der,
0, /* Not implemented yet */ CHOICE_decode_xer,
CHOICE_encode_xer, CHOICE_encode_xer,
CHOICE_outmost_tag, CHOICE_outmost_tag,
0, /* No effective tags (pointer) */ 0, /* No effective tags (pointer) */
......
...@@ -60,7 +60,7 @@ asn_TYPE_descriptor_t asn_DEF_T1 = { ...@@ -60,7 +60,7 @@ asn_TYPE_descriptor_t asn_DEF_T1 = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_T1_tags, asn_DEF_T1_tags,
...@@ -137,7 +137,7 @@ asn_TYPE_descriptor_t asn_DEF_T2 = { ...@@ -137,7 +137,7 @@ asn_TYPE_descriptor_t asn_DEF_T2 = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_T2_tags, asn_DEF_T2_tags,
......
...@@ -836,7 +836,7 @@ asn_TYPE_descriptor_t asn_DEF_Ts = { ...@@ -836,7 +836,7 @@ asn_TYPE_descriptor_t asn_DEF_Ts = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_Ts_tags, asn_DEF_Ts_tags,
......
...@@ -836,7 +836,7 @@ asn_TYPE_descriptor_t asn_DEF_Ts = { ...@@ -836,7 +836,7 @@ asn_TYPE_descriptor_t asn_DEF_Ts = {
SEQUENCE_constraint, SEQUENCE_constraint,
SEQUENCE_decode_ber, SEQUENCE_decode_ber,
SEQUENCE_encode_der, SEQUENCE_encode_der,
0, /* Not implemented yet */ SEQUENCE_decode_xer,
SEQUENCE_encode_xer, SEQUENCE_encode_xer,
0, /* Use generic outmost tag fetcher */ 0, /* Use generic outmost tag fetcher */
asn_DEF_Ts_tags, asn_DEF_Ts_tags,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment