本文整理汇总了PHP中unix_system_HUP函数的典型用法代码示例。如果您正苦于以下问题:PHP unix_system_HUP函数的具体用法?PHP unix_system_HUP怎么用?PHP unix_system_HUP使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了unix_system_HUP函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: reload
function reload()
{
$unix = new unix();
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: [INIT]: Already task running PID {$pid} since {$time}mn\n";
}
return;
}
$pid = ZARAFA_SEARCH_PID();
if (!$unix->process_exists($pid)) {
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: [INIT]: {$GLOBALS["SERVICE_NAME"]} stopped...\n";
}
$php5 = $unix->LOCATE_PHP5_BIN();
shell_exec("{$php5} " . __FILE__ . " --start");
return;
}
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: [INIT]: {$GLOBALS["SERVICE_NAME"]} reloading PID {$pid}...\n";
}
$kill = $unix->find_program("kill");
unix_system_HUP($pid);
}
示例2: SingleInstance_reload
function SingleInstance_reload()
{
$unix = new unix();
SingleInstance();
$pid = SingleInstance_pid();
if ($unix->process_exists($pid)) {
$timepid = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "{$GLOBALS["deflog_start"]} reloading executed {$pid} since {$timepid}Mn...\n";
}
unix_system_HUP($pid);
sleep(2);
$pid = SingleInstance_pid();
if (!$unix->process_exists($pid)) {
SingleInstance_start(true);
}
return;
}
SingleInstance_start(true);
}
示例3: build_ufdbguard_HUP
function build_ufdbguard_HUP()
{
if (isset($GLOBALS["build_ufdbguard_HUP_EXECUTED"])) {
return;
}
$GLOBALS["build_ufdbguard_HUP_EXECUTED"] = true;
$unix = new unix();
$sock = new sockets();
$forceTXT = null;
$ufdbguardReloadTTL = intval($sock->GET_INFO("ufdbguardReloadTTL"));
if ($ufdbguardReloadTTL < 1) {
$ufdbguardReloadTTL = 10;
}
$php5 = $unix->LOCATE_PHP5_BIN();
$rm = $unix->find_program("rm");
shell_exec("{$php5} /usr/share/artica-postfix/exec.ufdbclient.reload.php");
shell_exec("{$rm} /home/squid/error_page_cache/*");
if (function_exists("debug_backtrace")) {
$trace = @debug_backtrace();
if (isset($trace[1])) {
$called = "called by " . basename($trace[1]["file"]) . " {$trace[1]["function"]}() line {$trace[1]["line"]}";
}
}
$trace = debug_backtrace();
if (isset($trace[1])) {
$called = " called by " . basename($trace[1]["file"]) . " {$trace[1]["function"]}() line {$trace[1]["line"]}";
}
$timeFile = "/etc/artica-postfix/pids/UfdbGuardReload.time";
$TimeReload = $unix->file_time_min($timeFile);
if (!$GLOBALS["FORCE"]) {
if ($TimeReload < $ufdbguardReloadTTL) {
build_progress("{reloading_service} {failed}", 110);
$unix->_syslog("Webfiltering service Aborting reload, last reload since {$TimeReload}Mn, need at least {$ufdbguardReloadTTL}Mn", basename(__FILE__));
echo "Starting......: " . date("H:i:s") . " Webfiltering service Aborting reload, last reload since {$TimeReload}Mn, need at least {$ufdbguardReloadTTL}Mn\n";
return;
}
} else {
echo "Starting......: " . date("H:i:s") . " --- FORCED --- ufdbGuard last reload was {$TimeReload}mn\n";
}
@unlink($timeFile);
@file_put_contents($timeFile, time());
$pid = ufdbguard_pid();
build_progress("{reloading_service} {$pid}", 71);
$squidbin = $unix->LOCATE_SQUID_BIN();
$ufdbguardd = $unix->find_program("ufdbguardd");
if (strlen($ufdbguardd) < 5) {
WriteToSyslogMail("ufdbguardd no such binary", basename(__FILE__));
return;
}
$kill = $unix->find_program("kill");
if ($unix->process_exists($pid)) {
$processTTL = intval($unix->PROCCESS_TIME_MIN($pid));
$LastTime = intval($unix->file_time_min($timeFile));
build_progress("{reloading_service} {$pid} {$processTTL}Mn", 72);
echo "Starting......: " . date("H:i:s") . " Webfiltering service Reloading service TTL {$processTTL}Mn\n";
echo "Starting......: " . date("H:i:s") . " Webfiltering service Reloading service Last config since {$LastTime}Mn\n";
echo "Starting......: " . date("H:i:s") . " Webfiltering service Reloading Max reload {$ufdbguardReloadTTL}Mn\n";
if (!$GLOBALS["FORCE"]) {
echo "Starting......: " . date("H:i:s") . " Webfiltering service Reloading force is disabled\n";
if ($LastTime < $ufdbguardReloadTTL) {
squid_admin_mysql(2, "Reloading Web Filtering PID: {$pid} [Aborted] last reload {$LastTime}Mn, need {$ufdbguardReloadTTL}mn", null, __FILE__, __LINE__);
echo "Starting......: " . date("H:i:s") . " Webfiltering service Reloading service Aborting... minimal time was {$ufdbguardReloadTTL}mn - Current {$LastTime}mn\n{$called}\n";
return;
}
if ($processTTL < $ufdbguardReloadTTL) {
squid_admin_mysql(2, "Reloading Web Filtering PID: {$pid} [Aborted] {$processTTL}Mn, need {$ufdbguardReloadTTL}mn", null, __FILE__, __LINE__);
echo "Starting......: " . date("H:i:s") . " Webfiltering service PID: {$pid} Reloading service Aborting... minimal time was {$ufdbguardReloadTTL}mn\n{$called}\n";
return;
}
}
if ($GLOBALS["FORCE"]) {
$forceTXT = " with option FORCE enabled";
$prefix = "[FORCED]:";
}
@unlink($timeFile);
@file_put_contents($timeFile, time());
echo "Starting......: " . date("H:i:s") . " Webfiltering service Reloading service PID:{$pid} {$processTTL}mn\n";
squid_admin_mysql(1, "{$prefix}Reloading Web Filtering service PID: {$pid} TTL {$processTTL}Mn", "{$forceTXT}\n{$called}\n{$GLOBALS["CMDLINEXEC"]}");
build_progress("{reloading_service} HUP {$pid}", 75);
unix_system_HUP($pid);
build_progress("{reloading_proxy_service}", 76);
shell_exec("{$php5} /usr/share/artica-postfix/exec.ufdbclient.reload.php");
$squidbin = $unix->LOCATE_SQUID_BIN();
squid_admin_mysql(1, "{$prefix}Reloading Proxy service", null, __FILE__, __LINE__);
system("{$squidbin} -k reconfigure");
return true;
}
squid_admin_mysql(1, "Warning, Reloading Web Filtering but not running [action=start]", "{$forceTXT}\n{$called}\n{$GLOBALS["CMDLINEXEC"]}");
echo "Starting......: " . date("H:i:s") . " Webfiltering service reloading service no pid is found, Starting service...\n";
@unlink($timeFile);
@file_put_contents($timeFile, time());
build_progress("{starting_service}", 76);
if (!ufdbguard_start()) {
return;
}
echo "Starting......: " . date("H:i:s") . " Webfiltering Service restarting ufdb-tail process\n";
shell_exec("/etc/init.d/ufdb-tail restart");
shell_exec("{$php5} /usr/share/artica-postfix/exec.ufdbclient.reload.php");
squid_admin_mysql(1, "{$prefix}Reloading Proxy service", null, __FILE__, __LINE__);
system("{$squidbin} -k reconfigure");
//.........这里部分代码省略.........
示例4: SingleInstance_reload
function SingleInstance_reload()
{
$unix = new unix();
SingleInstance();
$pid = SingleInstance_pid();
if ($unix->process_exists($pid)) {
$timepid = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "{$GLOBALS["deflog_start"]} reloading executed {$pid} since {$timepid}Mn...\n";
}
unix_system_HUP($pid);
sleep(2);
$pid = SingleInstance_pid();
if (!$unix->process_exists($pid)) {
SingleInstance_start(true);
}
return;
}
$PHP = $unix->LOCATE_PHP5_BIN();
$nohup = $unix->find_program("nohup");
shell_exec("{$nohup} {$PHP} /usr/share/artica-postfix/exec.spamassassin.php --whitelist >/dev/null 2>&1 &");
SingleInstance_start(true);
}
示例5: reload
function reload($nopid = false)
{
$unix = new unix();
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
if (!$nopid) {
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: Already Artica task running PID {$pid} since {$time}mn\n";
}
return;
}
}
@file_put_contents($pidfile, getmypid());
$sock = new sockets();
$Enablentopng = $sock->GET_INFO("Enablentopng");
if (!is_numeric($Enablentopng)) {
$Enablentopng = 0;
}
if ($Enablentopng == 0) {
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["SERVICE_NAME"]} Disabled ( see Enablentopng )...\n";
}
return;
}
build();
$masterbin = $unix->find_program("ntopng");
if (!is_file($masterbin)) {
if ($GLOBALS["OUTPUT"]) {
echo "Reload........: [INIT]: {$GLOBALS["SERVICE_NAME"]} not installed\n";
}
return;
}
$pid = ntopng_pid();
$kill = $unix->find_program("kill");
if ($unix->process_exists($pid)) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Reload........: [INIT]: {$GLOBALS["SERVICE_NAME"]} Service running since {$time}Mn...\n";
}
unix_system_HUP($pid);
return;
}
start(true);
}
示例6: reload
function reload()
{
$unix = new unix();
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
$sock = new sockets();
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Already Artica task running PID {$pid} since {$time}mn\n";
}
return;
}
$pid = PID_NUM();
if ($unix->process_exists($pid)) {
$unix->_syslog("{$GLOBALS["TITLENAME"]} Reloading PID {$pid}\n", basename(__FILE__));
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Reloading PID {$pid}\n";
}
CheckDirectories();
buildconfig();
unix_system_HUP($pid);
} else {
start(true);
}
}
示例7: reload
function reload()
{
$unix = new unix();
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
$sock = new sockets();
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Already Artica task running PID {$pid} since {$time}mn\n";
}
return;
}
$DisableUfdbCat = $sock->DisableUfdbCat();
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} DisableUfdbCat= {$DisableUfdbCat}\n";
}
if ($DisableUfdbCat == 1) {
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} service disabled (see DisableUfdbCat)\n";
}
stop();
return;
}
$pid = PID_NUM();
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($unix->process_exists($pid)) {
CheckDirectories(true);
CheckDirectoriesTLSE();
buildconfig();
$unix->_syslog("{$GLOBALS["TITLENAME"]} Reloading PID {$pid} (running since {$time}Mn)\n", basename(__FILE__));
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Reloading PID {$pid}\n";
}
squid_admin_mysql(1, "Reloading Categories service (running since {$time}Mn)", null, __FILE__, __LINE__);
unix_system_HUP($pid);
} else {
start(true);
}
}
示例8: reload
function reload($aspid = false)
{
$unix = new unix();
if (!$aspid) {
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Already Artica task running PID {$pid} since {$time}mn\n";
}
return;
}
@file_put_contents($pidfile, getmypid());
}
CheckPermissions();
BuildConfig();
$pid = PID_NUM();
if (!$unix->process_exists($pid)) {
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Not running, start it...\n";
}
start(true);
return;
}
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} cyrus-imapd running since {$time}mn\n";
}
$kill = $unix->find_program("kill");
unix_system_HUP($pid);
$unix->CreateUnixUser("postfix", "postfix");
$lmtpsocket = "/var/spool/postfix/var/run/cyrus/socket/lmtp";
for ($i = 1; $i < 5; $i++) {
if ($unix->is_socket($lmtpsocket)) {
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Waiting socket success..\n";
}
$unix->chown_func("postfix", "postfix", "/var/spool/postfix/var/run");
$unix->chown_func("postfix", "postfix", "{$lmtpsocket}");
break;
}
if ($GLOBALS["OUTPUT"]) {
echo "Reloading.....: " . date("H:i:s") . " {$GLOBALS["TITLENAME"]} Waiting socket {$i}/5\n";
}
sleep(1);
}
}
示例9: build_schedules
//.........这里部分代码省略.........
continue;
}
if ($EnableRemoteStatisticsAppliance == 1) {
if ($q->tasks_remote_appliance[$TaskType]) {
$d++;
continue;
}
}
$md5 = md5("{$TimeText}{$TaskType}");
if (isset($alreadydone[$md5])) {
if ($GLOBALS["VERBOSE"]) {
echo "Starting......: " . date("H:i:s") . " artica-postfix watchdog task {$ligne["ID"]} already set\n";
}
continue;
}
$alreadydone[$md5] = true;
if (!isset($q->tasks_processes[$TaskType])) {
if ($GLOBALS["VERBOSE"]) {
echo "Starting......: " . date("H:i:s") . " artica-postfix task {$ligne["ID"]} no such task...\n";
}
$d++;
continue;
}
if (isset($q->tasks_disabled[$TaskType])) {
if ($GLOBALS["VERBOSE"]) {
echo "Starting......: " . date("H:i:s") . " artica-postfix task {$ligne["ID"]} is disabled or did not make sense...\n";
}
$d++;
continue;
}
$script = $q->tasks_processes[$TaskType];
if ($GLOBALS["VERBOSE"]) {
echo "Starting......: " . date("H:i:s") . " artica-postfix create task {$ligne["ID"]} type {$TaskType}..\n";
}
if (trim($ligne["TimeText"] == "{$allminutes} * * * *")) {
$ligne["TimeText"] = "* * * * *";
}
$f = array();
$f[] = "MAILTO=\"\"";
$f[] = "{$ligne["TimeText"]} root {$nice} {$php5} {$WorkingDirectory}/exec.schedules.php --run-squid {$ligne["ID"]} >/dev/null 2>&1";
$f[] = "";
@file_put_contents("/etc/cron.d/squidsch-{$ligne["ID"]}", @implode("\n", $f));
$c++;
continue;
if (trim($ligne["TimeText"] == "20,40,59 * * * *")) {
$f[] = "@{$finalsettings},mail(false) 20 {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
continue;
}
if (trim($ligne["TimeText"] == "0 * * * *")) {
$f[] = "@{$finalsettings},mail(false) 1h {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
continue;
}
if (trim($ligne["TimeText"] == "10,20,30,40,50 * * * *")) {
$f[] = "@{$finalsettings},mail(false) 10 {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
continue;
}
if (trim($ligne["TimeText"] == "0 0,3,5,7,9,11,13,15,17,19,23 * * *")) {
$f[] = "@{$finalsettings},mail(false) 3h {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
continue;
}
if (trim($ligne["TimeText"] == "0 2,4,6,8,10,12,14,16,18,20,22 * * *")) {
$f[] = "@{$finalsettings},mail(false) 2h {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
continue;
}
if (trim($ligne["TimeText"] == "0 0,2,4,6,8,10,12,14,16,18,20,22 * * *")) {
$f[] = "@{$finalsettings},mail(false) 2h {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
continue;
}
$f[] = "&{$finalsettings},mail(false) {$ligne["TimeText"]} {$php5} {$WorkingDirectory}/{$script} --schedule-id={$ligne["ID"]} >/dev/null 2>&1";
}
@file_put_contents("/etc/artica-postfix/squid.schedules", implode("\n", $f));
if ($notfcron) {
echo "Starting......: " . date("H:i:s") . " Squid {$c} scheduled tasks ({$d} disabled)\n";
return;
}
$cron_path = $unix->find_program("cron");
$kill = $unix->find_program("kill");
$cron_pid = null;
if (is_file("/var/run/cron.pid")) {
$cron_pid = $unix->get_pid_from_file("/var/run/cron.pid");
}
if (!$unix->process_exists($cron_pid)) {
$cron_pid = 0;
}
if (!is_numeric($cron_pid) or $cron_pid < 5) {
$cron_pid = $unix->PIDOF("{$cron_path}");
}
if ($cron_pid > 5) {
if ($GLOBALS["VERBOSE"]) {
echo "Starting......: " . date("H:i:s") . " artica-postfix reloading {$cron_path} [{$cron_pid}]...\n";
}
unix_system_HUP("{$cron_pid}");
}
if ($GLOBALS["VERBOSE"]) {
echo "Starting......: " . date("H:i:s") . " artica-postfix reloading fcron...\n";
}
$nohup = $unix->find_program("nohup");
shell_exec("{$nohup} /etc/init.d/artica-postfix restart fcron >/dev/null 2>&1 &");
shell_exec("/etc/init.d/cron reload");
}
示例10: reload_dnsmasq
function reload_dnsmasq()
{
$sock = new sockets();
$EnableDNSMASQ = $sock->GET_INFO("EnableDNSMASQ");
if (!is_numeric($EnableDNSMASQ)) {
$EnableDNSMASQ = 0;
}
if ($EnableDNSMASQ == 0) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} unable to reload DnsMASQ (not enabled)\n";
return;
}
$unix = new unix();
$EnableChilli = $sock->GET_INFO("EnableChilli");
$chilli = $unix->find_program("chilli");
if (!is_numeric($EnableChilli)) {
$EnableChilli = 0;
}
if (is_file($chilli)) {
if ($EnableChilli == 1) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} HotSpot is enabled, cannot use this instance\n";
return;
}
}
$dnsmasqbin = $unix->find_program("dnsmasq");
if (is_file(!$dnsmasqbin)) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} unable to reload DnsMASQ (not such dsnmasq binary)\n";
return;
}
$pid = $unix->PIDOF($dnsmasqbin);
if (!is_numeric($pid)) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} unable to reload DnsMASQ (not running)\n";
return;
}
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} reloading PID:`{$pid}`\n";
$kill = $unix->find_program("kill");
unix_system_HUP($pid);
}
示例11: build
//.........这里部分代码省略.........
if ($conf["VerifyIncoming"] == "yes") {
$mode = $mode . "v";
echo "Starting......: " . date("H:i:s") . " milter-dkim verify incoming mails\n";
}
$ldap = new clladp();
$domains = $ldap->hash_get_all_domains();
while (list($key, $value) = each($domains)) {
$dd[] = $key;
}
echo "Starting......: " . date("H:i:s") . " milter-dkim " . count($dd) . " local domains\n";
$Domain = @implode(",", $dd);
$f[] = "ADSPDiscard\t\t\t{$conf["ADSPDiscard"]}";
$f[] = "ADSPNoSuchDomain\t\t{$conf["ADSPNoSuchDomain"]}";
$f[] = "AllowSHA1Only\t\t\tno";
$f[] = "AlwaysAddARHeader\t\tno";
$f[] = "AutoRestart\t\t\tyes";
$f[] = "AutoRestartCount\t\t2";
$f[] = "AutoRestartRate\t\t10/1h";
$f[] = "Background\t\t\tYes";
$f[] = "BaseDirectory\t\t\t/var/run/dkim-filter";
$f[] = "BodyLengths\t\t\tNo";
$f[] = "Canonicalization\t\tsimple/simple";
$f[] = "ClockDrift\t\t\t300 ";
$f[] = "Diagnostics\t\t\tyes";
$f[] = "DNSTimeout\t\t\t10";
$f[] = "Domain\t\t\t\t{$Domain}";
$f[] = "EnableCoredumps\t\tno";
$f[] = "ExternalIgnoreList\t/etc/mail/dkim/trusted-hosts";
$f[] = "FixCRLF \t\t\t\tno";
$f[] = "InternalHosts\t\t\t/etc/mail/dkim/internal-hosts";
$f[] = "KeepTemporaryFiles\tno";
$f[] = "KeyList \t\t\t\t/etc/mail/dkim/keylist";
$f[] = "LogWhy\t\t\t\tyes";
$f[] = "MilterDebug\t\t\t0";
$f[] = "Mode\t\t\t\t\t{$mode}";
$f[] = "On-Default \t{$conf["On-Default"]}";
$f[] = "On-BadSignature \t{$conf["On-BadSignature"]}";
$f[] = "On-DNSError \t{$conf["On-DNSError"]}";
$f[] = "On-InternalError \t{$conf["On-InternalError"]}";
$f[] = "On-NoSignature \t{$conf["On-NoSignature"]}";
$f[] = "On-Security \t{$conf["On-Security"]}";
$f[] = "PeerList\t\t\t\t/etc/mail/dkim/trusted-hosts";
$f[] = "PidFile\t\t\t\t/var/run/dkim-milter/dkim-milter.pid";
$f[] = "Quarantine\t\t\tNo";
$f[] = "#QueryCache\t\t\tyes";
$f[] = "RemoveARAll\t\t\tNo";
$f[] = "RemoveOldSignatures\tNo";
$f[] = "ReportAddress\t\t\tpostmaster@example.com";
$f[] = "RequiredHeaders\t\tNo";
$f[] = "Selector\t\t\t\tdefault";
$f[] = "SendADSPReports\t\tNo";
$f[] = "SendReports\t\t\tNo";
$f[] = "SignatureAlgorithm\trsa-sha256";
$f[] = "SignatureTTL\t\t\t0";
$f[] = "Socket\t\t\t\tlocal:/var/run/dkim-milter/dkim-milter.sock";
$f[] = "StrictTestMode\t\tno";
$f[] = "Syslog\t\t\t\tyes";
$f[] = "SyslogFacility\t\tmail";
$f[] = "SyslogSuccess\t\t\tyes";
$f[] = "TemporaryDirectory\t/var/tmp";
$f[] = "UMask\t\t\t\t\t022";
$f[] = "UserID\t\t\t\tpostfix";
$f[] = "X-Header\t\t\t\t{$conf["X-Header"]}";
$f[] = "";
/*
* KeyList (string)
Gives the location of a file listing rules for signing with mul‐tiple keys. If present, overrides any KeyFile
setting in the conifguration file. The file named here should contain a set of lines of the form
sender‐pattern:signing‐domain:keypath where sender‐pattern is a pattern to match against message senders
(with the special character "*" interpreted as "zero or more characters"), signing‐domain is the domain to announce as
the signing domain when generating signatures, and keypath is the path to the PEM‐formatted private key to be used for signing messages which match the sender‐pattern.
The selector used in the signature will be the filename portion of keypath.
If the file referenced by keypath cannot be opened, the
filter will try again by appending ".pem" and then ".private" before giving up
*/
//http://www.howtoforge.com/set-up-dkim-for-multiple-domains-on-postfix-with-dkim-milter-2.8.x-centos-5.3
@mkdir("/etc/dkim-milter", null, true);
@file_put_contents("/etc/dkim-milter/dkim-milter.conf", @implode("\n", $f));
keyTable();
WhitelistDomains();
WhitelistHosts();
MyNetworks();
echo "Starting......: " . date("H:i:s") . " milter-dkim Apply permissions...\n";
shell_exec("/bin/chmod 755 /etc/mail/dkim >/dev/null 2>&1");
shell_exec("/bin/chmod 0770 /etc/mail/dkim/keys >/dev/null 2>&1");
shell_exec("/bin/chmod 0770 /etc/mail/dkim/keys/* >/dev/null 2>&1");
shell_exec("/bin/chmod 0770 /etc/mail/dkim/keys/*/* >/dev/null 2>&1");
shell_exec("/bin/chown -R postfix:postfix /etc/mail/dkim >/dev/null 2>&1");
echo "Starting......: " . date("H:i:s") . " milter-dkim Apply permissions done...\n";
if ($GLOBALS["RELOAD"]) {
$unix = new unix();
$pid = $unix->get_pid_from_file("/var/run/dkim-milter/dkim-milter.pid");
echo "Starting......: " . date("H:i:s") . " milter-dkim reloading current PID={$pid}\n";
if ($unix->process_exists($pid)) {
$kill = $unix->find_program("kill");
echo "Starting......: " . date("H:i:s") . " milter-dkim reloading PID {$pid}\n";
unix_system_HUP($pid);
}
}
}
示例12: reload
function reload()
{
$unix = new unix();
$smbcontrol = $unix->find_program("smbcontrol");
if (is_file($smbcontrol)) {
shell_exec("{$smbcontrol} smbd reload-config");
shell_exec("{$smbcontrol} winbindd reload-config");
shell_exec("{$smbcontrol} nmbd reload-config");
return;
}
$pidof = $unix->find_program("pidof");
$smbd = $unix->find_program("smbd");
$winbindd = $unix->find_program("winbindd");
$kill = $unix->find_program("kill");
exec("{$pidof} {$smbd} 2>&1", $results);
echo "Starting......: " . date("H:i:s") . " samba reloading smbd:{$smbd}...\n";
$tbl = explode(" ", @implode(" ", $results));
while (list($index, $pid) = each($tbl)) {
$pid = trim($pid);
if (!is_numeric($pid)) {
continue;
}
if ($pid < 10) {
continue;
}
echo "Starting......: " . date("H:i:s") . " samba reloading smbd pid: {$pid}\n";
unix_system_HUP($pid);
}
$results = array();
exec("{$pidof} winbindd 2>&1", $results);
echo "Starting......: " . date("H:i:s") . " samba reloading winbindd:{$smbd}...\n";
$tbl = explode(" ", @implode(" ", $results));
while (list($index, $pid) = each($tbl)) {
$pid = trim($pid);
if (!is_numeric($pid)) {
continue;
}
if ($pid < 10) {
continue;
}
echo "Starting......: " . date("H:i:s") . " samba reloading winbindd pid: {$pid}\n";
unix_system_HUP($pid);
}
}
示例13: stop
function stop($nopid = false)
{
$users = new usersMenus();
$unix = new unix();
if (!$users->ETTERCAP_INSTALLED) {
echo "ArpSpoofing.........: [STOP]: Ettercap, not installed...\n";
return;
}
$kill = $unix->find_program("kill");
if (!$nopid) {
$me = basename(__FILE__);
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . ".pid";
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, $me)) {
$time = $unix->PROCCESS_TIME_MIN($pid);
echo "ArpSpoofing.........: [START]: Ettercap, Already start instance executed PID {$pid} since {$time}Mn...\n";
return;
}
@file_put_contents($pidfile, getmypid());
}
$pids = GetAllPids();
if (count($pids) == 0) {
echo "ArpSpoofing.........: [STOP]: Ettercap, no instance in memory\n";
return;
}
while (list($pid, $ruleid) = each($pids)) {
echo "ArpSpoofing.........: [STOP]: stopping smoothly pid {$pid} for rule {$ruleid}\n";
unix_system_HUP($pid);
unix_system_kill($pid);
}
for ($i = 0; $i < 10; $i++) {
$pids = GetAllPids();
while (list($pid, $ruleid) = each($pids)) {
if (!$unix->process_exists($pid)) {
echo "ArpSpoofing.........: [STOP]: pid {$pid} for rule {$ruleid} stopped...\n";
unset($pids[$pid]);
continue;
}
echo "ArpSpoofing.........: [STOP]: pid {$pid} for rule {$ruleid} still alive...\n";
}
if (count($pids) == 0) {
break;
}
sleep(1);
}
$pids = GetAllPids();
if (count($pids) > 0) {
reset($pids);
while (list($pid, $ruleid) = each($pids)) {
echo "ArpSpoofing.........: [STOP]: pid {$pid} for rule {$ruleid} force stopping...\n";
unix_system_kill_force($pid);
}
}
$pids = GetAllPids();
if (count($pids) > 0) {
reset($pids);
while (list($pid, $ruleid) = each($pids)) {
echo "ArpSpoofing.........: [STOP]: pid {$pid} for rule {$ruleid} failed stopping...\n";
}
}
echo "ArpSpoofing.........: [STOP]: DONE...\n";
}
示例14: reload
function reload($aspid = false)
{
$unix = new unix();
$sock = new sockets();
$Masterbin = $unix->find_program("clamd");
if (!is_file($Masterbin)) {
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]}, clamd not installed\n";
}
return;
}
if (!$aspid) {
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . "." . __FUNCTION__ . ".pid";
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
$time = $unix->PROCCESS_TIME_MIN($pid);
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} Already Artica task running PID {$pid} since {$time}mn\n";
}
return;
}
@file_put_contents($pidfile, getmypid());
}
$pid = PID_NUM();
$kill = $unix->find_program("kill");
if ($unix->process_exists($pid)) {
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} service reloading PID {$pid} running since {$timepid}Mn...\n";
}
unix_system_HUP($pid);
return;
}
if ($GLOBALS["OUTPUT"]) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["TITLENAME"]} not running\n";
}
}
示例15: reload
function reload()
{
$unix = new unix();
$kill = $unix->find_program("kill");
$tb = explode("\n", @file_get_contents("/var/run/fetchmail.pid"));
$isrun = false;
while (list($i, $pid) = each($tb)) {
if (trim($pid) == null) {
continue;
}
if (!preg_match("#([0-9]+)#", $pid, $re)) {
continue;
}
$pid = $re[1];
if (!$unix->process_exists($pid)) {
continue;
}
$isrun = true;
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["SERVICE_NAME"]} reload pid {$pid}\n";
unix_system_HUP($pid);
}
if (!$isrun) {
echo "Starting......: " . date("H:i:s") . " [INIT]: {$GLOBALS["SERVICE_NAME"]} is not running, start it\n";
start(true);
}
}