Make WordPress Core

Ticket #34538: 34538.patch

File 34538.patch, 8.1 KB (added by chriscct7, 9 years ago)
  • src/wp-includes/class-http.php

     
    140140                $args = wp_parse_args( $args );
    141141
    142142                // By default, Head requests do not cause redirections.
    143                 if ( isset($args['method']) && 'HEAD' == $args['method'] )
     143                if ( isset( $args['method'] ) && 'HEAD' == $args['method'] )
    144144                        $defaults['redirection'] = 0;
    145145
    146146                $r = wp_parse_args( $args, $defaults );
     
    192192                $arrURL = @parse_url( $url );
    193193
    194194                if ( empty( $url ) || empty( $arrURL['scheme'] ) )
    195                         return new WP_Error('http_request_failed', __('A valid URL was not provided.'));
     195                        return new WP_Error( 'http_request_failed', __( 'A valid URL was not provided.' ) );
    196196
    197197                if ( $this->block_request( $url ) )
    198198                        return new WP_Error( 'http_request_failed', __( 'User has blocked requests through HTTP.' ) );
     
    406406         * @param string|array $args Optional. Override the defaults.
    407407         * @return array|WP_Error Array containing 'headers', 'body', 'response', 'cookies', 'filename'. A WP_Error instance upon error
    408408         */
    409         public function post($url, $args = array()) {
    410                 $defaults = array('method' => 'POST');
     409        public function post( $url, $args = array() ) {
     410                $defaults = array( 'method' => 'POST' );
    411411                $r = wp_parse_args( $args, $defaults );
    412                 return $this->request($url, $r);
     412                return $this->request( $url, $r );
    413413        }
    414414
    415415        /**
     
    424424         * @param string|array $args Optional. Override the defaults.
    425425         * @return array|WP_Error Array containing 'headers', 'body', 'response', 'cookies', 'filename'. A WP_Error instance upon error
    426426         */
    427         public function get($url, $args = array()) {
    428                 $defaults = array('method' => 'GET');
     427        public function get( $url, $args = array() ) {
     428                $defaults = array( 'method' => 'GET' );
    429429                $r = wp_parse_args( $args, $defaults );
    430                 return $this->request($url, $r);
     430                return $this->request( $url, $r );
    431431        }
    432432
    433433        /**
     
    442442         * @param string|array $args Optional. Override the defaults.
    443443         * @return array|WP_Error Array containing 'headers', 'body', 'response', 'cookies', 'filename'. A WP_Error instance upon error
    444444         */
    445         public function head($url, $args = array()) {
    446                 $defaults = array('method' => 'HEAD');
     445        public function head( $url, $args = array() ) {
     446                $defaults = array( 'method' => 'HEAD' );
    447447                $r = wp_parse_args( $args, $defaults );
    448                 return $this->request($url, $r);
     448                return $this->request( $url, $r );
    449449        }
    450450
    451451        /**
     
    458458         * @param string $strResponse The full response string
    459459         * @return array Array with 'headers' and 'body' keys.
    460460         */
    461         public static function processResponse($strResponse) {
    462                 $res = explode("\r\n\r\n", $strResponse, 2);
     461        public static function processResponse( $strResponse ) {
     462                $res = explode( "\r\n\r\n", $strResponse, 2 );
    463463
    464                 return array('headers' => $res[0], 'body' => isset($res[1]) ? $res[1] : '');
     464                return array( 'headers' => $res[0], 'body' => isset($res[1] ) ? $res[1] : '');
    465465        }
    466466
    467467        /**
     
    481481         */
    482482        public static function processHeaders( $headers, $url = '' ) {
    483483                // Split headers, one per array element.
    484                 if ( is_string($headers) ) {
     484                if ( is_string( $headers ) ) {
    485485                        // Tolerate line terminator: CRLF = LF (RFC 2616 19.3).
    486                         $headers = str_replace("\r\n", "\n", $headers);
     486                        $headers = str_replace( "\r\n", "\n", $headers );
    487487                        /*
    488488                         * Unfold folded header fields. LWS = [CRLF] 1*( SP | HT ) <US-ASCII SP, space (32)>,
    489489                         * <US-ASCII HT, horizontal-tab (9)> (RFC 2616 2.2).
    490490                         */
    491                         $headers = preg_replace('/\n[ \t]/', ' ', $headers);
     491                        $headers = preg_replace( '/\n[ \t]/', ' ', $headers );
    492492                        // Create the headers array.
    493                         $headers = explode("\n", $headers);
     493                        $headers = explode( "\n", $headers );
    494494                }
    495495
    496                 $response = array('code' => 0, 'message' => '');
     496                $response = array( 'code' => 0, 'message' => '' );
    497497
    498498                /*
    499499                 * If a redirection has taken place, The headers for each page request may have been passed.
    500500                 * In this case, determine the final HTTP header and parse from there.
    501501                 */
    502                 for ( $i = count($headers)-1; $i >= 0; $i-- ) {
    503                         if ( !empty($headers[$i]) && false === strpos($headers[$i], ':') ) {
    504                                 $headers = array_splice($headers, $i);
     502                for ( $i = count( $headers )-1; $i >= 0; $i-- ) {
     503                        if ( !empty( $headers[$i] ) && false === strpos( $headers[$i], ':' ) ) {
     504                                $headers = array_splice( $headers, $i );
    505505                                break;
    506506                        }
    507507                }
     
    509509                $cookies = array();
    510510                $newheaders = array();
    511511                foreach ( (array) $headers as $tempheader ) {
    512                         if ( empty($tempheader) )
     512                        if ( empty( $tempheader ) )
    513513                                continue;
    514514
    515                         if ( false === strpos($tempheader, ':') ) {
    516                                 $stack = explode(' ', $tempheader, 3);
     515                        if ( false === strpos( $tempheader, ':' ) ) {
     516                                $stack = explode( ' ', $tempheader, 3 );
    517517                                $stack[] = '';
    518                                 list( , $response['code'], $response['message']) = $stack;
     518                                list( , $response['code'], $response['message'] ) = $stack;
    519519                                continue;
    520520                        }
    521521
    522                         list($key, $value) = explode(':', $tempheader, 2);
     522                        list($key, $value) = explode( ':', $tempheader, 2 );
    523523
    524524                        $key = strtolower( $key );
    525525                        $value = trim( $value );
     
    555555         * @param array $r Full array of args passed into ::request()
    556556         */
    557557        public static function buildCookieHeader( &$r ) {
    558                 if ( ! empty($r['cookies']) ) {
     558                if ( ! empty( $r['cookies'] ) ) {
    559559                        // Upgrade any name => value cookie pairs to WP_HTTP_Cookie instances.
    560560                        foreach ( $r['cookies'] as $name => $value ) {
    561561                                if ( ! is_object( $value ) )
     
    638638         * @param string $uri URI of url.
    639639         * @return bool True to block, false to allow.
    640640         */
    641         public function block_request($uri) {
     641        public function block_request( $uri ) {
    642642                // We don't need to block requests, because nothing is blocked.
    643643                if ( ! defined( 'WP_HTTP_BLOCK_EXTERNAL' ) || ! WP_HTTP_BLOCK_EXTERNAL )
    644644                        return false;
    645645
    646                 $check = parse_url($uri);
     646                $check = parse_url( $uri );
    647647                if ( ! $check )
    648648                        return true;
    649649
     
    662662                        return apply_filters( 'block_local_requests', false );
    663663                }
    664664
    665                 if ( !defined('WP_ACCESSIBLE_HOSTS') )
     665                if ( !defined( 'WP_ACCESSIBLE_HOSTS' ) )
    666666                        return true;
    667667
    668668                static $accessible_hosts = null;
    669669                static $wildcard_regex = array();
    670670                if ( null === $accessible_hosts ) {
    671                         $accessible_hosts = preg_split('|,\s*|', WP_ACCESSIBLE_HOSTS);
     671                        $accessible_hosts = preg_split( '|,\s*|', WP_ACCESSIBLE_HOSTS );
    672672
    673                         if ( false !== strpos(WP_ACCESSIBLE_HOSTS, '*') ) {
     673                        if ( false !== strpos( WP_ACCESSIBLE_HOSTS, '*' ) ) {
    674674                                $wildcard_regex = array();
    675675                                foreach ( $accessible_hosts as $host )
    676676                                        $wildcard_regex[] = str_replace( '\*', '.+', preg_quote( $host, '/' ) );
    677                                 $wildcard_regex = '/^(' . implode('|', $wildcard_regex) . ')$/i';
     677                                $wildcard_regex = '/^(' . implode( '|', $wildcard_regex ) . ')$/i';
    678678                        }
    679679                }
    680680
    681                 if ( !empty($wildcard_regex) )
    682                         return !preg_match($wildcard_regex, $check['host']);
     681                if ( !empty( $wildcard_regex ) )
     682                        return !preg_match( $wildcard_regex, $check['host'] );
    683683                else
    684684                        return !in_array( $check['host'], $accessible_hosts ); //Inverse logic, If it's in the array, then we can't access it.
    685685
     
    799799
    800800                // Don't redirect if we've run out of redirects.
    801801                if ( $args['redirection']-- <= 0 )
    802                         return new WP_Error( 'http_request_failed', __('Too many redirects.') );
     802                        return new WP_Error( 'http_request_failed', __( 'Too many redirects.' ) );
    803803
    804804                $redirect_location = $response['headers']['location'];
    805805
     
    843843         * @return integer|bool Upon success, '4' or '6' to represent a IPv4 or IPv6 address, false upon failure
    844844         */
    845845        public static function is_ip_address( $maybe_ip ) {
    846                 if ( preg_match( '/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/', $maybe_ip ) )
     846                if ( preg_match( '/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/', $maybe_ip ) )
    847847                        return 4;
    848848
    849849                if ( false !== strpos( $maybe_ip, ':' ) && preg_match( '/^(((?=.*(::))(?!.*\3.+\3))\3?|([\dA-F]{1,4}(\3|:\b|$)|\2))(?4){5}((?4){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i', trim( $maybe_ip, ' []' ) ) )