Browse Source

Fix rspamd settings and dynamic configuration

andryyy 8 years ago
parent
commit
8559de7ae6

+ 2 - 0
data/Dockerfiles/rspamd/Dockerfile

@@ -12,6 +12,8 @@ RUN apt-get update \
 	&& apt-get --no-install-recommends -y --force-yes install rspamd
 	&& apt-get --no-install-recommends -y --force-yes install rspamd
 
 
 RUN echo '.include $LOCAL_CONFDIR/local.d/rspamd.conf.local' > /etc/rspamd/rspamd.conf.local
 RUN echo '.include $LOCAL_CONFDIR/local.d/rspamd.conf.local' > /etc/rspamd/rspamd.conf.local
+# "Hardcoded" - we need them
+RUN echo 'settings = "http://nginx:8081/settings.php";' > /etc/rspamd/modules.d/settings.conf
 
 
 CMD ["/usr/bin/rspamd","-f", "-u", "_rspamd", "-g", "_rspamd"]
 CMD ["/usr/bin/rspamd","-f", "-u", "_rspamd", "-g", "_rspamd"]
 
 

+ 3 - 3
data/conf/rspamd/dynmaps/settings.php

@@ -55,7 +55,7 @@ while ($row = array_shift($rows)) {
 		WHERE `mailbox`.`username` = :object");
 		WHERE `mailbox`.`username` = :object");
 	$stmt->execute(array(':object' => $row['object']));
 	$stmt->execute(array(':object' => $row['object']));
 	$rows_aliases_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
 	$rows_aliases_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
-	while ($row_aliases_2 = array_shift($rows_aliases_2)) {
+	while ($row_aliases_2 = array_filter(array_shift($rows_aliases_2))) {
 ?>
 ?>
 		rcpt = "<?=$row_aliases_2['aliases'];?>";
 		rcpt = "<?=$row_aliases_2['aliases'];?>";
 <?php
 <?php
@@ -126,7 +126,7 @@ while ($row = array_shift($rows)) {
 		WHERE `mailbox`.`username` = :object");
 		WHERE `mailbox`.`username` = :object");
 	$stmt->execute(array(':object' => $row['object']));
 	$stmt->execute(array(':object' => $row['object']));
 	$rows_aliases_wl_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
 	$rows_aliases_wl_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
-	while ($row_aliases_wl_2 = array_shift($rows_aliases_wl_2)) {
+	while ($row_aliases_wl_2 = array_filter(array_shift($rows_aliases_wl_2))) {
 ?>
 ?>
 		rcpt = "<?=$row_aliases_wl_2['aliases'];?>";
 		rcpt = "<?=$row_aliases_wl_2['aliases'];?>";
 <?php
 <?php
@@ -192,7 +192,7 @@ while ($row = array_shift($rows)) {
 		WHERE `mailbox`.`username` = :object");
 		WHERE `mailbox`.`username` = :object");
 	$stmt->execute(array(':object' => $row['object']));
 	$stmt->execute(array(':object' => $row['object']));
 	$rows_aliases_wl_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
 	$rows_aliases_wl_2 = $stmt->fetchAll(PDO::FETCH_ASSOC);
-	while ($row_aliases_wl_2 = array_shift($rows_aliases_wl_2)) {
+	while ($row_aliases_wl_2 = array_filter(array_shift($rows_aliases_wl_2))) {
 ?>
 ?>
 		rcpt = "<?=$row_aliases_wl_2['aliases'];?>";
 		rcpt = "<?=$row_aliases_wl_2['aliases'];?>";
 <?php
 <?php

+ 1 - 1
data/conf/rspamd/local.d/rspamd.conf.local

@@ -1 +1 @@
-settings = "http://nginx:8081/settings.php";
+# rspamd.conf.local