1 /* Generated automatically by the YAZ ASN.1 Compiler 0.3 */
2 /* Module-C: AccessControlFormat-prompt-1 */
4 #include <yaz/z-accform1.h>
6 int z_PromptObject1 (ODR o, Z_PromptObject1 **p, int opt, const char *name)
8 static Odr_arm arm[] = {
9 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PromptObject1_challenge,
10 (Odr_fun) z_Challenge1, "challenge"},
11 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PromptObject1_response,
12 (Odr_fun) z_Response1, "response"},
13 {-1, -1, -1, -1, (Odr_fun) 0, 0}
15 if (!odr_initmember(o, p, sizeof(**p)))
16 return opt && odr_ok(o);
17 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
20 return opt && odr_ok(o);
23 int z_ChallengeUnit1 (ODR o, Z_ChallengeUnit1 **p, int opt, const char *name)
25 static Odr_arm arm[] = {
26 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ChallengeUnit1_character,
27 (Odr_fun) z_InternationalString, "character"},
28 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_ChallengeUnit1_encrypted,
29 (Odr_fun) z_Encryption, "encrypted"},
30 {-1, -1, -1, -1, (Odr_fun) 0, 0}
32 if (!odr_sequence_begin (o, p, sizeof(**p), name))
33 return opt && odr_ok (o);
35 odr_explicit_tag (o, z_PromptId,
36 &(*p)->promptId, ODR_CONTEXT, 1, 0, "promptId") &&
37 odr_implicit_tag (o, z_InternationalString,
38 &(*p)->defaultResponse, ODR_CONTEXT, 2, 1, "defaultResponse") &&
39 ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 3, "promptInfo") &&
40 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
41 odr_constructed_end (o)) || odr_ok(o)) &&
42 odr_implicit_tag (o, z_InternationalString,
43 &(*p)->regExpr, ODR_CONTEXT, 4, 1, "regExpr") &&
44 odr_implicit_tag (o, odr_null,
45 &(*p)->responseRequired, ODR_CONTEXT, 5, 1, "responseRequired") &&
46 odr_implicit_settag (o, ODR_CONTEXT, 6) &&
47 (odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->allowedValues,
48 &(*p)->num_allowedValues, "allowedValues") || odr_ok(o)) &&
49 odr_implicit_tag (o, odr_null,
50 &(*p)->shouldSave, ODR_CONTEXT, 7, 1, "shouldSave") &&
51 odr_implicit_tag (o, odr_integer,
52 &(*p)->dataType, ODR_CONTEXT, 8, 1, "dataType") &&
53 odr_implicit_tag (o, z_External,
54 &(*p)->diagnostic, ODR_CONTEXT, 9, 1, "diagnostic") &&
58 int z_Challenge1 (ODR o, Z_Challenge1 **p, int opt, const char *name)
60 if (!odr_initmember (o, p, sizeof(**p)))
61 return opt && odr_ok(o);
62 if (odr_sequence_of (o, (Odr_fun) z_ChallengeUnit1, &(*p)->elements,
66 return opt && odr_ok(o);
69 int z_ResponseUnit1 (ODR o, Z_ResponseUnit1 **p, int opt, const char *name)
71 static Odr_arm arm[] = {
72 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ResponseUnit1_string,
73 (Odr_fun) z_InternationalString, "string"},
74 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_ResponseUnit1_accept,
75 (Odr_fun) odr_bool, "accept"},
76 {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_ResponseUnit1_acknowledge,
77 (Odr_fun) odr_null, "acknowledge"},
78 {ODR_EXPLICIT, ODR_CONTEXT, 4, Z_ResponseUnit1_diagnostic,
79 (Odr_fun) z_DiagRec, "diagnostic"},
80 {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_ResponseUnit1_encrypted,
81 (Odr_fun) z_Encryption, "encrypted"},
82 {-1, -1, -1, -1, (Odr_fun) 0, 0}
84 if (!odr_sequence_begin (o, p, sizeof(**p), name))
85 return opt && odr_ok (o);
87 odr_explicit_tag (o, z_PromptId,
88 &(*p)->promptId, ODR_CONTEXT, 1, 0, "promptId") &&
89 odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 2, "promptResponse") &&
90 odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) &&
91 odr_constructed_end (o) &&
95 int z_Response1 (ODR o, Z_Response1 **p, int opt, const char *name)
97 if (!odr_initmember (o, p, sizeof(**p)))
98 return opt && odr_ok(o);
99 if (odr_sequence_of (o, (Odr_fun) z_ResponseUnit1, &(*p)->elements,
103 return opt && odr_ok(o);
106 int z_PromptIdEnumeratedPrompt (ODR o, Z_PromptIdEnumeratedPrompt **p, int opt, const char *name)
108 if (!odr_sequence_begin (o, p, sizeof(**p), name))
109 return opt && odr_ok (o);
111 odr_implicit_tag (o, odr_integer,
112 &(*p)->type, ODR_CONTEXT, 1, 0, "type") &&
113 odr_implicit_tag (o, z_InternationalString,
114 &(*p)->suggestedString, ODR_CONTEXT, 2, 1, "suggestedString") &&
115 odr_sequence_end (o);
118 int z_PromptId (ODR o, Z_PromptId **p, int opt, const char *name)
120 static Odr_arm arm[] = {
121 {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_PromptId_enumeratedPrompt,
122 (Odr_fun) z_PromptIdEnumeratedPrompt, "enumeratedPrompt"},
123 {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_PromptId_nonEnumeratedPrompt,
124 (Odr_fun) z_InternationalString, "nonEnumeratedPrompt"},
125 {-1, -1, -1, -1, (Odr_fun) 0, 0}
127 if (!odr_initmember(o, p, sizeof(**p)))
128 return opt && odr_ok(o);
129 if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name))
132 return opt && odr_ok(o);
135 int z_Encryption (ODR o, Z_Encryption **p, int opt, const char *name)
137 if (!odr_sequence_begin (o, p, sizeof(**p), name))
138 return opt && odr_ok (o);
140 odr_implicit_tag (o, odr_octetstring,
141 &(*p)->cryptType, ODR_CONTEXT, 1, 1, "cryptType") &&
142 odr_implicit_tag (o, odr_octetstring,
143 &(*p)->credential, ODR_CONTEXT, 2, 1, "credential") &&
144 odr_implicit_tag (o, odr_octetstring,
145 &(*p)->data, ODR_CONTEXT, 3, 0, "data") &&
146 odr_sequence_end (o);