From 6332aca4c482615a2168b3afad3170954b9f36a6 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 20 Jan 2016 04:58:24 -0500 Subject: [PATCH] Merge branch 'darkalex/ispconfig3-mailsec-sendas' into stable-3.1 --- interface/web/mail/lib/lang/de_mail_forward.lng | 2 ++ install/sql/ispconfig3.sql | 1 + install/sql/incremental/upd_dev_collection.sql | 6 ++++-- interface/web/mail/lib/lang/en_mail_forward.lng | 2 ++ interface/web/mail/templates/mail_alias_edit.htm | 6 ++++++ interface/web/mail/lib/lang/en_mail_alias.lng | 2 ++ interface/web/mail/templates/mail_forward_edit.htm | 6 ++++++ install/tpl/mysql-virtual_sender_login_maps.cf.master | 2 +- interface/web/mail/form/mail_forward.tform.php | 6 ++++++ interface/web/mail/lib/lang/de_mail_alias.lng | 2 ++ interface/web/mail/form/mail_alias.tform.php | 6 ++++++ 11 files changed, 38 insertions(+), 3 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 0cbd2a8..624d748 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -193,11 +193,13 @@ ALTER TABLE `openvz_template` CHANGE `vmguarpages` `vmguarpages` varchar(255) DEFAULT '65536:unlimited'; ALTER TABLE `openvz_template` CHANGE `privvmpages` `privvmpages` varchar(255) DEFAULT '131072:139264'; - CREATE TABLE `ftp_traffic` ( `hostname` varchar(255) NOT NULL, `traffic_date` date NOT NULL, `in_bytes` bigint(32) unsigned NOT NULL, `out_bytes` bigint(32) unsigned NOT NULL, PRIMARY KEY (`hostname`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; \ No newline at end of file +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +ALTER TABLE `mail_forwarding` ADD COLUMN `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n' AFTER `active`; +UPDATE `mail_forwarding` SET `allow_send_as` = 'y' WHERE `type` = 'alias'; diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 5053b9b..f77bbf4 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -814,6 +814,7 @@ `destination` text, `type` enum('alias','aliasdomain','forward','catchall') NOT NULL default 'alias', `active` enum('n','y') NOT NULL DEFAULT 'n', + `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n', `greylisting` enum('n','y' ) NOT NULL DEFAULT 'n', PRIMARY KEY (`forwarding_id`), KEY `server_id` (`server_id`,`source`), diff --git a/install/tpl/mysql-virtual_sender_login_maps.cf.master b/install/tpl/mysql-virtual_sender_login_maps.cf.master index ad2d758..5b7f144 100644 --- a/install/tpl/mysql-virtual_sender_login_maps.cf.master +++ b/install/tpl/mysql-virtual_sender_login_maps.cf.master @@ -1,5 +1,5 @@ user = {mysql_server_ispconfig_user} password = {mysql_server_ispconfig_password} dbname = {mysql_server_database} -query = SELECT destination FROM mail_forwarding WHERE source = '%s' AND active = 'y' AND type = 'alias' AND server_id = {server_id} UNION SELECT email FROM mail_user WHERE email = '%s' AND disablesmtp = 'n' AND server_id = {server_id}; +query = SELECT destination FROM mail_forwarding WHERE source = '%s' AND active = 'y' AND allow_send_as = 'y' AND server_id = {server_id} UNION SELECT email FROM mail_user WHERE email = '%s' AND disablesmtp = 'n' AND server_id = {server_id}; hosts = {mysql_server_ip} \ No newline at end of file diff --git a/interface/web/mail/form/mail_alias.tform.php b/interface/web/mail/form/mail_alias.tform.php index d859895..a004203 100644 --- a/interface/web/mail/form/mail_alias.tform.php +++ b/interface/web/mail/form/mail_alias.tform.php @@ -124,6 +124,12 @@ 'default' => 'y', 'value' => array(0 => 'n', 1 => 'y') ), + 'allow_send_as' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(1 => 'y', 0 => 'n') + ), 'greylisting' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'CHECKBOX', diff --git a/interface/web/mail/form/mail_forward.tform.php b/interface/web/mail/form/mail_forward.tform.php index 520f18d..3c89150 100644 --- a/interface/web/mail/form/mail_forward.tform.php +++ b/interface/web/mail/form/mail_forward.tform.php @@ -118,6 +118,12 @@ 'default' => 'y', 'value' => array(0 => 'n', 1 => 'y') ), + 'allow_send_as' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(1 => 'y', 0 => 'n') + ), 'greylisting' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'CHECKBOX', diff --git a/interface/web/mail/lib/lang/de_mail_alias.lng b/interface/web/mail/lib/lang/de_mail_alias.lng index 4115780..211f006 100644 --- a/interface/web/mail/lib/lang/de_mail_alias.lng +++ b/interface/web/mail/lib/lang/de_mail_alias.lng @@ -11,5 +11,7 @@ $wb['domain_txt'] = 'Domain'; $wb['duplicate_email_alias_txt'] = 'Dieser E-Mail Alias existiert bereits.'; $wb['source_txt'] = 'Alias'; +$wb['send_as_txt'] = 'Senden als'; +$wb['send_as_exp'] = 'Ziel erlauben, den alias als Absender zu benutzen'; $wb['greylisting_txt'] = 'Aktiviere Greylisting'; ?> diff --git a/interface/web/mail/lib/lang/de_mail_forward.lng b/interface/web/mail/lib/lang/de_mail_forward.lng index 15d0845..f10d789 100644 --- a/interface/web/mail/lib/lang/de_mail_forward.lng +++ b/interface/web/mail/lib/lang/de_mail_forward.lng @@ -7,5 +7,7 @@ $wb['domain_txt'] = 'Domain'; $wb['source_txt'] = 'Quell E-Mail Adresse'; $wb['email_error_isemail'] = 'Bitte geben Sie eine gültige E-Mail Adresse an.'; +$wb['send_as_txt'] = 'Senden als'; +$wb['send_as_exp'] = 'Ziel erlauben, die Adresse als Absender zu nutzen (Nur, falls das Ziel intern ist)'; $wb['greylisting_txt'] = 'Aktiviere greylisting'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_alias.lng b/interface/web/mail/lib/lang/en_mail_alias.lng index 6e9d828..8032607 100644 --- a/interface/web/mail/lib/lang/en_mail_alias.lng +++ b/interface/web/mail/lib/lang/en_mail_alias.lng @@ -11,5 +11,7 @@ $wb['domain_txt'] = 'Domain'; $wb["duplicate_email_alias_txt"] = 'This email alias does already exist.'; $wb["source_txt"] = 'Alias'; +$wb['send_as_txt'] = 'Send as'; +$wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; $wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_forward.lng b/interface/web/mail/lib/lang/en_mail_forward.lng index 0704650..adab113 100644 --- a/interface/web/mail/lib/lang/en_mail_forward.lng +++ b/interface/web/mail/lib/lang/en_mail_forward.lng @@ -7,5 +7,7 @@ $wb['domain_txt'] = 'Domain'; $wb["source_txt"] = 'Source Email'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['send_as_txt'] = 'Send as'; +$wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/templates/mail_alias_edit.htm b/interface/web/mail/templates/mail_alias_edit.htm index 07d781c..0487926 100644 --- a/interface/web/mail/templates/mail_alias_edit.htm +++ b/interface/web/mail/templates/mail_alias_edit.htm @@ -28,6 +28,12 @@ </div> </div> <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='send_as_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='allow_send_as'} <small>{tmpl_var name='send_as_exp'}</small> + </div> + </div> + <div class="form-group"> <label class="col-sm-3 control-label">{tmpl_var name='greylisting_txt'}</label> <div class="col-sm-9"> {tmpl_var name='greylisting'} diff --git a/interface/web/mail/templates/mail_forward_edit.htm b/interface/web/mail/templates/mail_forward_edit.htm index c6a2de8..7c8c8b9 100644 --- a/interface/web/mail/templates/mail_forward_edit.htm +++ b/interface/web/mail/templates/mail_forward_edit.htm @@ -26,6 +26,12 @@ </div> </div> <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='send_as_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='allow_send_as'} <small>{tmpl_var name='send_as_exp'}</small> + </div> + </div> + <div class="form-group"> <label class="col-sm-3 control-label">{tmpl_var name='greylisting_txt'}</label> <div class="col-sm-9"> {tmpl_var name='greylisting'} -- Gitblit v1.9.1