summaryrefslogtreecommitdiffstats
path: root/paste/include/storage
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--paste/include/storage/FileStorage.php8
-rw-r--r--paste/include/storage/MysqlStorage.php8
2 files changed, 14 insertions, 2 deletions
diff --git a/paste/include/storage/FileStorage.php b/paste/include/storage/FileStorage.php
index 5ee2b77..e1fc72c 100644
--- a/paste/include/storage/FileStorage.php
+++ b/paste/include/storage/FileStorage.php
@@ -46,8 +46,14 @@ class FileStorage extends StorageEngine
{
global $config;
+ if (!is_subclass_of($config['id_generator'], 'IdGeneratorEngine'))
+ {
+ header('HTTP/1.0 503 Service Unavailable');
+ die('Invalid config');
+ }
+
do {
- $filename = sha1(date('r') . rand(1000, getrandmax()));
+ $filename = $config['id_generator']->generateId();
} while (file_exists($this->storage_path . '/' . $filename));
if ($config['short_results_path']) {
diff --git a/paste/include/storage/MysqlStorage.php b/paste/include/storage/MysqlStorage.php
index 14aefa6..8e16536 100644
--- a/paste/include/storage/MysqlStorage.php
+++ b/paste/include/storage/MysqlStorage.php
@@ -78,7 +78,13 @@ INDEX (nick)
{
global $config;
- $name = sha1(date('r') . rand(1000, getrandmax()));
+ if (!is_subclass_of($config['id_generator'], 'IdGeneratorEngine'))
+ {
+ header('HTTP/1.0 503 Service Unavailable');
+ die('Invalid config');
+ }
+
+ $name = $config['id_generator']->generateId();
if ($stmt = $this->mysql->prepare(
'INSERT INTO ' . $this->table . '
(pid, nick, language, content,