1 |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/createlinks smeserver-phplist-0.2.1/createlinks |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/createlinks smeserver-phplist-0.2.1/createlinks |
2 |
--- smeserver-phplist-0.2.1.old/createlinks 2020-03-18 13:12:54.000000000 -0400 |
--- smeserver-phplist-0.2.1.old/createlinks 2020-03-18 13:12:54.000000000 -0400 |
3 |
+++ smeserver-phplist-0.2.1/createlinks 2022-08-02 22:02:43.291000000 -0400 |
+++ smeserver-phplist-0.2.1/createlinks 2022-08-02 22:34:17.079000000 -0400 |
4 |
@@ -6,7 +6,7 @@ |
@@ -6,7 +6,7 @@ |
5 |
templates2events("/etc/phplist/config.php", qw/webapps-update bootstrap-console-save/); |
templates2events("/etc/phplist/config.php", qw/webapps-update bootstrap-console-save/); |
6 |
|
|
10 |
event_link("phplist-create-pseudo", "$event", "55"); |
event_link("phplist-create-pseudo", "$event", "55"); |
11 |
} |
} |
12 |
|
|
13 |
@@ -15,13 +15,36 @@ |
@@ -15,13 +15,37 @@ |
14 |
|
|
15 |
safe_symlink("/var/qmail/alias/.qmail-phplistbounces", "root/var/qmail/alias/.qmail-phplistbounces-default"); |
safe_symlink("/var/qmail/alias/.qmail-phplistbounces", "root/var/qmail/alias/.qmail-phplistbounces-default"); |
16 |
|
|
40 |
+ phplist restart |
+ phplist restart |
41 |
+ mysql.init restart |
+ mysql.init restart |
42 |
+)); |
+)); |
43 |
+safe_symlink("/var/qmail/bin/qmail-newu", "root/etc/e-smith/events/$event/S55phplist-qmail-assign"); |
+safe_symlink("/var/qmail/bin/qmail-newu", "root/etc/e-smith/events/$event/S93phplist-qmail-assign"); |
44 |
+ |
+ |
45 |
+event_actions($event, qw( |
+event_actions($event, qw( |
46 |
+ phplist-create-pseudo 55 |
+ phplist-initialise 92 |
47 |
|
+ phplist-create-pseudo 93 |
48 |
+ systemd-default 88 |
+ systemd-default 88 |
49 |
+ systemd-reload 89 |
+ systemd-reload 89 |
50 |
+)); |
+)); |
54 |
+/var/lib/phplist |
+/var/lib/phplist |
55 |
+/var/log/phplist |
+/var/log/phplist |
56 |
+)); |
+)); |
57 |
|
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/db/configuration/defaults/phplist/type smeserver-phplist-0.2.1/root/etc/e-smith/db/configuration/defaults/phplist/type |
58 |
|
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/db/configuration/defaults/phplist/type 2020-03-18 13:12:54.000000000 -0400 |
59 |
|
+++ smeserver-phplist-0.2.1/root/etc/e-smith/db/configuration/defaults/phplist/type 2022-08-02 22:37:07.129000000 -0400 |
60 |
|
@@ -1 +1 @@ |
61 |
|
-webapp |
62 |
|
+service |
63 |
|
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/db/configuration/migrate/phplist-database smeserver-phplist-0.2.1/root/etc/e-smith/db/configuration/migrate/phplist-database |
64 |
|
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/db/configuration/migrate/phplist-database 2020-03-18 13:12:54.000000000 -0400 |
65 |
|
+++ smeserver-phplist-0.2.1/root/etc/e-smith/db/configuration/migrate/phplist-database 2022-08-03 00:07:05.132000000 -0400 |
66 |
|
@@ -24,4 +24,29 @@ |
67 |
|
} |
68 |
|
$rec->set_prop('DbPassword', $pw); |
69 |
|
} |
70 |
|
+ my $apw = $rec->prop('AdminPass'); |
71 |
|
+ if (not $apw or length($apw) < 20){ |
72 |
|
+ use MIME::Base64 qw(encode_base64); |
73 |
|
+ $apw = "not set due to error"; |
74 |
|
+ if ( open( RANDOM, "/dev/urandom" ) ){ |
75 |
|
+ my $buf; |
76 |
|
+ # 57 bytes is a full line of Base64 coding, and contains |
77 |
|
+ # 456 bits of randomness - given a perfectly random /dev/random |
78 |
|
+ if ( read( RANDOM, $buf, 20 ) != 20 ){ |
79 |
|
+ warn("Short read from /dev/random: $!"); |
80 |
|
+ } |
81 |
|
+ else{ |
82 |
|
+ $apw = encode_base64($buf); |
83 |
|
+ chomp $apw; |
84 |
|
+ } |
85 |
|
+ close RANDOM; |
86 |
|
+ } |
87 |
|
+ else{ |
88 |
|
+ warn "Could not open /dev/urandom: $!"; |
89 |
|
+ } |
90 |
|
+ $rec->set_prop('AdminPass', $apw); |
91 |
|
+ } |
92 |
|
+ my $type = $rec->prop("type"); |
93 |
|
+ $rec->set_prop("type","service") unless ($type eq "service"); |
94 |
|
+ |
95 |
|
} |
96 |
|
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/events/actions/phplist-initialise smeserver-phplist-0.2.1/root/etc/e-smith/events/actions/phplist-initialise |
97 |
|
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/events/actions/phplist-initialise 1969-12-31 19:00:00.000000000 -0500 |
98 |
|
+++ smeserver-phplist-0.2.1/root/etc/e-smith/events/actions/phplist-initialise 2022-08-03 00:07:04.884000000 -0400 |
99 |
|
@@ -0,0 +1,6 @@ |
100 |
|
+#!/bin/bash |
101 |
|
+password=$(config getprop phplist AdminPass) |
102 |
|
+domain=$(config get DomainName) |
103 |
|
+ADMIN_PASSWORD=$password ADMIN_EMAIL=admin@$domain phplist -pinitialise |
104 |
|
+phplist -pdbcheck |
105 |
|
+phplist -pupgrade |
106 |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist |
107 |
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist 2020-03-18 13:12:54.000000000 -0400 |
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist 2020-03-18 13:12:54.000000000 -0400 |
108 |
+++ smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist 2022-08-02 22:03:20.751000000 -0400 |
+++ smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/httpd/conf/httpd.conf/98phplist 2022-08-03 00:07:05.662000000 -0400 |
109 |
@@ -6,11 +6,12 @@ |
@@ -6,11 +6,12 @@ |
110 |
my $alias = $phplist{'AliasOnPrimary'} || 'enabled'; |
my $alias = $phplist{'AliasOnPrimary'} || 'enabled'; |
111 |
my $ver = $sysconfig{'ReleaseVersion'} || '8.1'; |
my $ver = $sysconfig{'ReleaseVersion'} || '8.1'; |
116 |
$auth = ( $auth eq 'http' ) ? 'AuthName "phplist"' . "\n" . |
$auth = ( $auth eq 'http' ) ? 'AuthName "phplist"' . "\n" . |
117 |
" AuthType Basic\n" . |
" AuthType Basic\n" . |
118 |
- " AuthExternal pwauth\n" . (($ver =~ m/^9/) ? " AuthBasicProvider external\n":'') . |
- " AuthExternal pwauth\n" . (($ver =~ m/^9/) ? " AuthBasicProvider external\n":'') . |
119 |
+ " AuthBasicProvider external\n" . |
+ " AuthBasicProvider external\n". |
120 |
+ " AuthExternal pwauth\n" . |
+ " AuthExternal pwauth\n". |
121 |
" require valid-user\n" : ''; |
" require valid-user\n" : ''; |
122 |
|
|
123 |
if ($status eq 'enabled') { |
if ($status eq 'enabled') { |
124 |
@@ -22,42 +23,30 @@ |
@@ -22,42 +23,33 @@ |
125 |
Options None +FollowSymLinks |
Options None +FollowSymLinks |
126 |
AllowOverride None |
AllowOverride None |
127 |
DirectoryIndex index.php |
DirectoryIndex index.php |
148 |
- Order deny,allow |
- Order deny,allow |
149 |
- deny from all |
- deny from all |
150 |
- allow from $allow |
- allow from $allow |
151 |
|
+ SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 |
152 |
+ Require $allow |
+ Require $allow |
153 |
</Directory> |
</Directory> |
154 |
|
|
163 |
<FilesMatch "(index.php|connector.php|upload.php)\$"> |
<FilesMatch "(index.php|connector.php|upload.php)\$"> |
164 |
- Order allow,deny |
- Order allow,deny |
165 |
- allow from all |
- allow from all |
166 |
|
+ SetHandler "proxy:unix:/var/run/php-fpm/php80-phplist.sock|fcgi://localhost" |
167 |
+ Require all granted |
+ Require all granted |
168 |
</FilesMatch> |
</FilesMatch> |
169 |
- order deny,allow |
- order deny,allow |
170 |
- deny from all |
- deny from all |
171 |
- allow from $allow |
- allow from $allow |
172 |
- $auth |
- $auth |
173 |
|
+ SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 |
174 |
+ <RequireAll> |
+ <RequireAll> |
175 |
+ Require $allow |
+ Require $allow |
176 |
+ $auth |
+ $auth |
180 |
|
|
181 |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist |
182 |
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist 1969-12-31 19:00:00.000000000 -0500 |
--- smeserver-phplist-0.2.1.old/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist 1969-12-31 19:00:00.000000000 -0500 |
183 |
+++ smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist 2022-08-02 21:50:33.405000000 -0400 |
+++ smeserver-phplist-0.2.1/root/etc/e-smith/templates/etc/php-fpm.d/www.conf/15phplist 2022-08-03 00:07:05.910000000 -0400 |
184 |
@@ -0,0 +1,65 @@ |
@@ -0,0 +1,66 @@ |
185 |
+{ |
+{ |
186 |
+ |
+ |
187 |
+if ($PHP_VERSION eq '80'){ |
+if ($PHP_VERSION eq '80'){ |
191 |
+ my $memory_limit = ($phplist{MemoryLimit} || '128M'); |
+ my $memory_limit = ($phplist{MemoryLimit} || '128M'); |
192 |
+ $memory_limit .= 'M' if ($memory_limit =~ m/^\d+$/); |
+ $memory_limit .= 'M' if ($memory_limit =~ m/^\d+$/); |
193 |
+ my $open_basedir= $phplist{PHPBaseDir} || ''; |
+ my $open_basedir= $phplist{PHPBaseDir} || ''; |
194 |
+ $open_basedir = "/usr/share/phplist:/var/lib/phplist:/tmp:/etc/phplist:$open_basedir"; |
+ $open_basedir = "/usr/share/phplist:/var/lib/phplist:/tmp:/etc/phplist:/var/log/phplist:/usr/share/php/auth_translation.php:$open_basedir"; |
195 |
+ my $id = 'phplist'; |
+ my $id = 'phplist'; |
196 |
+ my $max_children = $phplist{'PHPmaxChildren'} || 20; |
+ my $max_children = $phplist{'PHPmaxChildren'} || 20; |
197 |
+ my $min_spare_servers = $phplist{'PHPminServers'} || 4; |
+ my $min_spare_servers = $phplist{'PHPminServers'} || 4; |
216 |
+pm.min_spare_servers = $min_spare_servers |
+pm.min_spare_servers = $min_spare_servers |
217 |
+pm.max_spare_servers = $max_spare_servers |
+pm.max_spare_servers = $max_spare_servers |
218 |
+pm.max_requests = $max_requests |
+pm.max_requests = $max_requests |
219 |
|
+php_admin_value[auto_prepend_file] = /usr/share/php/auth_translation.php |
220 |
+php_admin_value[session.save_path] = /var/lib/php/$id/session |
+php_admin_value[session.save_path] = /var/lib/php/$id/session |
221 |
+php_admin_value[session.gc_maxlifetime] = 86400 |
+php_admin_value[session.gc_maxlifetime] = 86400 |
222 |
+php_admin_value[opcache.file_cache] = /var/lib/php/$id/opcache |
+php_admin_value[opcache.file_cache] = /var/lib/php/$id/opcache |
250 |
+} |
+} |
251 |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/usr/lib/systemd/system/phplist.service smeserver-phplist-0.2.1/root/usr/lib/systemd/system/phplist.service |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/usr/lib/systemd/system/phplist.service smeserver-phplist-0.2.1/root/usr/lib/systemd/system/phplist.service |
252 |
--- smeserver-phplist-0.2.1.old/root/usr/lib/systemd/system/phplist.service 1969-12-31 19:00:00.000000000 -0500 |
--- smeserver-phplist-0.2.1.old/root/usr/lib/systemd/system/phplist.service 1969-12-31 19:00:00.000000000 -0500 |
253 |
+++ smeserver-phplist-0.2.1/root/usr/lib/systemd/system/phplist.service 2022-08-02 15:34:42.017000000 -0400 |
+++ smeserver-phplist-0.2.1/root/usr/lib/systemd/system/phplist.service 2022-08-02 22:37:29.174000000 -0400 |
254 |
@@ -0,0 +1,13 @@ |
@@ -0,0 +1,13 @@ |
255 |
+[Unit] |
+[Unit] |
256 |
+Description=phplist process queues |
+Description=phplist process queues |
257 |
+After=network-online.target |
+After=network-online.target |
258 |
+ |
+ |
259 |
+[Service] |
+[Service] |
260 |
+ExecStartPre=/sbin/e-smith/service-status phplist |
+ExecStartPre=-/sbin/e-smith/service-status phplist |
261 |
+ExecStart=/usr/sbin/e-smith/systemd/phplist |
+ExecStart=/usr/sbin/e-smith/systemd/phplist |
262 |
+Restart=always |
+Restart=always |
263 |
+Restartsec=10s |
+Restartsec=10s |
265 |
+ |
+ |
266 |
+[Install] |
+[Install] |
267 |
+WantedBy=sme-server.target |
+WantedBy=sme-server.target |
268 |
|
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/usr/local/bin/phplist smeserver-phplist-0.2.1/root/usr/local/bin/phplist |
269 |
|
--- smeserver-phplist-0.2.1.old/root/usr/local/bin/phplist 1969-12-31 19:00:00.000000000 -0500 |
270 |
|
+++ smeserver-phplist-0.2.1/root/usr/local/bin/phplist 2022-08-03 00:07:04.607000000 -0400 |
271 |
|
@@ -0,0 +1,2 @@ |
272 |
|
+#!/bin/bash |
273 |
|
+/usr/bin/php80 /usr/share/phplist/www/admin/index.php -c /etc/phplist/config.php $* |
274 |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/usr/sbin/e-smith/systemd/phplist smeserver-phplist-0.2.1/root/usr/sbin/e-smith/systemd/phplist |
diff -Nur --no-dereference smeserver-phplist-0.2.1.old/root/usr/sbin/e-smith/systemd/phplist smeserver-phplist-0.2.1/root/usr/sbin/e-smith/systemd/phplist |
275 |
--- smeserver-phplist-0.2.1.old/root/usr/sbin/e-smith/systemd/phplist 1969-12-31 19:00:00.000000000 -0500 |
--- smeserver-phplist-0.2.1.old/root/usr/sbin/e-smith/systemd/phplist 1969-12-31 19:00:00.000000000 -0500 |
276 |
+++ smeserver-phplist-0.2.1/root/usr/sbin/e-smith/systemd/phplist 2020-03-18 13:12:54.000000000 -0400 |
+++ smeserver-phplist-0.2.1/root/usr/sbin/e-smith/systemd/phplist 2022-08-03 00:07:05.427000000 -0400 |
277 |
@@ -0,0 +1,10 @@ |
@@ -0,0 +1,10 @@ |
278 |
+#!/bin/sh |
+#!/bin/sh |
279 |
+ |
+ |
280 |
+exec 2>&1 |
+exec 2>&1 |
281 |
+ |
+ |
282 |
+cd /usr/share/phplist/bin |
+cd /usr/local/bin/ |
283 |
+while true; do |
+while true; do |
284 |
+ /usr/local/bin/setuidgid www ./phplist -pprocessbounces |
+ /usr/local/bin/setuidgid www ./phplist -pprocessbounces |
285 |
+ /usr/local/bin/setuidgid www ./phplist -pprocessqueue |
+ /usr/local/bin/setuidgid www ./phplist -pprocessqueue |