From 535a69cff3cd79395c2afd6b62f00f4b31a75a03 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Mon, 02 Sep 2013 11:45:43 -0400
Subject: [PATCH] - Improved dkim support. - Added dkim installation to installer. - Added backup filesize in backup cronjob.

---
 install/lib/installer_base.lib.php                |   15 ++++++++++++++-
 server/plugins-available/mail_plugin_dkim.inc.php |    2 +-
 install/tpl/server.ini.master                     |    2 +-
 server/lib/classes/cron.d/500-backup.inc.php      |    4 ++--
 interface/web/admin/form/server_config.tform.php  |    2 +-
 5 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index e43d0bb..2781322 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -1048,7 +1048,20 @@
 		// Add the clamav user to the amavis group
 		exec('adduser clamav amavis');
 
-
+		// Create the director for DKIM-Keys
+		mkdir("/var/lib/amavis/dkim",0750);
+		// get shell-user for amavis
+		$amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd');
+		if(!empty($amavis_user)) {
+			$amavis_user=rtrim($amavis_user,":");
+			exec('chown '.$amavis_user.'/var/lib/amavis/dkim');
+		}
+		// get shell-group for amavis
+		$amavis_group=exec('grep -o "^amavis:\|^vscan:" /etc/group');
+		if(!empty($amavis_group)) {
+			$amavis_group=rtrim($amavis_group,":");
+			exec('chgrp '.$amavis_group.'/var/lib/amavis/dkim');
+		}
 	}
 
 	public function configure_spamassassin() {
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index d22a072..90832af 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -28,7 +28,7 @@
 module=postfix_mysql
 maildir_path=/var/vmail/[domain]/[localpart]
 homedir_path=/var/vmail
-dkim_path=/etc/postfix/dkim
+dkim_path=/var/lib/amavis/dkim
 pop3_imap_daemon=courier
 mail_filter_syntax=maildrop
 mailuser_uid=5000
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index 0bc490f..05764fc 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -278,7 +278,7 @@
 				'dkim_path' => array(
 						'datatype' => 'VARCHAR',
 						'formtype' => 'TEXT',
-						'default' => '/var/db/dkim',
+						'default' => '/var/lib/amavis/dkim',
 						'validators'    => array (  0 => array ('type'  => 'CUSTOM',
 																'class' => 'validate_dkim',
 																'function' => 'check_dkim_path',
diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php
index 39c721c..7231d7f 100644
--- a/server/lib/classes/cron.d/500-backup.inc.php
+++ b/server/lib/classes/cron.d/500-backup.inc.php
@@ -121,7 +121,7 @@
                             //* Insert web backup record in database
                             //$insert_data = "(server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",".$web_id.",'web','".$backup_mode."',".time().",'".$app->db->quote($web_backup_file)."')";
                             //$app->dbmaster->datalogInsert('web_backup', $insert_data, 'backup_id');
-                            $sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",".$web_id.",'web','".$backup_mode."',".time().",'".$app->db->quote($web_backup_file)."')";
+			    $sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename,filesize) VALUES (".$conf['server_id'].",".$web_id.",'web','".$backup_mode."',".time().",'".$app->db->quote($web_backup_file)."','".formatBytes(filesize($web_backup_dir.'/'.$web_backup_file))."')";
                             $app->db->query($sql);
                             if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql);
                         } else {
@@ -227,7 +227,7 @@
                                 //* Insert web backup record in database
                                 //$insert_data = "(server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",$web_id,'mysql','sqlgz',".time().",'".$app->db->quote($db_backup_file).".gz')";
                                 //$app->dbmaster->datalogInsert('web_backup', $insert_data, 'backup_id');
-                                $sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename) VALUES (".$conf['server_id'].",$web_id,'mysql','sqlgz',".time().",'".$app->db->quote($db_backup_file).".gz')";
+                                $sql = "INSERT INTO web_backup (server_id,parent_domain_id,backup_type,backup_mode,tstamp,filename,filesize) VALUES (".$conf['server_id'].",$web_id,'mysql','sqlgz',".time().",'".$app->db->quote($db_backup_file).".gz','".formatBytes(filesize($db_backup_dir.'/'.$db_backup_file))."')";
                                 $app->db->query($sql);
                                 if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql);
 
diff --git a/server/plugins-available/mail_plugin_dkim.inc.php b/server/plugins-available/mail_plugin_dkim.inc.php
index 0bea953..8d81339 100644
--- a/server/plugins-available/mail_plugin_dkim.inc.php
+++ b/server/plugins-available/mail_plugin_dkim.inc.php
@@ -105,7 +105,7 @@
 				$check=false;
                		}
 		} else {
-			$app->log('Unable to write DKIM settings; Check your config!',LOGLEVEL_ERROR);
+			$app->log('Unable to write DKIM settings. Check your config!',LOGLEVEL_ERROR);
 			$check=false;
 		}
 		return $check;

--
Gitblit v1.9.1