51 lines
1.1 KiB
PHP
51 lines
1.1 KiB
PHP
<?php
|
|
|
|
if (!defined('ONYX')) exit;
|
|
|
|
if (isset($_GET['newca']))
|
|
{
|
|
//TODO handle if already exist
|
|
putenv("OPENSSL_CONF=".ONYX. '../misc/openssl.cnf');
|
|
putenv("TOP_DIR=".ONYX. '../misc/fic_pki');
|
|
$output = shell_exec(ONYX . '../misc/CA.sh -newca');
|
|
|
|
//TODO handle the path ?
|
|
$ca_file = ONYX . '../misc/fic_pki/cacert.crt';
|
|
//TODO check permission ?
|
|
if (file_exists($ca_file))
|
|
{
|
|
$data = openssl_x509_parse(file_get_contents(ONYX . '../misc/fic_pki/cacert.crt'));
|
|
$template->assign("cert", $data);
|
|
}
|
|
}
|
|
|
|
function remove_directory($dir)
|
|
{
|
|
if (is_dir($dir))
|
|
{
|
|
$objects = scandir($dir);
|
|
foreach ($objects as $object)
|
|
{
|
|
if ($object != "." && $object != "..")
|
|
{
|
|
if (filetype($dir."/".$object) == "dir")
|
|
remove_directory($dir."/".$object);
|
|
else
|
|
unlink($dir."/".$object);
|
|
}
|
|
}
|
|
reset($objects);
|
|
rmdir($dir);
|
|
}
|
|
}
|
|
|
|
if (isset($_GET['deleteca']))
|
|
{
|
|
//TODO handle var path
|
|
$dir = ONYX . '../misc/fic_pki';
|
|
|
|
remove_directory($dir);
|
|
}
|
|
|
|
return "admin/home";
|