summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-08-06 22:33:55 -0400
committerIan Moffett <ian@osmora.org>2025-08-06 22:34:10 -0400
commitbef8fdb8d444b61dc71ea446eeb0d9208ee77ad3 (patch)
tree6d033d9220e1c2ab80fbea44ab6a8bfbd874e691
parenteb460b05955a1d19b1eb7ac1b4bb13753eb5d408 (diff)
kernel: sysctl: Add 'kern.hostname' var
This commit introduces the 'kern.hostname' sysctl variable to store the machines hostname. Signed-off-by: Ian Moffett <ian@osmora.org>
-rw-r--r--sys/include/sys/sysctl.h1
-rw-r--r--sys/kern/init_main.c2
-rw-r--r--sys/kern/kern_sysctl.c3
3 files changed, 5 insertions, 1 deletions
diff --git a/sys/include/sys/sysctl.h b/sys/include/sys/sysctl.h
index d258860..2b1ebb6 100644
--- a/sys/include/sys/sysctl.h
+++ b/sys/include/sys/sysctl.h
@@ -43,6 +43,7 @@
#define KERN_OSRELEASE 1
#define KERN_VERSION 2
#define KERN_VCACHE_TYPE 3
+#define KERN_HOSTNAME 4
/*
* Option types (i.e., int, string, etc) for
diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c
index 5e351a8..541355a 100644
--- a/sys/kern/init_main.c
+++ b/sys/kern/init_main.c
@@ -35,6 +35,7 @@
#include <sys/exec.h>
#include <sys/driver.h>
#include <sys/panic.h>
+#include <sys/sysctl.h>
#include <sys/systm.h>
#include <dev/acpi/uacpi.h>
#include <dev/cons/cons.h>
@@ -113,6 +114,7 @@ main(void)
sched_init();
memset(&g_proc0, 0, sizeof(g_proc0));
+ sysctl_clearstr(KERN_HOSTNAME);
/* Startup pid 1 */
spawn(&g_proc0, start_init, NULL, 0, &g_init);
diff --git a/sys/kern/kern_sysctl.c b/sys/kern/kern_sysctl.c
index 8b298a7..fc8feec 100644
--- a/sys/kern/kern_sysctl.c
+++ b/sys/kern/kern_sysctl.c
@@ -52,7 +52,8 @@ static struct sysctl_entry common_optab[] = {
[KERN_OSTYPE] = { KERN_OSTYPE, SYSCTL_OPTYPE_STR_RO, hyra },
[KERN_OSRELEASE] = { KERN_OSRELEASE, SYSCTL_OPTYPE_STR_RO, &osrelease },
[KERN_VERSION] = { KERN_VERSION, SYSCTL_OPTYPE_STR_RO, &hyra_version },
- [KERN_VCACHE_TYPE] = { KERN_VCACHE_TYPE, SYSCTL_OPTYPE_STR, NULL }
+ [KERN_VCACHE_TYPE] = { KERN_VCACHE_TYPE, SYSCTL_OPTYPE_STR, NULL },
+ [KERN_HOSTNAME] = { KERN_HOSTNAME, SYSCTL_OPTYPE_STR, NULL }
};
static int