L4Re Operating System Framework – Interface and Usage Documentation
Loading...
Searching...
No Matches
namespace.h
Go to the documentation of this file.
1
5/*
6 * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
7 * Alexander Warg <warg@os.inf.tu-dresden.de>
8 * economic rights: Technische Universität Dresden (Germany)
9 *
10 * This file is part of TUD:OS and distributed under the terms of the
11 * GNU General Public License 2.
12 * Please see the COPYING-GPL-2 file for details.
13 *
14 * As a special exception, you may use this file as part of a free software
15 * library without restriction. Specifically, if other files instantiate
16 * templates or use macros or inline functions from this file, or you compile
17 * this file and link it with other files to produce an executable, this
18 * file does not by itself cause the resulting executable to be covered by
19 * the GNU General Public License. This exception does not however
20 * invalidate any other reasons why the executable file might be covered by
21 * the GNU General Public License.
22 */
23#pragma once
24
31#include <l4/re/env.h>
32
40 L4RE_NS_REGISTER_RO = L4_FPAGE_RO,
41 L4RE_NS_REGISTER_DIR = 0x10,
42 L4RE_NS_REGISTER_RW = L4_FPAGE_RX,
43 L4RE_NS_REGISTER_RWS = L4_FPAGE_RWX,
44 L4RE_NS_REGISTER_S = L4_FPAGE_W,
45};
46
48
54
55
56
65L4_CV long
67 l4_cap_idx_t const cap, int timeout) L4_NOTHROW;
68
86l4re_ns_query_srv(l4re_namespace_t srv, char const *name,
87 l4_cap_idx_t const cap) L4_NOTHROW;
88
96L4_CV long
98 l4_cap_idx_t const obj, unsigned flags) L4_NOTHROW;
99
100
101
102/****** Implementation ***********/
103
104L4_CV L4_INLINE long
106 l4_cap_idx_t const cap) L4_NOTHROW
107{
108 return l4re_ns_query_to_srv(srv, name, cap, 40000);
109}
110
111
Environment interface.
long l4re_ns_query_srv(l4re_namespace_t srv, char const *name, l4_cap_idx_t const cap) L4_NOTHROW
Query the name space for the object named by name.
Definition namespace.h:105
long l4re_ns_register_obj_srv(l4re_namespace_t srv, char const *name, l4_cap_idx_t const obj, unsigned flags) L4_NOTHROW
Register an object with a name.
l4_cap_idx_t l4re_namespace_t
Namespace type.
Definition namespace.h:53
long l4re_ns_query_to_srv(l4re_namespace_t srv, char const *name, l4_cap_idx_t const cap, int timeout) L4_NOTHROW
Query the name space for the object named by name.
l4re_ns_register_flags
Namespace register flags.
Definition namespace.h:39
unsigned long l4_cap_idx_t
Capability selector type.
Definition types.h:358
@ L4_FPAGE_RWX
Read-write-execute flex page.
Definition __l4_fpage.h:131
@ L4_FPAGE_RX
Read-execute flex page.
Definition __l4_fpage.h:130
@ L4_FPAGE_RO
Read-only flex page
Definition __l4_fpage.h:128
@ L4_FPAGE_W
Writable flex page.
Definition __l4_fpage.h:127
#define L4_CV
Define calling convention.
Definition linkage.h:44
#define L4_NOTHROW
Mark a function declaration and definition as never throwing an exception.
Definition compiler.h:188
#define L4_INLINE
L4 Inline function attribute.
Definition compiler.h:62
#define EXTERN_C_BEGIN
Start section with C types and functions.
Definition compiler.h:192
#define EXTERN_C_END
End section with C types and functions.
Definition compiler.h:193