diff --git a/server/mods-available/mail_module.inc.php b/server/mods-available/mail_module.inc.php index 14cbbb24e4262aee504da7db97c6d99112e12025..e13839d344fe0ae8245e3bf22f521b37b00212eb 100644 --- a/server/mods-available/mail_module.inc.php +++ b/server/mods-available/mail_module.inc.php @@ -113,6 +113,7 @@ class mail_module { $app->modules->registerTableHook('spamfilter_wblist', 'mail_module', 'process'); $app->services->registerService('rspamd', 'mail_module', 'restartRspamd'); + $app->services->registerService('postfix', 'mail_module', 'restartPostfix'); } /* @@ -192,6 +193,22 @@ class mail_module { } return $retval; } + + function restartPostfix($action = 'reload') { + global $app; + + $app->uses('system'); + + $daemon = 'postfix'; + + $retval = array('output' => '', 'retval' => 0); + if($action == 'restart') { + exec($app->system->getinitcommand($daemon, 'restart').' 2>&1', $retval['output'], $retval['retval']); + } else { + exec($app->system->getinitcommand($daemon, 'reload').' 2>&1', $retval['output'], $retval['retval']); + } + return $retval; + } } // end class ?>