1
0
mirror of https://github.com/vichan-devel/vichan.git synced 2025-02-17 19:29:28 +01:00

MD5 filters part 1

This commit is contained in:
8chan 2015-02-25 17:26:04 -08:00
parent d970baa5d8
commit 4b8eddbaf6
2 changed files with 25 additions and 0 deletions

View File

@ -357,6 +357,21 @@ CREATE TABLE `dnsbl_bypass` (
PRIMARY KEY (`ip`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `filters`
--
CREATE TABLE `filters` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`type` varchar(255) DEFAULT NULL,
`reason` text,
`value` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `data` (`type`,`value`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

View File

@ -640,6 +640,16 @@ elseif (isset($_POST['post'])) {
} else {
$hash = md5_file($upload);
}
// filter files by MD5
$query = prepare('SELECT * FROM ``filters`` WHERE `type` = "md5" and `value` = :value');
$query->bindValue(':value', $hash);
$result = $query->execute() or error(db_error());
if ($row = $query->fetch()) {
$reason = utf8tohtml($row['reason']);
error("Sorry, cannot upload. Matched MD5 of disallowed file. Reason: {$reason}");
}
$file['hash'] = $hash;
$allhashes .= $hash;
}