@@ -1232,11 +1232,22 @@ function update($event_name, $data) {
12321232 //* check if we have already a Let's Encrypt cert
12331233 if (!file_exists ($ crt_tmp_file ) && !file_exists ($ key_tmp_file )) {
12341234 $ app ->log ("Create Let's Encrypt SSL Cert for: $ domain " , LOGLEVEL_DEBUG );
1235-
1235+
1236+ $ success = false ;
12361237 if (file_exists ("/root/.local/share/letsencrypt/bin/letsencrypt " )) {
1237- $ this ->_exec ("/root/.local/share/letsencrypt/bin/letsencrypt auth --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@ $ domain --domains $ lddomain --webroot-path /usr/local/ispconfig/interface/acme " );
1238+ $ success = $ this ->_exec ("/root/.local/share/letsencrypt/bin/letsencrypt auth --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@ $ domain --domains $ lddomain --webroot-path /usr/local/ispconfig/interface/acme " );
12381239 }
1239- };
1240+ if (!$ success ) {
1241+ // error issuing cert
1242+ $ app ->log ('Let \'s Encrypt SSL Cert for: ' . $ domain . ' could not be issued. ' , LOGLEVEL_WARN );
1243+ $ data ['new ' ]['ssl_letsencrypt ' ] = 'n ' ;
1244+ if ($ data ['old ' ]['ssl ' ] == 'n ' ) $ data ['new ' ]['ssl ' ] = 'n ' ;
1245+ /* Update the DB of the (local) Server */
1246+ $ app ->db ->query ("UPDATE web_domain SET `ssl` = ?, `ssl_letsencrypt` = ? WHERE `domain` = ? " , $ data ['new ' ]['ssl ' ], 'n ' , $ data ['new ' ]['domain ' ]);
1247+ /* Update also the master-DB of the Server-Farm */
1248+ $ app ->dbmaster ->query ("UPDATE web_domain SET `ssl` = ?, `ssl_letsencrypt` = ? WHERE `domain` = ? " , $ data ['new ' ]['ssl ' ], 'n ' , $ data ['new ' ]['domain ' ]);
1249+ }
1250+ }
12401251
12411252 //* check is been correctly created
12421253 if (file_exists ($ crt_tmp_file ) OR file_exists ($ key_tmp_file )) {
@@ -1279,11 +1290,11 @@ function update($event_name, $data) {
12791290
12801291 /* we don't need to store it.
12811292 /* Update the DB of the (local) Server */
1282- $ app ->db ->query ("UPDATE web_domain SET ssl_request = '', ssl_cert = ' $ ssl_cert ', ssl_key = ' $ ssl_key ' WHERE domain = ' " . $ data ['new ' ]['domain ' ]. " ' " );
1283- $ app ->db ->query ("UPDATE web_domain SET ssl_action = '' WHERE domain = ' " . $ data ['new ' ]['domain ' ]. " ' " );
1293+ $ app ->db ->query ("UPDATE web_domain SET ssl_request = '', ssl_cert = '', ssl_key = '' WHERE domain = ? " , $ data ['new ' ]['domain ' ]);
1294+ $ app ->db ->query ("UPDATE web_domain SET ssl_action = '' WHERE domain = ? " , $ data ['new ' ]['domain ' ]);
12841295 /* Update also the master-DB of the Server-Farm */
1285- $ app ->dbmaster ->query ("UPDATE web_domain SET ssl_request = '', ssl_cert = ' $ ssl_cert ', ssl_key = ' $ ssl_key ' WHERE domain = ' " . $ data ['new ' ]['domain ' ]. " ' " );
1286- $ app ->dbmaster ->query ("UPDATE web_domain SET ssl_action = '' WHERE domain = ' " . $ data ['new ' ]['domain ' ]. " ' " );
1296+ $ app ->dbmaster ->query ("UPDATE web_domain SET ssl_request = '', ssl_cert = '', ssl_key = '' WHERE domain = ? " , $ data ['new ' ]['domain ' ]);
1297+ $ app ->dbmaster ->query ("UPDATE web_domain SET ssl_action = '' WHERE domain = ? " , $ data ['new ' ]['domain ' ]);
12871298 }
12881299 }
12891300
@@ -3363,8 +3374,12 @@ function client_delete($event_name, $data) {
33633374 //* Wrapper for exec function for easier debugging
33643375 private function _exec ($ command ) {
33653376 global $ app ;
3377+ $ out = array ();
3378+ $ ret = 0 ;
33663379 $ app ->log ('exec: ' .$ command , LOGLEVEL_DEBUG );
3367- exec ($ command );
3380+ exec ($ command , $ out , $ ret );
3381+ if ($ ret != 0 ) return false ;
3382+ else return true ;
33683383 }
33693384
33703385 private function _checkTcp ($ host , $ port ) {
0 commit comments