* Copyright (c) 1998-2004, Index Data.
* See the file LICENSE for details.
*
- * $Id: yaz-my-client.cpp,v 1.25 2007-03-20 07:54:11 adam Exp $
+ * $Id: yaz-my-client.cpp,v 1.26 2007-04-10 12:14:04 adam Exp $
*/
#include <stdlib.h>
if (ent)
printf("%s\n", ent->desc);
}
- /* Check if this is a known, ASN.1 type tucked away in an octet string */
- Z_ext_typeent *etype = z_ext_getentbyref(ent->value);
- if (ent && (r->which == Z_External_octet || r->which == Z_External_single)
- && (etype = z_ext_getentbyref(ent->value)))
-
- {
- void *rr;
- /*
- * Call the given decoder to process the record.
- */
- odr_setbuf(odr_decode(), (char*)record->u.octet_aligned->buf,
- record->u.octet_aligned->len, 0);
- if (!(*etype->fun)(odr_decode(), (char **)&rr, 0, 0))
- {
- odr_perror(odr_decode(), "Decoding constructed record.");
- fprintf(stderr, "[Near %ld]\n", (long) odr_offset(odr_decode()));
- fprintf(stderr, "Packet dump:\n---------\n");
- odr_dumpBER(stderr, (char*)record->u.octet_aligned->buf,
- record->u.octet_aligned->len);
- fprintf(stderr, "---------\n");
- }
- if (etype->what == Z_External_sutrs)
- {
- Z_SUTRS *sutrs = (Z_SUTRS *) rr;
- recv_textRecord ((int) VAL_SUTRS, (const char *) sutrs->buf,
- (size_t) sutrs->len);
- }
- return;
- }
if (r->which == Z_External_octet && record->u.octet_aligned->len)
{
yaz_marc_t mt = yaz_marc_create();