assign('msg', tra("You do not have the permission that is needed to use this feature")); $smarty->display("error.tpl"); die; } /** * @param $dir * @param $result */ function md5_check_dir($dir, &$result) // save all files in $result { echo "opening $dir
\n"; flush(); $d = dir($dir); while (false !== ($e = $d->read())) { $entry = $dir . '/' . $e; if (is_dir($entry)) { if ($e != '..' && $e != '.' && $e != 'CVS' && $entry != './temp/templates_c') { // do not descend and no CVS files md5_check_dir($entry, $result); } } else { if (substr($e, -4, 4) == ".php" && $entry != './tiki-create_md5.php' && $entry != './db/local.php') { // echo "creating sum of $entry
\n"; $result[$entry] = md5_file($entry); } } } $d->close(); } $tikimd5 = []; $chkdir = isset($_REQUEST['chkdir']) ? $_REQUEST['chkdir'] : '.'; echo "creating md5 sums for dir $chkdir
"; flush(); md5_check_dir($chkdir, $tikimd5); if (isset($_REQUEST['secdb']) && $_REQUEST['secdb'] = 'fs') { $s = serialize($tikimd5); $fp = fopen('lib/admin/secdb.php.inc', 'wb'); fwrite($fp, ""); fclose($fp); } else { global $tikilib; echo "inserting into db table tiki_secdb.
"; flush(); if (! isset($_REQUEST['tikiver'])) { echo "you have to set the tiki version. Example: tiki-create_md5.php?tikiver=1.9"; die; } // we update a whole revision. so we delete all old values from db! $query = 'delete from `tiki_secdb` where `tiki_version`=?'; $tikilib->query($query, [$_REQUEST['tikiver']]); $query = 'insert into `tiki_secdb`(`md5_value`,`filename`,`tiki_version`,`severity`) values (?,?,?,?)'; foreach ($tikimd5 as $filename => $filemd5) { if ($chkdir != '.') { $filename = preg_replace("#^" . preg_quote($chkdir) . "#", ".", $filename); } $tikilib->query($query, [$filemd5, $filename, $_REQUEST['tikiver'], 0]); } echo "done. use mysqldump to extract the secdb table and to add it to the release
"; }