|
@@ -286,7 +286,7 @@ discard block |
|
|
block discarded – undo |
|
286
|
286
|
$serverCandidates[IdPlist::geoDistance($adminLocation, ['lat' => $iterator->location_lat, 'lon' => $iterator->location_lon])] = $iterator->server_id; |
|
287
|
287
|
} |
|
288
|
288
|
if ($clients > $maxSupportedClients * 0.9) { |
|
289
|
|
- $this->loggerInstance->debug(1, "A RADIUS server for Managed SP (" . $iterator->server_id . ") is serving at more than 90% capacity!"); |
|
|
289
|
+ $this->loggerInstance->debug(1, "A RADIUS server for Managed SP (".$iterator->server_id.") is serving at more than 90% capacity!"); |
|
290
|
290
|
} |
|
291
|
291
|
} |
|
292
|
292
|
if (count($serverCandidates) == 0 && $federation != "DEFAULT") { |
|
@@ -317,7 +317,7 @@ discard block |
|
|
block discarded – undo |
|
317
|
317
|
// only check the consortium pool group we want to attach to |
|
318
|
318
|
// TODO: if we also collect stats from OpenRoaming hosts, differentiate the logs! |
|
319
|
319
|
$opName = $this->getOperatorName(); |
|
320
|
|
- $stats = $this->databaseHandle->exec("SELECT activity_time, realm, mac, result FROM activity WHERE operatorname = ? AND activity_time > DATE_SUB(NOW(), INTERVAL ? SECOND) ORDER BY activity_time", "si", $opName, $backlog ); |
|
|
320
|
+ $stats = $this->databaseHandle->exec("SELECT activity_time, realm, mac, result FROM activity WHERE operatorname = ? AND activity_time > DATE_SUB(NOW(), INTERVAL ? SECOND) ORDER BY activity_time", "si", $opName, $backlog); |
|
321
|
321
|
return mysqli_fetch_all($stats, \MYSQLI_ASSOC); |
|
322
|
322
|
} |
|
323
|
323
|
|
|
@@ -341,7 +341,7 @@ discard block |
|
|
block discarded – undo |
|
341
|
341
|
$foundFreePort1 = 0; |
|
342
|
342
|
while ($foundFreePort1 == 0) { |
|
343
|
343
|
$portCandidate = random_int(1200, 65535); |
|
344
|
|
- $check = $this->databaseHandle->exec("SELECT port_instance_1 FROM deployment WHERE radius_instance_1 = '" . $ourserver . "' AND port_instance_1 = $portCandidate"); |
|
|
344
|
+ $check = $this->databaseHandle->exec("SELECT port_instance_1 FROM deployment WHERE radius_instance_1 = '".$ourserver."' AND port_instance_1 = $portCandidate"); |
|
345
|
345
|
if (mysqli_num_rows(/** @scrutinizer ignore-type */ $check) == 0) { |
|
346
|
346
|
$foundFreePort1 = $portCandidate; |
|
347
|
347
|
} |
|
@@ -350,14 +350,14 @@ discard block |
|
|
block discarded – undo |
|
350
|
350
|
$foundFreePort2 = 0; |
|
351
|
351
|
while ($foundFreePort2 == 0) { |
|
352
|
352
|
$portCandidate = random_int(1200, 65535); |
|
353
|
|
- $check = $this->databaseHandle->exec("SELECT port_instance_2 FROM deployment WHERE radius_instance_2 = '" . $ourSecondServer . "' AND port_instance_2 = $portCandidate"); |
|
|
353
|
+ $check = $this->databaseHandle->exec("SELECT port_instance_2 FROM deployment WHERE radius_instance_2 = '".$ourSecondServer."' AND port_instance_2 = $portCandidate"); |
|
354
|
354
|
if (mysqli_num_rows(/** @scrutinizer ignore-type */ $check) == 0) { |
|
355
|
355
|
$foundFreePort2 = $portCandidate; |
|
356
|
356
|
} |
|
357
|
357
|
} |
|
358
|
358
|
// and make up a shared secret that is halfways readable |
|
359
|
359
|
$futureSecret = $this->randomString(16, "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"); |
|
360
|
|
- $this->databaseHandle->exec("UPDATE deployment SET radius_instance_1 = '" . $ourserver . "', radius_instance_2 = '" . $ourSecondServer . "', port_instance_1 = $foundFreePort1, port_instance_2 = $foundFreePort2, secret = '$futureSecret', consortium = '$this->consortium' WHERE deployment_id = $this->identifier"); |
|
|
360
|
+ $this->databaseHandle->exec("UPDATE deployment SET radius_instance_1 = '".$ourserver."', radius_instance_2 = '".$ourSecondServer."', port_instance_1 = $foundFreePort1, port_instance_2 = $foundFreePort2, secret = '$futureSecret', consortium = '$this->consortium' WHERE deployment_id = $this->identifier"); |
|
361
|
361
|
return ["port_instance_1" => $foundFreePort1, "port_instance_2" => $foundFreePort2, "secret" => $futureSecret, "radius_instance_1" => $ourserver, "radius_instance_2" => $ourserver]; |
|
362
|
362
|
} |
|
363
|
363
|
|
|
@@ -404,7 +404,7 @@ discard block |
|
|
block discarded – undo |
|
404
|
404
|
*/ |
|
405
|
405
|
public function deactivate() |
|
406
|
406
|
{ |
|
407
|
|
- $this->databaseHandle->exec("UPDATE deployment SET status = " . DeploymentManaged::INACTIVE . " WHERE deployment_id = $this->identifier"); |
|
|
407
|
+ $this->databaseHandle->exec("UPDATE deployment SET status = ".DeploymentManaged::INACTIVE." WHERE deployment_id = $this->identifier"); |
|
408
|
408
|
} |
|
409
|
409
|
|
|
410
|
410
|
/** |
|
@@ -415,7 +415,7 @@ discard block |
|
|
block discarded – undo |
|
415
|
415
|
*/ |
|
416
|
416
|
public function activate() |
|
417
|
417
|
{ |
|
418
|
|
- $this->databaseHandle->exec("UPDATE deployment SET status = " . DeploymentManaged::ACTIVE . " WHERE deployment_id = $this->identifier"); |
|
|
418
|
+ $this->databaseHandle->exec("UPDATE deployment SET status = ".DeploymentManaged::ACTIVE." WHERE deployment_id = $this->identifier"); |
|
419
|
419
|
} |
|
420
|
420
|
|
|
421
|
421
|
/** |
|
@@ -427,7 +427,7 @@ discard block |
|
|
block discarded – undo |
|
427
|
427
|
{ |
|
428
|
428
|
$customAttrib = $this->getAttributes("managedsp:operatorname"); |
|
429
|
429
|
if (count($customAttrib) == 0) { |
|
430
|
|
- return "1sp." . $this->identifier . "-" . $this->institution . \config\ConfAssistant::SILVERBULLET['realm_suffix']; |
|
|
430
|
+ return "1sp.".$this->identifier."-".$this->institution.\config\ConfAssistant::SILVERBULLET['realm_suffix']; |
|
431
|
431
|
} |
|
432
|
432
|
return $customAttrib[0]["value"]; |
|
433
|
433
|
} |
|
@@ -443,13 +443,13 @@ discard block |
|
|
block discarded – undo |
|
443
|
443
|
{ |
|
444
|
444
|
|
|
445
|
445
|
$hostname = "radius_hostname_$idx"; |
|
446
|
|
- $ch = curl_init("http://" . $this->$hostname); |
|
|
446
|
+ $ch = curl_init("http://".$this->$hostname); |
|
447
|
447
|
if ($ch === FALSE) { |
|
448
|
448
|
$res = 'FAILURE'; |
|
449
|
449
|
} else { |
|
450
|
450
|
curl_setopt($ch, CURLOPT_POST, 1); |
|
451
|
451
|
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); |
|
452
|
|
- $this->loggerInstance->debug(1, "Posting to http://" . $this->$hostname . ": $post\n"); |
|
|
452
|
+ $this->loggerInstance->debug(1, "Posting to http://".$this->$hostname.": $post\n"); |
|
453
|
453
|
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); |
|
454
|
454
|
curl_setopt($ch, CURLOPT_HEADER, 0); |
|
455
|
455
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); |
|
@@ -465,7 +465,7 @@ discard block |
|
|
block discarded – undo |
|
465
|
465
|
$this->loggerInstance->debug(1, $this); |
|
466
|
466
|
} |
|
467
|
467
|
$this->loggerInstance->debug(1, "Database update"); |
|
468
|
|
- $this->databaseHandle->exec("UPDATE deployment SET radius_status_$idx = " . ($res == 'OK' ? \core\AbstractDeployment::RADIUS_OK : \core\AbstractDeployment::RADIUS_FAILURE) . " WHERE deployment_id = $this->identifier"); |
|
|
468
|
+ $this->databaseHandle->exec("UPDATE deployment SET radius_status_$idx = ".($res == 'OK' ? \core\AbstractDeployment::RADIUS_OK : \core\AbstractDeployment::RADIUS_FAILURE)." WHERE deployment_id = $this->identifier"); |
|
469
|
469
|
return $res; |
|
470
|
470
|
} |
|
471
|
471
|
|
|
@@ -486,19 +486,19 @@ discard block |
|
|
block discarded – undo |
|
486
|
486
|
} else { |
|
487
|
487
|
$txt = $remove ? _('Profile deactivation failed') : _('Profile activation/modification failed'); |
|
488
|
488
|
} |
|
489
|
|
- $txt = $txt . ' '; |
|
|
489
|
+ $txt = $txt.' '; |
|
490
|
490
|
if (array_count_values($response)[$status] == 2) { |
|
491
|
|
- $txt = $txt . _('on both RADIUS servers: primary and backup') . '.'; |
|
|
491
|
+ $txt = $txt._('on both RADIUS servers: primary and backup').'.'; |
|
492
|
492
|
} else { |
|
493
|
493
|
if ($response['res[1]'] == $status) { |
|
494
|
|
- $txt = $txt . _('on primary RADIUS server') . '.'; |
|
|
494
|
+ $txt = $txt._('on primary RADIUS server').'.'; |
|
495
|
495
|
} else { |
|
496
|
|
- $txt = $txt . _('on backup RADIUS server') . '.'; |
|
|
496
|
+ $txt = $txt._('on backup RADIUS server').'.'; |
|
497
|
497
|
} |
|
498
|
498
|
} |
|
499
|
499
|
$mail = \core\common\OutsideComm::mailHandle(); |
|
500
|
500
|
$email = $this->getAttributes("support:email")[0]['value']; |
|
501
|
|
- $mail->FromName = \config\Master::APPEARANCE['productname'] . " Notification System"; |
|
|
501
|
+ $mail->FromName = \config\Master::APPEARANCE['productname']." Notification System"; |
|
502
|
502
|
$mail->addAddress($email); |
|
503
|
503
|
if ($status == 'OK') { |
|
504
|
504
|
$mail->Subject = _('RADIUS profile update problem fixed'); |
|
@@ -532,7 +532,7 @@ discard block |
|
|
block discarded – undo |
|
532
|
532
|
return NULL; |
|
533
|
533
|
} |
|
534
|
534
|
$timeout = 10; |
|
535
|
|
- curl_setopt($ch, CURLOPT_URL, 'http://' . $host); |
|
|
535
|
+ curl_setopt($ch, CURLOPT_URL, 'http://'.$host); |
|
536
|
536
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); |
|
537
|
537
|
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); |
|
538
|
538
|
curl_exec($ch); |
|
@@ -624,33 +624,33 @@ discard block |
|
|
block discarded – undo |
|
624
|
624
|
{ |
|
625
|
625
|
$remove = ($this->status == \core\AbstractDeployment::INACTIVE) ? 0 : 1; |
|
626
|
626
|
$toPost = ($onlyone ? array($onlyone => '') : array(1 => '', 2 => '')); |
|
627
|
|
- $toPostTemplate = 'instid=' . $this->institution . '&deploymentid=' . $this->identifier . '&secret=' . $this->secret . '&country=' . $this->getAttributes("internal:country")[0]['value'] . '&'; |
|
|
627
|
+ $toPostTemplate = 'instid='.$this->institution.'&deploymentid='.$this->identifier.'&secret='.$this->secret.'&country='.$this->getAttributes("internal:country")[0]['value'].'&'; |
|
628
|
628
|
if ($remove) { |
|
629
|
|
- $toPostTemplate = $toPostTemplate . 'remove=1&'; |
|
|
629
|
+ $toPostTemplate = $toPostTemplate.'remove=1&'; |
|
630
|
630
|
} else { |
|
631
|
|
- $toPostTemplate = $toPostTemplate . 'operatorname=' . $this->getOperatorName() . '&'; |
|
|
631
|
+ $toPostTemplate = $toPostTemplate.'operatorname='.$this->getOperatorName().'&'; |
|
632
|
632
|
if ($this->getAttributes("managedsp:vlan")[0]['value'] ?? NULL) { |
|
633
|
633
|
$allRealms = $this->getAllRealms(); |
|
634
|
634
|
if (!empty($allRealms)) { |
|
635
|
|
- $toPostTemplate = $toPostTemplate . 'vlan=' . $this->getAttributes("managedsp:vlan")[0]['value'] . '&'; |
|
636
|
|
- $toPostTemplate = $toPostTemplate . 'realmforvlan[]=' . implode('&realmforvlan[]=', $allRealms) . '&'; |
|
|
635
|
+ $toPostTemplate = $toPostTemplate.'vlan='.$this->getAttributes("managedsp:vlan")[0]['value'].'&'; |
|
|
636
|
+ $toPostTemplate = $toPostTemplate.'realmforvlan[]='.implode('&realmforvlan[]=', $allRealms).'&'; |
|
637
|
637
|
} |
|
638
|
638
|
} |
|
639
|
639
|
} |
|
640
|
640
|
foreach (array_keys($toPost) as $key) { |
|
641
|
|
- $elem = 'port' . $key; |
|
642
|
|
- $toPost[$key] = $toPostTemplate . 'port=' . $this->$elem; |
|
|
641
|
+ $elem = 'port'.$key; |
|
|
642
|
+ $toPost[$key] = $toPostTemplate.'port='.$this->$elem; |
|
643
|
643
|
} |
|
644
|
644
|
$response = array(); |
|
645
|
645
|
foreach ($toPost as $key => $value) { |
|
646
|
|
- $this->loggerInstance->debug(1, 'toPost ' . $toPost[$key] . "\n"); |
|
647
|
|
- $response['res[' . $key . ']'] = $this->sendToRADIUS($key, $toPost[$key]); |
|
|
646
|
+ $this->loggerInstance->debug(1, 'toPost '.$toPost[$key]."\n"); |
|
|
647
|
+ $response['res['.$key.']'] = $this->sendToRADIUS($key, $toPost[$key]); |
|
648
|
648
|
} |
|
649
|
649
|
if ($onlyone) { |
|
650
|
|
- $response['res[' . ($onlyone == 1) ? 2 : 1 . ']'] = \core\AbstractDeployment::RADIUS_OK; |
|
|
650
|
+ $response['res['.($onlyone == 1) ? 2 : 1.']'] = \core\AbstractDeployment::RADIUS_OK; |
|
651
|
651
|
} |
|
652
|
652
|
foreach (array('OK', 'FAILURE') as $status) { |
|
653
|
|
- if ( ( ($status == 'OK' && $notify) || ($status == 'FAILURE') ) && ( in_array($status, $response) ) ) { |
|
|
653
|
+ if ((($status == 'OK' && $notify) || ($status == 'FAILURE')) && (in_array($status, $response))) { |
|
654
|
654
|
$this->sendMailtoAdmin($remove, $response, $status); |
|
655
|
655
|
} |
|
656
|
656
|
} |