summaryrefslogtreecommitdiff
path: root/src/init/fs/misc.h
blob: d64ab1ee73ba33f3761b1a9636a9b9541ec21ff1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#pragma once
#include <init/stdlib.h>
#include <stdbool.h>

bool fork2_n_mount(const char *path);

void fs_passthru(const char *prefix);
void fs_whitelist(const char **list);

void fs_dir_inject(const char *path);

/** Mounts something and injects its path into the fs */
// TODO path needs to have a trailing slash
#define MOUNT(path, impl) \
	if (!fork2_n_mount(path)) {_klogf("impl %s", path); impl;} \
	if (!fork2_n_mount("/"))  {_klogf("dir for %s", path); fs_dir_inject(path);}