X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=zutil%2Fsoap.c;h=f06ae8ff94f74e90e3a565935837ad782f05a7c2;hb=4a72187a377987ccbe95cb7c549adb0678bc7159;hp=a19fc5781fe79656d001dea8efb73a27d079744a;hpb=ac286ae76051058c8e340bf84eb98391340b7d22;p=yaz-moved-to-github.git diff --git a/zutil/soap.c b/zutil/soap.c index a19fc57..f06ae8f 100644 --- a/zutil/soap.c +++ b/zutil/soap.c @@ -2,12 +2,12 @@ * Copyright (c) 2002-2003, Index Data. * See the file LICENSE for details. * - * $Id: soap.c,v 1.2 2003-02-14 18:49:24 adam Exp $ + * $Id: soap.c,v 1.4 2003-02-17 22:35:48 adam Exp $ */ #include -#if HAVE_XSLT +#if HAVE_XML2 #include #include @@ -54,7 +54,7 @@ int z_soap_codec(ODR o, Z_SOAP **pp, /* check that root node is Envelope */ ptr = xmlDocGetRootElement(doc); if (!ptr || ptr->type != XML_ELEMENT_NODE || - strcmp(ptr->name, "Envelope")) + strcmp(ptr->name, "Envelope") || !ptr->ns) { xmlFreeDoc(doc); return z_soap_error(o, p, "SOAP-ENV:Client", @@ -183,6 +183,8 @@ int z_soap_codec(ODR o, Z_SOAP **pp, envelope_ptr = xmlNewNode(0, "Envelope"); ns_env = xmlNewNs(envelope_ptr, p->ns, "SOAP-ENV"); + xmlSetNs(envelope_ptr, ns_env); + body_ptr = xmlNewChild(envelope_ptr, ns_env, "Body", 0); xmlDocSetRootElement(doc, envelope_ptr);