[wp-testers] Upload via XMLRPC broken in 2.0

ecto Support ecto at kung-foo.tv
Thu Dec 29 01:48:02 GMT 2005


>
> wp_upload_bits() in functions-post.php handles writing the bits. In  
> that
> function is this line:
>
> $ifp = @ fopen($new_file, 'wb');
>
> Removing "@" will cause the error text to be output so that we can see
> exactly why fopen isn't working.
>
> $ifp = fopen($new_file, 'wb');

Request with URL:
http://127.0.0.1/~adriaant/wordpress/xmlrpc.php
and data:
<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
<methodName>metaWeblog.newMediaObject</methodName>
<params>
	<param>
		<value><string>1</string></value>
	</param>
	<param>
		<value><string>admin</string></value>
	</param>
	<param>
		<value><string>******</string></value>
	</param>
	<param>
	<value><struct>
	<member>
		<name>bits</name>
		<value>REMOVED</value>
	</member>
	<member>
		<name>name</name>
		<value><string>testfile.jpg</string></value>
	</member>
	<member>
		<name>type</name>
		<value><string>image/jpeg</string></value>
	</member>
	</struct></value>
	</param>
</params>
</methodCall>

Response:
<br />
<b>Warning</b>:  fopen(/testfile.jpg): failed to open stream:  
Permission denied in <b>/Users/adriaant/Sites/wordpress/wp-includes/ 
functions-post.php</b> on line <b>898</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already  
sent by (output started at /Users/adriaant/Sites/wordpress/wp- 
includes/functions-post.php:898) in <b>/Users/adriaant/Sites/ 
wordpress/wp-includes/class-IXR.php</b> on line <b>357</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already  
sent by (output started at /Users/adriaant/Sites/wordpress/wp- 
includes/functions-post.php:898) in <b>/Users/adriaant/Sites/ 
wordpress/wp-includes/class-IXR.php</b> on line <b>358</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already  
sent by (output started at /Users/adriaant/Sites/wordpress/wp- 
includes/functions-post.php:898) in <b>/Users/adriaant/Sites/ 
wordpress/wp-includes/class-IXR.php</b> on line <b>359</b><br />
<br />
<b>Warning</b>:  Cannot modify header information - headers already  
sent by (output started at /Users/adriaant/Sites/wordpress/wp- 
includes/functions-post.php:898) in <b>/Users/adriaant/Sites/ 
wordpress/wp-includes/class-IXR.php</b> on line <b>360</b><br />
<?xml version="1.0"?>
<methodResponse>
   <fault>
     <value>
       <struct>
         <member>
           <name>faultCode</name>
           <value><int>500</int></value>
         </member>
         <member>
           <name>faultString</name>
           <value><string>Could not write file testfile.jpg</string></ 
value>
         </member>
       </struct>
     </value>
   </fault>
</methodResponse>




More information about the wp-testers mailing list