remove configurable dir for traffic & purge limiters
This commit is contained in:
parent
ae486d651b
commit
3429d293d3
|
@ -10,6 +10,7 @@
|
||||||
* CHANGED: Language selection cookie only transmitted over HTTPS (#472)
|
* CHANGED: Language selection cookie only transmitted over HTTPS (#472)
|
||||||
* CHANGED: Upgrading libraries to: random_compat 2.0.20
|
* CHANGED: Upgrading libraries to: random_compat 2.0.20
|
||||||
* CHANGED: Removed automatic `.ini` configuration file migration (#808)
|
* CHANGED: Removed automatic `.ini` configuration file migration (#808)
|
||||||
|
* CHANGED: Removed configurable `dir` for `traffic` & `purge` limiters (#419)
|
||||||
* **1.3.5 (2021-04-05)**
|
* **1.3.5 (2021-04-05)**
|
||||||
* ADDED: Translation for Hebrew, Lithuanian, Indonesian and Catalan
|
* ADDED: Translation for Hebrew, Lithuanian, Indonesian and Catalan
|
||||||
* ADDED: Make the project info configurable (#681)
|
* ADDED: Make the project info configurable (#681)
|
||||||
|
|
|
@ -143,9 +143,6 @@ limit = 10
|
||||||
; set the HTTP header containing the visitors IP address, i.e. X_FORWARDED_FOR
|
; set the HTTP header containing the visitors IP address, i.e. X_FORWARDED_FOR
|
||||||
; header = "X_FORWARDED_FOR"
|
; header = "X_FORWARDED_FOR"
|
||||||
|
|
||||||
; directory to store the traffic limits in
|
|
||||||
dir = PATH "data"
|
|
||||||
|
|
||||||
[purge]
|
[purge]
|
||||||
; minimum time limit between two purgings of expired pastes, it is only
|
; minimum time limit between two purgings of expired pastes, it is only
|
||||||
; triggered when pastes are created
|
; triggered when pastes are created
|
||||||
|
@ -157,9 +154,6 @@ limit = 300
|
||||||
; site
|
; site
|
||||||
batchsize = 10
|
batchsize = 10
|
||||||
|
|
||||||
; directory to store the purge limit in
|
|
||||||
dir = PATH "data"
|
|
||||||
|
|
||||||
[model]
|
[model]
|
||||||
; name of data model class to load and directory for storage
|
; name of data model class to load and directory for storage
|
||||||
; the default model "Filesystem" stores everything in the filesystem
|
; the default model "Filesystem" stores everything in the filesystem
|
||||||
|
|
|
@ -80,13 +80,11 @@ class Configuration
|
||||||
'traffic' => array(
|
'traffic' => array(
|
||||||
'limit' => 10,
|
'limit' => 10,
|
||||||
'header' => null,
|
'header' => null,
|
||||||
'dir' => 'data',
|
|
||||||
'exemptedIp' => null,
|
'exemptedIp' => null,
|
||||||
),
|
),
|
||||||
'purge' => array(
|
'purge' => array(
|
||||||
'limit' => 300,
|
'limit' => 300,
|
||||||
'batchsize' => 10,
|
'batchsize' => 10,
|
||||||
'dir' => 'data',
|
|
||||||
),
|
),
|
||||||
'model' => array(
|
'model' => array(
|
||||||
'class' => 'Filesystem',
|
'class' => 'Filesystem',
|
||||||
|
|
|
@ -162,7 +162,6 @@ class Controller
|
||||||
$this->_model = new Model($this->_conf);
|
$this->_model = new Model($this->_conf);
|
||||||
$this->_request = new Request;
|
$this->_request = new Request;
|
||||||
$this->_urlBase = $this->_request->getRequestUri();
|
$this->_urlBase = $this->_request->getRequestUri();
|
||||||
ServerSalt::setPath($this->_conf->getKey('dir', 'traffic'));
|
|
||||||
|
|
||||||
// set default language
|
// set default language
|
||||||
$lang = $this->_conf->getKey('languagedefault');
|
$lang = $this->_conf->getKey('languagedefault');
|
||||||
|
|
|
@ -52,7 +52,6 @@ class PurgeLimiter extends AbstractPersistence
|
||||||
public static function setConfiguration(Configuration $conf)
|
public static function setConfiguration(Configuration $conf)
|
||||||
{
|
{
|
||||||
self::setLimit($conf->getKey('limit', 'purge'));
|
self::setLimit($conf->getKey('limit', 'purge'));
|
||||||
self::setPath($conf->getKey('dir', 'purge'));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -71,7 +70,7 @@ class PurgeLimiter extends AbstractPersistence
|
||||||
}
|
}
|
||||||
|
|
||||||
$now = time();
|
$now = time();
|
||||||
$pl = (int) self::$_store->getValue('purge_limiter');
|
$pl = (int) self::$_store->getValue('purge_limiter');
|
||||||
if ($pl + self::$_limit >= $now) {
|
if ($pl + self::$_limit >= $now) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -85,7 +85,6 @@ class TrafficLimiter extends AbstractPersistence
|
||||||
public static function setConfiguration(Configuration $conf)
|
public static function setConfiguration(Configuration $conf)
|
||||||
{
|
{
|
||||||
self::setLimit($conf->getKey('limit', 'traffic'));
|
self::setLimit($conf->getKey('limit', 'traffic'));
|
||||||
self::setPath($conf->getKey('dir', 'traffic'));
|
|
||||||
self::setExemptedIp($conf->getKey('exemptedIp', 'traffic'));
|
self::setExemptedIp($conf->getKey('exemptedIp', 'traffic'));
|
||||||
|
|
||||||
if (($option = $conf->getKey('header', 'traffic')) !== null) {
|
if (($option = $conf->getKey('header', 'traffic')) !== null) {
|
||||||
|
|
|
@ -17,8 +17,6 @@ class ConfigurationTest extends PHPUnit_Framework_TestCase
|
||||||
$this->_minimalConfig = '[main]' . PHP_EOL . '[model]' . PHP_EOL . '[model_options]';
|
$this->_minimalConfig = '[main]' . PHP_EOL . '[model]' . PHP_EOL . '[model_options]';
|
||||||
$this->_options = Configuration::getDefaults();
|
$this->_options = Configuration::getDefaults();
|
||||||
$this->_options['model_options']['dir'] = PATH . $this->_options['model_options']['dir'];
|
$this->_options['model_options']['dir'] = PATH . $this->_options['model_options']['dir'];
|
||||||
$this->_options['traffic']['dir'] = PATH . $this->_options['traffic']['dir'];
|
|
||||||
$this->_options['purge']['dir'] = PATH . $this->_options['purge']['dir'];
|
|
||||||
$this->_path = sys_get_temp_dir() . DIRECTORY_SEPARATOR . 'privatebin_cfg';
|
$this->_path = sys_get_temp_dir() . DIRECTORY_SEPARATOR . 'privatebin_cfg';
|
||||||
if (!is_dir($this->_path)) {
|
if (!is_dir($this->_path)) {
|
||||||
mkdir($this->_path);
|
mkdir($this->_path);
|
||||||
|
|
|
@ -428,8 +428,6 @@ class ConfigurationCombinationsTest extends PHPUnit_Framework_TestCase
|
||||||
Helper::confBackup();
|
Helper::confBackup();
|
||||||
$this->_path = sys_get_temp_dir() . DIRECTORY_SEPARATOR . 'privatebin_data';
|
$this->_path = sys_get_temp_dir() . DIRECTORY_SEPARATOR . 'privatebin_data';
|
||||||
$this->_model = Filesystem::getInstance(array('dir' => $this->_path));
|
$this->_model = Filesystem::getInstance(array('dir' => $this->_path));
|
||||||
ServerSalt::setPath($this->_path);
|
|
||||||
TrafficLimiter::setPath($this->_path);
|
|
||||||
$this->reset();
|
$this->reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -449,8 +447,6 @@ class ConfigurationCombinationsTest extends PHPUnit_Framework_TestCase
|
||||||
if ($this->_model->exists(Helper::getPasteId()))
|
if ($this->_model->exists(Helper::getPasteId()))
|
||||||
$this->_model->delete(Helper::getPasteId());
|
$this->_model->delete(Helper::getPasteId());
|
||||||
$configuration['model_options']['dir'] = $this->_path;
|
$configuration['model_options']['dir'] = $this->_path;
|
||||||
$configuration['traffic']['dir'] = $this->_path;
|
|
||||||
$configuration['purge']['dir'] = $this->_path;
|
|
||||||
Helper::createIniFile(CONF, $configuration);
|
Helper::createIniFile(CONF, $configuration);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -37,11 +37,8 @@ class ControllerTest extends PHPUnit_Framework_TestCase
|
||||||
$this->_data->delete(Helper::getPasteId());
|
$this->_data->delete(Helper::getPasteId());
|
||||||
}
|
}
|
||||||
$options = parse_ini_file(CONF_SAMPLE, true);
|
$options = parse_ini_file(CONF_SAMPLE, true);
|
||||||
$options['purge']['dir'] = $this->_path;
|
|
||||||
$options['traffic']['dir'] = $this->_path;
|
|
||||||
$options['model_options']['dir'] = $this->_path;
|
$options['model_options']['dir'] = $this->_path;
|
||||||
Helper::createIniFile(CONF, $options);
|
Helper::createIniFile(CONF, $options);
|
||||||
ServerSalt::setPath($this->_path);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -25,8 +25,6 @@ class JsonApiTest extends PHPUnit_Framework_TestCase
|
||||||
$this->_model->delete(Helper::getPasteId());
|
$this->_model->delete(Helper::getPasteId());
|
||||||
}
|
}
|
||||||
$options = parse_ini_file(CONF_SAMPLE, true);
|
$options = parse_ini_file(CONF_SAMPLE, true);
|
||||||
$options['purge']['dir'] = $this->_path;
|
|
||||||
$options['traffic']['dir'] = $this->_path;
|
|
||||||
$options['model_options']['dir'] = $this->_path;
|
$options['model_options']['dir'] = $this->_path;
|
||||||
Helper::confBackup();
|
Helper::confBackup();
|
||||||
Helper::createIniFile(CONF, $options);
|
Helper::createIniFile(CONF, $options);
|
||||||
|
|
|
@ -14,7 +14,6 @@ class PurgeLimiterTest extends PHPUnit_Framework_TestCase
|
||||||
if (!is_dir($this->_path)) {
|
if (!is_dir($this->_path)) {
|
||||||
mkdir($this->_path);
|
mkdir($this->_path);
|
||||||
}
|
}
|
||||||
PurgeLimiter::setPath($this->_path);
|
|
||||||
PurgeLimiter::setStore(
|
PurgeLimiter::setStore(
|
||||||
Filesystem::getInstance(array('dir' => $this->_path))
|
Filesystem::getInstance(array('dir' => $this->_path))
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in New Issue