dmitry          Mon Jul 19 09:58:10 2004 EDT

  Added files:                 
    /php-src/ext/soap/tests/bugs        bug29109.phpt bug29109.wsdl 
                                        bug29236.phpt bug29236.wsdl 

  Modified files:              
    /php-src    NEWS 
    /php-src/ext/soap   php_sdl.c 
  Log:
  Fixed bugs #29109 and #29236. (WSDL cache failure)
  
  
http://cvs.php.net/diff.php/php-src/NEWS?r1=1.1765&r2=1.1766&ty=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.1765 php-src/NEWS:1.1766
--- php-src/NEWS:1.1765 Mon Jul 19 08:53:28 2004
+++ php-src/NEWS        Mon Jul 19 09:58:10 2004
@@ -1,6 +1,8 @@
 PHP                                                                        NEWS
 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 ?? ??? 2004, PHP 5.1.0
+- Fixed bug #29236 (memory error when wsdl-cache is enabled). (Dmitry)
+- Fixed bug #29109 (SoapFault exception: [WSDL] Out of memory). (Dmitry)
 - Fixed bug #29061 (soap extension segfaults). (Dmitry)
 - Added zlib stream filter suport. (Sara)
 - Changed the implementation of TRUE, FALSE, and NULL from constants to
http://cvs.php.net/diff.php/php-src/ext/soap/php_sdl.c?r1=1.70&r2=1.71&ty=u
Index: php-src/ext/soap/php_sdl.c
diff -u php-src/ext/soap/php_sdl.c:1.70 php-src/ext/soap/php_sdl.c:1.71
--- php-src/ext/soap/php_sdl.c:1.70     Mon Jul  5 17:31:35 2004
+++ php-src/ext/soap/php_sdl.c  Mon Jul 19 09:58:10 2004
@@ -17,7 +17,7 @@
   |          Dmitry Stogov <[EMAIL PROTECTED]>                             |
   +----------------------------------------------------------------------+
 */
-/* $Id: php_sdl.c,v 1.70 2004/07/05 21:31:35 iliaa Exp $ */
+/* $Id: php_sdl.c,v 1.71 2004/07/19 13:58:10 dmitry Exp $ */
 
 #include "php_soap.h"
 #include "libxml/uri.h"
@@ -1459,14 +1459,12 @@
                        binding->name = sdl_deserialize_string(&in);
                        binding->location = sdl_deserialize_string(&in);
                        WSDL_CACHE_GET_1(binding->bindingType,sdlBindingType,&in);
-                       if (binding->bindingType == BINDING_SOAP) {
-                               if (*in != 0) {
-                                 sdlSoapBindingPtr soap_binding = 
binding->bindingAttributes = emalloc(sizeof(sdlSoapBinding));
-                                       
WSDL_CACHE_GET_1(soap_binding->style,sdlEncodingStyle,&in);
-                                       
WSDL_CACHE_GET_1(soap_binding->transport,sdlTransport,&in);
-                               } else {
-                                       WSDL_CACHE_SKIP(1,&in);
-                               }
+                       if (binding->bindingType == BINDING_SOAP && *in != 0) {
+                         sdlSoapBindingPtr soap_binding = binding->bindingAttributes 
= emalloc(sizeof(sdlSoapBinding));
+                               
WSDL_CACHE_GET_1(soap_binding->style,sdlEncodingStyle,&in);
+                               
WSDL_CACHE_GET_1(soap_binding->transport,sdlTransport,&in);
+                       } else {
+                               WSDL_CACHE_SKIP(1,&in);
                        }
                        bindings[i] = binding;
                }
@@ -1490,18 +1488,16 @@
                } else {
                        func->binding = bindings[binding_num-1];
                }
-               if (func->binding && func->binding->bindingType == BINDING_SOAP) {
-                       if (*in != 0) {
-                               sdlSoapBindingFunctionPtr binding = 
func->bindingAttributes = emalloc(sizeof(sdlSoapBindingFunction));
-                               memset(binding, 0, sizeof(sdlSoapBindingFunction));
-                               WSDL_CACHE_GET_1(binding->style,sdlEncodingStyle,&in);
-                               binding->soapAction = sdl_deserialize_string(&in);
-                               sdl_deserialize_soap_body(&binding->input, encoders, 
types, &in);
-                               sdl_deserialize_soap_body(&binding->output, encoders, 
types, &in);
-                       } else {
-                               WSDL_CACHE_SKIP(1, &in);
-                               func->bindingAttributes = NULL;
-                       }
+               if (func->binding && func->binding->bindingType == BINDING_SOAP && *in 
!= 0) {
+                       sdlSoapBindingFunctionPtr binding = func->bindingAttributes = 
emalloc(sizeof(sdlSoapBindingFunction));
+                       memset(binding, 0, sizeof(sdlSoapBindingFunction));
+                       WSDL_CACHE_GET_1(binding->style,sdlEncodingStyle,&in);
+                       binding->soapAction = sdl_deserialize_string(&in);
+                       sdl_deserialize_soap_body(&binding->input, encoders, types, 
&in);
+                       sdl_deserialize_soap_body(&binding->output, encoders, types, 
&in);
+               } else {
+                       WSDL_CACHE_SKIP(1, &in);
+                       func->bindingAttributes = NULL;
                }
 
                func->requestParameters = sdl_deserialize_parameters(encoders, types, 
&in);

http://cvs.php.net/co.php/php-src/ext/soap/tests/bugs/bug29109.phpt?r=1.1&p=1
Index: php-src/ext/soap/tests/bugs/bug29109.phpt
+++ php-src/ext/soap/tests/bugs/bug29109.phpt
--TEST--
Bug #29109 (Uncaught SoapFault exception: [WSDL] Out of memory)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
$client = new SoapClient(dirname(__FILE__)."/bug29109.wsdl");
var_dump($client->__getFunctions()); 
?>
--EXPECT--
array(3) {
  [0]=>
  string(53) "HelloWorldResponse HelloWorld(HelloWorld $parameters)"
  [1]=>
  string(19) "string HelloWorld()"
  [2]=>
  string(19) "string HelloWorld()"
}
http://cvs.php.net/co.php/php-src/ext/soap/tests/bugs/bug29109.wsdl?r=1.1&p=1
Index: php-src/ext/soap/tests/bugs/bug29109.wsdl
+++ php-src/ext/soap/tests/bugs/bug29109.wsdl
<?xml version="1.0" encoding="windows-1257"?>
<definitions xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/";
xmlns:s0="http://tempuri.org/";
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
xmlns:s="http://www.w3.org/2001/XMLSchema";
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/";
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; name="test"
targetNamespace="http://tempuri.org/";
xmlns="http://schemas.xmlsoap.org/wsdl/";>
  <types>
    <xs:schema elementFormDefault="qualified"
targetNamespace="http://tempuri.org/";
xmlns:xs="http://www.w3.org/2001/XMLSchema";>
      <xs:element name="HelloWorld">
        <xs:complexType />
      </xs:element>
      <xs:element name="HelloWorldResponse">
        <xs:complexType>
          <xs:sequence>

            <xs:element minOccurs="0" maxOccurs="1"
name="HelloWorldResult" type="xs:string" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="string" type="xs:string" />
    </xs:schema>
  </types>
  <message name="HelloWorldSoapIn">
    <part name="parameters" element="s0:HelloWorld" />

  </message>
  <message name="HelloWorldSoapOut">
    <part name="parameters" element="s0:HelloWorldResponse" />
  </message>
  <message name="HelloWorldHttpGetIn" />
  <message name="HelloWorldHttpGetOut">
    <part name="Body" element="s0:string" />
  </message>
  <message name="HelloWorldHttpPostIn" />

  <message name="HelloWorldHttpPostOut">
    <part name="Body" element="s0:string" />
  </message>
  <portType name="testSoap">
    <operation name="HelloWorld">
      <input message="s0:HelloWorldSoapIn" />
      <output message="s0:HelloWorldSoapOut" />
    </operation>
  </portType>

  <portType name="testHttpGet">
    <operation name="HelloWorld">
      <input message="s0:HelloWorldHttpGetIn" />
      <output message="s0:HelloWorldHttpGetOut" />
    </operation>
  </portType>
  <portType name="testHttpPost">
    <operation name="HelloWorld">
      <input message="s0:HelloWorldHttpPostIn" />

      <output message="s0:HelloWorldHttpPostOut" />
    </operation>
  </portType>
  <binding name="testSoap" type="s0:testSoap">
    <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"; />
    <operation name="HelloWorld">
      <soap:operation soapAction="http://tempuri.org/HelloWorld";
style="document" />
      <input>
        <soap:body use="literal" />

      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <binding name="testHttpGet" type="s0:testHttpGet">
    <http:binding verb="GET" />
    <operation name="HelloWorld">

      <http:operation location="/HelloWorld" />
      <input>
        <http:urlEncoded />
      </input>
      <output>
        <mime:mimeXml part="Body" />
      </output>
    </operation>
  </binding>

  <binding name="testHttpPost" type="s0:testHttpPost">
    <http:binding verb="POST" />
    <operation name="HelloWorld">
      <http:operation location="/HelloWorld" />
      <input>
        <mime:content part="" type="application/x-www-form-urlencoded"
/>
      </input>
      <output>
        <mime:mimeXml part="Body" />

      </output>
    </operation>
  </binding>
  <service name="test">
    <port name="testSoap" binding="s0:testSoap">
      <soap:address location="http://localhost:81/test.asmx"; />
    </port>
    <port name="testHttpGet" binding="s0:testHttpGet">
      <http:address location="http://localhost:81/test.asmx"; />

    </port>
    <port name="testHttpPost" binding="s0:testHttpPost">
      <http:address location="http://localhost:81/test.asmx"; />
    </port>
  </service>
</definitions>

http://cvs.php.net/co.php/php-src/ext/soap/tests/bugs/bug29236.phpt?r=1.1&p=1
Index: php-src/ext/soap/tests/bugs/bug29236.phpt
+++ php-src/ext/soap/tests/bugs/bug29236.phpt
--TEST--
Bug #29236 (memory error when wsdl-cache is enabled)
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?
$client = new SoapClient(dirname(__FILE__)."/bug29236.wsdl");
var_dump($client->__getFunctions()); 
?>
--EXPECT--
array(4) {
  [0]=>
  string(59) "StartSessionResponse StartSession(StartSession $parameters)"
  [1]=>
  string(62) "VerifySessionResponse VerifySession(VerifySession $parameters)"
  [2]=>
  string(41) "LogoutResponse Logout(Logout $parameters)"
  [3]=>
  string(62) "GetSystemInfoResponse GetSystemInfo(GetSystemInfo $parameters)"
}
http://cvs.php.net/co.php/php-src/ext/soap/tests/bugs/bug29236.wsdl?r=1.1&p=1
Index: php-src/ext/soap/tests/bugs/bug29236.wsdl
+++ php-src/ext/soap/tests/bugs/bug29236.wsdl
<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; 
xmlns:s="http://www.w3.org/2001/XMLSchema"; xmlns:s0="http://isis.ais.ucla.edu/ws/"; 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"; 
xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"; 
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; 
targetNamespace="http://isis.ais.ucla.edu/ws/"; 
xmlns="http://schemas.xmlsoap.org/wsdl/";>
  <types>
    <s:schema elementFormDefault="qualified" 
targetNamespace="http://isis.ais.ucla.edu/ws/";>
      <s:element name="StartSession">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="uclaId" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="userIpAddr" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="StartSessionResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="iwsResponse" nillable="true" 
type="s0:IwsResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="IwsResponse">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="sessionInfo" nillable="true" 
type="s0:IwsSession" />
          <s:element minOccurs="1" maxOccurs="1" name="errorInfo" nillable="true" 
type="s0:IwsErrorCollection" />
        </s:sequence>
        <s:attribute name="action" type="s0:ActionEnum" />
        <s:attribute name="hasErrors" type="s:boolean" />
        <s:attribute name="transactionId" type="s:long" />
      </s:complexType>
      <s:complexType name="IwsSession">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="userAttributes" 
type="s0:ArrayOfIwsUserAttribute" />
          <s:element minOccurs="0" maxOccurs="1" name="accounts" 
type="s0:ArrayOfIwsAccount" />
          <s:element minOccurs="1" maxOccurs="1" name="ticket" nillable="true" 
type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="uclaId" nillable="true" 
type="s:string" />
        </s:sequence>
        <s:attribute name="status" type="s0:SessionStatus" />
      </s:complexType>
      <s:complexType name="ArrayOfIwsUserAttribute">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="attribute" 
type="s0:IwsUserAttribute" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IwsUserAttribute">
        <s:attribute name="name" type="s:string" />
        <s:attribute name="value" type="s:string" />
      </s:complexType>
      <s:complexType name="ArrayOfIwsAccount">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="account" 
type="s0:IwsAccount" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IwsAccount">
        <s:attribute name="loginId" type="s:string" />
        <s:attribute name="type" type="s0:LoginType" />
        <s:attribute name="status" type="s0:AccountStatus" />
      </s:complexType>
      <s:simpleType name="LoginType">
        <s:restriction base="s:string">
          <s:enumeration value="BruinOnline" />
          <s:enumeration value="ACF2" />
          <s:enumeration value="QDB" />
          <s:enumeration value="UID" />
          <s:enumeration value="CommonLogon" />
          <s:enumeration value="RACF" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="AccountStatus">
        <s:restriction base="s:string">
          <s:enumeration value="Unknown" />
          <s:enumeration value="Active" />
          <s:enumeration value="Authenticated" />
          <s:enumeration value="AuthenticatedWithCachedCredential" />
          <s:enumeration value="NotAuthenticated" />
          <s:enumeration value="PermmanentlySuspended" />
          <s:enumeration value="TemporarilySuspended" />
          <s:enumeration value="PasswordResetRequired" />
          <s:enumeration value="InvalidID" />
        </s:restriction>
      </s:simpleType>
      <s:simpleType name="SessionStatus">
        <s:restriction base="s:string">
          <s:enumeration value="Uninitialized" />
          <s:enumeration value="Active" />
          <s:enumeration value="ActiveWithCachedCredential" />
          <s:enumeration value="ActiveWithMultipleCredentials" />
          <s:enumeration value="Expired" />
        </s:restriction>
      </s:simpleType>
      <s:complexType name="IwsErrorCollection">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="errors" 
type="s0:ArrayOfIwsError" />
        </s:sequence>
        <s:attribute name="count" type="s:int" />
      </s:complexType>
      <s:complexType name="ArrayOfIwsError">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="error" 
type="s0:IwsError" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IwsError">
        <s:attribute name="errorCode" type="s:int" />
        <s:attribute name="detail" type="s:string" />
      </s:complexType>
      <s:simpleType name="ActionEnum">
        <s:restriction base="s:string">
          <s:enumeration value="GetInfo" />
          <s:enumeration value="Start" />
          <s:enumeration value="Verify" />
          <s:enumeration value="Logout" />
        </s:restriction>
      </s:simpleType>
      <s:element name="wsConsumerCredential" type="s0:WsConsumerCredential" />
      <s:complexType name="WsConsumerCredential">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="id" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="VerifySession">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ticket" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="userIpAddr" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="returnExtendedAttributes" 
type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="VerifySessionResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="iwsResponse" nillable="true" 
type="s0:IwsResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="Logout">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="ticket" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="userIpAddr" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="LogoutResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="iwsResponse" nillable="true" 
type="s0:IwsResponse" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetSystemInfo">
        <s:complexType />
      </s:element>
      <s:element name="GetSystemInfoResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetSystemInfoResult" 
type="s0:ArrayOfIwsAttribute" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfIwsAttribute">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="IwsAttribute" 
type="s0:IwsAttribute" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="IwsAttribute">
        <s:attribute name="name" type="s:string" />
        <s:attribute name="value" type="s:string" />
      </s:complexType>
    </s:schema>
  </types>
  <message name="StartSessionSoapIn">
    <part name="parameters" element="s0:StartSession" />
  </message>
  <message name="StartSessionSoapOut">
    <part name="parameters" element="s0:StartSessionResponse" />
  </message>
  <message name="StartSessionwsConsumerCredential">
    <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />
  </message>
  <message name="VerifySessionSoapIn">
    <part name="parameters" element="s0:VerifySession" />
  </message>
  <message name="VerifySessionSoapOut">
    <part name="parameters" element="s0:VerifySessionResponse" />
  </message>
  <message name="VerifySessionwsConsumerCredential">
    <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />
  </message>
  <message name="LogoutSoapIn">
    <part name="parameters" element="s0:Logout" />
  </message>
  <message name="LogoutSoapOut">
    <part name="parameters" element="s0:LogoutResponse" />
  </message>
  <message name="LogoutwsConsumerCredential">
    <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />
  </message>
  <message name="GetSystemInfoSoapIn">
    <part name="parameters" element="s0:GetSystemInfo" />
  </message>
  <message name="GetSystemInfoSoapOut">
    <part name="parameters" element="s0:GetSystemInfoResponse" />
  </message>
  <message name="GetSystemInfowsConsumerCredential">
    <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />
  </message>
  <portType name="IsisSoap">
    <operation name="StartSession">
      <input message="s0:StartSessionSoapIn" />
      <output message="s0:StartSessionSoapOut" />
    </operation>
    <operation name="VerifySession">
      <input message="s0:VerifySessionSoapIn" />
      <output message="s0:VerifySessionSoapOut" />
    </operation>
    <operation name="Logout">
      <input message="s0:LogoutSoapIn" />
      <output message="s0:LogoutSoapOut" />
    </operation>
    <operation name="GetSystemInfo">
      <input message="s0:GetSystemInfoSoapIn" />
      <output message="s0:GetSystemInfoSoapOut" />
    </operation>
  </portType>
  <portType name="IsisHttpGet" />
  <portType name="IsisHttpPost" />
  <binding name="IsisSoap" type="s0:IsisSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"; style="document" />
    <operation name="StartSession">
      <soap:operation soapAction="http://isis.ais.ucla.edu/ws/StartSession"; 
style="document" />
      <input>
        <soap:body use="literal" />
        <soap:header d5p1:required="true" 
message="s0:StartSessionwsConsumerCredential" part="wsConsumerCredential" 
use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/"; />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="VerifySession">
      <soap:operation soapAction="http://isis.ais.ucla.edu/ws/VerifySession"; 
style="document" />
      <input>
        <soap:body use="literal" />
        <soap:header d5p1:required="true" 
message="s0:VerifySessionwsConsumerCredential" part="wsConsumerCredential" 
use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/"; />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="Logout">
      <soap:operation soapAction="http://isis.ais.ucla.edu/ws/Logout"; style="document" 
/>
      <input>
        <soap:body use="literal" />
        <soap:header d5p1:required="true" message="s0:LogoutwsConsumerCredential" 
part="wsConsumerCredential" use="literal" 
xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/"; />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
    <operation name="GetSystemInfo">
      <soap:operation soapAction="http://isis.ais.ucla.edu/ws/GetSystemInfo"; 
style="document" />
      <input>
        <soap:body use="literal" />
        <soap:header d5p1:required="true" 
message="s0:GetSystemInfowsConsumerCredential" part="wsConsumerCredential" 
use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/"; />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>
  <binding name="IsisHttpGet" type="s0:IsisHttpGet">
    <http:binding verb="GET" />
  </binding>
  <binding name="IsisHttpPost" type="s0:IsisHttpPost">
    <http:binding verb="POST" />
  </binding>
  <service name="Isis">
    <port name="IsisSoap" binding="s0:IsisSoap">
      <soap:address location="http://isisdev1.tig.ucla.edu/iws/v4.asmx"; />
    </port>
    <port name="IsisHttpGet" binding="s0:IsisHttpGet">
      <http:address location="http://isisdev1.tig.ucla.edu/iws/v4.asmx"; />
    </port>
    <port name="IsisHttpPost" binding="s0:IsisHttpPost">
      <http:address location="http://isisdev1.tig.ucla.edu/iws/v4.asmx"; />
    </port>
  </service>
</definitions>
-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to