2 \brief ASN.1 Module AccessControlFormat-prompt-1
4 Generated automatically by YAZ ASN.1 Compiler 0.4
7 #include <yaz/z-accform1.h>
9 int z_PromptObject1 (ODR o, Z_PromptObject1 **p, int opt, const char *name)
11 static Odr_arm arm[] = {
12 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PromptObject1_challenge,
13 (Odr_fun) z_Challenge1, "challenge"},
14 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PromptObject1_response,
15 (Odr_fun) z_Response1, "response"},
16 {-1, -1, -1, -1, (Odr_fun) 0, 0}
18 if (!odr_initmember(o, p, sizeof(**p)))
19 return odr_missing(o, opt, name);
20 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
22 if(o->direction == ODR_DECODE)
24 return odr_missing(o, opt, name);
27 int z_ChallengeUnit1 (ODR o, Z_ChallengeUnit1 **p, int opt, const char *name)
29 static Odr_arm arm[] = {
30 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ChallengeUnit1_character,
31 (Odr_fun) z_InternationalString, "character"},
32 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_ChallengeUnit1_encrypted,
33 (Odr_fun) z_Encryption, "encrypted"},
34 {-1, -1, -1, -1, (Odr_fun) 0, 0}
36 if (!odr_sequence_begin (o, p, sizeof(**p), name))
37 return odr_missing(o, opt, name) && odr_ok (o);
39 odr_explicit_tag (o, z_PromptId,
40 &(*p)->promptId, ODR_CONTEXT, 1, 0, "promptId") &&
41 odr_implicit_tag (o, z_InternationalString,
42 &(*p)->defaultResponse, ODR_CONTEXT, 2, 1, "defaultResponse") &&
43 ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 3, "promptInfo") &&
44 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
45 odr_constructed_end (o)) || odr_ok(o)) &&
46 odr_implicit_tag (o, z_InternationalString,
47 &(*p)->regExpr, ODR_CONTEXT, 4, 1, "regExpr") &&
48 odr_implicit_tag (o, odr_null,
49 &(*p)->responseRequired, ODR_CONTEXT, 5, 1, "responseRequired") &&
50 odr_implicit_settag (o, ODR_CONTEXT, 6) &&
51 (odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->allowedValues,
52 &(*p)->num_allowedValues, "allowedValues") || odr_ok(o)) &&
53 odr_implicit_tag (o, odr_null,
54 &(*p)->shouldSave, ODR_CONTEXT, 7, 1, "shouldSave") &&
55 odr_implicit_tag (o, odr_integer,
56 &(*p)->dataType, ODR_CONTEXT, 8, 1, "dataType") &&
57 odr_implicit_tag (o, z_External,
58 &(*p)->diagnostic, ODR_CONTEXT, 9, 1, "diagnostic") &&
62 int z_Challenge1 (ODR o, Z_Challenge1 **p, int opt, const char *name)
64 if (!odr_initmember (o, p, sizeof(**p)))
65 return odr_missing(o, opt, name);
66 if (odr_sequence_of (o, (Odr_fun) z_ChallengeUnit1, &(*p)->elements,
69 if(o->direction == ODR_DECODE)
71 return odr_missing(o, opt, name);
74 int z_ResponseUnit1 (ODR o, Z_ResponseUnit1 **p, int opt, const char *name)
76 static Odr_arm arm[] = {
77 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ResponseUnit1_string,
78 (Odr_fun) z_InternationalString, "string"},
79 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_ResponseUnit1_accept,
80 (Odr_fun) odr_bool, "accept"},
81 {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_ResponseUnit1_acknowledge,
82 (Odr_fun) odr_null, "acknowledge"},
83 {ODR_EXPLICIT, ODR_CONTEXT, 4, Z_ResponseUnit1_diagnostic,
84 (Odr_fun) z_DiagRec, "diagnostic"},
85 {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_ResponseUnit1_encrypted,
86 (Odr_fun) z_Encryption, "encrypted"},
87 {-1, -1, -1, -1, (Odr_fun) 0, 0}
89 if (!odr_sequence_begin (o, p, sizeof(**p), name))
90 return odr_missing(o, opt, name) && odr_ok (o);
92 odr_explicit_tag (o, z_PromptId,
93 &(*p)->promptId, ODR_CONTEXT, 1, 0, "promptId") &&
94 odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 2, "promptResponse") &&
95 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
96 odr_constructed_end (o) &&
100 int z_Response1 (ODR o, Z_Response1 **p, int opt, const char *name)
102 if (!odr_initmember (o, p, sizeof(**p)))
103 return odr_missing(o, opt, name);
104 if (odr_sequence_of (o, (Odr_fun) z_ResponseUnit1, &(*p)->elements,
107 if(o->direction == ODR_DECODE)
109 return odr_missing(o, opt, name);
112 int z_PromptIdEnumeratedPrompt (ODR o, Z_PromptIdEnumeratedPrompt **p, int opt, const char *name)
114 if (!odr_sequence_begin (o, p, sizeof(**p), name))
115 return odr_missing(o, opt, name) && odr_ok (o);
117 odr_implicit_tag (o, odr_integer,
118 &(*p)->type, ODR_CONTEXT, 1, 0, "type") &&
119 odr_implicit_tag (o, z_InternationalString,
120 &(*p)->suggestedString, ODR_CONTEXT, 2, 1, "suggestedString") &&
121 odr_sequence_end (o);
124 int z_PromptId (ODR o, Z_PromptId **p, int opt, const char *name)
126 static Odr_arm arm[] = {
127 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PromptId_enumeratedPrompt,
128 (Odr_fun) z_PromptIdEnumeratedPrompt, "enumeratedPrompt"},
129 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PromptId_nonEnumeratedPrompt,
130 (Odr_fun) z_InternationalString, "nonEnumeratedPrompt"},
131 {-1, -1, -1, -1, (Odr_fun) 0, 0}
133 if (!odr_initmember(o, p, sizeof(**p)))
134 return odr_missing(o, opt, name);
135 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
137 if(o->direction == ODR_DECODE)
139 return odr_missing(o, opt, name);
142 int z_Encryption (ODR o, Z_Encryption **p, int opt, const char *name)
144 if (!odr_sequence_begin (o, p, sizeof(**p), name))
145 return odr_missing(o, opt, name) && odr_ok (o);
147 odr_implicit_tag (o, odr_octetstring,
148 &(*p)->cryptType, ODR_CONTEXT, 1, 1, "cryptType") &&
149 odr_implicit_tag (o, odr_octetstring,
150 &(*p)->credential, ODR_CONTEXT, 2, 1, "credential") &&
151 odr_implicit_tag (o, odr_octetstring,
152 &(*p)->data, ODR_CONTEXT, 3, 0, "data") &&
153 odr_sequence_end (o);