summaryrefslogtreecommitdiff
path: root/src/user/lib/fs/misc.h
blob: 1dfe5cb83099fee3a8082ad2b1614cf7b3aa5257 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>

bool fork2_n_mount(const char *path);

void fs_delegate(handle_t reqh, const char *path, long len, int flags);

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

void fs_dir_inject(const char *path);

bool mount_at_pred(const char *path);

/** Mounts something and injects its path into the fs */
#define MOUNT_AT(path) for (; mount_at_pred(path); exit(1))