yaz/yaz-3.0.2-client.diff

32 lines
1.2 KiB
Diff

--- yaz-3.0.2/client/client.c.~1~ 2007-05-08 10:22:35.000000000 +0200
+++ yaz-3.0.2/client/client.c 2007-05-10 14:07:38.000000000 +0200
@@ -2335,6 +2335,7 @@
int noread = 0;
Odr_oid *oid;
char oid_str[51];
+ union { unsigned char **ucp; char **cp; }pun;
Z_APDU *apdu = zget_APDU(out, Z_APDU_extendedServicesRequest);
Z_ExtendedServicesRequest *req = apdu->u.extendedServicesRequest;
@@ -2346,7 +2347,7 @@
ext->indirect_reference = 0;
ext->descriptor = 0;
ext->which = Z_External_octet;
- ext->u.single_ASN1_type = (Odr_oct *) odr_malloc (out, sizeof(Odr_oct));
+ ext->u.single_ASN1_type = (Odr_oct *) odr_malloc (out, sizeof(Odr_oct));
sscanf(arg, "%50s%n", oid_str, &noread);
if (noread == 0)
{
@@ -2354,7 +2355,8 @@
return 0;
}
arg += noread;
- if (parse_cmd_doc(&arg, out, &asn_buf,
+ pun.ucp = &ext->u.single_ASN1_type->buf;
+ if (parse_cmd_doc(&arg, out, pun.ucp,
&ext->u.single_ASN1_type->len, 0) == 0)
return 0;
Diff finished. Thu May 10 14:07:51 2007