From 759184a854d23a99ca8ac0d401d5e3886cfde45b Mon Sep 17 00:00:00 2001 From: Mike Taylor Date: Fri, 18 Jul 2003 22:36:39 +0000 Subject: [PATCH] Tweak as dictated by Adam, who is much better at reading packet dumps than I am :-) OCLC should be ashamed of themselves, sending ASN.1 that bears so very little resemblance to what they document! --- z39.50/oclcui.asn | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/z39.50/oclcui.asn b/z39.50/oclcui.asn index d60852d..4f5e7da 100644 --- a/z39.50/oclcui.asn +++ b/z39.50/oclcui.asn @@ -2,27 +2,26 @@ UserInfoFormat-oclcUserInformation {Z39-50-userInfoFormat OCLCUserInformation (7)} DEFINITIONS ::= BEGIN --- $Id: oclcui.asn,v 1.1 2003-07-18 19:53:28 mike Exp $ +-- $Id: oclcui.asn,v 1.2 2003-07-18 22:36:39 mike Exp $ -- -- This format is returned from the server at -- fsz3950test.oclc.org:210 -- I found the definition at -- http://www.oclc.org/firstsearch/documentation/z3950/config_guide.htm -- --- I have added OPTIONAL modifiers to the `dblist', `diagnosticSetId' --- and `code' elements because they appear to be admitted from the --- APDU returned as an Init diagnostic from fsz3950test.oclc.org:210 --- but this still doesn't work yet: I get "Decoding incoming APDU: --- Length of constructed type different from sum of members (code --- 10:36)" +-- I have added OPTIONAL modifiers to the `dblist' and and `code' +-- elements because they appear to be admitted from the APDU returned +-- as an Init diagnostic from fsz3950test.oclc.org:210. Adam further +-- removed the SEQUENCE structure, changed failReason to a BOOLEAN and +-- deleted diagnosticSetId altogether, to make the ASN.1 conform to +-- what's actually returned on the wire. OCLC-UserInformation ::= SEQUENCE { motd [1] IMPLICIT VisibleString, dblist SEQUENCE OF DBName OPTIONAL, - failReason [3] IMPLICIT SEQUENCE { - diagnosticSetId OBJECT IDENTIFIER OPTIONAL, - code [1] IMPLICIT INTEGER OPTIONAL, - text [2] IMPLICIT VisibleString OPTIONAL } OPTIONAL + failReason [3] IMPLICIT BOOLEAN OPTIONAL, + code [1] IMPLICIT INTEGER OPTIONAL, + text [2] IMPLICIT VisibleString OPTIONAL } DBName ::= [2] IMPLICIT VisibleString -- 1.7.10.4