summaryrefslogtreecommitdiffstats
path: root/modules-available/serversetup-bwlp-ipxe/hooks
diff options
context:
space:
mode:
Diffstat (limited to 'modules-available/serversetup-bwlp-ipxe/hooks')
-rw-r--r--modules-available/serversetup-bwlp-ipxe/hooks/bootup.inc.php11
-rw-r--r--modules-available/serversetup-bwlp-ipxe/hooks/ipxe-update.inc.php10
-rw-r--r--modules-available/serversetup-bwlp-ipxe/hooks/main-warning.inc.php6
3 files changed, 27 insertions, 0 deletions
diff --git a/modules-available/serversetup-bwlp-ipxe/hooks/bootup.inc.php b/modules-available/serversetup-bwlp-ipxe/hooks/bootup.inc.php
new file mode 100644
index 00000000..50ac04ae
--- /dev/null
+++ b/modules-available/serversetup-bwlp-ipxe/hooks/bootup.inc.php
@@ -0,0 +1,11 @@
+<?php
+
+$ret = IPxe::importLegacyMenu(false);
+if ($ret !== false) {
+ $num = IPxe::importPxeMenus('/srv/openslx/tftp/pxelinux.cfg');
+ if ($num > 0) {
+ EventLog::info('Imported old PXELinux menu, with ' . $num . ' additional IP-range based menus.');
+ } else {
+ EventLog::info('Imported old PXELinux menu.');
+ }
+}
diff --git a/modules-available/serversetup-bwlp-ipxe/hooks/ipxe-update.inc.php b/modules-available/serversetup-bwlp-ipxe/hooks/ipxe-update.inc.php
new file mode 100644
index 00000000..583c5a2b
--- /dev/null
+++ b/modules-available/serversetup-bwlp-ipxe/hooks/ipxe-update.inc.php
@@ -0,0 +1,10 @@
+<?php
+
+$data = [
+ 'ipaddress' => Property::getServerIp()
+];
+$task = Taskmanager::submit('CompileIPxeNew', $data);
+if (!isset($task['id']))
+ return false;
+Property::set('ipxe-task-id', $task['id'], 15);
+return $task['id']; \ No newline at end of file
diff --git a/modules-available/serversetup-bwlp-ipxe/hooks/main-warning.inc.php b/modules-available/serversetup-bwlp-ipxe/hooks/main-warning.inc.php
new file mode 100644
index 00000000..a2eba6ff
--- /dev/null
+++ b/modules-available/serversetup-bwlp-ipxe/hooks/main-warning.inc.php
@@ -0,0 +1,6 @@
+<?php
+
+if (!preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/', Property::getServerIp())) {
+ Message::addError('serversetup.no-ip-addr-set', true);
+ $needSetup = true;
+}