Add spawn, spawn_with_caps and span calls to the Process Manager API.
[barrelfish] / usr / proc_mgmt / spawn_client.h
1 /**
2  * \file
3  * \brief Spawn client for the process management service.
4  */
5
6 /*
7  * Copyright (c) 2017, ETH Zurich.
8  * All rights reserved.
9  *
10  * This file is distributed under the terms in the attached LICENSE file.
11  * If you do not find this file, copies can be found by writing to:
12  * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
13  */
14
15 #ifndef PROC_MGMT_SPAWN_CLIENT_H
16 #define PROC_MGMT_SPAWN_CLIENT_H
17
18 #include <barrelfish/barrelfish.h>
19
20 errval_t spawn_with_caps(coreid_t core_id, const char *path,
21                              const char *argvbuf, size_t argvbytes,
22                              const char *envbuf, size_t envbytes,
23                              struct capref inheritcn_cap, struct capref argcn_cap,
24                              uint8_t flags, struct capref *ret_domain_cap);
25 errval_t spawn(coreid_t core_id, const char *path, const char *argvbuf,
26                    size_t argvbytes, const char *envbuf, size_t envbytes,
27                    uint8_t flags, struct capref *ret_domain_cap);
28 errval_t span(struct capref domain_cap, coreid_t core_id, struct capref vroot,
29                   struct capref dispframe);
30
31 #endif  // PROC_MGMT_SPAWN_CLIENT_H