1 // Copyright 2016 The Fuchsia Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #pragma once
6 
7 #pragma GCC visibility push(hidden)
8 
9 #include <zircon/types.h>
10 #include <stddef.h>
11 #include <stdint.h>
12 
13 struct bootfs {
14     zx_handle_t vmo;
15     const void* contents;
16     size_t len;
17 };
18 
19 void bootfs_mount(zx_handle_t vmar, zx_handle_t log, zx_handle_t vmo, struct bootfs *fs);
20 void bootfs_unmount(zx_handle_t vmar, zx_handle_t log, struct bootfs *fs);
21 
22 zx_handle_t bootfs_open(zx_handle_t log, const char* purpose,
23                         struct bootfs *fs, const char* filename);
24 
25 #pragma GCC visibility pop
26