A bit of a WTF factor.
The reason is doesn't work is because php_stream_locate_url_wrapper()
respects allow_url_fopen(), and the soap code interprets failure as
"SSL not enabled in this build" which is wrong. It it passed in the
REPORT_ERRORS flag, the correct reason would be emitted or logged
somewhere.
There is currently no flag that can override the allow_url_fopen check
in php_stream_locate_url_wrapper. The question is: should we bypass
this check for SOAP?
If not, we need to tweak the docs and have the soap extension report a
more appropriate reason for failure.
--Wez.
Two answers:
(A) I do think an override is a good idea. There may be some cases where
extension code may need to hook a wrapper whether allow_url_fopen is enabled
or not. Granted the code could temporarily change that value, but that's a
hackish approach.
(B) I don't think SOAP is one of those cases. I would be dissapointed if
SOAP allowed any calls to be made when allow_url_fopen is off.
"Wez Furlong" kingwez@gmail.com wrote in message
news:4e89b42605072713575d8f0d57@mail.gmail.com...
A bit of a WTF factor.
The reason is doesn't work is because php_stream_locate_url_wrapper()
respects allow_url_fopen(), and the soap code interprets failure as
"SSL not enabled in this build" which is wrong. It it passed in the
REPORT_ERRORS flag, the correct reason would be emitted or logged
somewhere.
There is currently no flag that can override the allow_url_fopen check
in php_stream_locate_url_wrapper. The question is: should we bypass
this check for SOAP?
If not, we need to tweak the docs and have the soap extension report a
more appropriate reason for failure.
--Wez.
(B) I don't think SOAP is one of those cases. I would be dissapointed if
SOAP allowed any calls to be made when allow_url_fopen is off.
I pretty much take it for granted that people are going to need to
fetch the WSDL file from a remote location.
Are you therefore saying SOAP support should be 100% diabled when
allow_url_fopen is off? Do you apply the same limitations to, for
example, cURL?
Or am I misunderstanding you?
-adam
--
adam@trachtenberg.com | http://www.trachtenberg.com
author of o'reilly's "upgrading to php 5" and "php cookbook"
avoid the holiday rush, buy your copies today!
Adam Maccabee Trachtenberg wrote:
I pretty much take it for granted that people are going to need to
fetch the WSDL file from a remote location.
Not to mention do anything useful with it, like run queries :-)
Are you therefore saying SOAP support should be 100% diabled when
allow_url_fopen is off?
SOAP is not disabled, simply prevented from querying remote data sources
directly.
Do you apply the same limitations to, for
example, cURL?
No, nor does it prevent fsockopen()
or equivalent from being used to run
queries.
Ilia