summaryrefslogtreecommitdiff
path: root/ext/soap/php_packet_soap.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2004-01-14 15:35:27 +0000
committerDmitry Stogov <dmitry@php.net>2004-01-14 15:35:27 +0000
commitfc69cc8ccf5ef153745e3a5cc43476664474fc75 (patch)
treec6497f089c62600c59bbbe21629f2206b9a5af66 /ext/soap/php_packet_soap.c
parent09fb5dc1e64eaa7adbc0b1fa0c6afb07773a46be (diff)
downloadphp-git-fc69cc8ccf5ef153745e3a5cc43476664474fc75.tar.gz
SOAP message must not contain a Document Type Declaration
Diffstat (limited to 'ext/soap/php_packet_soap.c')
-rw-r--r--ext/soap/php_packet_soap.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/soap/php_packet_soap.c b/ext/soap/php_packet_soap.c
index 0179ff1828..cc5a352bc2 100644
--- a/ext/soap/php_packet_soap.c
+++ b/ext/soap/php_packet_soap.c
@@ -24,6 +24,10 @@ int parse_packet_soap(zval *this_ptr, char *buffer, int buffer_size, sdlFunction
add_soap_fault(this_ptr, "SOAP-ENV:Client", "looks like we got no XML document", NULL, NULL TSRMLS_CC);
return FALSE;
}
+ if (xmlGetIntSubset(response) != NULL) {
+ add_soap_fault(this_ptr, "SOAP-ENV:Client", "DTD are not supported by SOAP", NULL, NULL TSRMLS_CC);
+ return FALSE;
+ }
/* Get <Envelope> element */
env = NULL;