spamd 0.1.0 SpamD
Services
spamd.xml
SpamD Settings /pkg.php?xml=spamd.xml SpamD Whitelist /pkg.php?xml=spamd_whitelist.xml http://www.pfsense.com/packages/config/spamd.tgz ['installedpackages']['spamd']['config'] Provider Name provider_name Description provider_description Provider Name provider_name Enter the name of the source input Provider Type provider_type Select the Provider Type select black Provider Description provider_description Enter the description for this item input Reject message reject_message Enter the message to display to emailing parties that are on this providers list input Provider Method provider_method Select the Provider Metho select http Provider URL or Filename provider_url Enter the URL to the provider. textarea function sync_package() { conf_mount_rw(); config_lock(); global $config; $fd = fopen("/usr/local/etc/spamd.conf","w"); /* all header */ fwrite($fd, "# this file was automatically generated by the pfSense\n"); fwrite($fd, "# package management system\n\n"); fwrite($fd, "all:whitelist:\\\n\t"); foreach($config['installedpackages']['spamd']['config'] as $spamd) { fwrite($fd, ":" . $spamd['provider_name']); } fwrite($fd, "# begin of whitelist\n"); fwrite($fd, ":whitelist:\\ \n"); fwrite($fd, ":white:\\ \n"); fwrite($fd, ":file=/var/mail/whitelist.txt\n\n"); /* loop through each item and write out its configuration */ fwrite($fd, "\n# begin of user created entries\n"); foreach($config['installedpackages']['spamd']['config'] as $spamd) { fwrite($fd, $spamd['provider_name'] . ":\\ \n"); fwrite($fd, ":" . $spamd['provider_method'] . ":\\ \n"); fwrite($fd, ":msg=\"" . $spamd['reject_message'] . "\":\\ \n"); fwrite($fd, ":" . $spamd['provider_method'] . ":\\ \n"); fwrite($fd, ":file=" . $spamd['provider_url'] . ":\n\n"); } fwrite($fd, ":\n"); fclose($fd); $fd = fopen("/var/mail/whitelist.txt","w"); foreach($config['installedpackages']['spamd-whitelist']['config'] as $spamd) { fwrite($fd, $spamd['ip'] . "\n"); } fclose($fd); conf_mount_ro(); config_unlock(); } sync_package(); sync_package(); system("touch /var/mail/whitelist.txt 2>/dev/null"); system("/usr/libexec/spamd-setup 2>/dev/null &"); system("/usr/libexec/spamlogd 2>/dev/null &"); $fd = fopen("/usr/local/etc/rc.d/spamd","w"); fwrite($fd, "#!/bin/sh\n\n"); fwrite($fd, "/usr/libexec/spamd-setup &\n"); fwrite($fd, "/usr/libexec/spamlogd &\n"); fclose($fd); system("chmod a+x /usr/local/etc/rc.d/spamd 2>/dev/null"); system("/usr/local/etc/rc.d/spamd 2>/dev/null");