diff options
Diffstat (limited to 'modules-available/dnbd3/inc/dnbd3.inc.php')
-rw-r--r-- | modules-available/dnbd3/inc/dnbd3.inc.php | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/modules-available/dnbd3/inc/dnbd3.inc.php b/modules-available/dnbd3/inc/dnbd3.inc.php index 83baffbf..0c640973 100644 --- a/modules-available/dnbd3/inc/dnbd3.inc.php +++ b/modules-available/dnbd3/inc/dnbd3.inc.php @@ -26,4 +26,17 @@ class Dnbd3 { Property::set(self::PROP_NFS_FALLBACK, $bool ? 1 : 0); } + public static function getActiveServers(): array + { + $res = Database::simpleQuery('SELECT s.serverid, m.clientip, s.fixedip + FROM dnbd3_server s + LEFT JOIN machine m ON (s.machineuuid = m.machineuuid) + WHERE s.lastseen > :cutoff', ['cutoff' => time() - 310]); + $lookup = []; + foreach ($res as $row) { + $lookup[$row['fixedip'] ?? $row['clientip'] ?? ''] = $row['serverid']; + } + return $lookup; + } + } |