Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 1.10.13

Bug #18004 PEAR Doesn't Handle Chunked Encoding When Searching Channels
Submitted: 2010-10-28 21:22 UTC
From: mvoelker Assigned:
Status: Open Package: PEAR
PHP Version: 5.3.2 OS: Ubuntu 10.04
Roadmaps: (Not assigned)    
Subscription  


 [2010-10-28 21:22 UTC] mvoelker (Mark Voelker)
Description: ------------ I noticed that on several of my machines sitting behind a proxy server I was unable to use PEAR...I get errors like this: bash:/tmp$ sudo pear search Net Invalid xml downloaded from "http://pear.php.net/rest/p/packages.xml": XML Error: 'Not well-formed (invalid token)' on line '1' bash:/tmp$ However on other machines things seemed to be working ok. The difference turned out to be that the machines having trouble were sitting behind a DeleGate 9.5.6 proxy server. I sniffed some packets and DeleGate is returning a valid response--but it's using chunked encoding (e.g. a "Transfer- Encoding: chunked" HTTP header) in the response. This seems to throw PEAR for a loop....I modified REST.php to see what the content it was attempting to parse was like so: bash:/tmp$ diff -u /tmp/REST.php.original /usr/share/php/PEAR/REST.php --- /tmp/REST.php.original 2010-10-28 12:09:12.000000000 - 0400 +++ /usr/share/php/PEAR/REST.php 2010-10-28 11:55:14.000000000 -0400 @@ -139,7 +139,7 @@ PEAR::popErrorHandling(); if (PEAR::isError($err)) { return PEAR::raiseError('Invalid xml downloaded from "' . $url . '": ' . - $err->getMessage()); + $err->getMessage() . $content); } $content = $parser->getData(); case 'text/html' : bash:/tmp$ The output is attached--notice that the output here still has the chunk delimiters in it. Because those chunk delimiters are still present, the XML is invalid and can't be parsed. I've also attached a .pcap showing the packet sniff taken from the transfer PEAR attempted to do. I don't believe that the proxy server is at fault here--e.g. what it's returning is valid and it does specify to the useragent that it's sending it via chunked encoding, but PEAR apparently doesn't handle the encoding properly. As a temporary workaround, users could modify REST.php to use HTTP/1.0 instead of HTTP/1.1 as this eliminates chunked encoding. I've used this successfully as a temporary measure. The necessary modifications are just two lines in REST.php as follows: bash:/tmp$ diff -u /tmp/REST.php.original /usr/share/php/PEAR/REST.php --- /tmp/REST.php.original 2010-10-28 12:09:12.000000000 - 0400 +++ /usr/share/php/PEAR/REST.php 2010-10-28 12:15:12.000000000 -0400 @@ -328,9 +328,9 @@ } if (isset($proxy['host'])) { - $request = "GET $url HTTP/1.1\r\n"; + $request = "GET $url HTTP/1.0\r\n"; } else { - $request = "GET $path HTTP/1.1\r\n"; + $request = "GET $path HTTP/1.0\r\n"; } $request .= "Host: $host\r\n"; bash:/tmp$ Test script: --------------- pear search Net Expected result: ---------------- bash:/tmp$ sudo pear search Net Retrieving data...0% ....50%....Matched packages, channel pear.php.net: ======================================= Package Stable/(Latest) Local Date_Holidays_Netherlands 0.1.2 (alpha) Driver based class to calculate holidays in the Netherlands. [[SNIP]] Net_Wifi 1.1.0 (stable) Scans for wireless networks Net_NNTP 1.5.0a1 (alpha) NNTP implementation bash:/tmp$ Actual result: -------------- Invalid xml downloaded from "http://pear.php.net/rest/p/packages.xml": XML Error: 'Not well- formed (invalid token)' on line '1'

Comments

 [2010-10-28 21:28 UTC] mvoelker (Mark Voelker)
Terminal output using modified REST.php: bash:~$ sudo pear clear-cache reading directory /tmp/pear/cache 0 cache entries cleared bash:~$ sudo pear search Net Invalid xml downloaded from "http://pear.php.net/rest/p/packages.xml": XML Error: 'Not well-formed (invalid token)' on line '1'408 <?xml version="1.0" encoding="UTF-8" ?> <a xmlns="http://pear.php.net/dtd/rest.allpackages" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://pear.php.net/dtd/rest.allpackages http://pear.php.net/dtd/rest.allpackages.xsd"> <c>pear.php.net</c> <p>Archive_Tar</p> <p>Archive_Zip</p> <p>AsteriskManager</p> <p>Auth</p> <p>Auth_HTTP</p> <p>Auth_PrefManager</p> <p>Auth_PrefManager2</p> <p>Auth_RADIUS</p> <p>Auth_SASL</p> <p>Benchmark</p> <p>Cache</p> <p>Cache_Lite</p> <p>Calendar</p> <p>CodeGen</p> <p>CodeGen_MySQL</p> <p>CodeGen_MySQL_Plugin</p> <p>CodeGen_MySQL_UDF</p> <p>CodeGen_PECL</p> <p>Config</p> <p>Console_Color</p> <p>Console_CommandLine</p> <p>Console_Getargs</p> <p>Console_Getopt</p> <p>Console_GetoptPlus</p> <p>Console_ProgressBar</p> <p>Console_Table</p> <p>Contact_AddressBook</p> <p>Contact_Vcard_Build</p> <p>Contact_Vcard_Parse</p> <p>Crypt_Blowfish</p> <p>Crypt_CBC</p> <p>Crypt_CHAP</p> 406 <p>Crypt_DiffieHellman</p> <p>Crypt_GPG</p> <p>Crypt_HMAC</p> <p>Crypt_HMAC2</p> <p>Crypt_MicroID</p> <p>Crypt_RC4</p> <p>Crypt_RC42</p> <p>Crypt_RSA</p> <p>Crypt_Xtea</p> <p>Crypt_XXTEA</p> <p>Date</p> <p>Date_Holidays</p> <p>Date_Holidays_Austria</p> <p>Date_Holidays_Brazil</p> <p>Date_Holidays_Denmark</p> <p>Date_Holidays_Discordian</p> <p>Date_Holidays_EnglandWales</p> <p>Date_Holidays_Germany</p> <p>Date_Holidays_Iceland</p> <p>Date_Holidays_Ireland</p> <p>Date_Holidays_Italy</p> <p>Date_Holidays_Japan</p> <p>Date_Holidays_Netherlands</p> <p>Date_Holidays_Norway</p> <p>Date_Holidays_PHPdotNet</p> <p>Date_Holidays_Portugal</p> <p>Date_Holidays_Romania</p> <p>Date_Holidays_SanMarino</p> <p>Date_Holidays_Slovenia</p> <p>Date_Holidays_Spain</p> <p>Date_Holidays_Sweden</p> <p>Date_Holidays_Ukraine</p> <p>Date_Holidays_UNO</p> <p>Date_Holidays_USA</p> <p>DB</p> <p>DBA</p> <p>DBA_Relational</p> <p>DB_ado</p> <p>DB_DataObject</p> <p>DB_DataObject_FormBuilder</p> <p>DB_ldap</p> 411 <p>DB_ldap2</p> <p>DB_NestedSet</p> <p>DB_NestedSet2</p> <p>DB_odbtp</p> <p>DB_Pager</p> <p>DB_QueryTool</p> <p>DB_Sqlite_Tools</p> <p>DB_Table</p> <p>Event_Dispatcher</p> <p>Event_SignalEmitter</p> <p>File</p> <p>File_Archive</p> <p>File_Bittorrent</p> <p>File_Bittorrent2</p> <p>File_Cabinet</p> <p>File_CSV</p> <p>File_CSV_DataSource</p> <p>File_DeliciousLibrary</p> <p>File_DICOM</p> <p>File_DNS</p> <p>File_Find</p> <p>File_Fortune</p> <p>File_Fstab</p> <p>File_Gettext</p> <p>File_HtAccess</p> <p>File_IMC</p> <p>File_Infopath</p> <p>File_MARC</p> <p>File_Mogile</p> <p>File_Ogg</p> <p>File_Passwd</p> <p>File_PDF</p> <p>File_SearchReplace</p> <p>File_Sitemap</p> <p>File_SMBPasswd</p> <p>File_Util</p> <p>File_XSPF</p> <p>FSM</p> <p>Games_Chess</p> <p>Genealogy_Gedcom</p> <p>Gtk2_EntryDialog</p> <p>Gtk2_ExceptionDump</p> <p>Gtk2_FileDrop</p> <p>Gtk2_IndexedComboBox</p> <p>Gtk2_PHPConfig</p> <p>Gtk2_ScrollingLabel</p> <p>Gtk2_VarDump</p> <p>Gtk_FileDrop</p> <p>Gtk_MDB_Designer</p> 408 <p>Gtk_ScrollingLabel</p> <p>Gtk_Styled</p> <p>Gtk_VarDump</p> <p>HTML_AJAX</p> <p>HTML_BBCodeParser</p> <p>HTML_Common</p> <p>HTML_Common2</p> <p>HTML_Crypt</p> <p>HTML_CSS</p> <p>HTML_Entities</p> <p>HTML_Form</p> <p>HTML_Javascript</p> <p>HTML_Menu</p> <p>HTML_Page</p> <p>HTML_Page2</p> <p>HTML_Progress</p> <p>HTML_Progress2</p> <p>HTML_QuickForm</p> <p>HTML_QuickForm2</p> <p>HTML_QuickForm_advmultiselect</p> <p>HTML_QuickForm_altselect</p> <p>HTML_QuickForm_CAPTCHA</p> <p>HTML_QuickForm_Controller</p> <p>HTML_QuickForm_DHTMLRulesTableless</p> <p>HTML_QuickForm_ElementGrid</p> <p>HTML_QuickForm_Livesearch</p> <p>HTML_QuickForm_Renderer_Tableless</p> <p>HTML_QuickForm_Rule_Spelling</p> <p>HTML_QuickForm_SelectFilter</p> <p>HTML_Safe</p> <p>HTML_Select</p> <p>HTML_Select_Common</p> <p>HTML_Table</p> <p>HTML_Table_Matrix</p> <p>HTML_TagCloud</p> <p>HTML_Template_Flexy</p> <p>HTML_Template_IT</p> <p>HTML_Template_PHPLIB</p> <p>HTML_Template_PHPTAL</p> <p>HTML_Template_Sigma</p> 401 <p>HTML_Template_Xipe</p> <p>HTML_TreeMenu</p> <p>HTTP</p> <p>HTTP_Client</p> <p>HTTP_Download</p> <p>HTTP_FloodControl</p> <p>HTTP_Header</p> <p>HTTP_OAuth</p> <p>HTTP_Request</p> <p>HTTP_Request2</p> <p>HTTP_Server</p> <p>HTTP_Session</p> <p>HTTP_Session2</p> <p>HTTP_SessionServer</p> <p>HTTP_Upload</p> <p>HTTP_WebDAV_Client</p> <p>HTTP_WebDAV_Server</p> <p>I18N</p> <p>I18Nv2</p> <p>I18N_UnicodeNormalizer</p> <p>I18N_UnicodeString</p> <p>Image_3D</p> <p>Image_Barcode</p> <p>Image_Canvas</p> <p>Image_Color</p> <p>Image_Color2</p> <p>Image_GIS</p> <p>Image_Graph</p> <p>Image_GraphViz</p> <p>Image_IPTC</p> <p>Image_JpegMarkerReader</p> <p>Image_JpegXmpReader</p> <p>Image_MonoBMP</p> <p>Image_Puzzle</p> <p>Image_QRCode</p> <p>Image_Remote</p> <p>Image_Text</p> <p>Image_Tools</p> <p>Image_Transform</p> <p>Image_WBMP</p> <p>Image_XBM</p> <p>Inline_C</p> <p>LiveUser</p> <p>LiveUser_Admin</p> <p>Log</p> <p>Mail</p> <p>Mail_IMAP</p> <p>Mail_IMAPv2</p> <p>Mail_Mbox</p> 40b <p>Mail_Mime</p> <p>Mail_mimeDecode</p> <p>Mail_Queue</p> <p>Math_Basex</p> <p>Math_BigInteger</p> <p>Math_BinaryUtils</p> <p>Math_Combinatorics</p> <p>Math_Complex</p> <p>Math_Derivative</p> <p>Math_Fibonacci</p> <p>Math_Finance</p> <p>Math_Fraction</p> <p>Math_Histogram</p> <p>Math_Integer</p> <p>Math_Matrix</p> <p>Math_Numerical_RootFinding</p> <p>Math_Polynomial</p> <p>Math_Quaternion</p> <p>Math_RPN</p> <p>Math_Stats</p> <p>Math_TrigOp</p> <p>Math_Vector</p> <p>MDB</p> <p>MDB2</p> <p>MDB2_Driver_fbsql</p> <p>MDB2_Driver_ibase</p> <p>MDB2_Driver_mssql</p> <p>MDB2_Driver_mysql</p> <p>MDB2_Driver_mysqli</p> <p>MDB2_Driver_oci8</p> <p>MDB2_Driver_odbc</p> <p>MDB2_Driver_pgsql</p> <p>MDB2_Driver_querysim</p> <p>MDB2_Driver_sqlite</p> <p>MDB2_Driver_sqlsrv</p> <p>MDB2_Schema</p> <p>MDB2_TableBrowser</p> <p>MDB_QueryTool</p> <p>Message</p> <p>MIME_Type</p> <p>MP3_Id</p> <p>MP3_IDv2</p> <p>MP3_Playlist</p> <p>Net_CDDB</p> <p>Net_CheckIP</p> <p>Net_CheckIP2</p> <p>Net_Curl</p> 40a <p>Net_Cyrus</p> <p>Net_Dict</p> <p>Net_Dig</p> <p>Net_DIME</p> <p>Net_DNS</p> <p>Net_DNS2</p> <p>Net_DNSBL</p> <p>Net_Finger</p> <p>Net_FTP</p> <p>Net_GameServerQuery</p> <p>Net_Gearman</p> <p>Net_Geo</p> <p>Net_GeoIP</p> <p>Net_Growl</p> <p>Net_HL7</p> <p>Net_Ident</p> <p>Net_IDNA</p> <p>Net_IDNA2</p> <p>Net_IMAP</p> <p>Net_IPv4</p> <p>Net_IPv6</p> <p>Net_IRC</p> <p>Net_LDAP</p> <p>Net_LDAP2</p> <p>Net_LMTP</p> <p>Net_MAC</p> <p>Net_Monitor</p> <p>Net_MPD</p> <p>Net_Nmap</p> <p>Net_NNTP</p> <p>Net_Ping</p> <p>Net_POP3</p> <p>Net_Portscan</p> <p>Net_Server</p> <p>Net_Sieve</p> <p>Net_SmartIRC</p> <p>Net_SMPP</p> <p>Net_SMPP_Client</p> <p>Net_SMS</p> <p>Net_SMTP</p> <p>Net_Socket</p> <p>Net_SSH2</p> <p>Net_Traceroute</p> <p>Net_URL</p> <p>Net_URL2</p> <p>Net_URL_Mapper</p> <p>Net_UserAgent_Detect</p> <p>Net_UserAgent_Mobile</p> <p>Net_UserAgent_Mobile_GPS</p> <p>Net_Vpopmaild</p> <p>Net_Whois</p> <p>Net_Wifi</p> <p>Numbers_Roman</p> <p>Numbers_Words</p> <p>OLE</p> 402 <p>OpenDocument</p> <p>OpenID</p> <p>Pager</p> <p>Pager_Sliding</p> <p>Payment_Clieop</p> <p>Payment_DTA</p> <p>Payment_PagamentoCerto</p> <p>Payment_PayPal_SOAP</p> <p>Payment_Process</p> <p>Payment_Process2</p> <p>PEAR</p> <p>pearweb</p> <p>pearweb_channelxml</p> <p>pearweb_election</p> <p>pearweb_gopear</p> <p>pearweb_index</p> <p>pearweb_manual</p> <p>pearweb_pepr</p> <p>pearweb_phars</p> <p>pearweb_qa</p> <p>PEAR_Command_Packaging</p> <p>PEAR_Delegator</p> <p>PEAR_Frontend_Gtk</p> <p>PEAR_Frontend_Gtk2</p> <p>PEAR_Frontend_Web</p> <p>PEAR_Info</p> <p>PEAR_PackageFileManager</p> <p>PEAR_PackageFileManager2</p> <p>PEAR_PackageFileManager_Cli</p> <p>PEAR_PackageFileManager_Frontend</p> <p>PEAR_PackageFileManager_Frontend_Web</p> <p>PEAR_PackageFileManager_GUI_Gtk</p> <p>PEAR_PackageFileManager_Plugins</p> <p>PEAR_PackageUpdate</p> <p>PEAR_PackageUpdate_Gtk2</p> <p>PEAR_PackageUpdate_Web</p> <p>PEAR_RemoteInstaller</p> <p>PEAR_Size</p> <p>PHPDoc</p> <p>PhpDocumentor</p> 40a <p>PHPUnit</p> <p>PHPUnit2</p> <p>PHP_Archive</p> <p>PHP_ArrayOf</p> <p>PHP_Beautifier</p> <p>PHP_CodeSniffer</p> <p>PHP_Compat</p> <p>PHP_CompatInfo</p> <p>PHP_Debug</p> <p>PHP_DocBlockGenerator</p> <p>PHP_Fork</p> <p>PHP_FunctionCallTracer</p> <p>PHP_LexerGenerator</p> <p>PHP_Parser</p> <p>PHP_ParserGenerator</p> <p>PHP_Parser_DocblockParser</p> <p>PHP_Shell</p> <p>PHP_UML</p> <p>QA_Peardoc_Coverage</p> <p>RDF</p> <p>RDF_N3</p> <p>RDF_NTriple</p> <p>RDF_RDQL</p> <p>Science_Chemistry</p> <p>ScriptReorganizer</p> <p>Search_Mnogosearch</p> <p>Services_Akismet</p> <p>Services_Akismet2</p> <p>Services_Amazon</p> <p>Services_Amazon_S3</p> <p>Services_Amazon_SQS</p> <p>Services_Atlassian_Crowd</p> <p>Services_Blogging</p> <p>Services_Compete</p> <p>Services_Delicious</p> <p>Services_Digg</p> <p>Services_Digg2</p> <p>Services_DynDNS</p> <p>Services_Ebay</p> <p>Services_ExchangeRates</p> <p>Services_Facebook</p> <p>Services_GeoNames</p> <p>Services_Google</p> <p>Services_Hatena</p> 414 <p>Services_JSON</p> <p>Services_oEmbed</p> <p>Services_OpenSearch</p> <p>Services_Pingback</p> <p>Services_ProjectHoneyPot</p> <p>Services_ReCaptcha</p> <p>Services_Scribd</p> <p>Services_SharedBook</p> <p>Services_ShortURL</p> <p>Services_Technorati</p> <p>Services_TinyURL</p> <p>Services_Trackback</p> <p>Services_TwitPic</p> <p>Services_Twitter</p> <p>Services_urlTea</p> <p>Services_UseKetchup</p> <p>Services_W3C_CSSValidator</p> <p>Services_W3C_HTMLValidator</p> <p>Services_Weather</p> <p>Services_Webservice</p> <p>Services_Yadis</p> <p>Services_Yahoo</p> <p>Services_Yahoo_JP</p> <p>Services_YouTube</p> <p>SOAP</p> <p>SOAP_Interop</p> <p>Spreadsheet_Excel_Writer</p> <p>SQL_Parser</p> <p>Stream_SHM</p> <p>Stream_Var</p> <p>Structures_BibTex</p> <p>Structures_DataGrid</p> <p>Structures_DataGrid_DataSource_Array</p> <p>Structures_DataGrid_DataSource_CSV</p> <p>Structures_DataGrid_DataSource_DataObject</p> <p>Structures_DataGrid_DataSource_DB</p> <p>Structures_DataGrid_DataSource_DBQuery</p> 40b <p>Structures_DataGrid_DataSource_DBTable</p> <p>Structures_DataGrid_DataSource_Excel</p> <p>Structures_DataGrid_DataSource_MDB2</p> <p>Structures_DataGrid_DataSource_PDO</p> <p>Structures_DataGrid_DataSource_RSS</p> <p>Structures_DataGrid_DataSource_XML</p> <p>Structures_DataGrid_Renderer_Console</p> <p>Structures_DataGrid_Renderer_CSV</p> <p>Structures_DataGrid_Renderer_Flexy</p> <p>Structures_DataGrid_Renderer_HTMLSortForm</p> <p>Structures_DataGrid_Renderer_HTMLTable</p> <p>Structures_DataGrid_Renderer_Pager</p> <p>Structures_DataGrid_Renderer_Smarty</p> <p>Structures_DataGrid_Renderer_XLS</p> <p>Structures_DataGrid_Renderer_XML</p> <p>Structures_DataGrid_Renderer_XUL</p> <p>Structures_Form</p> <p>Structures_Form_Gtk2</p> <p>Structures_Graph</p> <p>Structures_LinkedList</p> <p>System_Command</p> <p>System_Daemon</p> <p>System_Folders</p> <p>System_Mount</p> <p>System_ProcWatch</p> <p>System_SharedMemory</p> <p>System_Socket</p> <p>System_WinDrives</p> <p>test</p> <p>Testing_DocTest</p> 413 <p>Testing_FIT</p> <p>Testing_Selenium</p> <p>Text_CAPTCHA</p> <p>Text_CAPTCHA_Numeral</p> <p>Text_Diff</p> <p>Text_Figlet</p> <p>Text_Highlighter</p> <p>Text_Huffman</p> <p>Text_LanguageDetect</p> <p>Text_Password</p> <p>Text_PathNavigator</p> <p>Text_Spell_Audio</p> <p>Text_Statistics</p> <p>Text_TeXHyphen</p> <p>Text_Wiki</p> <p>Text_Wiki_BBCode</p> <p>Text_Wiki_Cowiki</p> <p>Text_Wiki_Creole</p> <p>Text_Wiki_Doku</p> <p>Text_Wiki_Mediawiki</p> <p>Text_Wiki_Tiki</p> <p>Translation</p> <p>Translation2</p> <p>Tree</p> <p>UDDI</p> <p>URI_Template</p> <p>Validate</p> <p>Validate_AR</p> <p>Validate_AT</p> <p>Validate_AU</p> <p>Validate_BE</p> <p>Validate_CA</p> <p>Validate_CH</p> <p>Validate_DE</p> <p>Validate_DK</p> <p>Validate_ES</p> <p>Validate_FI</p> <p>Validate_Finance</p> <p>Validate_Finance_CreditCard</p> <p>Validate_FR</p> <p>Validate_HU</p> <p>Validate_IE</p> <p>Validate_IN</p> <p>Validate_IS</p> <p>Validate_ISPN</p> <p>Validate_IT</p> <p>Validate_LI</p> <p>Validate_LU</p> 3e1 <p>Validate_LV</p> <p>Validate_NL</p> <p>Validate_NO</p> <p>Validate_NZ</p> <p>Validate_PL</p> <p>Validate_ptBR</p> <p>Validate_RU</p> <p>Validate_SE</p> <p>Validate_UK</p> <p>Validate_US</p> <p>Validate_ZA</p> <p>Var_Dump</p> <p>VersionControl_Git</p> <p>VersionControl_SVN</p> <p>VFS</p> <p>XML_Beautifier</p> <p>XML_CSSML</p> <p>XML_DB_eXist</p> <p>XML_DTD</p> <p>XML_FastCreate</p> <p>XML_Feed_Parser</p> <p>XML_fo2pdf</p> <p>XML_FOAF</p> <p>XML_GRDDL</p> <p>XML_HTMLSax</p> <p>XML_HTMLSax3</p> <p>XML_image2svg</p> <p>XML_Indexing</p> <p>XML_MXML</p> <p>XML_NITF</p> <p>XML_Parser</p> <p>XML_Query2XML</p> <p>XML_RDDL</p> <p>XML_RPC</p> <p>XML_RPC2</p> <p>XML_RSS</p> <p>XML_SaxFilters</p> <p>XML_Serializer</p> <p>XML_sql2xml</p> <p>XML_Statistics</p> <p>XML_SVG</p> <p>XML_svg2image</p> <p>XML_Transformer</p> <p>XML_Tree</p> <p>XML_Util</p> <p>XML_Wddx</p> <p>XML_XPath</p> <p>XML_XPath2</p> <p>XML_XSLT_Wrapper</p> <p>XML_XUL</p> </a> 0 bash:~$
 [2010-10-28 21:30 UTC] mvoelker (Mark Voelker)
> I've also attached a .pcap showing the packet sniff taken >from the transfer PEAR attempted to do. I don't believe > that the Well, I would have attached it but that doesn't appear to be possible. =) Let me know if you'd like to see it and how to provide it.
 [2011-02-28 05:30 UTC] dufuz (Helgi Þormar Þorbjörnsson)
-Package: pearweb_phars +Package: PEAR
 [2011-08-24 20:44 UTC] aminin (Anton Minin)
To fix the bug I used the above patch. Applying patch: $ cd ~ $ wget -O TransferEncodingChunked.patch.txt "https://pear.php.net/bugs/patch-download.php?id=18004&patch=TransferEncodingChunked&revision=1312493405" $ cd /usr/share/php/PEAR/ $ sudo patch -b -p1 -i ~/TransferEncodingChunked.patch.txt patching file REST.php patching file Downloader.php Testing: $ sudo pear search Net_DNS Retrieving data...0% ..Matched packages, channel pear.php.net: ======================================= Package Stable/(Latest) Local Net_DNS 1.0.7 (stable) Resolver library used to communicate with a DNS server. Net_DNS2 1.1.4 (stable) PHP5 Resolver library used to communicate with a DNS server. Net_DNSBL 1.3.4 (stable) Checks if a given Host or URL is listed on an DNS-based Blackhole List (DNSBL, Real-time Blackhole List or RBL) or Spam URI Realtime Blocklist (SURBL) PEAR version: $ pear version PEAR Version: 1.9.4 PHP Version: 5.3.5-1ubuntu7.2 Zend Engine Version: 2.3.0 Running on: Linux aminin.vitpc.com 2.6.38-8-generic-pae #42-Ubuntu SMP Mon Apr 11 05:17:09 UTC 2011 i686
 [2014-06-07 03:34 UTC] cweiske (Christian Weiske)
-Roadmap Versions: +Roadmap Versions: 1.10.0
 [2015-09-07 15:46 UTC] cweiske (Christian Weiske)
-Roadmap Versions: 1.10.0 +Roadmap Versions: