diff --git a/debbuild/sqlgreywebinterface/debian/postinst b/debbuild/sqlgreywebinterface/debian/postinst index e350908b..212c70f6 100644 --- a/debbuild/sqlgreywebinterface/debian/postinst +++ b/debbuild/sqlgreywebinterface/debian/postinst @@ -9,6 +9,7 @@ case "$1" in configure) sed -i '/^$db_user/ c\$db_user = "sqlgrey";' /var/www/html/sgwi/includes/config.inc.php sed -i "/^\$db_pass/ c\$efa_array = preg_grep('/^SQLGREYSQLPWD/', file('/etc/eFa/SQLGrey-Config'));\nforeach(\$efa_array as \$num => \$line) {\n if (\$line) {\n \$db_pass = chop(preg_replace('/^SQLGREYSQLPWD:(.*)/','\$1',\$line));\n }\n}" /var/www/html/sgwi/includes/config.inc.php + sed -i "/^\$db_hostname/ c\$efa_array = preg_grep('/^SQLGREYSQLHOST/', file('/etc/eFa/SQLGrey-Config'));\nforeach(\$efa_array as \$num => \$line) {\n if (\$line) {\n \$db_hostname = chop(preg_replace('/^SQLGREYSQLHOST:(.*)/','\$1',\$line));\n }\n}" /var/www/html/sgwi/includes/config.inc.php ;; abort-upgrade|abort-remove|abort-deconfigure) diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/CustomAction.pm b/rpmbuild/SOURCES/eFa-4.0.5/eFa/CustomAction.pm similarity index 99% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/CustomAction.pm rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/CustomAction.pm index 343561d2..e9a9289e 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/CustomAction.pm +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/CustomAction.pm @@ -1,6 +1,6 @@ # # CustomAction.pm -# Version 20210130 +# Version 20230713 # +--------------------------------------------------------------------+ # Copyright (C) 2012~2022 http://www.efa-project.org # @@ -86,7 +86,6 @@ sub EFACreateToken { my ($message) = @_; my($dbh, $sth, $sql); my($db_name) = 'efa'; - my($db_host) = 'localhost'; my($db_user) = 'efa'; my($fh); my($pw_config) = '/etc/eFa/eFa-Config'; @@ -98,6 +97,10 @@ sub EFACreateToken { my($db_pass) = grep(/^EFASQLPWD/,<$fh>); $db_pass =~ s/EFASQLPWD://; $db_pass =~ s/\n//; + seek $fh, 0, 0; + my($db_host) = grep(/^EFASQLHOST/,<$fh>); + $db_host =~ s/EFASQLHOST://; + $db_host =~ s/\n//; close($fh); # Connect to the database $dbh = DBI->connect("DBI:mysql:database=$db_name;host=$db_host", diff --git a/rpmbuild/SOURCES/eFa-4.0.5/eFa/MailWatchConf.pm b/rpmbuild/SOURCES/eFa-4.0.5/eFa/MailWatchConf.pm new file mode 100644 index 00000000..f61132aa --- /dev/null +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/MailWatchConf.pm @@ -0,0 +1,48 @@ +# +# MailWatch for MailScanner +# MailWatchConf.pm +# Version 20230714 + +package MailScanner::CustomConfig; + +use warnings; +use strict; + +# Change the values below to match the MailWatch database settings as set in conf.php +my ($db_name) = 'mailscanner'; +my ($db_user) = 'mailwatch'; +my ($fh); +my ($db_config) = '/etc/eFa/MailWatch-Config'; +open($fh, "<", $db_config); +if(!$fh) { + MailScanner::Log::WarnLog("Unable to open %s to retrieve db settings", $db_config); + return; +} +my ($db_pass) = grep(/^MAILWATCHSQLPWD/,<$fh>); +$db_pass =~ s/MAILWATCHSQLPWD://; +$db_pass =~ s/\n//; +seek $fh, 0, 0; +my ($db_host) = grep(/^MAILWATCHSQLHOST/,<$fh>); +$db_host =~ s/MAILWATCHSQLHOST://; +$db_host =~ s/\n//; +close($fh); + +# Change the value below for SQLSpamSettings.pm (default = 15) +my ($ss_refresh_time) = 15; # Time in minutes before lists are refreshed + +# Change the value below for SQLBlackWhiteList.pm (default = 15) +my ($bwl_refresh_time) = 15; # Time in minutes before lists are refreshed + + +############################### +# don't touch below this line # +############################### + +sub mailwatch_get_db_name { return $db_name }; +sub mailwatch_get_db_host { return $db_host }; +sub mailwatch_get_db_user { return $db_user }; +sub mailwatch_get_db_password { return $db_pass }; +sub mailwatch_get_BWL_refresh_time { return $bwl_refresh_time }; +sub mailwatch_get_SS_refresh_time { return $ss_refresh_time }; + +1; diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Backup-cron b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Backup-cron similarity index 97% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Backup-cron rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Backup-cron index e732f3e5..5bccf73a 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Backup-cron +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Backup-cron @@ -24,6 +24,7 @@ action="$1" # Variables #----------------------------------------------------------------# BACKUPDIR="/var/eFa/backup" +MYSQLHOST="`grep MYSQLHOST /etc/eFa/MySQL-Config | sed 's/.*://'`" MYSQLROOTPWD="`grep MYSQLROOTPWD /etc/eFa/MySQL-Config | sed 's/.*://'`" TMPDIR="/var/eFa/backup/tmp" DAYSTOKEEP=5 @@ -64,7 +65,7 @@ function start_backup() # Perform SQL Dump mkdir -p $WORKINGDIR/sql - mysqldump --user=root --password=$MYSQLROOTPWD --all-databases --events > $WORKINGDIR/sql/backup.sql + mysqldump --user=root --host=$MYSQLHOST --password=$MYSQLROOTPWD --all-databases --events --result-file=$WORKINGDIR/sql/backup.sql # Backup Postfix Settings mkdir -p $WORKINGDIR/etc/postfix/ssl diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Backup.cron b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Backup.cron similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Backup.cron rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Backup.cron diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Configure b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Configure similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Configure rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Configure diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Daily-DMARC b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Daily-DMARC similarity index 96% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Daily-DMARC rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Daily-DMARC index 99074dc2..8099a97f 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Daily-DMARC +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Daily-DMARC @@ -20,7 +20,7 @@ set -e # Database and History File Info -DBHOST='localhost' +DBHOST="`grep ^DMARCSQLHOST /etc/eFa/openDMARC-Config | sed 's/^.*://'`" DBUSER='opendmarc' DBPASS="`grep ^DMARCSQLPWD /etc/eFa/openDMARC-Config | sed 's/^.*://'`" DBNAME='opendmarc' diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Expand b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Expand similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Expand rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Expand diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Monitor b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Monitor similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Monitor rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Monitor diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Monitor-cron b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Monitor-cron similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Monitor-cron rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Monitor-cron diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Tokens.cron b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Tokens.cron similarity index 95% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Tokens.cron rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Tokens.cron index e89832ba..0eeaedcb 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Tokens.cron +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Tokens.cron @@ -30,7 +30,6 @@ my($user) = $ENV{'USER'}; setlogsock('unix'); my($db_name) = 'efa'; -my($db_host) = 'localhost'; my($db_user) = 'efa'; # Issue #66 Grab Passwords from eFa-Config my($fh); @@ -45,6 +44,10 @@ if (!$fh) { my($db_pass) = grep(/^EFASQLPWD/,<$fh>); $db_pass =~ s/EFASQLPWD://; $db_pass =~ s/\n//; +seek $fh, 0, 0; +my($db_host) = grep(/^EFASQLHOST/,<$fh>); +$db_host =~ s/EFASQLHOST://; +$db_host =~ s/\n//; close($fh); my($sql,$sth,$dbh); diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Weekly-DMARC b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Weekly-DMARC similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-Weekly-DMARC rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-Weekly-DMARC diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-learn.php b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-learn.php similarity index 97% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-learn.php rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-learn.php index 3a6bf406..9ce6cb6d 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-learn.php +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-learn.php @@ -79,13 +79,20 @@ } } - $efa_config = preg_grep('/^EFASQLPWD/', file('/etc/eFa/eFa-Config')); + $efa_config = preg_grep('/^EFASQL/', file('/etc/eFa/eFa-Config')); + $efa_pattern = array( + 0 => '/^EFASQLPWD:(.*)/', + 1 => '/^EFASQLHOST:(.*)/', + ); + $tmp = array(); foreach($efa_config as $num => $line) { if ($line) { - $db_pass_tmp = chop(preg_replace('/^EFASQLPWD:(.*)/','$1', $line)); + $tmp[] = chop(preg_replace($efa_pattern, '$1', $line)); } } - $efadb = new mysqli('localhost', 'efa', $db_pass_tmp, 'efa'); + $db_pass_tmp = $tmp[0]; + $db_host_tmp = $tmp[1]; + $efadb = new mysqli($db_host_tmp, 'efa', $db_pass_tmp, 'efa'); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); $sql = "SELECT id,token FROM tokens WHERE mid = '$mid'"; $result = $efadb->query($sql); @@ -402,4 +409,4 @@ function gmp_convert($num, $base_a, $base_b) function expandIPv6($ip) { $hex = bin2hex(inet_pton($ip)); return implode(':', str_split($hex, 4)); -} \ No newline at end of file +} diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-logrotate b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-logrotate similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-logrotate rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-logrotate diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-release.php b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-release.php similarity index 92% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-release.php rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-release.php index 87e65943..67b32b75 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa-release.php +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa-release.php @@ -46,13 +46,20 @@ header('Location: login.php?error=pagetimeout'); die(); } - $efa_config = preg_grep('/^EFASQLPWD/', file('/etc/eFa/eFa-Config')); + $efa_config = preg_grep('/^EFASQL/', file('/etc/eFa/eFa-Config')); + $efa_pattern = array( + 0 => '/^EFASQLPWD:(.*)/', + 1 => '/^EFASQLHOST:(.*)/', + ); + $tmp = array(); foreach($efa_config as $num => $line) { if ($line) { - $db_pass_tmp = chop(preg_replace('/^EFASQLPWD:(.*)/','$1', $line)); + $tmp[] = chop(preg_replace($efa_pattern, '$1', $line)); } } - $efadb = new mysqli('localhost', 'efa', $db_pass_tmp, 'efa'); + $db_pass_tmp = $tmp[0]; + $db_host_tmp = $tmp[1]; + $efadb = new mysqli($db_host_tmp, 'efa', $db_pass_tmp, 'efa'); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); $sql = "SELECT id,token FROM tokens WHERE mid = '$mid'"; $result = $efadb->query($sql); diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa.fc b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa.fc similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa.fc rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa.fc diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa.te b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa.te similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa.te rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa.te diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa8.te b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa8.te similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFa8.te rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFa8.te diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFahyperv.te b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFahyperv.te similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFahyperv.te rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFahyperv.te diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFaqemu.te b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFaqemu.te similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFaqemu.te rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFaqemu.te diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/eFavmtools.te b/rpmbuild/SOURCES/eFa-4.0.5/eFa/eFavmtools.te similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/eFavmtools.te rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/eFavmtools.te diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/efatokens.sql b/rpmbuild/SOURCES/eFa-4.0.5/eFa/efatokens.sql similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/efatokens.sql rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/efatokens.sql diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/efatokens_update.sql b/rpmbuild/SOURCES/eFa-4.0.5/eFa/efatokens_update.sql similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/efatokens_update.sql rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/efatokens_update.sql diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_apachesettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_apachesettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_apachesettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_apachesettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askcleandeliver b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askcleandeliver similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askcleandeliver rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askcleandeliver diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askdccservers b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askdccservers similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askdccservers rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askdccservers diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askhighspammailwatch b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askhighspammailwatch similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askhighspammailwatch rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askhighspammailwatch diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askmalwarepatrol b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askmalwarepatrol similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askmalwarepatrol rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askmalwarepatrol diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askmaxsize b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askmaxsize similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askmaxsize rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askmaxsize diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askmaxsizemailwatch b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askmaxsizemailwatch similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askmaxsizemailwatch rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askmaxsizemailwatch diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_asknonspam b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_asknonspam similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_asknonspam rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_asknonspam diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_asksigrules b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_asksigrules similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_asksigrules rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_asksigrules diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askspam b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askspam similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_askspam rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_askspam diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_backup b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_backup similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_backup rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_backup diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_dkim_dmarc b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_dkim_dmarc similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_dkim_dmarc rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_dkim_dmarc diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_fail2ban b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_fail2ban similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_fail2ban rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_fail2ban diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_getipsettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_getipsettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_getipsettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_getipsettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_greylisting b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_greylisting similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_greylisting rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_greylisting diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_ipsettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_ipsettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_ipsettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_ipsettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_letsencrypt b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_letsencrypt similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_letsencrypt rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_letsencrypt diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_mailsettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_mailsettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_mailsettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_mailsettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_mailwatchsettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_mailwatchsettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_mailwatchsettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_mailwatchsettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_maintenance b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_maintenance similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_maintenance rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_maintenance diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_maxmind b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_maxmind similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_maxmind rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_maxmind diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_peruser b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_peruser similarity index 86% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_peruser rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_peruser index ff435b8b..149a8166 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_peruser +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_peruser @@ -89,13 +89,15 @@ func_peruser(){ while [ $FLAG2 != "0" ]; do if [[ "$SPAMSCORE" =~ ^[1-9]|[1-9][0-9]|100$ ]]; then MAILWATCHPW=`grep MAILWATCHSQLPWD /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` - /usr/bin/mysql -u mailwatch -p"$MAILWATCHPW" mailscanner -e "ALTER TABLE \`users\` ALTER COLUMN \`spamscore\` SET DEFAULT '$SPAMSCORE';" + MAILWATCHHOST=`grep MAILWATCHSQLHOST /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` + /usr/bin/mysql -u mailwatch -h "$MAILWATCHHOST" -p"$MAILWATCHPW" mailscanner -e "ALTER TABLE \`users\` ALTER COLUMN \`spamscore\` SET DEFAULT '$SPAMSCORE';" MAILWATCHPW='' sed -i "/^Required SpamAssassin Score =/ c\Required SpamAssassin Score = &SQLSpamScores" /etc/MailScanner/MailScanner.conf FLAG2=0 elif [[ -z "$SPAMSCORE" ]]; then MAILWATCHPW=`grep MAILWATCHSQLPWD /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` - /usr/bin/mysql -u mailwatch -p"$MAILWATCHPW" mailscanner -e 'ALTER TABLE `users` ALTER COLUMN `spamscore` SET DEFAULT '4';' + MAILWATCHHOST=`grep MAILWATCHSQLHOST /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` + /usr/bin/mysql -u mailwatch -h "$MAILWATCHHOST" -p"$MAILWATCHPW" mailscanner -e 'ALTER TABLE `users` ALTER COLUMN `spamscore` SET DEFAULT '4';' MAILWATCHPW='' sed -i "/^Required SpamAssassin Score =/ c\Required SpamAssassin Score = &SQLSpamScores" /etc/MailScanner/MailScanner.conf FLAG2=0 @@ -112,13 +114,15 @@ func_peruser(){ while [ $FLAG3 != "0" ]; do if [[ "$HIGHSPAMSCORE" =~ ^[1-9]|[1-9][0-9]|100$ ]]; then MAILWATCHPW=`grep MAILWATCHSQLPWD /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` - /usr/bin/mysql -u mailwatch -p"$MAILWATCHPW" mailscanner -e "ALTER TABLE \`users\` ALTER COLUMN \`highspamscore\` SET DEFAULT '$HIGHSPAMSCORE';" + MAILWATCHHOST=`grep MAILWATCHSQLHOST /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` + /usr/bin/mysql -u mailwatch -h "$MAILWATCHHOST" -p"$MAILWATCHPW" mailscanner -e "ALTER TABLE \`users\` ALTER COLUMN \`highspamscore\` SET DEFAULT '$HIGHSPAMSCORE';" MAILWATCHPW='' sed -i "/^High SpamAssassin Score =/ c\High SpamAssassin Score = &SQLHighSpamScores" /etc/MailScanner/MailScanner.conf FLAG3=0 elif [[ -z "$SPAMSCORE" ]]; then MAILWATCHPW=`grep MAILWATCHSQLPWD /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` - /usr/bin/mysql -u mailwatch -p"$MAILWATCHPW" mailscanner -e 'ALTER TABLE `users` ALTER COLUMN `highspamscore` SET DEFAULT '7';' + MAILWATCHHOST=`grep MAILWATCHSQLHOST /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` + /usr/bin/mysql -u mailwatch -h "$MAILWATCHHOST" -p"$MAILWATCHPW" mailscanner -e 'ALTER TABLE `users` ALTER COLUMN `highspamscore` SET DEFAULT '7';' MAILWATCHPW='' sed -i "/^High SpamAssassin Score =/ c\High SpamAssassin Score = &SQLHighSpamScores" /etc/MailScanner/MailScanner.conf FLAG3=0 @@ -150,4 +154,4 @@ func_peruser(){ done fi } -# +---------------------------------------------------+ \ No newline at end of file +# +---------------------------------------------------+ diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_recovermariadb b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_recovermariadb similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_recovermariadb rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_recovermariadb diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_resetadmin b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_resetadmin similarity index 75% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_resetadmin rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_resetadmin index a7cec913..b983e558 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_resetadmin +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_resetadmin @@ -9,7 +9,10 @@ func_resetadmin() { echo -e "$green[eFa]$clean if it exists and give you the option to reset the password." echo -e "" - ADMINUSER=$(/usr/bin/mysql -s -N -u mailwatch -p`cat /etc/eFa/MailWatch-Config | grep MAILWATCHSQLPWD | sed 's/.*://'` mailscanner -e "select username from users where type = 'A' limit 1") + MAILWATCHPW=`grep MAILWATCHSQLPWD /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` + MAILWATCHHOST=`grep MAILWATCHSQLHOST /etc/eFa/MailWatch-Config | awk -F':' '{print $2}'` + + ADMINUSER=$(/usr/bin/mysql -s -N -u mailwatch -h $MAILWATCHHOST -p"$MAILWATCHPW" mailscanner -e "select username from users where type = 'A' limit 1") # What if there isn't an admin account? if [[ -z $ADMINUSER ]]; then @@ -24,10 +27,10 @@ func_resetadmin() { if [[ $ADMINUSER =~ ^[A-Za-z0-9]+$ ]]; then # Check for an existing user - CHECKDUPE=$(/usr/bin/mysql -s -N -u mailwatch -p`cat /etc/eFa/MailWatch-Config | grep MAILWATCHSQLPWD | sed 's/.*://'` mailscanner -e "select username from users where username = '$ADMINUSER'") + CHECKDUPE=$(/usr/bin/mysql -s -N -u mailwatch -h $MAILWATCHHOST -p"$MAILWATCHPW" mailscanner -e "select username from users where username = '$ADMINUSER'") if [[ -z $CHECKDUPE ]]; then # Create account - /usr/bin/mysql -u mailwatch -p`cat /etc/eFa/MailWatch-Config | grep MAILWATCHSQLPWD | sed 's/.*://'` mailscanner -e "INSERT into users (username,fullname,type) VALUES('$ADMINUSER','$ADMINUSER','A')" + /usr/bin/mysql -u mailwatch -h $MAILWATCHHOST -p"$MAILWATCHPW" mailscanner -e "INSERT into users (username,fullname,type) VALUES('$ADMINUSER','$ADMINUSER','A')" if [[ $? -ne 0 ]]; then echo -e "$red[ERROR]$cleanError creating new user, exiting..." pause @@ -42,7 +45,7 @@ func_resetadmin() { read YESNO if [[ $YESNO =~ ^[Yy]$ || -z $YESNO ]]; then # Promote user - /usr/bin/mysql -u mailwatch -p`cat /etc/eFa/MailWatch-Config | grep MAILWATCHSQLPWD | sed 's/.*://'` mailscanner -e "UPDATE users SET type = 'A' WHERE username='$ADMINUSER'" + /usr/bin/mysql -u mailwatch -h $MAILWATCHHOST -p"$MAILWATCHPW" mailscanner -e "UPDATE users SET type = 'A' WHERE username='$ADMINUSER'" if [[ $? -ne 0 ]]; then echo -e "$red[ERROR]$cleanError promoting new user, exiting..." pause @@ -95,7 +98,7 @@ func_resetadmin() { NEWPASS1=$(echo $NEWPASS1 | sed -e "s/'/''/g") - /usr/bin/mysql -u mailwatch -p`cat /etc/eFa/MailWatch-Config | grep MAILWATCHSQLPWD | sed 's/.*://'` mailscanner -e "UPDATE users SET password = md5('$NEWPASS1') WHERE username='$ADMINUSER'" + /usr/bin/mysql -u mailwatch -h $MAILWATCHHOST -p"$MAILWATCHPW" mailscanner -e "UPDATE users SET password = md5('$NEWPASS1') WHERE username='$ADMINUSER'" if [[ $? -ne 0 ]]; then echo -e "$red[ERROR]$cleanError resetting mailwatch password!" @@ -111,4 +114,4 @@ func_resetadmin() { pause } -# +---------------------------------------------------+ \ No newline at end of file +# +---------------------------------------------------+ diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_retention b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_retention similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_retention rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_retention diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_setipsettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_setipsettings similarity index 96% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_setipsettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_setipsettings index 1aeae5b2..3bf83e78 100644 --- a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_setipsettings +++ b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_setipsettings @@ -133,11 +133,12 @@ func_setipsettings(){ # Issue 195 -- Update MySQL database hostname fields MAILWATCHPWD=$(grep "^MAILWATCHSQLPWD" /etc/eFa/MailWatch-Config | sed 's/^.*://') + MAILWATCHHOST=$(grep "^MAILWATCHSQLHOST" /etc/eFa/MailWatch-Config | sed 's/^.*://') systemctl stop msmilter systemctl stop mailscanner - mysql -u mailwatch --password=$MAILWATCHPWD mailscanner -e "\ + mysql -u mailwatch -h $MAILWATCHHOST --password=$MAILWATCHPWD mailscanner -e "\ LOCK TABLES maillog WRITE; \ ALTER TABLE maillog MODIFY COLUMN \`last_update\` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP; \ UPDATE maillog SET hostname='$HOSTNAME.$DOMAINNAME' WHERE hostname='$OLDHOSTNAME.$OLDDOMAINNAME'; \ @@ -152,7 +153,7 @@ func_setipsettings(){ sed -i "/^ServerName\s/ c\ServerName $HOSTNAME.$DOMAINNAME:443" /etc/httpd/conf.d/ssl.conf # Issue #155 Change domainname in opendmarc reports - DBHOST='localhost' + DBHOST="`grep ^DMARCSQLHOST /etc/eFa/openDMARC-Config | sed 's/^.*://'`" DBUSER='opendmarc' DBPASS="`grep ^DMARCSQLPWD /etc/eFa/openDMARC-Config | sed 's/^.*://'`" DBNAME='opendmarc' @@ -178,4 +179,4 @@ func_setipsettings(){ echo -e "All done" pause } -# +---------------------------------------------------+ \ No newline at end of file +# +---------------------------------------------------+ diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_spamsettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_spamsettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_spamsettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_spamsettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_systemrestore b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_systemrestore similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_systemrestore rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_systemrestore diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_trustednetworks b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_trustednetworks similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_trustednetworks rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_trustednetworks diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_tunables b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_tunables similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_tunables rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_tunables diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_tunables_children b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_tunables_children similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_tunables_children rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_tunables_children diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_tunables_procdb b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_tunables_procdb similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_tunables_procdb rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_tunables_procdb diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_virussettings b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_virussettings similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_virussettings rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_virussettings diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_webmin b/rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_webmin similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/lib-eFa-Configure/func_webmin rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/lib-eFa-Configure/func_webmin diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/mysqltuner.pl b/rpmbuild/SOURCES/eFa-4.0.5/eFa/mysqltuner.pl similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/mysqltuner.pl rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/mysqltuner.pl diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/schema.mysql b/rpmbuild/SOURCES/eFa-4.0.5/eFa/schema.mysql similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/schema.mysql rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/schema.mysql diff --git a/rpmbuild/SOURCES/eFa-4.0.4/eFa/schema_update_1.4.1.mysql b/rpmbuild/SOURCES/eFa-4.0.5/eFa/schema_update_1.4.1.mysql similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/eFa/schema_update_1.4.1.mysql rename to rpmbuild/SOURCES/eFa-4.0.5/eFa/schema_update_1.4.1.mysql diff --git a/rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.0.sh b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.0.sh similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.0.sh rename to rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.0.sh diff --git a/rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.1.sh b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.1.sh similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.1.sh rename to rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.1.sh diff --git a/rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.2.sh b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.2.sh similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.2.sh rename to rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.2.sh diff --git a/rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.3.sh b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.3.sh similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.3.sh rename to rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.3.sh diff --git a/rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.4.sh b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.4.sh similarity index 100% rename from rpmbuild/SOURCES/eFa-4.0.4/updates/update-4.0.4.sh rename to rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.4.sh diff --git a/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.5.sh b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.5.sh new file mode 100644 index 00000000..439fb289 --- /dev/null +++ b/rpmbuild/SOURCES/eFa-4.0.5/updates/update-4.0.5.sh @@ -0,0 +1,85 @@ +#!/bin/sh +#-----------------------------------------------------------------------------# +# eFa 4.0.5-x cumulative updates script +#-----------------------------------------------------------------------------# +# Copyright (C) 2013~2023 https://efa-project.org +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +#-----------------------------------------------------------------------------# +instancetype=$(/sbin/virt-what) +centosver=$(cat /etc/centos-release | awk -F'[^0-9]*' '{print $2}') + +retval=0 + +function execcmd() +{ +eval $cmd && [[ $? -ne 0 ]] && echo "$cmd" && retval=1 +} + +# +---------------------------------------------------+ + +# make eFa able to connect to remote database other than localhost +# localhost becomes the default +if [[ -z $(grep ^EFASQLHOST /etc/eFa/eFa-Config) ]]; then + echo "EFASQLHOST:localhost" >> /etc/eFa/eFa-Config +fi + +if [[ -z $(grep ^MYSQLHOST /etc/eFa/MySQL-Config) ]]; then + echo "MYSQLHOST:localhost" >> /etc/eFa/MySQL-Config +fi + +if [[ -z $(grep ^MAILWATCHSQLHOST /etc/eFa/MailWatch-Config) ]]; then + echo "MAILWATCHSQLHOST:localhost" >> /etc/eFa/MailWatch-Config +fi + +if [[ -z $(grep ^SQLGREYSQLHOST /etc/eFa/SQLGrey-Config) ]]; then + echo "SQLGREYSQLHOST:localhost" >> /etc/eFa/SQLGrey-Config + echo "# if you change localhost, also update /etc/sqlgrey/sqlgrey.conf by hand" >> /etc/eFa/SQLGrey-Config +fi + +if [[ -z $(grep ^SAUSERSQLHOST /etc/eFa/SA-Config) ]]; then + echo "SAUSERSQLHOST:localhost" >> /etc/eFa/SA-Config + echo "# if you change localhost, also update /etc/mail/spamassassin/mailscanner.cf by hand" >> /etc/eFa/SA-Config +fi + +if [[ -z $(grep ^DMARCSQLHOST /etc/eFa/openDMARC-Config) ]]; then + echo "DMARCSQLHOST:localhost" >> /etc/eFa/openDMARC-Config +fi + +# Refresh CustomAction.pm +if [[ -f /var/eFa/backup/CustomAction.pm.old ]]; then + rm -f /var/eFa/backup/CustomAction.pm.old +fi +if [[ -f /var/eFa/backup/CustomAction.pm ]]; then + mv /var/eFa/backup/CustomAction.pm /var/eFa/backup/CustomAction.pm.old +fi +mv /usr/share/MailScanner/perl/custom/CustomAction.pm /var/eFa/backup/CustomAction.pm +cp /var/eFa/lib/token/CustomAction.pm /usr/share/MailScanner/perl/custom/CustomAction.pm + +# Refresh MailWatchConf.pm +if [[ -f /var/eFa/backup/MailWatchConf.pm.old ]]; then + rm -f /var/eFa/backup/MailWatchConf.pm.old +fi +if [[ -f /var/eFa/backup/MailWatchConf.pm ]]; then + mv /var/eFa/backup/MailWatchConf.pm /var/eFa/backup/MailWatchConf.pm.old +fi +mv /usr/share/MailScanner/perl/custom/MailWatchConf.pm /var/eFa/backup/MailWatchConf.pm +cp /var/eFa/lib/token/MailWatchConf.pm /usr/share/MailScanner/perl/custom/MailWatchConf.pm + +# Update DB_HOST in conf.php to read from /etc/eFa/MailWatch-Config +if [[ -z $(grep -w MAILWATCHSQLHOST /var/www/html/mailscanner/conf.php) ]]; then + sed -i "/^define('DB_HOST'/ c\$efa_config = preg_grep('\/^MAILWATCHSQLHOST\/', file('\/etc\/eFa/MailWatch-Config'));\nforeach(\$efa_config as \$num => \$line) {\n if (\$line) {\n \$db_host_tmp = chop(preg_replace('\/^MAILWATCHSQLHOST:(.*)\/','\$1', \$line));\n }\n}\ndefine('DB_HOST', \$db_host_tmp);" /var/www/html/mailscanner/conf.php +fi + +exit $retval diff --git a/rpmbuild/SOURCES/eFa-base-4.0.0/eFa/eFa-Commit b/rpmbuild/SOURCES/eFa-base-4.0.0/eFa/eFa-Commit index cd0ff635..cb395e5d 100644 --- a/rpmbuild/SOURCES/eFa-base-4.0.0/eFa/eFa-Commit +++ b/rpmbuild/SOURCES/eFa-base-4.0.0/eFa/eFa-Commit @@ -91,8 +91,11 @@ magenta='\E[00;35' cyan='\E[00;36m' clean='\e[00m' -if [[ -f /etc/eFa/MySQL-Config && -n $(grep MYSQLROOTPWD /etc/eFa/MySQL-Config) ]]; then - initpassword=$(grep MYSQLROOTPWD /etc/eFa/MySQL-Config | sed 's/^.*://') +if [[ -f /etc/eFa/MySQL-Config && -n $(grep -w ^MYSQLROOTPWD /etc/eFa/MySQL-Config) ]]; then + initpassword=$(grep -w ^MYSQLROOTPWD /etc/eFa/MySQL-Config | sed 's/^.*://') + if [[ -n $(grep ^MYSQLHOST /etc/eFa/MySQL-Config) ]]; then + mysqlhost=$(grep -w ^MYSQLHOST /etc/eFa/MySQL-Config | sed 's/^.*://') + fi else initpassword="eFaPr0j3ct" fi @@ -850,6 +853,8 @@ if [[ $configsa -eq 1 ]]; then sed -i "/user_awl_sql_password/ c\ user_awl_sql_password $SAUSERSQLPWD" /etc/MailScanner/spamassassin.conf [ $? -ne 0 ] && exit 1 echo "SAUSERSQLPWD:$SAUSERSQLPWD" > /etc/eFa/SA-Config + echo "SAUSERSQLHOST:localhost" >> /etc/eFa/SA-Config + echo "# if you change localhost, also update /etc/mail/spamassassin/mailscanner.cf by hand" >> /etc/eFa/SA-Config [ $? -ne 0 ] && exit 1 SAUSERSQLPWD= fi @@ -913,6 +918,7 @@ if [[ $configmailwatch -eq 1 ]]; then /usr/bin/mysql -u root -p"$initpassword" -e "FLUSH PRIVILEGES;" [ $? -ne 0 ] && exit 1 echo "MAILWATCHSQLPWD:$MAILWATCHSQLPWD" > /etc/eFa/MailWatch-Config + echo "MAILWATCHSQLHOST:localhost" >> /etc/eFa/MailWatch-Config MAILWATCHSQLPWD= # Upgrade database now @@ -926,11 +932,18 @@ if [[ $configmailwatch -eq 1 ]]; then cp /var/eFa/lib/token/CustomAction.pm /usr/share/MailScanner/perl/custom/CustomAction.pm [ $? -ne 0 ] && exit 1 + # Copy MailWatchConf.pm into position + rm -f /usr/share/MailScanner/perl/custom/MailWatchConf.pm + [ $? -ne 0 ] && exit 1 + cp /var/eFa/lib/token/MailWatchConf.pm /usr/share/MailScanner/perl/custom/MailWatchConf.pm + [ $? -ne 0 ] && exit 1 + # Initialize token user randompw EFASQLPWD=$PASSWD /usr/bin/mysql -u root -p"$initpassword" -e "ALTER USER 'efa'@'localhost' IDENTIFIED BY '$EFASQLPWD';" echo "EFASQLPWD:$EFASQLPWD" >> /etc/eFa/eFa-Config + echo "EFASQLHOST:localhost" >> /etc/eFa/eFa-Config fi if [[ $configsasl -eq 1 ]]; then @@ -950,8 +963,11 @@ if [[ $configsqlgrey -eq 1 ]]; then /usr/bin/mysql -u root -p"$initpassword" -e "FLUSH PRIVILEGES;" [ $? -ne 0 ] && exit 1 sed -i "/^db_pass =/ c\db_pass = $SQLGREYSQLPWD" /etc/sqlgrey/sqlgrey.conf + sed -i "/^db_host =/ c\db_host = $SQLGREYSQLHOST" /etc/sqlgrey/sqlgrey.conf [ $? -ne 0 ] && exit 1 echo "SQLGREYSQLPWD:$SQLGREYSQLPWD" > /etc/eFa/SQLGrey-Config + echo "SQLGREYSQLHOST:localhost" >> /etc/eFa/SQLGrey-Config + echo "# if you update host, also update /etc/sqlgrey/sqlgrey.conf by hand" >> /etc/eFa/SQLGrey-Config [ $? -ne 0 ] && exit 1 SQLGREYSQLPWD= # Start sqlgrey to initialize db tables @@ -967,6 +983,7 @@ if [[ $configdmarc -eq 1 ]]; then /usr/bin/mysql -u root -p"$initpassword" -e "FLUSH PRIVILEGES;" [ $? -ne 0 ] && exit 1 echo "DMARCSQLPWD:$DMARCSQLPWD" > /etc/eFa/openDMARC-Config + echo "DMARCSQLHOST:localhost" >> /etc/eFa/openDMARC-Config [ $? -ne 0 ] && exit 1 DMARCSQLPWD= @@ -1048,6 +1065,8 @@ if [[ $configmysql -eq 1 ]]; then [ $? -ne 0 ] && exit 1 echo "MYSQLROOTPWD:$MYSQLROOTPWD" > /etc/eFa/MySQL-Config [ $? -ne 0 ] && exit 1 + echo "MYSQLHOST:localhost" >> /etc/eFa/MySQL-Config + [ $? -ne 0 ] && exit 1 echo "[client]" > /root/.my.cnf [ $? -ne 0 ] && exit 1 echo "user=root" >> /root/.my.cnf diff --git a/rpmbuild/SOURCES/eFa-base-4.0.0/mailwatch-config-4.0.0.sh b/rpmbuild/SOURCES/eFa-base-4.0.0/mailwatch-config-4.0.0.sh index 6bf51e58..89f7419b 100644 --- a/rpmbuild/SOURCES/eFa-base-4.0.0/mailwatch-config-4.0.0.sh +++ b/rpmbuild/SOURCES/eFa-base-4.0.0/mailwatch-config-4.0.0.sh @@ -33,10 +33,12 @@ echo "Configuring MailWatch..." sed -i '/^short_open_tag =/ c\short_open_tag = On' /etc/php.ini # Set up connection for MailWatch -sed -i "/^my (\$db_user) =/ c\my (\$db_user) = 'mailwatch';" /usr/share/MailScanner/perl/custom/MailWatchConf.pm -sed -i "/^my (\$db_pass) =/ c\my (\$fh);\nmy (\$pw_config) = '/etc/eFa/MailWatch-Config';\nopen(\$fh, \"<\", \$pw_config);\nif(\!\$fh) {\n MailScanner::Log::WarnLog(\"Unable to open %s to retrieve password\", \$pw_config);\n return;\n}\nmy (\$db_pass) = grep(/^MAILWATCHSQLPWD/,<\$fh>);\n\$db_pass =~ s/MAILWATCHSQLPWD://;\n\$db_pass =~ s/\\\n//;\nclose(\$fh);" /usr/share/MailScanner/perl/custom/MailWatchConf.pm +# moved in update-4.0.5.sh +#sed -i "/^my (\$db_user) =/ c\my (\$db_user) = 'mailwatch';" /usr/share/MailScanner/perl/custom/MailWatchConf.pm +#sed -i "/^my (\$db_pass) =/ c\my (\$fh);\nmy (\$pw_config) = '/etc/eFa/MailWatch-Config';\nopen(\$fh, \"<\", \$pw_config);\nif(\!\$fh) {\n MailScanner::Log::WarnLog(\"Unable to open %s to retrieve password\", \$pw_config);\n return;\n}\nmy (\$db_pass) = grep(/^MAILWATCHSQLPWD/,<\$fh>);\n\$db_pass =~ s/MAILWATCHSQLPWD://;\n\$db_pass =~ s/\\\n//;\nclose(\$fh);" /usr/share/MailScanner/perl/custom/MailWatchConf.pm sed -i "/^define('DB_PASS',/ c\$efa_config = preg_grep('/^MAILWATCHSQLPWD/', file('/etc/eFa/MailWatch-Config'));\nforeach(\$efa_config as \$num => \$line) {\n if (\$line) {\n \$db_pass_tmp = chop(preg_replace('/^MAILWATCHSQLPWD:(.*)/','\$1', \$line));\n }\n}\ndefine('DB_PASS', \$db_pass_tmp);" /var/www/html/mailscanner/conf.php +sed -i "/^define('DB_HOST',/ c\$efa_config = preg_grep('/^MAILWATCHSQLHOST/', file('/etc/eFa/MailWatch-Config'));\nforeach(\$efa_config as \$num => \$line) {\n if (\$line) {\n \$db_pass_tmp = chop(preg_replace('/^MAILWATCHSQLHOST:(.*)/','\$1', \$line));\n }\n}\ndefine('DB_HOST', \$db_pass_tmp);" /var/www/html/mailscanner/conf.php sed -i "/^define('DB_USER',/ c\define('DB_USER', 'mailwatch');" /var/www/html/mailscanner/conf.php sed -i "/^define('TIME_ZONE',/ c\define('TIME_ZONE', 'Etc/UTC');" /var/www/html/mailscanner/conf.php sed -i "/^define('QUARANTINE_USE_FLAG',/ c\define('QUARANTINE_USE_FLAG', true);" /var/www/html/mailscanner/conf.php diff --git a/rpmbuild/SOURCES/eFa-base-4.0.0/spamassassin-config-4.0.0.sh b/rpmbuild/SOURCES/eFa-base-4.0.0/spamassassin-config-4.0.0.sh index 2be66ffc..34f2376a 100644 --- a/rpmbuild/SOURCES/eFa-base-4.0.0/spamassassin-config-4.0.0.sh +++ b/rpmbuild/SOURCES/eFa-base-4.0.0/spamassassin-config-4.0.0.sh @@ -136,7 +136,8 @@ sed -i "/^# loadplugin Mail::SpamAssassin::Plugin::AntiVirus/ c\loadplugin Mail: cat > /etc/cron.daily/trim-txrep << 'EOF' #!/bin/sh password=$(grep ^SAUSERSQLPWD /etc/eFa/SA-Config | awk -F':' '{print $2}') -/usr/bin/mysql -usa_user -p$password -Dsa_bayes -e"DELETE FROM txrep WHERE last_hit <= (now() - INTERVAL 120 day);" +host=$(grep -w ^SAUSERSQLHOST /etc/eFa/SA-Config | awk -F':' '{print $2}') +/usr/bin/mysql -usa_user -h $host -p$password -Dsa_bayes -e"DELETE FROM txrep WHERE last_hit <= (now() - INTERVAL 120 day);" exit 0 EOF @@ -173,4 +174,4 @@ ln -s /etc/mail/spamassassin/v342.pre /etc/MailScanner/mcp/v342.pre mkdir -p /var/spool/postfix/.spamassassin chown postfix:mtagroup /var/spool/postfix/.spamassassin -echo "Configuring spamassassin...done" \ No newline at end of file +echo "Configuring spamassassin...done" diff --git a/rpmbuild/SPECS/build_eFa4.sh b/rpmbuild/SPECS/build_eFa4.sh index ac02d582..418aef8c 100755 --- a/rpmbuild/SPECS/build_eFa4.sh +++ b/rpmbuild/SPECS/build_eFa4.sh @@ -1,7 +1,7 @@ #!/bin/bash cd ../SOURCES/ -rm -f eFa-4.0.4.tar.gz -tar czvf eFa-4.0.4.tar.gz eFa-4.0.4 +rm -f eFa-4.0.5.tar.gz +tar czvf eFa-4.0.5.tar.gz eFa-4.0.5 cd ../SPECS rpmbuild -ba eFa4.spec diff --git a/rpmbuild/SPECS/eFa4-base.spec b/rpmbuild/SPECS/eFa4-base.spec index 27e8c246..8134dd58 100644 --- a/rpmbuild/SPECS/eFa4-base.spec +++ b/rpmbuild/SPECS/eFa4-base.spec @@ -20,7 +20,7 @@ Name: eFa-base Summary: eFa-base files rpm Version: 4.0.0 -Release: 1.eFa%{?dist} +Release: 2.eFa%{?dist} Epoch: 1 Group: Applications/System URL: https://efa-project.org @@ -117,5 +117,8 @@ rm -rf $RPM_BUILD_ROOT %attr(0755, root, root) %{_sbindir}/eFa-Post-Init %changelog +* Fri Jul 14 2023 Giannis Kapetanakis - 4.0.0-2 +- Add support for remote MySQL server + * Sat Jan 19 2019 eFa Project - 4.0.0-1 - Intitial Build diff --git a/rpmbuild/SPECS/eFa4.spec b/rpmbuild/SPECS/eFa4.spec index 5a264b01..aff3653c 100644 --- a/rpmbuild/SPECS/eFa4.spec +++ b/rpmbuild/SPECS/eFa4.spec @@ -1,7 +1,7 @@ #-----------------------------------------------------------------------------# # eFa SPEC file definition #-----------------------------------------------------------------------------# -# Copyright (C) 2013~2022 https://efa-project.org +# Copyright (C) 2013~2023 https://efa-project.org # # This SPEC is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -25,8 +25,8 @@ Name: eFa Summary: eFa Maintenance rpm -Version: 4.0.4 -Release: 40.eFa%{?dist} +Version: 4.0.5 +Release: 1.eFa%{?dist} Epoch: 1 Group: Applications/System URL: https://efa-project.org @@ -418,6 +418,7 @@ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/www/html/mailscanner/ mv eFa/eFa-release.php $RPM_BUILD_ROOT%{_localstatedir}/www/html/mailscanner/ mv eFa/eFa-learn.php $RPM_BUILD_ROOT%{_localstatedir}/www/html/mailscanner/ mv eFa/CustomAction.pm $RPM_BUILD_ROOT%{_localstatedir}/eFa/lib/token +mv eFa/MailWatchConf.pm $RPM_BUILD_ROOT%{_localstatedir}/eFa/lib/token mv eFa/efatokens.sql $RPM_BUILD_ROOT%{_localstatedir}/eFa/lib/token mv eFa/efatokens_update.sql $RPM_BUILD_ROOT%{_localstatedir}/eFa/lib/token mv eFa/eFavmtools.te $RPM_BUILD_ROOT%{_localstatedir}/eFa/lib/selinux @@ -529,6 +530,13 @@ if [[ "$1" == "2" || "$flag" == "1" ]]; then } 2>&1 | tee -a /var/log/eFa/update.log fi + if [[ %{version} == "4.0.5" || "$flag" == "1" ]]; then + { + /bin/sh %{_usrsrc}/eFa/updates/update-4.0.5.sh + [[ $? -ne 0 ]] && echo "Error while updating eFa, Please visit https://efa-project.org to report the commands executed above." && exit 0 + } 2>&1 | tee -a /var/log/eFa/update.log + fi + # cleanup if sucessful rm -rf /usr/src/eFa echo "eFa-%{version}" > %{_sysconfdir}/eFa-Version @@ -559,6 +567,7 @@ rm -rf $RPM_BUILD_ROOT %attr(0755, root, root) %{_localstatedir}/eFa/lib/token/efatokens.sql %attr(0755, root, root) %{_localstatedir}/eFa/lib/token/efatokens_update.sql %attr(0644, root, root) %{_localstatedir}/eFa/lib/token/CustomAction.pm +%attr(0644, root, root) %{_localstatedir}/eFa/lib/token/MailWatchConf.pm %attr(0644, root, root) %{_localstatedir}/www/html/mailscanner/eFa-release.php %attr(0644, root, root) %{_localstatedir}/www/html/mailscanner/eFa-learn.php %attr(0755, root, root) %{_sysconfdir}/cron.daily/eFa-Backup.cron @@ -566,6 +575,10 @@ rm -rf $RPM_BUILD_ROOT %attr(0644, root, root) %{_sysconfdir}/logrotate.d/eFa-logrotate %changelog +* Thu Jul 13 2023 Giannis Kapetanakis - 4.0.5-1 +- Allow use of remote MySQL database +- Overwrite MailWatchConf.pm during update + * Sat Mar 04 2023 eFa Project - 4.0.4-40 - Add IUS Archive repo for centos7 hosts diff --git a/rpmbuild/SPECS/sqlgreywebinterface.spec b/rpmbuild/SPECS/sqlgreywebinterface.spec index 66df2d2e..186b34f2 100644 --- a/rpmbuild/SPECS/sqlgreywebinterface.spec +++ b/rpmbuild/SPECS/sqlgreywebinterface.spec @@ -26,7 +26,7 @@ Summary: SQLGrey Web Interface Legacy Name: sqlgreywebinterface Version: 1.1.9 Epoch: 1 -Release: 5.eFa%{?dist} +Release: 6.eFa%{?dist} License: GNU GPL v2 Group: Applications/Utilities URL: https://github.com/flok99/sgwi @@ -57,6 +57,7 @@ cp -ra * %{buildroot}%{_localstatedir}/www/html/sgwi # Add efa password retrieval sed -i '/^$db_user/ c\$db_user = "sqlgrey";' %{buildroot}%{_localstatedir}/www/html/sgwi/includes/config.inc.php sed -i "/^\$db_pass/ c\$efa_array = preg_grep('/^SQLGREYSQLPWD/', file('/etc/eFa/SQLGrey-Config'));\nforeach(\$efa_array as \$num => \$line) {\n if (\$line) {\n \$db_pass = chop(preg_replace('/^SQLGREYSQLPWD:(.*)/','\$1',\$line));\n }\n}" %{buildroot}%{_localstatedir}/www/html/sgwi/includes/config.inc.php +sed -i "/^\$db_hostname/ c\$efa_array = preg_grep('/^SQLGREYSQLHOST/', file('/etc/eFa/SQLGrey-Config'));\nforeach(\$efa_array as \$num => \$line) {\n if (\$line) {\n \$db_hostname = chop(preg_replace('/^SQLGREYSQLHOST:(.*)/','\$1',\$line));\n }\n}" %{buildroot}%{_localstatedir}/www/html/sgwi/includes/config.inc.php # Remove doc info rm %{buildroot}%{_localstatedir}/www/html/sgwi/{README.md,license.txt,readme.txt} @@ -86,6 +87,9 @@ rm %{buildroot}%{_localstatedir}/www/html/sgwi/{README.md,license.txt,readme.txt %{_localstatedir}/www/html/sgwi/includes/opt_in_out.inc.php %changelog +* Fri Jul 14 2022 Giannis Kapetanakis - 1.1.9-6 +- Allow interface to connect to remote MySQL server + * Mon Feb 15 2021 Shawn Iverson - 1.1.9-5 - Add eFa password retrieval for database access