@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | <?php |
98 | 98 | foreach ($cat->printCountryList(1) as $country => $name) { |
99 | 99 | $selected = ''; |
100 | - if ($country == strtoupper($fed_id) ) { |
|
100 | + if ($country == strtoupper($fed_id)) { |
|
101 | 101 | $selected = 'selected'; |
102 | 102 | } |
103 | 103 | echo "<option value='$country' $selected>$name</option>\n"; |
@@ -315,7 +315,7 @@ discard block |
||
315 | 315 | /// nomenclature for 'federation', federation name, nomenclature for 'inst' |
316 | 316 | echo "<tr><td colspan='9'><strong>".sprintf(_("The following %s are in your %s %s:"), $uiElements->nomenclatureParticipant, $uiElements->nomenclatureFed, '<span style="color:green">'.$thefed->name.'</span>')."</strong></td></tr>"; |
317 | 317 | echo "<tbody class='fedlist'>"; |
318 | - echo "<tr><td colspan='1'><strong>". _("Quick search:")." </strong><input style='background:#eeeeee;' type='text' id='qsearch_".$fedId."'></td>"; |
|
318 | + echo "<tr><td colspan='1'><strong>"._("Quick search:")." </strong><input style='background:#eeeeee;' type='text' id='qsearch_".$fedId."'></td>"; |
|
319 | 319 | echo "<td style='border-bottom-style: dotted;border-bottom-width: 1px;'><input type='checkbox' name='profilecheck' id='profile_ck_".$fedId."'></td>"; |
320 | 320 | echo "<td style='border-bottom-style: dotted;border-bottom-width: 1px;'><input type='checkbox' name='orcheck' id='or_ck_".$fedId."'></td>"; |
321 | 321 | echo "<td style='border-bottom-style: dotted;border-bottom-width: 1px;'><input type='checkbox' name='brokencert' id='brokencert_ck_".$fedId."'></td>"; |
@@ -428,14 +428,14 @@ discard block |
||
428 | 428 | <input type='hidden' name='inst' value='" |
429 | 429 | . $index."'>" |
430 | 430 | . "<span style='display:none' class='inst_name'>".$my_idp."</span>" |
431 | - . "<span>". $idp_instance->name."</span>" |
|
431 | + . "<span>".$idp_instance->name."</span>" |
|
432 | 432 | . " (<a href='overview_org.php?inst_id=" |
433 | 433 | . $idp_instance->identifier."'>" |
434 | 434 | . (in_array($index, $userIdps) ? _("manage") : _("view")) |
435 | 435 | . "</a>)" |
436 | - . (empty($listOfSilverbulletRealms) ? "" : "<ul><li>" ) |
|
436 | + . (empty($listOfSilverbulletRealms) ? "" : "<ul><li>") |
|
437 | 437 | . implode("</li><li>", $listOfSilverbulletRealms) |
438 | - . (empty($listOfSilverbulletRealms) ? "" : "</li><ul>" ) |
|
438 | + . (empty($listOfSilverbulletRealms) ? "" : "</li><ul>") |
|
439 | 439 | . "</td>"; |
440 | 440 | // deployment status; need to dive into profiles for this |
441 | 441 | // show happy eyeballs if at least one profile is configured/showtime |
@@ -150,7 +150,7 @@ discard block |
||
150 | 150 | <div id="tabs-2"> |
151 | 151 | <!--<button id="run_s_tests" onclick="run_udp()"><?php echo _("Repeat static connectivity tests") ?></button>--> |
152 | 152 | <p> |
153 | - <?php print $realmTests->printStatic();?> |
|
153 | + <?php print $realmTests->printStatic(); ?> |
|
154 | 154 | |
155 | 155 | <!-- tabs-2 end --> |
156 | 156 | </div> |
@@ -160,7 +160,7 @@ discard block |
||
160 | 160 | ?> |
161 | 161 | <div id="tabs-3"> |
162 | 162 | <!--<button id="run_d_tests" onclick="run_dynamic()"><?php echo _("Repeat dynamic connectivity tests") ?></button>--> |
163 | - <?php print $realmTests->printDynamic();?> |
|
163 | + <?php print $realmTests->printDynamic(); ?> |
|
164 | 164 | <!-- tabs-3 end --> |
165 | 165 | </div> |
166 | 166 | <?php |
@@ -39,7 +39,7 @@ discard block |
||
39 | 39 | * @param int $timeout the timeout to download |
40 | 40 | * @return string|boolean the data we got back, or FALSE on failure |
41 | 41 | */ |
42 | - public static function downloadFile($url, $timeout=0) |
|
42 | + public static function downloadFile($url, $timeout = 0) |
|
43 | 43 | { |
44 | 44 | $loggerInstance = new \core\common\Logging(); |
45 | 45 | if (!preg_match("/:\/\//", $url)) { |
@@ -129,7 +129,7 @@ discard block |
||
129 | 129 | $loggerInstance->debug(4, "OutsideComm::mailAddressValidSecure: no MX."); |
130 | 130 | return OutsideComm::MAILDOMAIN_NO_MX; |
131 | 131 | } |
132 | - $loggerInstance->debug(5, "Domain: $domain MX: " . /** @scrutinizer ignore-type */ print_r($mx, TRUE)); |
|
132 | + $loggerInstance->debug(5, "Domain: $domain MX: "./** @scrutinizer ignore-type */ print_r($mx, TRUE)); |
|
133 | 133 | // create a pool of A and AAAA records for all the MXes |
134 | 134 | $ipAddrs = []; |
135 | 135 | foreach ($mx as $onemx) { |
@@ -139,14 +139,14 @@ discard block |
||
139 | 139 | $ipAddrs[] = $oneipv4['ip']; |
140 | 140 | } |
141 | 141 | foreach ($v6list as $oneipv6) { |
142 | - $ipAddrs[] = "[" . $oneipv6['ipv6'] . "]"; |
|
142 | + $ipAddrs[] = "[".$oneipv6['ipv6']."]"; |
|
143 | 143 | } |
144 | 144 | } |
145 | 145 | if (count($ipAddrs) == 0) { |
146 | 146 | $loggerInstance->debug(4, "OutsideComm::mailAddressValidSecure: no mailserver hosts."); |
147 | 147 | return OutsideComm::MAILDOMAIN_NO_HOST; |
148 | 148 | } |
149 | - $loggerInstance->debug(5, "Domain: $domain Addrs: " . /** @scrutinizer ignore-type */ print_r($ipAddrs, TRUE)); |
|
149 | + $loggerInstance->debug(5, "Domain: $domain Addrs: "./** @scrutinizer ignore-type */ print_r($ipAddrs, TRUE)); |
|
150 | 150 | // connect to all hosts. If all can't connect, return MAILDOMAIN_NO_CONNECT. |
151 | 151 | // If at least one does not support STARTTLS or one of the hosts doesn't connect |
152 | 152 | // , return MAILDOMAIN_NO_STARTTLS (one which we can't connect to we also |
@@ -199,7 +199,7 @@ discard block |
||
199 | 199 | switch (\config\ConfAssistant::SMSSETTINGS['provider']) { |
200 | 200 | case 'Nexmo': |
201 | 201 | // taken from https://docs.nexmo.com/messaging/sms-api |
202 | - $url = 'https://rest.nexmo.com/sms/json?' . http_build_query( |
|
202 | + $url = 'https://rest.nexmo.com/sms/json?'.http_build_query( |
|
203 | 203 | [ |
204 | 204 | 'api_key' => \config\ConfAssistant::SMSSETTINGS['username'], |
205 | 205 | 'api_secret' => \config\ConfAssistant::SMSSETTINGS['password'], |
@@ -230,14 +230,14 @@ discard block |
||
230 | 230 | $loggerInstance->debug(2, 'Problem with SMS invitation: no message was sent!'); |
231 | 231 | return OutsideComm::SMS_NOTSENT; |
232 | 232 | } |
233 | - $loggerInstance->debug(2, 'Total of ' . $messageCount . ' messages were attempted to send.'); |
|
233 | + $loggerInstance->debug(2, 'Total of '.$messageCount.' messages were attempted to send.'); |
|
234 | 234 | |
235 | 235 | $totalFailures = 0; |
236 | 236 | foreach ($decoded_response['messages'] as $message) { |
237 | 237 | if ($message['status'] == 0) { |
238 | - $loggerInstance->debug(2, $message['message-id'] . ": Success"); |
|
238 | + $loggerInstance->debug(2, $message['message-id'].": Success"); |
|
239 | 239 | } else { |
240 | - $loggerInstance->debug(2, $message['message-id'] . ": Failed (failure code = " . $message['status'] . ")"); |
|
240 | + $loggerInstance->debug(2, $message['message-id'].": Failed (failure code = ".$message['status'].")"); |
|
241 | 241 | $totalFailures++; |
242 | 242 | } |
243 | 243 | } |
@@ -306,7 +306,7 @@ discard block |
||
306 | 306 | $proto = "https://"; |
307 | 307 | } |
308 | 308 | // then, send out the mail |
309 | - $message = _("Hello,") . "\n\n" . wordwrap($introTexts[$introtext] . " " . $validity, 72) . "\n\n"; |
|
309 | + $message = _("Hello,")."\n\n".wordwrap($introTexts[$introtext]." ".$validity, 72)."\n\n"; |
|
310 | 310 | // default means we don't have a Reply-To. |
311 | 311 | $replyToMessage = wordwrap(_("manually. Please do not reply to this mail; this is a send-only address.")); |
312 | 312 | |
@@ -314,8 +314,8 @@ discard block |
||
314 | 314 | // see if we are supposed to add a custom message |
315 | 315 | $customtext = $federation->getAttributes('fed:custominvite'); |
316 | 316 | if (count($customtext) > 0) { |
317 | - $message .= wordwrap(sprintf(_("Additional message from your %s administrator:"), Entity::$nomenclature_fed), 72) . "\n---------------------------------" . |
|
318 | - wordwrap($customtext[0]['value'], 72) . "\n---------------------------------\n\n"; |
|
317 | + $message .= wordwrap(sprintf(_("Additional message from your %s administrator:"), Entity::$nomenclature_fed), 72)."\n---------------------------------". |
|
318 | + wordwrap($customtext[0]['value'], 72)."\n---------------------------------\n\n"; |
|
319 | 319 | } |
320 | 320 | // and add Reply-To already now |
321 | 321 | foreach ($federation->listFederationAdmins() as $fedadmin_id) { |
@@ -331,19 +331,19 @@ discard block |
||
331 | 331 | } |
332 | 332 | $productname = \config\Master::APPEARANCE['productname']; |
333 | 333 | $consortium = \config\ConfAssistant::CONSORTIUM['display_name']; |
334 | - $message .= wordwrap(sprintf(_("To enlist as an administrator for that %s, please click on the following link:"), Entity::$nomenclature_participant), 72) . "\n\n" . |
|
335 | - $proto . $_SERVER['SERVER_NAME'] . \config\Master::PATHS['cat_base_url'] . "admin/action_enrollment.php?token=$newtoken\n\n" . |
|
336 | - wordwrap(sprintf(_("If clicking the link doesn't work, you can also go to the %s Administrator Interface at"), $productname), 72) . "\n\n" . |
|
337 | - $proto . $_SERVER['SERVER_NAME'] . \config\Master::PATHS['cat_base_url'] . "admin/\n\n" . |
|
338 | - _("and enter the invitation token") . "\n\n" . |
|
339 | - $newtoken . "\n\n$replyToMessage\n\n" . |
|
340 | - wordwrap(_("Do NOT forward the mail before the token has expired - or the recipients may be able to consume the token on your behalf!"), 72) . "\n\n" . |
|
341 | - wordwrap(sprintf(_("We wish you a lot of fun with the %s."), $productname), 72) . "\n\n" . |
|
334 | + $message .= wordwrap(sprintf(_("To enlist as an administrator for that %s, please click on the following link:"), Entity::$nomenclature_participant), 72)."\n\n". |
|
335 | + $proto.$_SERVER['SERVER_NAME'].\config\Master::PATHS['cat_base_url']."admin/action_enrollment.php?token=$newtoken\n\n". |
|
336 | + wordwrap(sprintf(_("If clicking the link doesn't work, you can also go to the %s Administrator Interface at"), $productname), 72)."\n\n". |
|
337 | + $proto.$_SERVER['SERVER_NAME'].\config\Master::PATHS['cat_base_url']."admin/\n\n". |
|
338 | + _("and enter the invitation token")."\n\n". |
|
339 | + $newtoken."\n\n$replyToMessage\n\n". |
|
340 | + wordwrap(_("Do NOT forward the mail before the token has expired - or the recipients may be able to consume the token on your behalf!"), 72)."\n\n". |
|
341 | + wordwrap(sprintf(_("We wish you a lot of fun with the %s."), $productname), 72)."\n\n". |
|
342 | 342 | sprintf(_("Sincerely,\n\nYour friendly folks from %s Operations"), $consortium); |
343 | 343 | |
344 | 344 | |
345 | 345 | // who to whom? |
346 | - $mail->FromName = \config\Master::APPEARANCE['productname'] . " Invitation System"; |
|
346 | + $mail->FromName = \config\Master::APPEARANCE['productname']." Invitation System"; |
|
347 | 347 | |
348 | 348 | if (isset(\config\Master::APPEARANCE['invitation-bcc-mail']) && \config\Master::APPEARANCE['invitation-bcc-mail'] !== NULL) { |
349 | 349 | $mail->addBCC(\config\Master::APPEARANCE['invitation-bcc-mail']); |
@@ -296,7 +296,7 @@ discard block |
||
296 | 296 | <table><tr> |
297 | 297 | <td class='icon_td'>"; |
298 | 298 | $out[] = "<img src='".$this->stateIcons[$this->globalLevelStatic]."' id='main_static_ico' class='icon'></td><td id='main_static_result'>". |
299 | - $this->globalInfo[$this->globalLevelStatic].' '. _("See the appropriate tab for details.").'</td> |
|
299 | + $this->globalInfo[$this->globalLevelStatic].' '._("See the appropriate tab for details.").'</td> |
|
300 | 300 | </tr></table>'; |
301 | 301 | if ($this->naptr > 0) { |
302 | 302 | $out[] = "<hr><strong>"._("Dynamic connectivity tests")."</strong> |
@@ -328,7 +328,7 @@ discard block |
||
328 | 328 | <td class='icon_td'><img src='".$this->stateIcons[$result->level]."' id='src".$hostindex."_img'></td> |
329 | 329 | <td id='src$hostindex' colspan=2> |
330 | 330 | "; |
331 | - $out[] = '<strong>'.($result->server ? $result->server : _("Connected to undetermined server")).'</strong><br/>'.sprintf (_("elapsed time: %sms."), $result->time_millisec).'<div>'.$result->message.'</div>'; |
|
331 | + $out[] = '<strong>'.($result->server ? $result->server : _("Connected to undetermined server")).'</strong><br/>'.sprintf(_("elapsed time: %sms."), $result->time_millisec).'<div>'.$result->message.'</div>'; |
|
332 | 332 | |
333 | 333 | if ($result->level > \core\common\Entity::L_OK && property_exists($result, 'cert_oddities')) { |
334 | 334 | foreach ($result->cert_oddities as $oddities) { |
@@ -345,9 +345,9 @@ discard block |
||
345 | 345 | } |
346 | 346 | } |
347 | 347 | if ($result->server_cert->extensions) { |
348 | - $certdesc .= '<li>' . _('Extensions') . '<ul>'; |
|
348 | + $certdesc .= '<li>'._('Extensions').'<ul>'; |
|
349 | 349 | foreach ($result->server_cert->extensions as $ekey => $eval) { |
350 | - $certdesc .= '<li>' . $ekey . ': ' . $eval; |
|
350 | + $certdesc .= '<li>'.$ekey.': '.$eval; |
|
351 | 351 | } |
352 | 352 | $certdesc .= '</ul>'; |
353 | 353 | } |
@@ -355,7 +355,7 @@ discard block |
||
355 | 355 | $more .= '<span class="morecontent"><span>'.$certdesc. |
356 | 356 | '</span><a href="" class="morelink">'._("show server certificate details").'»</a></span></div>'; |
357 | 357 | } |
358 | - if ($more != '' ) { |
|
358 | + if ($more != '') { |
|
359 | 359 | $out[] = '<tr><td> </td><td colspan="2">'.$more.'</td></tr>'; |
360 | 360 | } |
361 | 361 | $out[] = "</table></ul>"; |
@@ -379,10 +379,10 @@ discard block |
||
379 | 379 | if (isset($this->protocolsMap[$capath->IP]) && $this->protocolsMap[$capath->IP] != '') { |
380 | 380 | $prots = explode(';', $this->protocolsMap[$capath->IP]); |
381 | 381 | if (!empty($prots)) { |
382 | - $capathtest[] = ' ' . _("supported TLS protocols: "); |
|
382 | + $capathtest[] = ' '._("supported TLS protocols: "); |
|
383 | 383 | $capathtest[] = implode(', ', $prots); |
384 | 384 | if (!in_array("TLS1.3", $prots)) { |
385 | - $capathtest[] = ' ' . '<font color="red">' . _("not supported: ") . 'TLS1.3</font>'; |
|
385 | + $capathtest[] = ' '.'<font color="red">'._("not supported: ").'TLS1.3</font>'; |
|
386 | 386 | } |
387 | 387 | } |
388 | 388 | } |
@@ -405,7 +405,7 @@ discard block |
||
405 | 405 | if ($capath->certdata->validTo) { |
406 | 406 | $certdesc .= '<li>'.$this->certFields['validTo'].' '. |
407 | 407 | date_create_from_format('ymdGis', |
408 | - substr($capath->certdata->validTo, 0, -1))->format('Y-m-d H:i:s'). ' UTC'; |
|
408 | + substr($capath->certdata->validTo, 0, -1))->format('Y-m-d H:i:s').' UTC'; |
|
409 | 409 | } |
410 | 410 | if ($capath->certdata->extensions) { |
411 | 411 | if ($capath->certdata->extensions->subjectaltname) { |
@@ -428,7 +428,7 @@ discard block |
||
428 | 428 | } else { |
429 | 429 | $certdesc = '<br>'; |
430 | 430 | } |
431 | - $capathtest[] = '<div>'.($capath->message!='' ? $capath->message : _('Test failed')).'</div>'.$more; |
|
431 | + $capathtest[] = '<div>'.($capath->message != '' ? $capath->message : _('Test failed')).'</div>'.$more; |
|
432 | 432 | $capathtest[] = '</td> |
433 | 433 | </tr> |
434 | 434 | </table>'; |
@@ -455,7 +455,7 @@ discard block |
||
455 | 455 | $srefused = 0; |
456 | 456 | $cliinfo = ''; |
457 | 457 | $cliinfo .= '<li>'._('Client certificate').' <b>'.$ca->clientcertinfo->from. |
458 | - '</b>'.', '.$ca->clientcertinfo->message . |
|
458 | + '</b>'.', '.$ca->clientcertinfo->message. |
|
459 | 459 | '<br> (CA: '.$ca->clientcertinfo->issuer.')<ul>'; |
460 | 460 | foreach ($ca->certificate as $certificate) { |
461 | 461 | if ($certificate->returncode == \core\diag\RADIUSTests::RETVAL_CONNECTION_REFUSED) { |
@@ -521,7 +521,7 @@ discard block |
||
521 | 521 | } else { |
522 | 522 | $cliinfo = _('Test failed'); |
523 | 523 | $clientstest[] = "<table><tr><td class='icon_td' id='srcclient".$hostindex."_img'><img src='". |
524 | - $this->stateIcons[\core\common\Entity::L_WARN]."'></td>" . |
|
524 | + $this->stateIcons[\core\common\Entity::L_WARN]."'></td>". |
|
525 | 525 | "<td id='srcclient$hostindex'>$cliinfo</td></tr></table>"; |
526 | 526 | } |
527 | 527 | } else { |
@@ -168,27 +168,27 @@ discard block |
||
168 | 168 | { |
169 | 169 | // it could match CN or sAN:DNS, we don't care which |
170 | 170 | if (isset($this->TLS_CA_checks_result[$host]['certdata']['subject'])) { |
171 | - $this->loggerInstance->debug(4, "Checking expected server name " . $this->expectedName . |
|
172 | - " against Subject: " . $this->TLS_CA_checks_result[$host]['certdata']['subject']); |
|
171 | + $this->loggerInstance->debug(4, "Checking expected server name ".$this->expectedName. |
|
172 | + " against Subject: ".$this->TLS_CA_checks_result[$host]['certdata']['subject']); |
|
173 | 173 | // we are checking against accidental misconfig, not attacks, so loosely checking against end of string is appropriate |
174 | - if (preg_match("/CN=" . $this->expectedName . "/", $this->TLS_CA_checks_result[$host]['certdata']['subject']) === 1) { |
|
174 | + if (preg_match("/CN=".$this->expectedName."/", $this->TLS_CA_checks_result[$host]['certdata']['subject']) === 1) { |
|
175 | 175 | return TRUE; |
176 | 176 | } |
177 | 177 | } |
178 | 178 | if (isset($this->TLS_CA_checks_result[$host]['certdata']['extensions']['subjectaltname'])) { |
179 | - $this->loggerInstance->debug(4, "Checking expected server name " . $this->expectedName . " against sANs: "); |
|
179 | + $this->loggerInstance->debug(4, "Checking expected server name ".$this->expectedName." against sANs: "); |
|
180 | 180 | $this->loggerInstance->debug(4, $this->TLS_CA_checks_result[$host]['certdata']['extensions']['subjectaltname']); |
181 | 181 | $testNames = $this->TLS_CA_checks_result[$host]['certdata']['extensions']['subjectaltname']; |
182 | 182 | if (!is_array($testNames)) { |
183 | 183 | $testNames = [$testNames]; |
184 | 184 | } |
185 | 185 | foreach ($testNames as $oneName) { |
186 | - if (preg_match("/" . $this->expectedName . "/", $oneName) === 1) { |
|
186 | + if (preg_match("/".$this->expectedName."/", $oneName) === 1) { |
|
187 | 187 | return TRUE; |
188 | 188 | } |
189 | 189 | } |
190 | 190 | } |
191 | - $this->loggerInstance->debug(3, "Tried to check expected server name " . $this->expectedName . " but neither CN nor sANs matched."); |
|
191 | + $this->loggerInstance->debug(3, "Tried to check expected server name ".$this->expectedName." but neither CN nor sANs matched."); |
|
192 | 192 | |
193 | 193 | $this->TLS_CA_checks_result[$host]['cert_oddity'] = RADIUSTests::CERTPROB_DYN_SERVER_NAME_MISMATCH; |
194 | 194 | return FALSE; |
@@ -218,9 +218,9 @@ discard block |
||
218 | 218 | $this->TLS_clients_checks_result[$host]['ca'][$type]['certificate'][$k]['status'] = $cert['status']; |
219 | 219 | $this->TLS_clients_checks_result[$host]['ca'][$type]['certificate'][$k]['message'] = $this->TLS_certkeys[$cert['status']]; |
220 | 220 | $this->TLS_clients_checks_result[$host]['ca'][$type]['certificate'][$k]['expected'] = $cert['expected']; |
221 | - $add = ' -cert ' . ROOT . '/config/cli-certs/' . $cert['public'] . ' -key ' . ROOT . '/config/cli-certs/' . $cert['private']; |
|
222 | - if (!file_exists(ROOT . '/config/cli-certs/' . $cert['public']) ||!file_exists(ROOT . |
|
223 | - '/config/cli-certs/' . $cert['private'])) { |
|
221 | + $add = ' -cert '.ROOT.'/config/cli-certs/'.$cert['public'].' -key '.ROOT.'/config/cli-certs/'.$cert['private']; |
|
222 | + if (!file_exists(ROOT.'/config/cli-certs/'.$cert['public']) || !file_exists(ROOT. |
|
223 | + '/config/cli-certs/'.$cert['private'])) { |
|
224 | 224 | $this->TLS_clients_checks_result[$host]['ca'][$type]['certificate'][$k]['finalerror'] = 2; |
225 | 225 | continue; |
226 | 226 | } |
@@ -228,7 +228,7 @@ discard block |
||
228 | 228 | $this->TLS_clients_checks_result[$host]['ca'][$type]['certificate'][$k] = []; |
229 | 229 | } |
230 | 230 | // tls1_3 connections have a problem in strdout/stderr buffering |
231 | - $add .= ' ' . "-no_ssl3 -no_tls1_3"; |
|
231 | + $add .= ' '."-no_ssl3 -no_tls1_3"; |
|
232 | 232 | $opensslbabble = $this->execOpensslClient($host, $add, $this->TLS_clients_checks_result[$host]['ca'][$type]['certificate'][$k]); |
233 | 233 | $res = $this->opensslClientsResult($host, $opensslbabble, $this->TLS_clients_checks_result, $type, $k); |
234 | 234 | if ($cert['expected'] == 'PASS') { |
@@ -270,11 +270,11 @@ discard block |
||
270 | 270 | // but code analysers want this more explicit, so here is this extra |
271 | 271 | // call to escapeshellarg() |
272 | 272 | $escapedHost = escapeshellarg($host); |
273 | - $this->loggerInstance->debug(4, \config\Master::PATHS['openssl'] . " s_client -connect " . $escapedHost . " -CApath " . ROOT . "/config/ca-certs/$this->consortium/ $arg 2>&1\n"); |
|
273 | + $this->loggerInstance->debug(4, \config\Master::PATHS['openssl']." s_client -connect ".$escapedHost." -CApath ".ROOT."/config/ca-certs/$this->consortium/ $arg 2>&1\n"); |
|
274 | 274 | $time_start = microtime(true); |
275 | 275 | $opensslbabble = []; |
276 | 276 | $result = 999; // likely to become zero by openssl; don't want to initialise to zero, could cover up exec failures |
277 | - exec(\config\Master::PATHS['openssl'] . " s_client -connect " . $escapedHost . " -CApath " . ROOT . "/config/ca-certs/$this->consortium/ $arg 2>&1", $opensslbabble, $result); |
|
277 | + exec(\config\Master::PATHS['openssl']." s_client -connect ".$escapedHost." -CApath ".ROOT."/config/ca-certs/$this->consortium/ $arg 2>&1", $opensslbabble, $result); |
|
278 | 278 | $time_stop = microtime(true); |
279 | 279 | $testresults['time_millisec'] = floor(($time_stop - $time_start) * 1000); |
280 | 280 | $testresults['returncode'] = $result; |
@@ -396,7 +396,7 @@ discard block |
||
396 | 396 | private function propertyCheckPolicy($cert) |
397 | 397 | { |
398 | 398 | $oids = []; |
399 | - if (isset($cert['extensions']['certificatePolicies']) && $cert['extensions']['certificatePolicies']) { |
|
399 | + if (isset($cert['extensions']['certificatePolicies']) && $cert['extensions']['certificatePolicies']) { |
|
400 | 400 | foreach (\config\Diagnostics::RADIUSTESTS['TLS-acceptableOIDs'] as $key => $oid) { |
401 | 401 | if (preg_match("/Policy: $oid/", $cert['extensions']['certificatePolicies'])) { |
402 | 402 | $oids[$key] = $oid; |
@@ -125,6 +125,6 @@ |
||
125 | 125 | ]; |
126 | 126 | const TIMEOUTS = [ |
127 | 127 | 'ajax_radius_tests' => 15000, // miliseconds |
128 | - 'crl_download' => 10, // seconds |
|
128 | + 'crl_download' => 10, // seconds |
|
129 | 129 | ]; |
130 | 130 | } |
@@ -19,7 +19,7 @@ discard block |
||
19 | 19 | * <base_url>/copyright.php after deploying the software |
20 | 20 | */ |
21 | 21 | |
22 | -require_once dirname(dirname(__DIR__)) . "/config/_config.php"; |
|
22 | +require_once dirname(dirname(__DIR__))."/config/_config.php"; |
|
23 | 23 | |
24 | 24 | $loggerInstance = new \core\common\Logging(); |
25 | 25 | |
@@ -69,13 +69,13 @@ discard block |
||
69 | 69 | $dnsChecksOR = new \core\diag\RFC7585Tests($check_realm, "aaa+auth:radius.tls.tcp"); |
70 | 70 | } |
71 | 71 | } else { |
72 | - $error_message = _("You asked for a realm check, but we don't know the realm for this profile!") . "</p>"; |
|
72 | + $error_message = _("You asked for a realm check, but we don't know the realm for this profile!")."</p>"; |
|
73 | 73 | } |
74 | 74 | } else { // someone else's realm, and we don't know anything about it... only shallow checks |
75 | 75 | $check_realm = $validator->realm($realm ?? $_SESSION['check_realm'] ?? ""); |
76 | 76 | if ($check_realm !== FALSE) { |
77 | 77 | $_SESSION['check_realm'] = $check_realm; |
78 | - $testsuite = new \core\diag\RADIUSTests($check_realm, "@" . $check_realm); |
|
78 | + $testsuite = new \core\diag\RADIUSTests($check_realm, "@".$check_realm); |
|
79 | 79 | $dnsChecks = new \core\diag\RFC7585Tests($check_realm); |
80 | 80 | } else { |
81 | 81 | $error_message = _("No valid realm name given, cannot execute any checks!"); |
@@ -122,7 +122,7 @@ discard block |
||
122 | 122 | var listofcas = "<?php echo _("You should update your list of accredited CAs") ?>"; |
123 | 123 | var getitfrom = "<?php echo _("Get it from here.") ?>"; |
124 | 124 | var listsource = "<?php echo \config\Diagnostics::RADIUSTESTS['accreditedCAsURL'] ?>"; |
125 | - var moretext = "<?php echo _("more") . "»" ?>"; |
|
125 | + var moretext = "<?php echo _("more")."»" ?>"; |
|
126 | 126 | var lesstext = "<?php echo "«" ?>"; |
127 | 127 | var morealltext = "<?php echo _("Show detailed information for all tests") ?>"; |
128 | 128 | var eof_error = "<?php echo \core\diag\RADIUSTests::CERTPROB_UNEXPECTED_EOF ?>"; |
@@ -273,10 +273,10 @@ discard block |
||
273 | 273 | |
274 | 274 | cliinfo = cliinfo + '<li>'; |
275 | 275 | if (data.ca[key].certificate[c].finalerror && data.ca[key].certificate[c].finalerror==2) { |
276 | - cliinfo = cliinfo + ' <?php echo _("this test was skipped - no appropriate client certificate");?>' + '</ul></li>'; |
|
276 | + cliinfo = cliinfo + ' <?php echo _("this test was skipped - no appropriate client certificate"); ?>' + '</ul></li>'; |
|
277 | 277 | } else { |
278 | 278 | cliinfo = cliinfo + '<table><tbody><tr><td class="icon_td"><img class="icon" src="' + icons[level] + '" style="width: 24px;"></td><td>' + state; |
279 | - cliinfo = cliinfo + ' <?php echo "(" . sprintf(_("elapsed time: %sms."), "'+data.ca[key].certificate[c].time_millisec+' ") . ")"; ?>' + add + '</td></tr>'; |
|
279 | + cliinfo = cliinfo + ' <?php echo "(".sprintf(_("elapsed time: %sms."), "'+data.ca[key].certificate[c].time_millisec+' ").")"; ?>' + add + '</td></tr>'; |
|
280 | 280 | cliinfo = cliinfo + '</tbody></table></ul></li>'; |
281 | 281 | } |
282 | 282 | |
@@ -475,7 +475,7 @@ discard block |
||
475 | 475 | }); |
476 | 476 | } |
477 | 477 | o = o + cert_data + '</table>'; |
478 | - $("#eap_test" + data.hostindex).append('<strong><img style="position: relative; top: 2px;" src="' + icons[v.level] + '"><span style="position: relative; top: -5px; <?php echo $start;?>: 1em">' + v.eap + ' – <?php printf(_("elapsed time: %sms."), "'+v.time_millisec+' ") ?></span></strong><div class="more" style="padding-<?php echo $start;?>: 40px"><div class="morecontent"><div style="display:none; background: #eee;">' + o + '</div><a href="" class="morelink">' + moretext + '</a></div></div>'); |
|
478 | + $("#eap_test" + data.hostindex).append('<strong><img style="position: relative; top: 2px;" src="' + icons[v.level] + '"><span style="position: relative; top: -5px; <?php echo $start; ?>: 1em">' + v.eap + ' – <?php printf(_("elapsed time: %sms."), "'+v.time_millisec+' ") ?></span></strong><div class="more" style="padding-<?php echo $start; ?>: 40px"><div class="morecontent"><div style="display:none; background: #eee;">' + o + '</div><a href="" class="morelink">' + moretext + '</a></div></div>'); |
|
479 | 479 | }); |
480 | 480 | } |
481 | 481 | |
@@ -486,8 +486,8 @@ discard block |
||
486 | 486 | <?php |
487 | 487 | foreach (\config\Diagnostics::RADIUSTESTS['UDP-hosts'] as $hostindex => $host) { |
488 | 488 | print " |
489 | -$(\"#live_src" . $hostindex . "_img\").attr('src',icon_loading); |
|
490 | -$(\"#live_src" . $hostindex . "_img\").show(); |
|
489 | +$(\"#live_src" . $hostindex."_img\").attr('src',icon_loading); |
|
490 | +$(\"#live_src" . $hostindex."_img\").show(); |
|
491 | 491 | $.ajax({ |
492 | 492 | url: 'radius_tests.php?src=0&hostindex=$hostindex&realm='+realm, |
493 | 493 | type: 'POST', |
@@ -520,15 +520,15 @@ discard block |
||
520 | 520 | <?php |
521 | 521 | foreach (\config\Diagnostics::RADIUSTESTS['UDP-hosts'] as $hostindex => $host) { |
522 | 522 | if ($testedProfile !== NULL) { |
523 | - $extraarg = "profile_id: " . $testedProfile->identifier . ", "; |
|
523 | + $extraarg = "profile_id: ".$testedProfile->identifier.", "; |
|
524 | 524 | } else { |
525 | 525 | $extraarg = ""; |
526 | 526 | } |
527 | 527 | print " |
528 | -$(\"#src" . $hostindex . "_img\").attr('src',icon_loading); |
|
528 | +$(\"#src" . $hostindex."_img\").attr('src',icon_loading); |
|
529 | 529 | $(\"#src$hostindex\").html(''); |
530 | 530 | running_ajax_stat++; |
531 | -$.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'udp', $extraarg realm: realm, src: $hostindex, lang: '" . $gui->languageInstance->getLang() . "', hostindex: '$hostindex'}, hostindex: '$hostindex', error: error_handler, success: udp, dataType: 'json'}); |
|
531 | +$.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'udp', $extraarg realm: realm, src: $hostindex, lang: '".$gui->languageInstance->getLang()."', hostindex: '$hostindex'}, hostindex: '$hostindex', error: error_handler, success: udp, dataType: 'json'}); |
|
532 | 532 | "; |
533 | 533 | } |
534 | 534 | |
@@ -586,7 +586,7 @@ discard block |
||
586 | 586 | if ($check_realm === FALSE) { |
587 | 587 | print "<p>$error_message</p>"; |
588 | 588 | } else { |
589 | - print "<h1>" . sprintf(_("Realm testing for: %s"), $check_realm) . "</h1>\n"; |
|
589 | + print "<h1>".sprintf(_("Realm testing for: %s"), $check_realm)."</h1>\n"; |
|
590 | 590 | ?> |
591 | 591 | <div id="debug_out" style="display: none"></div> |
592 | 592 | <div id="tabs" style="min-width: 600px; max-width:1000px"> |
@@ -608,25 +608,25 @@ discard block |
||
608 | 608 | // NAPTR existence check |
609 | 609 | if ($dynType == "") { |
610 | 610 | $rfc7585suite = $dnsChecks; |
611 | - echo "<strong>" . _("DNS checks") . "</strong><div>"; |
|
611 | + echo "<strong>"._("DNS checks")."</strong><div>"; |
|
612 | 612 | } else { |
613 | 613 | if (count($orrealm) == 0) { |
614 | 614 | continue; |
615 | 615 | } |
616 | 616 | $rfc7585suite = $dnsChecksOR; |
617 | - echo "<strong>" . _("OpenRoaming DNS checks") . "</strong><div>"; |
|
617 | + echo "<strong>"._("OpenRoaming DNS checks")."</strong><div>"; |
|
618 | 618 | } |
619 | 619 | $naptr = $rfc7585suite->relevantNAPTR(); |
620 | 620 | if ($naptr == \core\diag\RADIUSTests::RETVAL_NOTCONFIGURED) { |
621 | 621 | if ($dynType == "") { |
622 | - echo "<tr><td>" . _("Dynamic discovery test is not configured") . "</td><td>"; |
|
622 | + echo "<tr><td>"._("Dynamic discovery test is not configured")."</td><td>"; |
|
623 | 623 | } else { |
624 | - echo "<tr><td>" . _("OpenRoaming connectivity test is not configured") . "</td><td>"; |
|
624 | + echo "<tr><td>"._("OpenRoaming connectivity test is not configured")."</td><td>"; |
|
625 | 625 | } |
626 | 626 | } else { |
627 | 627 | echo "<table>"; |
628 | 628 | // output in friendly words |
629 | - echo "<tr><td>" . _("Checking NAPTR existence:") . "</td><td>"; |
|
629 | + echo "<tr><td>"._("Checking NAPTR existence:")."</td><td>"; |
|
630 | 630 | switch ($naptr) { |
631 | 631 | case \core\diag\RFC7585Tests::RETVAL_NONAPTR: |
632 | 632 | echo _("This realm has no NAPTR records."); |
@@ -641,7 +641,7 @@ discard block |
||
641 | 641 | |
642 | 642 | // compliance checks for NAPTRs |
643 | 643 | if ($naptr > 0) { |
644 | - echo "<tr><td>" . _("Checking NAPTR compliance (flag = S and regex = {empty}):") . "</td><td>"; |
|
644 | + echo "<tr><td>"._("Checking NAPTR compliance (flag = S and regex = {empty}):")."</td><td>"; |
|
645 | 645 | $naptr_valid = $rfc7585suite->relevantNAPTRcompliance(); |
646 | 646 | switch ($naptr_valid) { |
647 | 647 | case \core\diag\RADIUSTests::RETVAL_OK: |
@@ -656,7 +656,7 @@ discard block |
||
656 | 656 | // SRV resolution |
657 | 657 | if ($naptr > 0 && $naptr_valid == \core\diag\RADIUSTests::RETVAL_OK) { |
658 | 658 | $srv = $rfc7585suite->relevantNAPTRsrvResolution(); |
659 | - echo "<tr><td>" . _("Checking SRVs:") . "</td><td>"; |
|
659 | + echo "<tr><td>"._("Checking SRVs:")."</td><td>"; |
|
660 | 660 | switch ($srv) { |
661 | 661 | case \core\diag\RADIUSTests::RETVAL_SKIPPED: |
662 | 662 | echo _("This check was skipped."); |
@@ -672,7 +672,7 @@ discard block |
||
672 | 672 | // IP addresses for the hosts |
673 | 673 | if ($naptr > 0 && $naptr_valid == \core\diag\RADIUSTests::RETVAL_OK && $srv > 0) { |
674 | 674 | $hosts = $rfc7585suite->relevantNAPTRhostnameResolution(); |
675 | - echo "<tr><td>" . _("Checking IP address resolution:") . "</td><td>"; |
|
675 | + echo "<tr><td>"._("Checking IP address resolution:")."</td><td>"; |
|
676 | 676 | switch ($srv) { |
677 | 677 | case \core\diag\RADIUSTests::RETVAL_SKIPPED: |
678 | 678 | echo _("This check was skipped."); |
@@ -689,12 +689,12 @@ discard block |
||
689 | 689 | echo "</table><br/>"; |
690 | 690 | if ($dynType == "") { |
691 | 691 | if (count($testsuite->listerrors()) == 0) { |
692 | - echo sprintf(_("Realm is <strong>%s</strong> "), _(($naptr > 0 ? "DYNAMIC" : "STATIC"))) . _("with no DNS errors encountered. Congratulations!"); |
|
692 | + echo sprintf(_("Realm is <strong>%s</strong> "), _(($naptr > 0 ? "DYNAMIC" : "STATIC")))._("with no DNS errors encountered. Congratulations!"); |
|
693 | 693 | } else { |
694 | - echo sprintf(_("Realm is <strong>%s</strong> "), _(($naptr > 0 ? "DYNAMIC" : "STATIC"))) . _("but there were DNS errors! Check them!") . " " . _("You should re-run the tests after fixing the errors; more errors might be uncovered at that point. The exact error causes are listed below."); |
|
694 | + echo sprintf(_("Realm is <strong>%s</strong> "), _(($naptr > 0 ? "DYNAMIC" : "STATIC")))._("but there were DNS errors! Check them!")." "._("You should re-run the tests after fixing the errors; more errors might be uncovered at that point. The exact error causes are listed below."); |
|
695 | 695 | echo "<div class='notacceptable'><table>"; |
696 | 696 | foreach ($testsuite->listerrors() as $details) { |
697 | - echo "<tr><td>" . $details['TYPE'] . "</td><td>" . $details['TARGET'] . "</td></tr>"; |
|
697 | + echo "<tr><td>".$details['TYPE']."</td><td>".$details['TARGET']."</td></tr>"; |
|
698 | 698 | } |
699 | 699 | echo "</table></div>"; |
700 | 700 | } |
@@ -713,7 +713,7 @@ discard block |
||
713 | 713 | $("#dynamic_tests").show(); |
714 | 714 | '; |
715 | 715 | foreach ($rfc7585suite->NAPTR_hostname_records as $hostindex => $addr) { |
716 | - $host = ($addr['family'] == "IPv6" ? "[" : "") . $addr['IP'] . ($addr['family'] == "IPv6" ? "]" : "") . ":" . $addr['port']; |
|
716 | + $host = ($addr['family'] == "IPv6" ? "[" : "").$addr['IP'].($addr['family'] == "IPv6" ? "]" : "").":".$addr['port']; |
|
717 | 717 | $expectedName = $addr['hostname']; |
718 | 718 | $ssltest = 1; |
719 | 719 | if (isset($addr['unavailable']) && $addr['unavailable']) { |
@@ -722,9 +722,9 @@ discard block |
||
722 | 722 | //$rfc6614suite = new \core\diag\RFC6614Tests([$host], $expectedName, $consortiumName); |
723 | 723 | print " |
724 | 724 | running_ajax_dyn++; |
725 | - $.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'capath', realm: realm, src: '$host', lang: '" . $gui->languageInstance->getLang() . "', hostindex: '$hostindex', expectedname: '$expectedName', ssltest: $ssltest }, hostindex: '$hostindex', error: error_handler, success: capath, dataType: 'json'}); |
|
725 | + $.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'capath', realm: realm, src: '$host', lang: '".$gui->languageInstance->getLang()."', hostindex: '$hostindex', expectedname: '$expectedName', ssltest: $ssltest }, hostindex: '$hostindex', error: error_handler, success: capath, dataType: 'json'}); |
|
726 | 726 | running_ajax_dyn++; |
727 | - $.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'clients', realm: realm, src: '$host', lang: '" . $gui->languageInstance->getLang() . "', hostindex: '$hostindex', ssltest: $ssltest }, hostindex: '$hostindex', error: error_handler, success: clients, dataType: 'json'}); |
|
727 | + $.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'clients', realm: realm, src: '$host', lang: '".$gui->languageInstance->getLang()."', hostindex: '$hostindex', ssltest: $ssltest }, hostindex: '$hostindex', error: error_handler, success: clients, dataType: 'json'}); |
|
728 | 728 | "; |
729 | 729 | } |
730 | 730 | echo "} |
@@ -740,11 +740,11 @@ discard block |
||
740 | 740 | $("#openroaming_tests").show(); |
741 | 741 | '; |
742 | 742 | foreach ($rfc7585suite->NAPTR_hostname_records as $hostindex => $addr) { |
743 | - $host = ($addr['family'] == "IPv6" ? "[" : "") . $addr['IP'] . ($addr['family'] == "IPv6" ? "]" : "") . ":" . $addr['port']; |
|
743 | + $host = ($addr['family'] == "IPv6" ? "[" : "").$addr['IP'].($addr['family'] == "IPv6" ? "]" : "").":".$addr['port']; |
|
744 | 744 | $expectedName = $addr['hostname']; |
745 | 745 | print " |
746 | 746 | running_ajax_openroaming++; |
747 | - $.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'openroamingcapath', realm: realm, src: '$host', lang: '" . $gui->languageInstance->getLang() . "', hostindex: '$hostindex', expectedname: '$expectedName', ssltest: $ssltest, protocols: '$protstr' }, hostindex: '$hostindex', openroaming: true, error: error_handler, success: capath, dataType: 'json'}); |
|
747 | + $.ajax({url:'radius_tests.php', timeout: ajax_timeout, data:{test_type: 'openroamingcapath', realm: realm, src: '$host', lang: '".$gui->languageInstance->getLang()."', hostindex: '$hostindex', expectedname: '$expectedName', ssltest: $ssltest, protocols: '$protstr' }, hostindex: '$hostindex', openroaming: true, error: error_handler, success: capath, dataType: 'json'}); |
|
748 | 748 | "; |
749 | 749 | } |
750 | 750 | echo "} |
@@ -757,18 +757,18 @@ discard block |
||
757 | 757 | $naptrs[1] = $naptr; |
758 | 758 | } |
759 | 759 | } |
760 | - echo "<strong>" . _("Static connectivity tests") . "</strong> |
|
760 | + echo "<strong>"._("Static connectivity tests")."</strong> |
|
761 | 761 | <table><tr> |
762 | 762 | <td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='main_static_ico' class='icon'></td><td id='main_static_result' style='display:none'> </td> |
763 | 763 | </tr></table>"; |
764 | 764 | if ($naptrs[0] > 0) { |
765 | - echo "<hr><strong>" . _("Dynamic connectivity tests") . "</strong> |
|
765 | + echo "<hr><strong>"._("Dynamic connectivity tests")."</strong> |
|
766 | 766 | <table><tr> |
767 | 767 | <td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='main_dynamic_ico' class='icon'></td><td id='main_dynamic_result' style='display:none'> </td> |
768 | 768 | </tr></table>"; |
769 | 769 | } |
770 | 770 | if (isset($orrealm) && count($orrealm) && ($naptrs[1] > 0)) { |
771 | - echo "<hr><strong>" . _("OpenRoaming connectivity tests") . "</strong> |
|
771 | + echo "<hr><strong>"._("OpenRoaming connectivity tests")."</strong> |
|
772 | 772 | <table><tr> |
773 | 773 | <td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='main_openroaming_ico' class='icon'></td><td id='main_openroaming_result' style='display:none'> </td> |
774 | 774 | </tr></table>"; |
@@ -788,12 +788,12 @@ discard block |
||
788 | 788 | print "<p>"; |
789 | 789 | foreach (\config\Diagnostics::RADIUSTESTS['UDP-hosts'] as $hostindex => $host) { |
790 | 790 | print "<hr>"; |
791 | - printf(_("Testing from: %s"), "<strong>" . \config\Diagnostics::RADIUSTESTS['UDP-hosts'][$hostindex]['display_name'] . "</strong>"); |
|
791 | + printf(_("Testing from: %s"), "<strong>".\config\Diagnostics::RADIUSTESTS['UDP-hosts'][$hostindex]['display_name']."</strong>"); |
|
792 | 792 | print "<table id='results$hostindex' style='width:100%' class='udp_results'> |
793 | 793 | <tr> |
794 | -<td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='src" . $hostindex . "_img'></td> |
|
794 | +<td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='src".$hostindex."_img'></td> |
|
795 | 795 | <td id='src$hostindex' colspan=2> |
796 | -" . _("testing...") . " |
|
796 | +"._("testing...")." |
|
797 | 797 | </td> |
798 | 798 | </tr> |
799 | 799 | </table>"; |
@@ -804,7 +804,7 @@ discard block |
||
804 | 804 | |
805 | 805 | </div> |
806 | 806 | <?php |
807 | - for ($i=3; $i<5; $i++) { |
|
807 | + for ($i = 3; $i < 5; $i++) { |
|
808 | 808 | if ($i == 3 && $naptrs[0] <= 0) { |
809 | 809 | continue; |
810 | 810 | } |
@@ -819,15 +819,15 @@ discard block |
||
819 | 819 | $rfc7585suite = $dnsChecksOR; |
820 | 820 | } |
821 | 821 | ?> |
822 | - <div id="tabs-<?php echo $i;?>"> |
|
823 | - <button id="run_<?php if ($i==3) echo 'd'; else echo 'o';?>_tests"; onclick="run_<?php if ($i==3) echo 'dynamic'; else echo 'openroaming';?>()"><?php if ($i==3) echo _("Repeat dynamic connectivity tests"); else echo _("Repeat OpenRoaming connectivity tests");?></button> |
|
822 | + <div id="tabs-<?php echo $i; ?>"> |
|
823 | + <button id="run_<?php if ($i == 3) echo 'd'; else echo 'o'; ?>_tests"; onclick="run_<?php if ($i == 3) echo 'dynamic'; else echo 'openroaming'; ?>()"><?php if ($i == 3) echo _("Repeat dynamic connectivity tests"); else echo _("Repeat OpenRoaming connectivity tests"); ?></button> |
|
824 | 824 | |
825 | 825 | <?php |
826 | 826 | echo "<div id='"; |
827 | - if ($i==3) { echo 'dynamic'; } else { echo 'openroaming'; } |
|
827 | + if ($i == 3) { echo 'dynamic'; } else { echo 'openroaming'; } |
|
828 | 828 | echo "_tests'><fieldset class='option_container'> |
829 | 829 | <legend><strong>"; |
830 | - if ($i==3) { |
|
830 | + if ($i == 3) { |
|
831 | 831 | echo _("DYNAMIC connectivity tests"); |
832 | 832 | } else { |
833 | 833 | echo _("OpenRoaming connectivity tests"); |
@@ -841,11 +841,11 @@ discard block |
||
841 | 841 | } |
842 | 842 | $resultstoprint = []; |
843 | 843 | if (count($rfc7585suite->NAPTR_hostname_records) > 0) { |
844 | - $resultstoprint[] = '<div style="align:'.$end.'; display: none;" id="' . $prefix1 . '_result_fail">' . _("Some errors were found during the tests, see below") . '</div><div style="align:'.$end.'; display: none;" id="' . $prefix1 . '_result_pass">' . _("All tests passed, congratulations!") . '</div>'; |
|
845 | - $resultstoprint[] = '<div style="align:'.$end.';"><a href="" class="moreall">' . _('Show detailed information for all tests') . '</a></div>' . '<p><strong>' . _("Checking server handshake...") . "</strong><p>"; |
|
844 | + $resultstoprint[] = '<div style="align:'.$end.'; display: none;" id="'.$prefix1.'_result_fail">'._("Some errors were found during the tests, see below").'</div><div style="align:'.$end.'; display: none;" id="'.$prefix1.'_result_pass">'._("All tests passed, congratulations!").'</div>'; |
|
845 | + $resultstoprint[] = '<div style="align:'.$end.';"><a href="" class="moreall">'._('Show detailed information for all tests').'</a></div>'.'<p><strong>'._("Checking server handshake...")."</strong><p>"; |
|
846 | 846 | foreach ($rfc7585suite->NAPTR_hostname_records as $hostindex => $addr) { |
847 | - $bracketaddr = ($addr["family"] == "IPv6" ? "[" . $addr["IP"] . "]" : $addr["IP"]); |
|
848 | - $resultstoprint[] = '<p><strong>' . $bracketaddr . ' TCP/' . $addr['port'] . '</strong> (' . $addr['hostname'] . ')'; |
|
847 | + $bracketaddr = ($addr["family"] == "IPv6" ? "[".$addr["IP"]."]" : $addr["IP"]); |
|
848 | + $resultstoprint[] = '<p><strong>'.$bracketaddr.' TCP/'.$addr['port'].'</strong> ('.$addr['hostname'].')'; |
|
849 | 849 | $prots = []; |
850 | 850 | if (isset($addr['protocols'])) { |
851 | 851 | foreach ($addr['protocols'] as $protocol) { |
@@ -855,18 +855,18 @@ discard block |
||
855 | 855 | } |
856 | 856 | } |
857 | 857 | if (!empty($prots)) { |
858 | - $resultstoprint[] = ' ' . _("supported TLS protocols: "); |
|
858 | + $resultstoprint[] = ' '._("supported TLS protocols: "); |
|
859 | 859 | $resultstoprint[] = implode(', ', $prots); |
860 | 860 | if (!isset($addr['istls13']) || !$addr['istls13']) { |
861 | - $resultstoprint[] = ' ' . '<font color="red">' . _("not supported: ") . 'TLS1.3</font>'; |
|
861 | + $resultstoprint[] = ' '.'<font color="red">'._("not supported: ").'TLS1.3</font>'; |
|
862 | 862 | } |
863 | 863 | } |
864 | 864 | $resultstoprint[] = '<ul style="list-style-type: none;" class="caresult"><li>'; |
865 | - $resultstoprint[] = "<table id='" . $prefix2 . "caresults$hostindex' style='width:100%'> |
|
865 | + $resultstoprint[] = "<table id='".$prefix2."caresults$hostindex' style='width:100%'> |
|
866 | 866 | <tr> |
867 | -<td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='" . $prefix2 . "srcca$hostindex" . "_img'></td> |
|
868 | -<td id='" . $prefix2 . "srcca$hostindex'> |
|
869 | -" . _("testing...") . " |
|
867 | +<td class='icon_td'><img src='../resources/images/icons/loading51.gif' id='".$prefix2."srcca$hostindex"."_img'></td> |
|
868 | +<td id='" . $prefix2."srcca$hostindex'> |
|
869 | +"._("testing...")." |
|
870 | 870 | </td> |
871 | 871 | </tr> |
872 | 872 | </table>"; |
@@ -874,26 +874,26 @@ discard block |
||
874 | 874 | } |
875 | 875 | $clientstest = []; |
876 | 876 | foreach ($rfc7585suite->NAPTR_hostname_records as $hostindex => $addr) { |
877 | - $clientstest[] = '<p><strong>' . $addr['IP'] . ' TCP/' . $addr['port'] . '</strong></p><ol>'; |
|
878 | - $clientstest[] = "<span id='" . $prefix2 . "clientresults$hostindex'><table style='width:100%'> |
|
877 | + $clientstest[] = '<p><strong>'.$addr['IP'].' TCP/'.$addr['port'].'</strong></p><ol>'; |
|
878 | + $clientstest[] = "<span id='".$prefix2."clientresults$hostindex'><table style='width:100%'> |
|
879 | 879 | <tr> |
880 | 880 | <td class='icon_td'>"; |
881 | - if ($i == 4 ) { |
|
881 | + if ($i == 4) { |
|
882 | 882 | $clientstest[] = "<!--"; |
883 | 883 | } |
884 | - $clientstest[] = "<img src='../resources/images/icons/loading51.gif' id='" . $prefix2 . "srcclient$hostindex" . "_img'></td> |
|
885 | -<td id='" . $prefix2 . "srcclient$hostindex'> |
|
886 | -" . _("testing..."); |
|
884 | + $clientstest[] = "<img src='../resources/images/icons/loading51.gif' id='".$prefix2."srcclient$hostindex"."_img'></td> |
|
885 | +<td id='" . $prefix2."srcclient$hostindex'> |
|
886 | +"._("testing..."); |
|
887 | 887 | |
888 | - if ($i == 4 ) { |
|
889 | - $clientstest[] = "-->" . _("not implemented yet"); |
|
888 | + if ($i == 4) { |
|
889 | + $clientstest[] = "-->"._("not implemented yet"); |
|
890 | 890 | } |
891 | 891 | $clientstest[] = "</td></tr></table></span>"; |
892 | 892 | $clientstest[] = '</ol>'; |
893 | 893 | } |
894 | 894 | echo '<div style="align:'.$end.';">'; |
895 | 895 | echo join('', $resultstoprint); |
896 | - echo '<span id="' . $prefix2 . 'clientstest" style="display: none;"><p><hr><b>' . _('Checking if certificates from CAs are accepted...') . '</b><p>' . _('A few client certificates will be tested to check if servers are resistant to some certificate problems.') . '<p>'; |
|
896 | + echo '<span id="'.$prefix2.'clientstest" style="display: none;"><p><hr><b>'._('Checking if certificates from CAs are accepted...').'</b><p>'._('A few client certificates will be tested to check if servers are resistant to some certificate problems.').'<p>'; |
|
897 | 897 | print join('', $clientstest); |
898 | 898 | echo '</span>'; |
899 | 899 | echo '</div>'; |
@@ -907,7 +907,7 @@ discard block |
||
907 | 907 | // check if truncates/dies on Operator-Name |
908 | 908 | if ($my_profile !== NULL) { |
909 | 909 | echo "<div id='tabs-n'><fieldset class='option_container'> |
910 | - <legend><strong>" . _("Live login test") . "</strong></legend>"; |
|
910 | + <legend><strong>" . _("Live login test")."</strong></legend>"; |
|
911 | 911 | $prof_compl = $my_profile->getEapMethodsinOrderOfPreference(1); |
912 | 912 | if (count($prof_compl) > 0) { |
913 | 913 | $passwordReqired = FALSE; |
@@ -920,34 +920,34 @@ discard block |
||
920 | 920 | $clientCertRequired = TRUE; |
921 | 921 | } |
922 | 922 | } |
923 | - echo "<div id='disposable_credential_container'><p>" . _("If you enter an existing login credential here, you can test the actual authentication from various checkpoints all over the world.") . "</p> |
|
924 | - <p>" . _("The test will use all EAP types you have set in your profile information to check whether the right CAs and server names are used, and of course whether the login with these credentials and the given EAP type actually worked. If you have set anonymous outer ID, the test will use that.") . "</p> |
|
925 | - <p>" . _("Note: the tool purposefully does not offer you to save these credentials, and they will never be saved in any way on the server side. Please use only <strong>temporary test accounts</strong> here; permanently valid test accounts in the wild are considered harmful!") . "</p></div> |
|
923 | + echo "<div id='disposable_credential_container'><p>"._("If you enter an existing login credential here, you can test the actual authentication from various checkpoints all over the world.")."</p> |
|
924 | + <p>" . _("The test will use all EAP types you have set in your profile information to check whether the right CAs and server names are used, and of course whether the login with these credentials and the given EAP type actually worked. If you have set anonymous outer ID, the test will use that.")."</p> |
|
925 | + <p>" . _("Note: the tool purposefully does not offer you to save these credentials, and they will never be saved in any way on the server side. Please use only <strong>temporary test accounts</strong> here; permanently valid test accounts in the wild are considered harmful!")."</p></div> |
|
926 | 926 | <form enctype='multipart/form-data' id='live_form' accept-charset='UTF-8'> |
927 | 927 | <input type='hidden' name='test_type' value='udp_login'> |
928 | - <input type='hidden' name='lang' value='" . $gui->languageInstance->getLang() . "'> |
|
929 | - <input type='hidden' name='profile_id' value='" . $my_profile->identifier . "'> |
|
928 | + <input type='hidden' name='lang' value='" . $gui->languageInstance->getLang()."'> |
|
929 | + <input type='hidden' name='profile_id' value='" . $my_profile->identifier."'> |
|
930 | 930 | <table id='live_tests'>"; |
931 | 931 | // if any password based EAP methods are available enable this section |
932 | 932 | if ($passwordReqired) { |
933 | - echo "<tr><td colspan='2'><strong>" . _("Password-based EAP types") . "</strong></td></tr> |
|
934 | - <tr><td>" . _("Real (inner) username:") . "</td><td><input type='text' id='username' class='mandatory' name='username'/></td></tr>"; |
|
935 | - echo "<tr><td>" . _("Anonymous outer ID (optional):") . "</td><td><input type='text' id='outer_username' name='outer_username'/></td></tr>"; |
|
936 | - echo "<tr><td>" . _("Password:") . "</td><td><input type='text' id='password' class='mandatory' name='password'/></td></tr>"; |
|
933 | + echo "<tr><td colspan='2'><strong>"._("Password-based EAP types")."</strong></td></tr> |
|
934 | + <tr><td>" . _("Real (inner) username:")."</td><td><input type='text' id='username' class='mandatory' name='username'/></td></tr>"; |
|
935 | + echo "<tr><td>"._("Anonymous outer ID (optional):")."</td><td><input type='text' id='outer_username' name='outer_username'/></td></tr>"; |
|
936 | + echo "<tr><td>"._("Password:")."</td><td><input type='text' id='password' class='mandatory' name='password'/></td></tr>"; |
|
937 | 937 | } |
938 | 938 | // ask for cert + privkey if TLS-based method is active |
939 | 939 | if ($clientCertRequired) { |
940 | - echo "<tr><td colspan='2'><strong>" . _("Certificate-based EAP types") . "</strong></td></tr> |
|
941 | - <tr><td>" . _("Certificate file (.p12 or .pfx):") . "</td><td><input type='file' id='cert' accept='application/x-pkcs12' name='cert'/></td></tr> |
|
942 | - <tr><td>" . _("Certificate password, if any:") . "</td><td><input type='text' id='privkey' name='privkey_pass'/></td></tr> |
|
943 | - <tr><td>" . _("Username, if different from certificate Subject:") . "</td><td><input type='text' id='tls_username' name='tls_username'/></td></tr>"; |
|
940 | + echo "<tr><td colspan='2'><strong>"._("Certificate-based EAP types")."</strong></td></tr> |
|
941 | + <tr><td>" . _("Certificate file (.p12 or .pfx):")."</td><td><input type='file' id='cert' accept='application/x-pkcs12' name='cert'/></td></tr> |
|
942 | + <tr><td>" . _("Certificate password, if any:")."</td><td><input type='text' id='privkey' name='privkey_pass'/></td></tr> |
|
943 | + <tr><td>" . _("Username, if different from certificate Subject:")."</td><td><input type='text' id='tls_username' name='tls_username'/></td></tr>"; |
|
944 | 944 | } |
945 | - echo "<tr><td colspan='2'><button id='submit_credentials'>" . _("Submit credentials") . "</button></td></tr></table></form>"; |
|
945 | + echo "<tr><td colspan='2'><button id='submit_credentials'>"._("Submit credentials")."</button></td></tr></table></form>"; |
|
946 | 946 | echo "<div id='live_login_results' style='display:none'>"; |
947 | 947 | foreach (\config\Diagnostics::RADIUSTESTS['UDP-hosts'] as $hostindex => $host) { |
948 | 948 | print "<hr>"; |
949 | - printf(_("Testing from: %s"), "<strong>" . \config\Diagnostics::RADIUSTESTS['UDP-hosts'][$hostindex]['display_name'] . "</strong>"); |
|
950 | - print "<span style='position:relative'><img src='../resources/images/icons/loading51.gif' id='live_src" . $hostindex . "_img' style='width:24px; position: absolute; $start: 20px; bottom: 0px; '></span>"; |
|
949 | + printf(_("Testing from: %s"), "<strong>".\config\Diagnostics::RADIUSTESTS['UDP-hosts'][$hostindex]['display_name']."</strong>"); |
|
950 | + print "<span style='position:relative'><img src='../resources/images/icons/loading51.gif' id='live_src".$hostindex."_img' style='width:24px; position: absolute; $start: 20px; bottom: 0px; '></span>"; |
|
951 | 951 | print "<div id='eap_test$hostindex' class='eap_test_results'></div>"; |
952 | 952 | } |
953 | 953 | echo "</div>"; |
@@ -962,9 +962,9 @@ discard block |
||
962 | 962 | } |
963 | 963 | |
964 | 964 | if (isset($_POST['comefrom'])) { |
965 | - $return = htmlspecialchars_decode($_POST['comefrom']) . ( $inst_id ? "?inst_id=" . $inst_id : "" ); |
|
965 | + $return = htmlspecialchars_decode($_POST['comefrom']).($inst_id ? "?inst_id=".$inst_id : ""); |
|
966 | 966 | echo "<form method='post' action='$return' accept-charset='UTF-8'> |
967 | - <button type='submit' name='submitbutton' value='" . web\lib\common\FormElements::BUTTON_CLOSE . "'>" . sprintf(_("Return to %s administrator area"), core\common\Entity::$nomenclature_idp) . "</button>" |
|
967 | + <button type='submit' name='submitbutton' value='".web\lib\common\FormElements::BUTTON_CLOSE."'>".sprintf(_("Return to %s administrator area"), core\common\Entity::$nomenclature_idp)."</button>" |
|
968 | 968 | . "</form>"; |
969 | 969 | } |
970 | 970 | if ($check_realm !== FALSE) { |
@@ -174,7 +174,7 @@ discard block |
||
174 | 174 | 'bg' => ['display' => 'Български', 'locale' => 'bg_BG.utf8', 'latin_based' => FALSE, 'rtl' => FALSE], |
175 | 175 | 'ca' => ['display' => 'Català', 'locale' => 'ca_ES.utf8', 'latin_based' => TRUE, 'rtl' => FALSE], |
176 | 176 | 'cs' => ['display' => 'Čeština', 'locale' => 'cs_CZ.utf8', 'latin_based' => TRUE, 'rtl' => FALSE], |
177 | - 'cy' => ['display' => 'Cymraeg', 'locale' => 'cy_GB.utf8', 'latin_based' => TRUE, 'rtl' => FALSE], |
|
177 | + 'cy' => ['display' => 'Cymraeg', 'locale' => 'cy_GB.utf8', 'latin_based' => TRUE, 'rtl' => FALSE], |
|
178 | 178 | 'de' => ['display' => 'Deutsch', 'locale' => 'de_DE.utf8', 'latin_based' => TRUE, 'rtl' => FALSE], |
179 | 179 | 'el' => ['display' => 'Ελληνικά', 'locale' => 'el_GR.utf8', 'latin_based' => FALSE, 'rtl' => FALSE], |
180 | 180 | 'en' => ['display' => 'English(GB)', 'locale' => 'en_GB.utf8', 'latin_based' => TRUE, 'rtl' => FALSE], |
@@ -221,7 +221,7 @@ discard block |
||
221 | 221 | 'db' => 'cat', |
222 | 222 | 'user' => 'kitty', |
223 | 223 | 'pass' => 'somepass', |
224 | - 'readonly' => FALSE,], |
|
224 | + 'readonly' => FALSE, ], |
|
225 | 225 | // this DB stores diagnostics data. The connection details can be |
226 | 226 | // identical to INST as there is no table overlap |
227 | 227 | 'DIAGNOSTICS' => [ |
@@ -229,7 +229,7 @@ discard block |
||
229 | 229 | 'db' => 'cat', |
230 | 230 | 'user' => 'kitty', |
231 | 231 | 'pass' => 'somepass', |
232 | - 'readonly' => FALSE,], |
|
232 | + 'readonly' => FALSE, ], |
|
233 | 233 | // this slice of DB user is about the downloads table. The corresponding |
234 | 234 | // DB user should have write access to update statistics and the cache |
235 | 235 | // locations of installers. |
@@ -239,7 +239,7 @@ discard block |
||
239 | 239 | 'db' => 'cat', |
240 | 240 | 'user' => 'kitty', |
241 | 241 | 'pass' => 'somepass', |
242 | - 'readonly' => FALSE,], |
|
242 | + 'readonly' => FALSE, ], |
|
243 | 243 | // this slice of DB use is about user management in the user_options |
244 | 244 | // table. Giving the corresponding user only read-only access means that |
245 | 245 | // all user properties have to "magically" occur in the table by OOB |
@@ -250,7 +250,7 @@ discard block |
||
250 | 250 | 'db' => 'cat', |
251 | 251 | 'user' => 'kitty', |
252 | 252 | 'pass' => 'somepass', |
253 | - 'readonly' => FALSE,], |
|
253 | + 'readonly' => FALSE, ], |
|
254 | 254 | /* If you use this tool in conjunction with an external customer management database, you can configure that every |
255 | 255 | * institution entry in CAT MUST correspond to a customer entry in an external database. If you want this, set this |
256 | 256 | * config variable to TRUE. |
@@ -276,7 +276,7 @@ discard block |
||
276 | 276 | 'db' => 'customer_db', |
277 | 277 | 'user' => 'customerservice', |
278 | 278 | 'pass' => '2lame4u', |
279 | - 'readonly' => TRUE,], |
|
279 | + 'readonly' => TRUE, ], |
|
280 | 280 | /* |
281 | 281 | * EXTERNAL_SOURCE is the source only used in the caching script, if you |
282 | 282 | * do not use local caching then these settings are irrelevant |
@@ -286,7 +286,7 @@ discard block |
||
286 | 286 | 'db' => 'customer_db', |
287 | 287 | 'user' => 'customerservice', |
288 | 288 | 'pass' => '2lame4u', |
289 | - 'readonly' => TRUE,], |
|
289 | + 'readonly' => TRUE, ], |
|
290 | 290 | |
291 | 291 | 'enforce-external-sync' => TRUE, |
292 | 292 | ]; |
@@ -165,7 +165,7 @@ discard block |
||
165 | 165 | } |
166 | 166 | } |
167 | 167 | |
168 | - $this->loggerInstance->debug(4, "RADIUSTests is in opMode " . $this->opMode . ", parameters were: $realm, $outerUsernameForChecks, " . /** @scrutinizer ignore-type */ print_r($supportedEapTypes, true)); |
|
168 | + $this->loggerInstance->debug(4, "RADIUSTests is in opMode ".$this->opMode.", parameters were: $realm, $outerUsernameForChecks, "./** @scrutinizer ignore-type */ print_r($supportedEapTypes, true)); |
|
169 | 169 | $this->loggerInstance->debug(4, /** @scrutinizer ignore-type */ print_r($expectedServerNames, true)); |
170 | 170 | $this->loggerInstance->debug(4, /** @scrutinizer ignore-type */ print_r($expectedCABundle, true)); |
171 | 171 | |
@@ -252,7 +252,7 @@ discard block |
||
252 | 252 | $returnarray[] = RADIUSTests::CERTPROB_WILDCARD_IN_NAME; |
253 | 253 | continue; // otherwise we'd ALSO complain that it's not a real hostname |
254 | 254 | } |
255 | - if ($onename != "" && filter_var("foo@" . idn_to_ascii($onename), FILTER_VALIDATE_EMAIL) === FALSE) { |
|
255 | + if ($onename != "" && filter_var("foo@".idn_to_ascii($onename), FILTER_VALIDATE_EMAIL) === FALSE) { |
|
256 | 256 | $returnarray[] = RADIUSTests::CERTPROB_NOT_A_HOSTNAME; |
257 | 257 | } |
258 | 258 | } |
@@ -278,7 +278,7 @@ discard block |
||
278 | 278 | $probValue = RADIUSTests::CERTPROB_SHA1_SIGNATURE; |
279 | 279 | $returnarray[] = $probValue; |
280 | 280 | } |
281 | - $this->loggerInstance->debug(4, "CERT IS: " . /** @scrutinizer ignore-type */ print_r($intermediateCa, TRUE)); |
|
281 | + $this->loggerInstance->debug(4, "CERT IS: "./** @scrutinizer ignore-type */ print_r($intermediateCa, TRUE)); |
|
282 | 282 | if ($intermediateCa['basicconstraints_set'] == 0) { |
283 | 283 | $returnarray[] = RADIUSTests::CERTPROB_NO_BASICCONSTRAINTS; |
284 | 284 | } |
@@ -326,7 +326,7 @@ discard block |
||
326 | 326 | public function udpReachability($probeindex, $opnameCheck = TRUE, $frag = TRUE) { |
327 | 327 | // for EAP-TLS to be a viable option, we need to pass a random client cert to make eapol_test happy |
328 | 328 | // the following PEM data is one of the SENSE EAPLab client certs (not secret at all) |
329 | - $clientcert = file_get_contents(dirname(__FILE__) . "/clientcert.p12"); |
|
329 | + $clientcert = file_get_contents(dirname(__FILE__)."/clientcert.p12"); |
|
330 | 330 | if ($clientcert === FALSE) { |
331 | 331 | throw new Exception("A dummy client cert is part of the source distribution, but could not be loaded!"); |
332 | 332 | } |
@@ -335,7 +335,7 @@ discard block |
||
335 | 335 | if ($this->opMode == self::RADIUS_TEST_OPERATION_MODE_THOROUGH) { |
336 | 336 | return $this->udpLogin($probeindex, $this->supportedEapTypes[0]->getArrayRep(), $this->outerUsernameForChecks, 'eaplab', $opnameCheck, $frag, $clientcert); |
337 | 337 | } |
338 | - return $this->udpLogin($probeindex, \core\common\EAP::EAPTYPE_ANY, "cat-connectivity-test@" . $this->realm, 'eaplab', $opnameCheck, $frag, $clientcert); |
|
338 | + return $this->udpLogin($probeindex, \core\common\EAP::EAPTYPE_ANY, "cat-connectivity-test@".$this->realm, 'eaplab', $opnameCheck, $frag, $clientcert); |
|
339 | 339 | } |
340 | 340 | |
341 | 341 | /** |
@@ -356,7 +356,7 @@ discard block |
||
356 | 356 | return RADIUSTests::CERTPROB_NO_CDP_HTTP; |
357 | 357 | } |
358 | 358 | // first and second sub-match is the full URL... check it |
359 | - $crlcontent = \core\common\OutsideComm::downloadFile(trim($crlUrl[1] . $crlUrl[2]), \config\Diagnostics::TIMEOUTS['crl_download']); |
|
359 | + $crlcontent = \core\common\OutsideComm::downloadFile(trim($crlUrl[1].$crlUrl[2]), \config\Diagnostics::TIMEOUTS['crl_download']); |
|
360 | 360 | if ($crlcontent === FALSE) { |
361 | 361 | return RADIUSTests::CERTPROB_NO_CRL_AT_CDP_URL; |
362 | 362 | } |
@@ -371,7 +371,7 @@ discard block |
||
371 | 371 | // $pem = chunk_split(base64_encode($crlcontent), 64, "\n"); |
372 | 372 | // inspired by https://stackoverflow.com/questions/2390604/how-to-pass-variables-as-stdin-into-command-line-from-php |
373 | 373 | |
374 | - $proc = \config\Master::PATHS['openssl'] . " crl -inform der"; |
|
374 | + $proc = \config\Master::PATHS['openssl']." crl -inform der"; |
|
375 | 375 | $descriptorspec = [ |
376 | 376 | 0 => ["pipe", "r"], |
377 | 377 | 1 => ["pipe", "w"], |
@@ -409,7 +409,7 @@ discard block |
||
409 | 409 | $origLength = strlen($hex); |
410 | 410 | for ($i = 1; $i < $origLength; $i++) { |
411 | 411 | if ($i % 2 == 1 && $i != strlen($hex)) { |
412 | - $spaced .= $hex[$i] . " "; |
|
412 | + $spaced .= $hex[$i]." "; |
|
413 | 413 | } else { |
414 | 414 | $spaced .= $hex[$i]; |
415 | 415 | } |
@@ -534,19 +534,19 @@ discard block |
||
534 | 534 | $eapText = \core\common\EAP::eapDisplayName($eaptype); |
535 | 535 | $config = ' |
536 | 536 | network={ |
537 | - ssid="' . \config\Master::APPEARANCE['productname'] . ' testing" |
|
537 | + ssid="' . \config\Master::APPEARANCE['productname'].' testing" |
|
538 | 538 | key_mgmt=WPA-EAP |
539 | 539 | proto=WPA2 |
540 | 540 | pairwise=CCMP |
541 | 541 | group=CCMP |
542 | 542 | '; |
543 | 543 | // phase 1 |
544 | - $config .= 'eap=' . $eapText['OUTER'] . "\n"; |
|
544 | + $config .= 'eap='.$eapText['OUTER']."\n"; |
|
545 | 545 | $logConfig = $config; |
546 | 546 | // phase 2 if applicable; all inner methods have passwords |
547 | 547 | if (isset($eapText['INNER']) && $eapText['INNER'] != "") { |
548 | - $config .= ' phase2="auth=' . $eapText['INNER'] . "\"\n"; |
|
549 | - $logConfig .= ' phase2="auth=' . $eapText['INNER'] . "\"\n"; |
|
548 | + $config .= ' phase2="auth='.$eapText['INNER']."\"\n"; |
|
549 | + $logConfig .= ' phase2="auth='.$eapText['INNER']."\"\n"; |
|
550 | 550 | } |
551 | 551 | // all methods set a password, except EAP-TLS |
552 | 552 | if ($eaptype != \core\common\EAP::EAPTYPE_TLS) { |
@@ -562,11 +562,11 @@ discard block |
||
562 | 562 | } |
563 | 563 | |
564 | 564 | // inner identity |
565 | - $config .= ' identity="' . $inner . "\"\n"; |
|
566 | - $logConfig .= ' identity="' . $inner . "\"\n"; |
|
565 | + $config .= ' identity="'.$inner."\"\n"; |
|
566 | + $logConfig .= ' identity="'.$inner."\"\n"; |
|
567 | 567 | // outer identity, may be equal |
568 | - $config .= ' anonymous_identity="' . $outer . "\"\n"; |
|
569 | - $logConfig .= ' anonymous_identity="' . $outer . "\"\n"; |
|
568 | + $config .= ' anonymous_identity="'.$outer."\"\n"; |
|
569 | + $logConfig .= ' anonymous_identity="'.$outer."\"\n"; |
|
570 | 570 | // done |
571 | 571 | $config .= "}"; |
572 | 572 | $logConfig .= "}"; |
@@ -627,13 +627,13 @@ discard block |
||
627 | 627 | * @return string the command-line for eapol_test |
628 | 628 | */ |
629 | 629 | private function eapolTestConfig($probeindex, $opName, $frag) { |
630 | - $cmdline = \config\Diagnostics::PATHS['eapol_test'] . |
|
631 | - " -a " . \config\Diagnostics::RADIUSTESTS['UDP-hosts'][$probeindex]['ip'] . |
|
632 | - " -s " . \config\Diagnostics::RADIUSTESTS['UDP-hosts'][$probeindex]['secret'] . |
|
633 | - " -o serverchain.pem" . |
|
634 | - " -c ./udp_login_test.conf" . |
|
635 | - " -M 22:44:66:CA:20:" . sprintf("%02d", $probeindex) . " " . |
|
636 | - " -t " . \config\Diagnostics::RADIUSTESTS['UDP-hosts'][$probeindex]['timeout'] . " "; |
|
630 | + $cmdline = \config\Diagnostics::PATHS['eapol_test']. |
|
631 | + " -a ".\config\Diagnostics::RADIUSTESTS['UDP-hosts'][$probeindex]['ip']. |
|
632 | + " -s ".\config\Diagnostics::RADIUSTESTS['UDP-hosts'][$probeindex]['secret']. |
|
633 | + " -o serverchain.pem". |
|
634 | + " -c ./udp_login_test.conf". |
|
635 | + " -M 22:44:66:CA:20:".sprintf("%02d", $probeindex)." ". |
|
636 | + " -t ".\config\Diagnostics::RADIUSTESTS['UDP-hosts'][$probeindex]['timeout']." "; |
|
637 | 637 | if ($opName) { |
638 | 638 | $cmdline .= '-N126:s:"1cat.eduroam.org" '; |
639 | 639 | } |
@@ -662,10 +662,10 @@ discard block |
||
662 | 662 | * @throws Exception |
663 | 663 | */ |
664 | 664 | private function createCArepository($tmpDir, &$intermOdditiesCAT, $servercert, $eapIntermediates, $eapIntermediateCRLs) { |
665 | - if (!mkdir($tmpDir . "/root-ca-allcerts/", 0700, true)) { |
|
665 | + if (!mkdir($tmpDir."/root-ca-allcerts/", 0700, true)) { |
|
666 | 666 | throw new Exception("unable to create root CA directory (RADIUS Tests): $tmpDir/root-ca-allcerts/\n"); |
667 | 667 | } |
668 | - if (!mkdir($tmpDir . "/root-ca-eaponly/", 0700, true)) { |
|
668 | + if (!mkdir($tmpDir."/root-ca-eaponly/", 0700, true)) { |
|
669 | 669 | throw new Exception("unable to create root CA directory (RADIUS Tests): $tmpDir/root-ca-eaponly/\n"); |
670 | 670 | } |
671 | 671 | // make a copy of the EAP-received chain and add the configured intermediates, if any |
@@ -679,15 +679,15 @@ discard block |
||
679 | 679 | } |
680 | 680 | if ($decoded['ca'] == 1) { |
681 | 681 | if ($decoded['root'] == 1) { // save CAT roots to the root directory |
682 | - file_put_contents($tmpDir . "/root-ca-eaponly/configuredroot" . count($catRoots) . ".pem", $decoded['pem']); |
|
683 | - file_put_contents($tmpDir . "/root-ca-allcerts/configuredroot" . count($catRoots) . ".pem", $decoded['pem']); |
|
682 | + file_put_contents($tmpDir."/root-ca-eaponly/configuredroot".count($catRoots).".pem", $decoded['pem']); |
|
683 | + file_put_contents($tmpDir."/root-ca-allcerts/configuredroot".count($catRoots).".pem", $decoded['pem']); |
|
684 | 684 | $catRoots[] = $decoded['pem']; |
685 | 685 | } else { // save the intermediates to allcerts directory |
686 | - file_put_contents($tmpDir . "/root-ca-allcerts/cat-intermediate" . count($catIntermediates) . ".pem", $decoded['pem']); |
|
686 | + file_put_contents($tmpDir."/root-ca-allcerts/cat-intermediate".count($catIntermediates).".pem", $decoded['pem']); |
|
687 | 687 | $intermOdditiesCAT = array_merge($intermOdditiesCAT, $this->propertyCheckIntermediate($decoded)); |
688 | 688 | if (isset($decoded['CRL']) && isset($decoded['CRL'][0])) { |
689 | 689 | $this->loggerInstance->debug(4, "got an intermediate CRL; adding them to the chain checks. (Remember: checking end-entity cert only, not the whole chain"); |
690 | - file_put_contents($tmpDir . "/root-ca-allcerts/crl_cat" . count($catIntermediates) . ".pem", $decoded['CRL'][0]); |
|
690 | + file_put_contents($tmpDir."/root-ca-allcerts/crl_cat".count($catIntermediates).".pem", $decoded['CRL'][0]); |
|
691 | 691 | } |
692 | 692 | $catIntermediates[] = $decoded['pem']; |
693 | 693 | } |
@@ -696,26 +696,26 @@ discard block |
||
696 | 696 | // save all intermediate certificates and CRLs to separate files in |
697 | 697 | // both root-ca directories |
698 | 698 | foreach ($eapIntermediates as $index => $onePem) { |
699 | - file_put_contents($tmpDir . "/root-ca-eaponly/intermediate$index.pem", $onePem); |
|
700 | - file_put_contents($tmpDir . "/root-ca-allcerts/intermediate$index.pem", $onePem); |
|
699 | + file_put_contents($tmpDir."/root-ca-eaponly/intermediate$index.pem", $onePem); |
|
700 | + file_put_contents($tmpDir."/root-ca-allcerts/intermediate$index.pem", $onePem); |
|
701 | 701 | } |
702 | 702 | foreach ($eapIntermediateCRLs as $index => $onePem) { |
703 | - file_put_contents($tmpDir . "/root-ca-eaponly/intermediateCRL$index.pem", $onePem); |
|
704 | - file_put_contents($tmpDir . "/root-ca-allcerts/intermediateCRL$index.pem", $onePem); |
|
703 | + file_put_contents($tmpDir."/root-ca-eaponly/intermediateCRL$index.pem", $onePem); |
|
704 | + file_put_contents($tmpDir."/root-ca-allcerts/intermediateCRL$index.pem", $onePem); |
|
705 | 705 | } |
706 | 706 | |
707 | 707 | $checkstring = ""; |
708 | 708 | if (isset($servercert['CRL']) && isset($servercert['CRL'][0])) { |
709 | 709 | $this->loggerInstance->debug(4, "got a server CRL; adding them to the chain checks. (Remember: checking end-entity cert only, not the whole chain"); |
710 | 710 | $checkstring = "-crl_check_all"; |
711 | - file_put_contents($tmpDir . "/root-ca-eaponly/crl-server.pem", $servercert['CRL'][0]); |
|
712 | - file_put_contents($tmpDir . "/root-ca-allcerts/crl-server.pem", $servercert['CRL'][0]); |
|
711 | + file_put_contents($tmpDir."/root-ca-eaponly/crl-server.pem", $servercert['CRL'][0]); |
|
712 | + file_put_contents($tmpDir."/root-ca-allcerts/crl-server.pem", $servercert['CRL'][0]); |
|
713 | 713 | } |
714 | 714 | |
715 | 715 | |
716 | 716 | // now c_rehash the root CA directory ... |
717 | - system(\config\Diagnostics::PATHS['c_rehash'] . " $tmpDir/root-ca-eaponly/ > /dev/null"); |
|
718 | - system(\config\Diagnostics::PATHS['c_rehash'] . " $tmpDir/root-ca-allcerts/ > /dev/null"); |
|
717 | + system(\config\Diagnostics::PATHS['c_rehash']." $tmpDir/root-ca-eaponly/ > /dev/null"); |
|
718 | + system(\config\Diagnostics::PATHS['c_rehash']." $tmpDir/root-ca-allcerts/ > /dev/null"); |
|
719 | 719 | return $checkstring; |
720 | 720 | } |
721 | 721 | |
@@ -746,14 +746,14 @@ discard block |
||
746 | 746 | // so test if there's something PEMy in the file at all |
747 | 747 | // serverchain.pem is the output from eapol_test; incomingserver.pem is written by extractIncomingCertsfromEAP() if there was at least one server cert. |
748 | 748 | if (filesize("$tmpDir/serverchain.pem") > 10 && filesize("$tmpDir/incomingserver.pem") > 10) { |
749 | - $cmdString = \config\Master::PATHS['openssl'] . " verify $crlCheckString -no-CAstore -no-CApath -CApath $tmpDir/root-ca-eaponly/ -purpose any $tmpDir/incomingserver.pem 2>&1"; |
|
749 | + $cmdString = \config\Master::PATHS['openssl']." verify $crlCheckString -no-CAstore -no-CApath -CApath $tmpDir/root-ca-eaponly/ -purpose any $tmpDir/incomingserver.pem 2>&1"; |
|
750 | 750 | exec($cmdString, $verifyResultEaponly); |
751 | 751 | $this->loggerInstance->debug(4, $cmdString."\n"); |
752 | - $this->loggerInstance->debug(4, "Chain verify pass 1: " . /** @scrutinizer ignore-type */ print_r($verifyResultEaponly, TRUE) . "\n"); |
|
753 | - $cmdString = \config\Master::PATHS['openssl'] . " verify $crlCheckString -no-CAstore -no-CApath -CApath $tmpDir/root-ca-allcerts/ -purpose any $tmpDir/incomingserver.pem 2>&1"; |
|
752 | + $this->loggerInstance->debug(4, "Chain verify pass 1: "./** @scrutinizer ignore-type */ print_r($verifyResultEaponly, TRUE)."\n"); |
|
753 | + $cmdString = \config\Master::PATHS['openssl']." verify $crlCheckString -no-CAstore -no-CApath -CApath $tmpDir/root-ca-allcerts/ -purpose any $tmpDir/incomingserver.pem 2>&1"; |
|
754 | 754 | exec($cmdString, $verifyResultAllcerts); |
755 | 755 | $this->loggerInstance->debug(4, $cmdString."\n"); |
756 | - $this->loggerInstance->debug(4, "Chain verify pass 2: " . /** @scrutinizer ignore-type */ print_r($verifyResultAllcerts, TRUE) . "\n"); |
|
756 | + $this->loggerInstance->debug(4, "Chain verify pass 2: "./** @scrutinizer ignore-type */ print_r($verifyResultAllcerts, TRUE)."\n"); |
|
757 | 757 | } |
758 | 758 | |
759 | 759 | // now we do certificate verification against the collected parents |
@@ -821,7 +821,7 @@ discard block |
||
821 | 821 | // we are UNHAPPY if no names match! |
822 | 822 | $happiness = "UNHAPPY"; |
823 | 823 | foreach ($this->expectedServerNames as $expectedName) { |
824 | - $this->loggerInstance->debug(4, "Managing expectations for $expectedName: " . /** @scrutinizer ignore-type */ print_r($servercert['CN'], TRUE) . /** @scrutinizer ignore-type */ print_r($servercert['sAN_DNS'], TRUE)); |
|
824 | + $this->loggerInstance->debug(4, "Managing expectations for $expectedName: "./** @scrutinizer ignore-type */ print_r($servercert['CN'], TRUE)./** @scrutinizer ignore-type */ print_r($servercert['sAN_DNS'], TRUE)); |
|
825 | 825 | if (array_search($expectedName, $servercert['CN']) !== FALSE && array_search($expectedName, $servercert['sAN_DNS']) !== FALSE) { |
826 | 826 | $this->loggerInstance->debug(4, "Totally happy!"); |
827 | 827 | $happiness = "TOTALLY"; |
@@ -865,11 +865,11 @@ discard block |
||
865 | 865 | $theconfigs = $this->wpaSupplicantConfig($eaptype, $finalInner, $finalOuter, $password); |
866 | 866 | // the config intentionally does not include CA checking. We do this |
867 | 867 | // ourselves after getting the chain with -o. |
868 | - file_put_contents($tmpDir . "/udp_login_test.conf", $theconfigs[0]); |
|
868 | + file_put_contents($tmpDir."/udp_login_test.conf", $theconfigs[0]); |
|
869 | 869 | |
870 | 870 | $cmdline = $this->eapolTestConfig($probeindex, $opnameCheck, $frag); |
871 | 871 | $this->loggerInstance->debug(4, "Shallow reachability check cmdline: $cmdline\n"); |
872 | - $this->loggerInstance->debug(4, "Shallow reachability check config: $tmpDir\n" . $theconfigs[1] . "\n"); |
|
872 | + $this->loggerInstance->debug(4, "Shallow reachability check config: $tmpDir\n".$theconfigs[1]."\n"); |
|
873 | 873 | $time_start = microtime(true); |
874 | 874 | $pflow = []; |
875 | 875 | exec($cmdline, $pflow); |
@@ -878,7 +878,7 @@ discard block |
||
878 | 878 | } |
879 | 879 | $time_stop = microtime(true); |
880 | 880 | $output = print_r($this->redact($password, $pflow), TRUE); |
881 | - file_put_contents($tmpDir . "/eapol_test_output_redacted_$probeindex.txt", $output); |
|
881 | + file_put_contents($tmpDir."/eapol_test_output_redacted_$probeindex.txt", $output); |
|
882 | 882 | $this->loggerInstance->debug(5, "eapol_test output saved to eapol_test_output_redacted_$probeindex.txt\n"); |
883 | 883 | return [ |
884 | 884 | "time" => ($time_stop - $time_start) * 1000, |
@@ -913,7 +913,7 @@ discard block |
||
913 | 913 | if ($packetflow[count($packetflow) - 1] == 3 && $this->checkLineparse($packetflow_orig, self::LINEPARSE_CHECK_REJECTIGNORE)) { |
914 | 914 | array_pop($packetflow); |
915 | 915 | } |
916 | - $this->loggerInstance->debug(5, "Packetflow: " . /** @scrutinizer ignore-type */ print_r($packetflow, TRUE)); |
|
916 | + $this->loggerInstance->debug(5, "Packetflow: "./** @scrutinizer ignore-type */ print_r($packetflow, TRUE)); |
|
917 | 917 | $packetcount = array_count_values($packetflow); |
918 | 918 | $testresults['packetcount'] = $packetcount; |
919 | 919 | $testresults['packetflow'] = $packetflow; |
@@ -953,7 +953,7 @@ discard block |
||
953 | 953 | */ |
954 | 954 | private function wasModernTlsNegotiated(&$testresults, $packetflow_orig) { |
955 | 955 | $negotiatedTlsVersion = $this->checkLineparse($packetflow_orig, self::LINEPARSE_TLSVERSION); |
956 | - $this->loggerInstance->debug(4, "TLS version found is: $negotiatedTlsVersion" . "\n"); |
|
956 | + $this->loggerInstance->debug(4, "TLS version found is: $negotiatedTlsVersion"."\n"); |
|
957 | 957 | if ($negotiatedTlsVersion === FALSE) { |
958 | 958 | $testresults['cert_oddities'][] = RADIUSTests::TLSPROB_UNKNOWN_TLS_VERSION; |
959 | 959 | } elseif ($negotiatedTlsVersion != self::TLS_VERSION_1_2 && $negotiatedTlsVersion != self::TLS_VERSION_1_3) { |
@@ -1010,7 +1010,7 @@ discard block |
||
1010 | 1010 | |
1011 | 1011 | $x509 = new \core\common\X509(); |
1012 | 1012 | // $eap_certarray holds all certs received in EAP conversation |
1013 | - $incomingData = file_get_contents($tmpDir . "/serverchain.pem"); |
|
1013 | + $incomingData = file_get_contents($tmpDir."/serverchain.pem"); |
|
1014 | 1014 | if ($incomingData !== FALSE && strlen($incomingData) > 0) { |
1015 | 1015 | $eapCertArray = $x509->splitCertificate($incomingData); |
1016 | 1016 | } else { |
@@ -1040,10 +1040,10 @@ discard block |
||
1040 | 1040 | case RADIUSTests::SERVER_CA_SELFSIGNED: |
1041 | 1041 | $servercert[] = $cert; |
1042 | 1042 | if (count($servercert) == 1) { |
1043 | - if (file_put_contents($tmpDir . "/incomingserver.pem", $cert['pem'] . "\n") === FALSE) { |
|
1043 | + if (file_put_contents($tmpDir."/incomingserver.pem", $cert['pem']."\n") === FALSE) { |
|
1044 | 1044 | $this->loggerInstance->debug(4, "The (first) server certificate could not be written to $tmpDir/incomingserver.pem!\n"); |
1045 | 1045 | } |
1046 | - $this->loggerInstance->debug(4, "This is the (first) server certificate, with CRL content if applicable: " . /** @scrutinizer ignore-type */ print_r($servercert[0], true)); |
|
1046 | + $this->loggerInstance->debug(4, "This is the (first) server certificate, with CRL content if applicable: "./** @scrutinizer ignore-type */ print_r($servercert[0], true)); |
|
1047 | 1047 | } elseif (!in_array(RADIUSTests::CERTPROB_TOO_MANY_SERVER_CERTS, $testresults['cert_oddities'])) { |
1048 | 1048 | $testresults['cert_oddities'][] = RADIUSTests::CERTPROB_TOO_MANY_SERVER_CERTS; |
1049 | 1049 | } |
@@ -1113,7 +1113,7 @@ discard block |
||
1113 | 1113 | public function autodetectCAWithProbe($outerId) { |
1114 | 1114 | // for EAP-TLS to be a viable option, we need to pass a random client cert to make eapol_test happy |
1115 | 1115 | // the following PEM data is one of the SENSE EAPLab client certs (not secret at all) |
1116 | - $clientcert = file_get_contents(dirname(__FILE__) . "/clientcert.p12"); |
|
1116 | + $clientcert = file_get_contents(dirname(__FILE__)."/clientcert.p12"); |
|
1117 | 1117 | if ($clientcert === FALSE) { |
1118 | 1118 | throw new Exception("A dummy client cert is part of the source distribution, but could not be loaded!"); |
1119 | 1119 | } |
@@ -1128,7 +1128,7 @@ discard block |
||
1128 | 1128 | $tmpDir = $temporary['dir']; |
1129 | 1129 | chdir($tmpDir); |
1130 | 1130 | $this->loggerInstance->debug(4, "temp dir: $tmpDir\n"); |
1131 | - file_put_contents($tmpDir . "/client.p12", $clientcert); |
|
1131 | + file_put_contents($tmpDir."/client.p12", $clientcert); |
|
1132 | 1132 | $testresults = ['cert_oddities' => []]; |
1133 | 1133 | $runtime_results = $this->executeEapolTest($tmpDir, $probeindex, \core\common\EAP::EAPTYPE_ANY, $outerId, $outerId, "eaplab", FALSE, FALSE); |
1134 | 1134 | $packetflow_orig = $runtime_results['output']; |
@@ -1144,8 +1144,7 @@ discard block |
||
1144 | 1144 | // that's not the case if we do EAP-pwd or could not negotiate an EAP method at |
1145 | 1145 | // all |
1146 | 1146 | // in that case: no server CA guess possible |
1147 | - if (! |
|
1148 | - ($radiusResult == RADIUSTests::RETVAL_CONVERSATION_REJECT && $negotiatedEapType) || $radiusResult == RADIUSTests::RETVAL_OK |
|
1147 | + if (!($radiusResult == RADIUSTests::RETVAL_CONVERSATION_REJECT && $negotiatedEapType) || $radiusResult == RADIUSTests::RETVAL_OK |
|
1149 | 1148 | ) { |
1150 | 1149 | return RADIUSTests::RETVAL_INVALID; |
1151 | 1150 | } |
@@ -1185,7 +1184,7 @@ discard block |
||
1185 | 1184 | // trust, and custom ones we may have configured |
1186 | 1185 | $ourRoots = file_get_contents(\config\ConfAssistant::PATHS['trust-store-custom']); |
1187 | 1186 | $mozillaRoots = file_get_contents(\config\ConfAssistant::PATHS['trust-store-mozilla']); |
1188 | - $allRoots = $x509->splitCertificate($ourRoots . "\n" . $mozillaRoots); |
|
1187 | + $allRoots = $x509->splitCertificate($ourRoots."\n".$mozillaRoots); |
|
1189 | 1188 | foreach ($allRoots as $oneRoot) { |
1190 | 1189 | $processedRoot = $x509->processCertificate($oneRoot); |
1191 | 1190 | if ($processedRoot['full_details']['subject'] == $currentHighestKnownIssuer) { |
@@ -1229,7 +1228,7 @@ discard block |
||
1229 | 1228 | chdir($tmpDir); |
1230 | 1229 | $this->loggerInstance->debug(4, "temp dir: $tmpDir\n"); |
1231 | 1230 | if ($clientcertdata !== NULL) { |
1232 | - file_put_contents($tmpDir . "/client.p12", $clientcertdata); |
|
1231 | + file_put_contents($tmpDir."/client.p12", $clientcertdata); |
|
1233 | 1232 | } |
1234 | 1233 | $testresults = []; |
1235 | 1234 | // initialise the sub-array for cleaner parsing |
@@ -1334,7 +1333,7 @@ discard block |
||
1334 | 1333 | 'issuer' => $this->printDN($certdata['issuer']), |
1335 | 1334 | 'validFrom' => $this->printTm($certdata['validFrom_time_t']), |
1336 | 1335 | 'validTo' => $this->printTm($certdata['validTo_time_t']), |
1337 | - 'serialNumber' => $certdata['serialNumber'] . sprintf(" (0x%X)", $certdata['serialNumber']), |
|
1336 | + 'serialNumber' => $certdata['serialNumber'].sprintf(" (0x%X)", $certdata['serialNumber']), |
|
1338 | 1337 | 'sha1' => $certdata['sha1'], |
1339 | 1338 | 'public_key_length' => $certdata['public_key_length'], |
1340 | 1339 | 'extensions' => $certdata['extensions'] |