00001
00007 #include <yaz/z-oclcui.h>
00008
00009 int z_OCLC_UserInformation (ODR o, Z_OCLC_UserInformation **p, int opt, const char *name)
00010 {
00011 if (!odr_sequence_begin (o, p, sizeof(**p), name))
00012 return odr_missing(o, opt, name) && odr_ok (o);
00013 return
00014 odr_implicit_tag (o, odr_visiblestring,
00015 &(*p)->motd, ODR_CONTEXT, 1, 1, "motd") &&
00016 (odr_sequence_of(o, (Odr_fun) z_DBName, &(*p)->dblist,
00017 &(*p)->num_dblist, "dblist") || odr_ok(o)) &&
00018 odr_implicit_tag (o, odr_bool,
00019 &(*p)->failReason, ODR_CONTEXT, 3, 1, "failReason") &&
00020 odr_implicit_tag (o, odr_integer,
00021 &(*p)->code, ODR_CONTEXT, 1, 1, "code") &&
00022 odr_implicit_tag (o, odr_visiblestring,
00023 &(*p)->text, ODR_CONTEXT, 2, 1, "text") &&
00024 odr_sequence_end (o);
00025 }
00026
00027 int z_DBName (ODR o, Z_DBName **p, int opt, const char *name)
00028 {
00029 return odr_implicit_tag (o, odr_visiblestring, p, ODR_CONTEXT, 2, opt, name);
00030 }