Implement environment variables

This commit is contained in:
2026-03-16 21:20:00 +01:00
parent cba8122b07
commit 65a7511e36
15 changed files with 228 additions and 2 deletions

28
kernel/proc/env.h Normal file
View File

@@ -0,0 +1,28 @@
#ifndef _KERNEL_PROC_ENV_H
#define _KERNEL_PROC_ENV_H
#include <libk/hash.h>
#include <libk/std.h>
#define PROC_ENV_VAR_MAX 128
struct proc;
struct proc_env_var {
char key[PROC_ENV_VAR_MAX];
void* buffer;
size_t data_size;
struct hash_node_link env_link;
};
struct proc_env {
struct hash_node_link* env_var_buckets[64];
};
void proc_env_cleanup (struct proc* proc);
int proc_env_set (struct proc* proc, const char* key, void* buffer, size_t data_size);
int proc_env_get (struct proc* proc, const char* key, void* buffer, size_t size);
#endif // _KERNEL_PROC_ENV_H