Make WordPress Core


Ignore:
Timestamp:
02/05/2009 08:47:30 PM (17 years ago)
Author:
ryan
Message:

Revert 10507. Had extra bits in. see #8702

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/http.php

    r10507 r10508  
    238238                $working_transport['streams'] = new WP_Http_Streams();
    239239                $blocking_transport[] = &$working_transport['streams'];
    240             } else if ( true === WP_Http_Fopen::test() && apply_filters('use_fopen_transport', true) && ( isset($args['ssl']) && !$args['ssl'] ) ) {
     240            } else if ( true === WP_Http_Fopen::test() && apply_filters('use_fopen_transport', true) ) {
    241241                $working_transport['fopen'] = new WP_Http_Fopen();
    242242                $blocking_transport[] = &$working_transport['fopen'];
    243             } else if ( true === WP_Http_Fsockopen::test() && apply_filters('use_fsockopen_transport', true) && ( isset($args['ssl']) && !$args['ssl'] ) ) {
     243            } else if ( true === WP_Http_Fsockopen::test() && apply_filters('use_fsockopen_transport', true) ) {
    244244                $working_transport['fsockopen'] = new WP_Http_Fsockopen();
    245245                $blocking_transport[] = &$working_transport['fsockopen'];
     
    283283                $working_transport['exthttp'] = new WP_Http_ExtHttp();
    284284                $blocking_transport[] = &$working_transport['exthttp'];
    285             } else if ( true === WP_Http_Curl::test() && apply_filters('use_curl_transport', true) ) {
    286                 $working_transport['curl'] = new WP_Http_Curl();
    287                 $blocking_transport[] = &$working_transport['curl'];
    288285            } else if ( true === WP_Http_Streams::test() && apply_filters('use_streams_transport', true) ) {
    289286                $working_transport['streams'] = new WP_Http_Streams();
    290287                $blocking_transport[] = &$working_transport['streams'];
    291             } else if ( true === WP_Http_Fsockopen::test() && apply_filters('use_fsockopen_transport', true) && ( isset($args['ssl']) && !$args['ssl'] ) ) {
     288            } else if ( true === WP_Http_Fsockopen::test() && apply_filters('use_fsockopen_transport', true) ) {
    292289                $working_transport['fsockopen'] = new WP_Http_Fsockopen();
    293290                $blocking_transport[] = &$working_transport['fsockopen'];
    294291            }
    295292
    296             foreach ( array('curl', 'streams', 'fsockopen', 'exthttp') as $transport ) {
     293            foreach ( array('streams', 'fsockopen', 'exthttp') as $transport ) {
    297294                if ( isset($working_transport[$transport]) )
    298295                    $nonblocking_transport[] = &$working_transport[$transport];
     
    362359            'redirection' => apply_filters( 'http_request_redirection_count', 5),
    363360            'httpversion' => apply_filters( 'http_request_version', '1.0'),
    364             'user-agent' => apply_filters( 'http_headers_useragent', 'WordPress/' . $wp_version . '; ' . get_bloginfo( 'url' )  ),
     361            'user-agent' => apply_filters( 'http_headers_useragent', 'WordPress/' . $wp_version ),
    365362            'blocking' => true,
    366363            'headers' => array(),
    367364            'body' => null,
    368365            'compress' => false,
    369             'decompress' => true,
    370             'sslverify' => true
     366            'decompress' => true
    371367        );
    372368
    373369        $r = wp_parse_args( $args, $defaults );
    374370        $r = apply_filters( 'http_request_args', $r, $url );
    375 
    376         $arrURL = parse_url($url);
    377 
    378         // Determine if this is a https call and pass that on to the transport functions
    379         // so that we can blacklist the transports that do not support ssl verification
    380         if ( $arrURL['scheme'] == 'https' || $arrURL['scheme'] == 'ssl' )
    381             $r['ssl'] = true;
    382         else
    383             $r['ssl'] = false;
    384371
    385372        if ( is_null( $r['headers'] ) )
     
    941928                'protocol_version' => (float) $r['httpversion'],
    942929                'header' => $strHeaders,
    943                 'timeout' => $r['timeout'],
    944                 'ssl' => array(
    945                                     'verify_peer' => apply_filters('https_ssl_verify', $r['sslverify']),
    946                                     'verify_host' => apply_filters('https_ssl_verify', $r['sslverify'])
    947                             )
     930                'timeout' => $r['timeout']
    948931            )
    949932        );
     
    10781061            'useragent' => $r['user-agent'],
    10791062            'headers' => $r['headers'],
    1080             'ssl' => array(
    1081                 'verifypeer' => apply_filters('https_ssl_verify', $r['sslverify']),
    1082                 'verifyhost' => apply_filters('https_ssl_verify', $r['sslverify'])
    1083             )
    10841063        );
    10851064
     
    11751154
    11761155        $handle = curl_init();
    1177 
    11781156        curl_setopt( $handle, CURLOPT_URL, $url);
    1179         curl_setopt( $handle, CURLOPT_RETURNTRANSFER, true );
    1180         curl_setopt( $handle, CURLOPT_SSL_VERIFYHOST, apply_filters('https_ssl_verify', $r['sslverify']) );
    1181         curl_setopt( $handle, CURLOPT_SSL_VERIFYPEER, apply_filters('https_ssl_verify', $r['sslverify']) );
     1157
     1158        // The cURL extension requires that the option be set for the HEAD to
     1159        // work properly.
     1160        if ( 'HEAD' === $r['method'] ) {
     1161            curl_setopt( $handle, CURLOPT_NOBODY, true );
     1162        }
     1163
     1164        if ( true === $r['blocking'] ) {
     1165            curl_setopt( $handle, CURLOPT_HEADER, true );
     1166            curl_setopt( $handle, CURLOPT_RETURNTRANSFER, 1 );
     1167        } else {
     1168            curl_setopt( $handle, CURLOPT_HEADER, false );
     1169            curl_setopt( $handle, CURLOPT_NOBODY, true );
     1170            curl_setopt( $handle, CURLOPT_RETURNTRANSFER, 0 );
     1171        }
     1172
    11821173        curl_setopt( $handle, CURLOPT_USERAGENT, $r['user-agent'] );
    1183         curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT, $r['timeout'] );
     1174        curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT, 1 );
    11841175        curl_setopt( $handle, CURLOPT_TIMEOUT, $r['timeout'] );
    11851176        curl_setopt( $handle, CURLOPT_MAXREDIRS, $r['redirection'] );
    1186 
    1187         switch ( $r['method'] ) {
    1188             case 'HEAD':
    1189                 curl_setopt( $handle, CURLOPT_NOBODY, true );
    1190                 break;
    1191             case 'POST':
    1192                 curl_setopt( $handle, CURLOPT_POST, true );
    1193                 curl_setopt( $handle, CURLOPT_POSTFIELDS, $r['body'] );
    1194                 break;
    1195         }
    1196 
    1197         if ( true === $r['blocking'] )
    1198             curl_setopt( $handle, CURLOPT_HEADER, true );
    1199         else
    1200             curl_setopt( $handle, CURLOPT_HEADER, false );
    12011177
    12021178        // The option doesn't work with safe mode or when open_basedir is set.
Note: See TracChangeset for help on using the changeset viewer.