Mercurial > hg > isophonics-drupal-site
view core/lib/Drupal/Core/FileTransfer/FTP.php @ 13:5fb285c0d0e3
Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've
been lucky to get away with this so far, as we don't support self-registration
which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5
was vulnerable to.
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:33:26 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Drupal\Core\FileTransfer; /** * Defines the base class for FTP implementations. */ abstract class FTP extends FileTransfer { /** * {@inheritdoc} */ public function __construct($jail, $username, $password, $hostname, $port) { $this->username = $username; $this->password = $password; $this->hostname = $hostname; $this->port = $port; parent::__construct($jail); } /** * {@inheritdoc} */ public static function factory($jail, $settings) { $username = empty($settings['username']) ? '' : $settings['username']; $password = empty($settings['password']) ? '' : $settings['password']; $hostname = empty($settings['advanced']['hostname']) ? 'localhost' : $settings['advanced']['hostname']; $port = empty($settings['advanced']['port']) ? 21 : $settings['advanced']['port']; if (function_exists('ftp_connect')) { $class = 'Drupal\Core\FileTransfer\FTPExtension'; } else { throw new FileTransferException('No FTP backend available.'); } return new $class($jail, $username, $password, $hostname, $port); } /** * {@inheritdoc} */ public function getSettingsForm() { $form = parent::getSettingsForm(); $form['advanced']['port']['#default_value'] = 21; return $form; } }