/** \file z-diag1.c \brief ASN.1 Module DiagnosticFormatDiag1 Generated automatically by YAZ ASN.1 Compiler 0.4 */ #if HAVE_CONFIG_H #include #endif #include int z_DiagnosticFormat_s(ODR o, Z_DiagnosticFormat_s **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_DiagnosticFormat_s_defaultDiagRec, (Odr_fun) z_DefaultDiagFormat, "defaultDiagRec"}, {ODR_EXPLICIT, ODR_CONTEXT, 2, Z_DiagnosticFormat_s_explicitDiagnostic, (Odr_fun) z_DiagFormat, "explicitDiagnostic"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return ((odr_constructed_begin(o, &(*p)->u, ODR_CONTEXT, 1, "diagnostic") && odr_choice(o, arm, &(*p)->u, &(*p)->which, 0) && odr_constructed_end(o)) || odr_ok(o)) && odr_implicit_tag(o, z_InternationalString, &(*p)->message, ODR_CONTEXT, 2, 1, "message") && odr_sequence_end(o); } int z_DiagnosticFormat(ODR o, Z_DiagnosticFormat **p, int opt, const char *name) { if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of(o, (Odr_fun) z_DiagnosticFormat_s, &(*p)->elements, &(*p)->num, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_TooMany(ODR o, Z_TooMany **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, odr_integer, &(*p)->tooManyWhat, ODR_CONTEXT, 1, 0, "tooManyWhat") && odr_implicit_tag(o, odr_integer, &(*p)->max, ODR_CONTEXT, 2, 1, "max") && odr_sequence_end(o); } int z_BadSpec(ODR o, Z_BadSpec **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, z_Specification, &(*p)->spec, ODR_CONTEXT, 1, 0, "spec") && odr_implicit_tag(o, z_DatabaseName, &(*p)->db, ODR_CONTEXT, 2, 1, "db") && odr_implicit_settag(o, ODR_CONTEXT, 3) && (odr_sequence_of(o, (Odr_fun) z_Specification, &(*p)->goodOnes, &(*p)->num_goodOnes, "goodOnes") || odr_ok(o)) && odr_sequence_end(o); } int z_DbUnavail_0(ODR o, Z_DbUnavail_0 **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, odr_integer, &(*p)->reasonCode, ODR_CONTEXT, 1, 1, "reasonCode") && odr_implicit_tag(o, z_InternationalString, &(*p)->message, ODR_CONTEXT, 2, 1, "message") && odr_sequence_end(o); } int z_DbUnavail(ODR o, Z_DbUnavail **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, z_DatabaseName, &(*p)->db, ODR_CONTEXT, 1, 0, "db") && odr_implicit_tag(o, z_DbUnavail_0, &(*p)->why, ODR_CONTEXT, 2, 0, "why") && odr_sequence_end(o); } int z_Attribute(ODR o, Z_Attribute **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, odr_oid, &(*p)->id, ODR_CONTEXT, 1, 0, "id") && odr_implicit_tag(o, odr_integer, &(*p)->type, ODR_CONTEXT, 2, 1, "type") && odr_implicit_tag(o, odr_integer, &(*p)->value, ODR_CONTEXT, 3, 1, "value") && odr_explicit_tag(o, z_Term, &(*p)->term, ODR_CONTEXT, 4, 1, "term") && odr_sequence_end(o); } int z_AttCombo(ODR o, Z_AttCombo **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, z_AttributeList, &(*p)->unsupportedCombination, ODR_CONTEXT, 1, 0, "unsupportedCombination") && odr_implicit_settag(o, ODR_CONTEXT, 2) && (odr_sequence_of(o, (Odr_fun) z_AttributeList, &(*p)->recommendedAlternatives, &(*p)->num_recommendedAlternatives, "recommendedAlternatives") || odr_ok(o)) && odr_sequence_end(o); } int z_DiagTerm(ODR o, Z_DiagTerm **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, odr_integer, &(*p)->problem, ODR_CONTEXT, 1, 1, "problem") && odr_explicit_tag(o, z_Term, &(*p)->term, ODR_CONTEXT, 2, 0, "term") && odr_sequence_end(o); } int z_Proximity(ODR o, Z_Proximity **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_Proximity_resultSets, (Odr_fun) odr_null, "resultSets"}, {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_Proximity_badSet, (Odr_fun) z_InternationalString, "badSet"}, {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_Proximity_relation, (Odr_fun) odr_integer, "relation"}, {ODR_IMPLICIT, ODR_CONTEXT, 4, Z_Proximity_unit, (Odr_fun) odr_integer, "unit"}, {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_Proximity_distance, (Odr_fun) odr_integer, "distance"}, {ODR_EXPLICIT, ODR_CONTEXT, 6, Z_Proximity_attributes, (Odr_fun) z_AttributeList, "attributes"}, {ODR_IMPLICIT, ODR_CONTEXT, 7, Z_Proximity_ordered, (Odr_fun) odr_null, "ordered"}, {ODR_IMPLICIT, ODR_CONTEXT, 8, Z_Proximity_exclusion, (Odr_fun) odr_null, "exclusion"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_AttrListList(ODR o, Z_AttrListList **p, int opt, const char *name) { if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of(o, (Odr_fun) z_AttributeList, &(*p)->elements, &(*p)->num, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_Scan(ODR o, Z_Scan **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 0, Z_Scan_nonZeroStepSize, (Odr_fun) odr_null, "nonZeroStepSize"}, {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_Scan_specifiedStepSize, (Odr_fun) odr_null, "specifiedStepSize"}, {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_Scan_termList1, (Odr_fun) odr_null, "termList1"}, {ODR_IMPLICIT, ODR_CONTEXT, 4, Z_Scan_termList2, (Odr_fun) z_AttrListList, "termList2"}, {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_Scan_posInResponse, (Odr_fun) odr_integer, "posInResponse"}, {ODR_IMPLICIT, ODR_CONTEXT, 6, Z_Scan_resources, (Odr_fun) odr_null, "resources"}, {ODR_IMPLICIT, ODR_CONTEXT, 7, Z_Scan_endOfList, (Odr_fun) odr_null, "endOfList"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_StringList(ODR o, Z_StringList **p, int opt, const char *name) { if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->elements, &(*p)->num, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_Sort(ODR o, Z_Sort **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 0, Z_SortD_sequence, (Odr_fun) odr_null, "sequence"}, {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_SortD_noRsName, (Odr_fun) odr_null, "noRsName"}, {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_SortD_tooMany, (Odr_fun) odr_integer, "tooMany"}, {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_SortD_incompatible, (Odr_fun) odr_null, "incompatible"}, {ODR_IMPLICIT, ODR_CONTEXT, 4, Z_SortD_generic, (Odr_fun) odr_null, "generic"}, {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_SortD_dbSpecific, (Odr_fun) odr_null, "dbSpecific"}, {ODR_EXPLICIT, ODR_CONTEXT, 6, Z_SortD_sortElement, (Odr_fun) z_SortElement, "sortElement"}, {ODR_IMPLICIT, ODR_CONTEXT, 7, Z_SortD_key, (Odr_fun) odr_integer, "key"}, {ODR_IMPLICIT, ODR_CONTEXT, 8, Z_SortD_action, (Odr_fun) odr_null, "action"}, {ODR_IMPLICIT, ODR_CONTEXT, 9, Z_SortD_illegal, (Odr_fun) odr_integer, "illegal"}, {ODR_IMPLICIT, ODR_CONTEXT, 10, Z_SortD_inputTooLarge, (Odr_fun) z_StringList, "inputTooLarge"}, {ODR_IMPLICIT, ODR_CONTEXT, 11, Z_SortD_aggregateTooLarge, (Odr_fun) odr_null, "aggregateTooLarge"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_Segmentation(ODR o, Z_Segmentation **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 0, Z_Segmentation_segmentCount, (Odr_fun) odr_null, "segmentCount"}, {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_Segmentation_segmentSize, (Odr_fun) odr_integer, "segmentSize"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_ExtServices(ODR o, Z_ExtServices **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ExtServices_req, (Odr_fun) odr_integer, "req"}, {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_ExtServices_permission, (Odr_fun) odr_integer, "permission"}, {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_ExtServices_immediate, (Odr_fun) odr_integer, "immediate"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_OidList(ODR o, Z_OidList **p, int opt, const char *name) { if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of(o, (Odr_fun) odr_oid, &(*p)->elements, &(*p)->num, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_AltOidList(ODR o, Z_AltOidList **p, int opt, const char *name) { if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of(o, (Odr_fun) odr_oid, &(*p)->elements, &(*p)->num, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_AccessCtrl(ODR o, Z_AccessCtrl **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_AccessCtrl_noUser, (Odr_fun) odr_null, "noUser"}, {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_AccessCtrl_refused, (Odr_fun) odr_null, "refused"}, {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_AccessCtrl_simple, (Odr_fun) odr_null, "simple"}, {ODR_IMPLICIT, ODR_CONTEXT, 4, Z_AccessCtrl_oid, (Odr_fun) z_OidList, "oid"}, {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_AccessCtrl_alternative, (Odr_fun) z_AltOidList, "alternative"}, {ODR_IMPLICIT, ODR_CONTEXT, 6, Z_AccessCtrl_pwdInv, (Odr_fun) odr_null, "pwdInv"}, {ODR_IMPLICIT, ODR_CONTEXT, 7, Z_AccessCtrl_pwdExp, (Odr_fun) odr_null, "pwdExp"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); } int z_RecordSyntax(ODR o, Z_RecordSyntax **p, int opt, const char *name) { if (!odr_sequence_begin(o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag(o, odr_oid, &(*p)->unsupportedSyntax, ODR_CONTEXT, 1, 0, "unsupportedSyntax") && odr_implicit_settag(o, ODR_CONTEXT, 2) && (odr_sequence_of(o, (Odr_fun) odr_oid, &(*p)->suggestedAlternatives, &(*p)->num_suggestedAlternatives, "suggestedAlternatives") || odr_ok(o)) && odr_sequence_end(o); } int z_DiagFormat(ODR o, Z_DiagFormat **p, int opt, const char *name) { static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 1000, Z_DiagFormat_tooMany, (Odr_fun) z_TooMany, "tooMany"}, {ODR_IMPLICIT, ODR_CONTEXT, 1001, Z_DiagFormat_badSpec, (Odr_fun) z_BadSpec, "badSpec"}, {ODR_IMPLICIT, ODR_CONTEXT, 1002, Z_DiagFormat_dbUnavail, (Odr_fun) z_DbUnavail, "dbUnavail"}, {ODR_IMPLICIT, ODR_CONTEXT, 1003, Z_DiagFormat_unSupOp, (Odr_fun) odr_integer, "unSupOp"}, {ODR_IMPLICIT, ODR_CONTEXT, 1004, Z_DiagFormat_attribute, (Odr_fun) z_Attribute, "attribute"}, {ODR_IMPLICIT, ODR_CONTEXT, 1005, Z_DiagFormat_attCombo, (Odr_fun) z_AttCombo, "attCombo"}, {ODR_IMPLICIT, ODR_CONTEXT, 1006, Z_DiagFormat_term, (Odr_fun) z_DiagTerm, "term"}, {ODR_EXPLICIT, ODR_CONTEXT, 1007, Z_DiagFormat_proximity, (Odr_fun) z_Proximity, "proximity"}, {ODR_EXPLICIT, ODR_CONTEXT, 1008, Z_DiagFormat_scan, (Odr_fun) z_Scan, "scan"}, {ODR_EXPLICIT, ODR_CONTEXT, 1009, Z_DiagFormat_sort, (Odr_fun) z_Sort, "sort"}, {ODR_EXPLICIT, ODR_CONTEXT, 1010, Z_DiagFormat_segmentation, (Odr_fun) z_Segmentation, "segmentation"}, {ODR_EXPLICIT, ODR_CONTEXT, 1011, Z_DiagFormat_extServices, (Odr_fun) z_ExtServices, "extServices"}, {ODR_EXPLICIT, ODR_CONTEXT, 1012, Z_DiagFormat_accessCtrl, (Odr_fun) z_AccessCtrl, "accessCtrl"}, {ODR_IMPLICIT, ODR_CONTEXT, 1013, Z_DiagFormat_recordSyntax, (Odr_fun) z_RecordSyntax, "recordSyntax"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; if (o->direction == ODR_DECODE) *p = 0; return odr_missing(o, opt, name); }