WordPress.org

Make WordPress Core

Ticket #10522: 10522.diff

File 10522.diff, 4.2 KB (added by dd32, 9 years ago)
  • wp-admin/includes/class-wp-filesystem-ftpext.php

     
    1616 */
    1717class WP_Filesystem_FTPext extends WP_Filesystem_Base {
    1818        var $link;
    19         var $timeout = 5;
    2019        var $errors = null;
    2120        var $options = array();
    2221
     
    3332                }
    3433
    3534                // Set defaults:
     35                //This Class uses the timeout on a per-connection basis, Others use it on a per-action basis.
     36
     37                if ( ! defined('FS_TIMEOUT') )
     38                        define('FS_TIMEOUT', 240);
     39
    3640                if ( empty($opt['port']) )
    3741                        $this->options['port'] = 21;
    3842                else
     
    6468
    6569        function connect() {
    6670                if ( isset($this->options['ssl']) && $this->options['ssl'] && function_exists('ftp_ssl_connect') )
    67                         $this->link = @ftp_ssl_connect($this->options['hostname'], $this->options['port'], $this->timeout);
     71                        $this->link = @ftp_ssl_connect($this->options['hostname'], $this->options['port'], FS_CONNECT_TIMEOUT);
    6872                else
    69                         $this->link = @ftp_connect($this->options['hostname'], $this->options['port'], $this->timeout);
     73                        $this->link = @ftp_connect($this->options['hostname'], $this->options['port'], FS_CONNECT_TIMEOUT);
    7074
    7175                if ( ! $this->link ) {
    7276                        $this->errors->add('connect', sprintf(__('Failed to connect to FTP Server %1$s:%2$s'), $this->options['hostname'], $this->options['port']));
     
    8084
    8185                //Set the Connection to use Passive FTP
    8286                @ftp_pasv( $this->link, true );
     87                if ( @ftp_get_option($this->link, FTP_TIMEOUT_SEC) < FTP_TIMEOUT )
     88                        @ftp_set_option($this->link, FTP_TIMEOUT_SEC, FTP_TIMEOUT);
    8389
    8490                return true;
    8591        }
  • wp-admin/includes/class-wp-filesystem-ftpsockets.php

     
    1616 */
    1717class WP_Filesystem_ftpsockets extends WP_Filesystem_Base {
    1818        var $ftp = false;
    19         var $timeout = 5;
    2019        var $errors = null;
    2120        var $options = array();
    2221
     
    6160                if ( ! $this->ftp )
    6261                        return false;
    6362
    64                 //$this->ftp->Verbose = true;
     63                $this->ftp->setTimeout(FS_CONNECT_TIMEOUT);
    6564
    6665                if ( ! $this->ftp->SetServer($this->options['hostname'], $this->options['port']) ) {
    6766                        $this->errors->add('connect', sprintf(__('Failed to connect to FTP Server %1$s:%2$s'), $this->options['hostname'], $this->options['port']));
    6867                        return false;
    6968                }
     69
    7070                if ( ! $this->ftp->connect() ) {
    7171                        $this->errors->add('connect', sprintf(__('Failed to connect to FTP Server %1$s:%2$s'), $this->options['hostname'], $this->options['port']));
    7272                        return false;
     
    7979
    8080                $this->ftp->SetType(FTP_AUTOASCII);
    8181                $this->ftp->Passive(true);
     82                $this->ftp->setTimeout(FS_TIMEOUT);
    8283                return true;
    8384        }
    8485
  • wp-admin/includes/class-wp-filesystem-ssh2.php

     
    4545        var $link = false;
    4646        var $sftp_link = false;
    4747        var $keys = false;
    48         /*
    49          * This is the timeout value for ssh results.
    50          * Slower servers might need this incressed, but this number otherwise should not change.
    51          *
    52          * @parm $timeout int
    53          *
    54          */
    55         var $timeout = 15;
    5648        var $errors = array();
    5749        var $options = array();
    5850
     
    148140                        $this->errors->add('command', sprintf(__('Unable to perform command: %s'), $command));
    149141                } else {
    150142                        stream_set_blocking( $stream, true );
    151                         stream_set_timeout( $stream, $this->timeout );
     143                        stream_set_timeout( $stream, FS_TIMEOUT );
    152144                        $data = stream_get_contents( $stream );
    153145                        fclose( $stream );
    154146
  • wp-admin/includes/file.php

     
    617617        if ( ! defined('FS_CHMOD_FILE') )
    618618                define('FS_CHMOD_FILE', 0644 );
    619619
     620        //And the timeout constants.
     621        if ( ! defined('FS_CONNECT_TIMEOUT') )
     622                define('FS_CONNECT_TIMEOUT', 30);
     623        if ( ! defined('FS_TIMEOUT') )
     624                define('FS_TIMEOUT', 30);
     625
    620626        return true;
    621627}
    622628