diff options
author | marcelloc <marcellocoutinho@gmail.com> | 2012-02-16 20:40:44 -0200 |
---|---|---|
committer | marcelloc <marcellocoutinho@gmail.com> | 2012-02-16 20:40:44 -0200 |
commit | 7b5250ddad2ae8502f159f5c812fe43655f2be36 (patch) | |
tree | f16230e243e1c8d23418c7dd4649c3c6ea78de3f /config/postfix | |
parent | b4b24f1dcaa4249d52faf1cb7ba4f1d192779477 (diff) | |
download | pfsense-packages-7b5250ddad2ae8502f159f5c812fe43655f2be36.tar.gz pfsense-packages-7b5250ddad2ae8502f159f5c812fe43655f2be36.tar.bz2 pfsense-packages-7b5250ddad2ae8502f159f5c812fe43655f2be36.zip |
postfix - change local file recipients to url fetch with cron
Diffstat (limited to 'config/postfix')
-rw-r--r-- | config/postfix/postfix.inc | 11 | ||||
-rw-r--r-- | config/postfix/postfix_recipients.xml | 33 |
2 files changed, 29 insertions, 15 deletions
diff --git a/config/postfix/postfix.inc b/config/postfix/postfix.inc index 831e6bb2..5fde243e 100644 --- a/config/postfix/postfix.inc +++ b/config/postfix/postfix.inc @@ -56,14 +56,17 @@ function sync_relay_recipients($via_cron="cron"){ $ad_export="/usr/local/etc/postfix/adexport.pl"; $postfix_enabled=$config['installedpackages']['postfix']['config'][0]['enable_postfix']; if (is_array($config['installedpackages']['postfixrecipients']['config'])) { - $postfix_recipients_config=$config['installedpackages']['postfixrecipients']['config'][0]; - if($postfix_recipients_config['location'] && file_exists($postfix_recipients_config['location'])) - $relay_recipients .= file_get_contents($postfix_recipients_config['location']); + $relay_ldap_recipients=""; + $postfix_recipients_config=$config['installedpackages']['postfixrecipients']['config'][0]; + if($postfix_recipients_config['enable_url'] && is_URL($postfix_recipients_config['custom_url'])){ + print "extracting from ".$postfix_recipients_config['custom_url']."..."; + $relay_recipients .= file_get_contents($postfix_recipients_config['custom_url']); + print "(". count(file($postfix_recipients_config['custom_url'])).")\n"; + } if($postfix_recipients_config['custom_recipients']) $relay_recipients .= px_text_area_decode($postfix_recipients_config['custom_recipients']); if($postfix_recipients_config['enable_ldap']){ #validate cront job - $relay_ldap_recipients=""; if ($via_cron == "gui"){ #running via pfsense gui, not time for ldap fetch. $ldap_recipients='/usr/local/etc/postfix/relay_ldap_recipients.txt'; diff --git a/config/postfix/postfix_recipients.xml b/config/postfix/postfix_recipients.xml index 5b46e32c..97e39fb2 100644 --- a/config/postfix/postfix_recipients.xml +++ b/config/postfix/postfix_recipients.xml @@ -97,6 +97,17 @@ </tabs> <fields> <field> + <name>Get Valid recipients update frequency</name> + <type>listtopic</type> + </field> + <field> + <fielddescr>Frequency</fielddescr> + <fieldname>freq</fieldname> + <description>Wait time between each update HINT 30m(30 minutes), 1h(one hour), 1d(one day)</description> + <type>input</type> + <size>15</size> + </field> + <field> <name>Get Valid recipients from Active Directory</name> <type>listtopic</type> </field> @@ -108,13 +119,6 @@ Before using LDAP fetch you must install p5-perl-ldap package(hint: <strong>/usr/sbin/pkg_add -r p5-perl-ldap</strong>)]]></description> </field> <field> - <fielddescr>Frequency</fielddescr> - <fieldname>freq</fieldname> - <description>Wait time between each fetch HINT 30m(30 minutes), 1h(one hour), 1d(one day)</description> - <type>input</type> - <size>15</size> - </field> - <field> <fielddescr><![CDATA[<strong>HINTS</strong><br>Hostname:<br>dc1.mysite.com<br><br>Domain:<br>dc=mysite,dc=com<br><br>Username:<br>cn=antispam,cn=Users<br>]]></fielddescr> <fieldname>none</fieldname> <type>rowhelper</type> @@ -146,12 +150,19 @@ </rowhelper> </field> <field> - <name>Get Valid recipients from local file</name> + <name>Get Valid recipients from a clear text url</name> <type>listtopic</type> </field> <field> - <fielddescr>Location</fielddescr> - <name>location</name> + <fielddescr>Enable URL fetch</fielddescr> + <fieldname>enable_url</fieldname> + <type>checkbox</type> + <description><![CDATA[Extract valid email addresses from external URL.<br> + The file must return a list with valid emails in clear text format(hint: <strong>http://intranet.mycompany.com/valid_emails.txt</strong>)]]></description> + </field> + <field> + <fielddescr>URL</fielddescr> + <fieldname>custom_url</fieldname> <type>input</type> <size>80</size> </field> @@ -164,7 +175,7 @@ <fieldname>custom_recipients</fieldname> <description><![CDATA[Paste your valid recipients here, one per line. <strong>HINT user@mycompany.com OK</strong>]]></description> <type>textarea</type> - <cols>60</cols> + <cols>70</cols> <rows>15</rows> <encoding>base64</encoding> </field> |