596 lines
46 KiB
HTML
596 lines
46 KiB
HTML
<!-- HTML header for doxygen 1.9.1-->
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.15.0"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>L4Re Operating System Framework: L4Re::Namespace Class Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="cookie.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="l4re-awesome.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td id="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">L4Re Operating System Framework
|
|
</div>
|
|
<div id="projectbrief">Interface and Usage Documentation</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.15.0 -->
|
|
<script type="text/javascript">
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
</script>
|
|
<script type="text/javascript">
|
|
$(function() { codefold.init(); });
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(function(){initNavTree('classL4Re_1_1Namespace.html','',''); });
|
|
</script>
|
|
<div id="container">
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle"><div class="title">L4Re::Namespace Class Reference<div class="ingroups"><a class="el" href="group__api__l4re.html">L4Re C++ Interface</a> » <a class="el" href="group__api__l4re__namespace.html">Name-space API</a></div></div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Name-space interface.
|
|
<a href="#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="namespace_source.html">namespace</a>></code></p>
|
|
<div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Inheritance diagram for L4Re::Namespace:</div>
|
|
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace__inherit__graph.svg" width="443" height="526"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Collaboration diagram for L4Re::Namespace:</div>
|
|
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace__coll__graph.svg" width="443" height="526"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-pub-types" class="groupheader"><a id="pub-types" name="pub-types"></a>
|
|
Public Types</h2></td></tr>
|
|
<tr class="memitem:ae5f20a069f7a29fd6ad0d4d3dd24e4d6" id="r_ae5f20a069f7a29fd6ad0d4d3dd24e4d6"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6">Register_flags</a> { <br />
|
|
  <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6a839a7b87ebdf761e01c98d4b8500b76c">Ro</a> = L4_CAP_FPAGE_RO
|
|
, <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6af5e5edc8ee82b1cfafeaeddbcaf5b762">Rw</a> = L4_CAP_FPAGE_RW
|
|
, <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6a088af3b12003b8b51b9286092fe0f1ce">Rs</a> = L4_CAP_FPAGE_RS
|
|
, <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6a9337733a81d1478ac5bea5ccdb312b14">Rws</a> = L4_CAP_FPAGE_RWS
|
|
, <br />
|
|
  <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6a7f979eec2d93ae42ab7078e18f960290">Strong</a> = L4_CAP_FPAGE_S
|
|
, <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6a1893bccfccf47f9ae5b28d9a218f78f4">Trusted</a> = 0x008
|
|
, <b>Cap_flags</b> = Ro | Rw | Strong | Trusted
|
|
, <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6ab372476d92e0c1f40cae5b2de4f7f29a">Link</a> = 0x100
|
|
, <br />
|
|
  <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6a4844221832511ef714b566d3c57d212a">Overwrite</a> = 0x200
|
|
<br />
|
|
}</td></tr>
|
|
<tr class="memdesc:ae5f20a069f7a29fd6ad0d4d3dd24e4d6"><td class="mdescLeft"> </td><td class="mdescRight">Flags for registering name spaces. <a href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6">More...</a><br /></td></tr>
|
|
<tr class="memitem:a7581fa1af00ddb5aba5bbeddf30cbf2f" id="r_a7581fa1af00ddb5aba5bbeddf30cbf2f"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7581fa1af00ddb5aba5bbeddf30cbf2f">Query_result_flags</a> { <a class="el" href="#a7581fa1af00ddb5aba5bbeddf30cbf2fa287f2676998fe7701dcf12bcbdc28148">Partly_resolved</a> = 0x020
|
|
}</td></tr>
|
|
<tr class="memdesc:a7581fa1af00ddb5aba5bbeddf30cbf2f"><td class="mdescLeft"> </td><td class="mdescRight">Flags returned by query IPC, only used internally. <a href="#a7581fa1af00ddb5aba5bbeddf30cbf2f">More...</a><br /></td></tr>
|
|
<tr class="memitem:af25ee761c36cb9a897030afbeedd119f" id="r_af25ee761c36cb9a897030afbeedd119f"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="#af25ee761c36cb9a897030afbeedd119f">Query_timeout</a> { <a class="el" href="#af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf">To_default</a> = 3600000
|
|
, <a class="el" href="#af25ee761c36cb9a897030afbeedd119fa4d263c42dd724adefa8a61d0fbaf4408">To_non_blocking</a> = 0
|
|
}</td></tr>
|
|
<tr class="memdesc:af25ee761c36cb9a897030afbeedd119f"><td class="mdescLeft"> </td><td class="mdescRight">Timeout values for query operation. <a href="#af25ee761c36cb9a897030afbeedd119f">More...</a><br /></td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-pub-methods" class="groupheader"><a id="pub-methods" name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a42cfa87488784ad7557aa5562a8b5cd8" id="r_a42cfa87488784ad7557aa5562a8b5cd8"><td class="memItemLeft" align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="#a42cfa87488784ad7557aa5562a8b5cd8">query</a> (char const *name, <a class="el" href="classL4_1_1Cap.html">L4::Cap</a>< void > const &<a class="el" href="classL4_1_1Kobject.html#a4f2117ae76762f4084e6a1adb915863c">cap</a>, int timeout=<a class="el" href="#af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf">To_default</a>, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *local_id=0, bool iterate=true) const noexcept</td></tr>
|
|
<tr class="memdesc:a42cfa87488784ad7557aa5562a8b5cd8"><td class="mdescLeft"> </td><td class="mdescRight">Query the name space for a named object. <br /></td></tr>
|
|
<tr class="memitem:a6dae58f856b548bd7bd99c7c7307ea6b" id="r_a6dae58f856b548bd7bd99c7c7307ea6b"><td class="memItemLeft" align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6dae58f856b548bd7bd99c7c7307ea6b">query</a> (char const *name, unsigned len, <a class="el" href="classL4_1_1Cap.html">L4::Cap</a>< void > const &<a class="el" href="classL4_1_1Kobject.html#a4f2117ae76762f4084e6a1adb915863c">cap</a>, int timeout=<a class="el" href="#af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf">To_default</a>, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *local_id=0, bool iterate=true) const noexcept</td></tr>
|
|
<tr class="memdesc:a6dae58f856b548bd7bd99c7c7307ea6b"><td class="mdescLeft"> </td><td class="mdescRight">Query the name space for a named object. <br /></td></tr>
|
|
<tr class="memitem:a703b85671fa74d9deea39374c76e5a1b" id="r_a703b85671fa74d9deea39374c76e5a1b"><td class="memItemLeft" align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="#a703b85671fa74d9deea39374c76e5a1b">register_obj</a> (char const *name, <a class="el" href="classL4_1_1Ipc_1_1Cap.html">L4::Ipc::Cap</a>< void > obj, unsigned flags=<a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6af5e5edc8ee82b1cfafeaeddbcaf5b762">Rw</a>) const noexcept</td></tr>
|
|
<tr class="memdesc:a703b85671fa74d9deea39374c76e5a1b"><td class="mdescLeft"> </td><td class="mdescRight">Register an object with a name. <br /></td></tr>
|
|
<tr class="memitem:aaacbcd047be202eca6e795eb54878803" id="r_aaacbcd047be202eca6e795eb54878803"><td class="memItemLeft" align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="#aaacbcd047be202eca6e795eb54878803">unlink</a> (char const *name)</td></tr>
|
|
<tr class="memdesc:aaacbcd047be202eca6e795eb54878803"><td class="mdescLeft"> </td><td class="mdescRight">Remove an entry from the name space. <br /></td></tr>
|
|
<tr class="inherit_header pub_methods_classL4_1_1Kobject"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classL4_1_1Kobject')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Public Member Functions inherited from <a class="el" href="classL4_1_1Kobject.html">L4::Kobject</a></td></tr>
|
|
<tr class="memitem:a9fe009599de49f1af438ff49998faec0 inherit pub_methods_classL4_1_1Kobject" id="r_a9fe009599de49f1af438ff49998faec0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Kobject.html#a9fe009599de49f1af438ff49998faec0">dec_refcnt</a> (<a class="el" href="group__l4__basic__types.html#ga51d9492e7700d70ed35838154ca9b279">l4_mword_t</a> diff, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb=<a class="el" href="group__l4__utcb__api.html#gadc099b4a59e1d99638c72c11a8c8b644">l4_utcb</a>())</td></tr>
|
|
<tr class="memdesc:a9fe009599de49f1af438ff49998faec0 inherit pub_methods_classL4_1_1Kobject"><td class="mdescLeft"> </td><td class="mdescRight">Decrement the in kernel reference counter for the object. <br /></td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 id="header-inherited" class="groupheader"><a id="inherited" name="inherited"></a>
|
|
Additional Inherited Members</h2></td></tr>
|
|
<tr class="inherit_header pro_types_classL4_1_1Kobject__t"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_types_classL4_1_1Kobject__t')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Protected Types inherited from <a class="el" href="classL4_1_1Kobject__t.html">L4::Kobject_t< Namespace, L4::Kobject, L4RE_PROTO_NAMESPACE, L4::Type_info::Demand_t< 1 > ></a></td></tr>
|
|
<tr class="memitem:af7df35ba5bf68ef5993e605a6b62328a inherit pro_types_classL4_1_1Kobject__t" id="r_af7df35ba5bf68ef5993e605a6b62328a"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Namespace </td><td class="memItemRight" valign="bottom"><b>Class</b></td></tr>
|
|
<tr class="memdesc:af7df35ba5bf68ef5993e605a6b62328a inherit pro_types_classL4_1_1Kobject__t"><td class="mdescLeft"> </td><td class="mdescRight">The target interface type (inheriting from <a class="el" href="classL4_1_1Kobject__t.html" title="Helper class to create an L4Re interface class that is derived from a single base class.">Kobject_t</a>). <br /></td></tr>
|
|
<tr class="memitem:a0d83157994565e9c01f10006bdda2efa inherit pro_types_classL4_1_1Kobject__t" id="r_a0d83157994565e9c01f10006bdda2efa"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Typeid::Iface< PROTO, Namespace > </td><td class="memItemRight" valign="bottom"><b>__Iface</b></td></tr>
|
|
<tr class="memdesc:a0d83157994565e9c01f10006bdda2efa inherit pro_types_classL4_1_1Kobject__t"><td class="mdescLeft"> </td><td class="mdescRight">The interface description for the derived class. <br /></td></tr>
|
|
<tr class="memitem:afc2feec2f4a15e85286aabfa15c53e06 inherit pro_types_classL4_1_1Kobject__t" id="r_afc2feec2f4a15e85286aabfa15c53e06"><td class="memItemLeft" align="right" valign="top">
|
|
typedef Typeid::Merge_list< Typeid::Iface_list< <a class="el" href="classL4_1_1Kobject__t.html#a0d83157994565e9c01f10006bdda2efa">__Iface</a> >, typename L4::Kobject::__Iface_list > </td><td class="memItemRight" valign="bottom"><b>__Iface_list</b></td></tr>
|
|
<tr class="memdesc:afc2feec2f4a15e85286aabfa15c53e06 inherit pro_types_classL4_1_1Kobject__t"><td class="mdescLeft"> </td><td class="mdescRight">The list of all RPC interfaces provided directly or through inheritance. <br /></td></tr>
|
|
<tr class="inherit_header pro_methods_classL4_1_1Kobject__t"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_classL4_1_1Kobject__t')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Protected Member Functions inherited from <a class="el" href="classL4_1_1Kobject__t.html">L4::Kobject_t< Namespace, L4::Kobject, L4RE_PROTO_NAMESPACE, L4::Type_info::Demand_t< 1 > ></a></td></tr>
|
|
<tr class="memitem:a3d80fec7e057d575ec4b393437f05f8a inherit pro_methods_classL4_1_1Kobject__t" id="r_a3d80fec7e057d575ec4b393437f05f8a"><td class="memItemLeft" align="right" valign="top">
|
|
<a class="el" href="classL4_1_1Cap.html">L4::Cap</a>< <a class="el" href="classL4_1_1Kobject__t.html#af7df35ba5bf68ef5993e605a6b62328a">Class</a> > </td><td class="memItemRight" valign="bottom"><b>c</b> () const noexcept</td></tr>
|
|
<tr class="memdesc:a3d80fec7e057d575ec4b393437f05f8a inherit pro_methods_classL4_1_1Kobject__t"><td class="mdescLeft"> </td><td class="mdescRight">Get the capability to ourselves. <br /></td></tr>
|
|
<tr class="inherit_header pro_methods_classL4_1_1Kobject"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_classL4_1_1Kobject')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Protected Member Functions inherited from <a class="el" href="classL4_1_1Kobject.html">L4::Kobject</a></td></tr>
|
|
<tr class="memitem:a4f2117ae76762f4084e6a1adb915863c inherit pro_methods_classL4_1_1Kobject" id="r_a4f2117ae76762f4084e6a1adb915863c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classL4_1_1Kobject.html#a4f2117ae76762f4084e6a1adb915863c">cap</a> () const noexcept</td></tr>
|
|
<tr class="memdesc:a4f2117ae76762f4084e6a1adb915863c inherit pro_methods_classL4_1_1Kobject"><td class="mdescLeft"> </td><td class="mdescRight">Return capability selector. <br /></td></tr>
|
|
<tr class="inherit_header pro_static_methods_classL4_1_1Kobject__t"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_static_methods_classL4_1_1Kobject__t')"><span class="dynarrow"><span class="arrowhead closed"></span></span>Static Protected Member Functions inherited from <a class="el" href="classL4_1_1Kobject__t.html">L4::Kobject_t< Namespace, L4::Kobject, L4RE_PROTO_NAMESPACE, L4::Type_info::Demand_t< 1 > ></a></td></tr>
|
|
<tr class="memitem:a7433b8eed587278821dd496864f75363 inherit pro_static_methods_classL4_1_1Kobject__t" id="r_a7433b8eed587278821dd496864f75363"><td class="memItemLeft" align="right" valign="top">
|
|
static void </td><td class="memItemRight" valign="bottom"><b>__check_protocols__</b> () noexcept</td></tr>
|
|
<tr class="memdesc:a7433b8eed587278821dd496864f75363 inherit pro_static_methods_classL4_1_1Kobject__t"><td class="mdescLeft"> </td><td class="mdescRight">Helper to check for protocol conflicts. <br /></td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Name-space interface. </p>
|
|
<p>All name space objects must provide this interface. However, it is not mandatory that a name space object allows to register new capabilities.</p>
|
|
<p>The name lookup is done iteratively, this means the hierarchical names are resolved component wise by the client itself. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace_source.html#l00049">49</a> of file <a class="el" href="namespace_source.html">namespace</a>.</p>
|
|
</div><a name="doc-enum-members" id="doc-enum-members"></a><h2 id="header-doc-enum-members" class="groupheader">Member Enumeration Documentation</h2>
|
|
<a id="a7581fa1af00ddb5aba5bbeddf30cbf2f" name="a7581fa1af00ddb5aba5bbeddf30cbf2f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7581fa1af00ddb5aba5bbeddf30cbf2f">◆ </a></span>Query_result_flags</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">enum <a class="el" href="#a7581fa1af00ddb5aba5bbeddf30cbf2f">L4Re::Namespace::Query_result_flags</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Flags returned by query IPC, only used internally. </p>
|
|
<table class="fieldtable">
|
|
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a7581fa1af00ddb5aba5bbeddf30cbf2fa287f2676998fe7701dcf12bcbdc28148" name="a7581fa1af00ddb5aba5bbeddf30cbf2fa287f2676998fe7701dcf12bcbdc28148"></a>Partly_resolved </td><td class="fielddoc"><p>Name was only partly resolved. </p>
|
|
</td></tr>
|
|
</table>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace_source.html#l00077">77</a> of file <a class="el" href="namespace_source.html">namespace</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af25ee761c36cb9a897030afbeedd119f" name="af25ee761c36cb9a897030afbeedd119f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af25ee761c36cb9a897030afbeedd119f">◆ </a></span>Query_timeout</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">enum <a class="el" href="#af25ee761c36cb9a897030afbeedd119f">L4Re::Namespace::Query_timeout</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Timeout values for query operation. </p>
|
|
<table class="fieldtable">
|
|
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf" name="af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf"></a>To_default </td><td class="fielddoc"><p>Default timeout. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="af25ee761c36cb9a897030afbeedd119fa4d263c42dd724adefa8a61d0fbaf4408" name="af25ee761c36cb9a897030afbeedd119fa4d263c42dd724adefa8a61d0fbaf4408"></a>To_non_blocking </td><td class="fielddoc"><p>Expect callee to answer immediately. </p>
|
|
</td></tr>
|
|
</table>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace_source.html#l00083">83</a> of file <a class="el" href="namespace_source.html">namespace</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6">◆ </a></span>Register_flags</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">enum <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6">L4Re::Namespace::Register_flags</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Flags for registering name spaces. </p>
|
|
<table class="fieldtable">
|
|
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a839a7b87ebdf761e01c98d4b8500b76c" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a839a7b87ebdf761e01c98d4b8500b76c"></a>Ro </td><td class="fielddoc"><p>Read-only. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6af5e5edc8ee82b1cfafeaeddbcaf5b762" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6af5e5edc8ee82b1cfafeaeddbcaf5b762"></a>Rw </td><td class="fielddoc"><p>Read-write. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a088af3b12003b8b51b9286092fe0f1ce" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a088af3b12003b8b51b9286092fe0f1ce"></a>Rs </td><td class="fielddoc"><p>Read-only + strong. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a9337733a81d1478ac5bea5ccdb312b14" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a9337733a81d1478ac5bea5ccdb312b14"></a>Rws </td><td class="fielddoc"><p>Read-write + strong. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a7f979eec2d93ae42ab7078e18f960290" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a7f979eec2d93ae42ab7078e18f960290"></a>Strong </td><td class="fielddoc"><p>Strong. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a1893bccfccf47f9ae5b28d9a218f78f4" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a1893bccfccf47f9ae5b28d9a218f78f4"></a>Trusted </td><td class="fielddoc"><p>Obsolete, do not use. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6ab372476d92e0c1f40cae5b2de4f7f29a" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6ab372476d92e0c1f40cae5b2de4f7f29a"></a>Link </td><td class="fielddoc"><p>Obsolete, do not use. </p>
|
|
</td></tr>
|
|
<tr><td class="fieldname"><a id="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a4844221832511ef714b566d3c57d212a" name="ae5f20a069f7a29fd6ad0d4d3dd24e4d6a4844221832511ef714b566d3c57d212a"></a>Overwrite </td><td class="fielddoc"><p>If entry already exists, overwrite it. </p>
|
|
</td></tr>
|
|
</table>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace_source.html#l00057">57</a> of file <a class="el" href="namespace_source.html">namespace</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Member Function Documentation</h2>
|
|
<a id="a42cfa87488784ad7557aa5562a8b5cd8" name="a42cfa87488784ad7557aa5562a8b5cd8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a42cfa87488784ad7557aa5562a8b5cd8">◆ </a></span>query() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">long L4Re::Namespace::query </td>
|
|
<td>(</td>
|
|
<td class="paramtype">char const *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classL4_1_1Cap.html">L4::Cap</a>< void > const &</td> <td class="paramname"><span class="paramname"><em>cap</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>timeout</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="#af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf">To_default</a></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *</td> <td class="paramname"><span class="paramname"><em>local_id</em></span><span class="paramdefsep"> = </span><span class="paramdefval">0</span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>iterate</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Query the name space for a named object. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>String to query (without any leading slashes). </td></tr>
|
|
<tr><td class="paramdir">[out]</td><td class="paramname">cap</td><td>Capability slot where the received capability will be put. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout of query in milliseconds. The client will only wait if a name has already been registered with the server but no object has yet been attached. </td></tr>
|
|
<tr><td class="paramdir">[out]</td><td class="paramname">local_id</td><td>If given, <a class="el" href="group__l4__msgitem__api.html#gga94ecfe2908867c4ed0c13a7a97337f6aa9ec3db5390483f9f0cd4a4571b04b5be" title="The receiver requests to receive a local ID instead of a mapping whenever possible.">L4_RCV_ITEM_LOCAL_ID</a> will be set for the IPC from the name space, so that if the capability that was received is a local item, the capability ID will be returned with this parameter. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">iterate</td><td>If true, the client will try to resolve names by iteratively calling the name spaces until the name is fully resolved.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="retval"><dt>Return values</dt><dd>
|
|
<table class="retval">
|
|
<tr><td class="paramname">0</td><td>Name could be fully resolved. </td></tr>
|
|
<tr><td class="paramname">>0</td><td>Name could only be partly resolved. The number of remaining characters is returned. </td></tr>
|
|
<tr><td class="paramname">-L4_ENOENT</td><td>Entry could not be found. </td></tr>
|
|
<tr><td class="paramname">-L4_EAGAIN</td><td>Entry exists but no object is yet attached. Try again later. </td></tr>
|
|
<tr><td class="paramname"><0</td><td>IPC errors, see <a class="el" href="group__l4__error__api.html#gab4c8abc71ffa221a25c1ca5840a354f9" title="L4 error codes.">l4_error_code_t</a>. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace__impl_8h_source.html#l00114">114</a> of file <a class="el" href="namespace__impl_8h_source.html">namespace_impl.h</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="namespace__impl_8h_source.html#l00114">query()</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="namespace__impl_8h_source.html#l00114">query()</a>.</p>
|
|
<div id="dynsection-2" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
|
|
<div id="dynsection-2-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-2-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_a42cfa87488784ad7557aa5562a8b5cd8_cgraph.svg" width="195" height="60"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div id="dynsection-3" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the caller graph for this function:</div>
|
|
<div id="dynsection-3-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-3-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_a42cfa87488784ad7557aa5562a8b5cd8_icgraph.svg" width="195" height="60"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6dae58f856b548bd7bd99c7c7307ea6b" name="a6dae58f856b548bd7bd99c7c7307ea6b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6dae58f856b548bd7bd99c7c7307ea6b">◆ </a></span>query() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">long L4Re::Namespace::query </td>
|
|
<td>(</td>
|
|
<td class="paramtype">char const *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>len</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classL4_1_1Cap.html">L4::Cap</a>< void > const &</td> <td class="paramname"><span class="paramname"><em>cap</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>timeout</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="#af25ee761c36cb9a897030afbeedd119fae9bcac646d4cce688a09fd5f569822cf">To_default</a></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *</td> <td class="paramname"><span class="paramname"><em>local_id</em></span><span class="paramdefsep"> = </span><span class="paramdefval">0</span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>iterate</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Query the name space for a named object. </p>
|
|
<p>The query string does not necessarily need to be null-terminated.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">len</td><td>Length of the string to query without any terminating null characters. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>String to query (without any leading slashes). </td></tr>
|
|
<tr><td class="paramdir">[out]</td><td class="paramname">cap</td><td>Capability slot where the received capability will be put. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout of query in milliseconds. The client will only wait if a name has already been registered with the server but no object has yet been attached. </td></tr>
|
|
<tr><td class="paramdir">[out]</td><td class="paramname">local_id</td><td>If given, <a class="el" href="group__l4__msgitem__api.html#gga94ecfe2908867c4ed0c13a7a97337f6aa9ec3db5390483f9f0cd4a4571b04b5be" title="The receiver requests to receive a local ID instead of a mapping whenever possible.">L4_RCV_ITEM_LOCAL_ID</a> will be set for the IPC from the name space, so that if the capability that was received is a local item, the capability ID will be returned with this parameter. </td></tr>
|
|
<tr><td class="paramdir">[in]</td><td class="paramname">iterate</td><td>If true, the client will try to resolve names by iteratively calling the name spaces until the name is fully resolved.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="retval"><dt>Return values</dt><dd>
|
|
<table class="retval">
|
|
<tr><td class="paramname">0</td><td>Name could be fully resolved. </td></tr>
|
|
<tr><td class="paramname">>0</td><td>Name could only be partly resolved. The number of remaining characters is returned. </td></tr>
|
|
<tr><td class="paramname">-L4_ENOENT</td><td>Entry could not be found. </td></tr>
|
|
<tr><td class="paramname">-L4_EAGAIN</td><td>Entry exists but no object is yet attached. Try again later. </td></tr>
|
|
<tr><td class="paramname"><0</td><td>IPC errors, see <a class="el" href="group__l4__error__api.html#gab4c8abc71ffa221a25c1ca5840a354f9" title="L4 error codes.">l4_error_code_t</a>. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace__impl_8h_source.html#l00066">66</a> of file <a class="el" href="namespace__impl_8h_source.html">namespace_impl.h</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="err_8h_source.html#l00038">L4_EAGAIN</a>, <a class="el" href="err_8h_source.html#l00046">L4_EINVAL</a>, <a class="el" href="group__l4util__api.html#gac06b9778d4fe83007f847e52b658eb80">l4_sleep()</a>, and <a class="el" href="compiler_8h_source.html#l00284">L4_UNLIKELY</a>.</p>
|
|
<div id="dynsection-4" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
|
|
<div id="dynsection-4-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-4-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_a6dae58f856b548bd7bd99c7c7307ea6b_cgraph.svg" width="319" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a703b85671fa74d9deea39374c76e5a1b" name="a703b85671fa74d9deea39374c76e5a1b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a703b85671fa74d9deea39374c76e5a1b">◆ </a></span>register_obj()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">long L4Re::Namespace::register_obj </td>
|
|
<td>(</td>
|
|
<td class="paramtype">char const *</td> <td class="paramname"><span class="paramname"><em>name</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classL4_1_1Ipc_1_1Cap.html">L4::Ipc::Cap</a>< void ></td> <td class="paramname"><span class="paramname"><em>obj</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">unsigned</td> <td class="paramname"><span class="paramname"><em>flags</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6af5e5edc8ee82b1cfafeaeddbcaf5b762">Rw</a></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel inline">inline</span><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Register an object with a name. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">name</td><td>Name under which the object should be registered. </td></tr>
|
|
<tr><td class="paramname">obj</td><td>Capability to object to register. An invalid capability may be given to only reserve the name for later use. </td></tr>
|
|
<tr><td class="paramname">flags</td><td>Flags to assign to the entry, see <a class="el" href="#ae5f20a069f7a29fd6ad0d4d3dd24e4d6" title="Flags for registering name spaces.">L4Re::Namespace::Register_flags</a>. Note that the rights that are assigned to a capability are not only determined by the rights given in these flags but also by the rights with which the <span class="tt">obj</span> capability was mapped to the name space.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="retval"><dt>Return values</dt><dd>
|
|
<table class="retval">
|
|
<tr><td class="paramname">0</td><td>Object was successfully registered with <em class="arg">name</em>. </td></tr>
|
|
<tr><td class="paramname">-L4_EEXIST</td><td>Name already registered. </td></tr>
|
|
<tr><td class="paramname">-L4_EPERM</td><td>Insufficient permissions; see precondition. </td></tr>
|
|
<tr><td class="paramname">-L4_ENOMEM</td><td>Server has insufficient resources. </td></tr>
|
|
<tr><td class="paramname">-L4_EINVAL</td><td>Invalid parameter. </td></tr>
|
|
<tr><td class="paramname"><0</td><td>IPC errors, see <a class="el" href="group__l4__error__api.html#gab4c8abc71ffa221a25c1ca5840a354f9" title="L4 error codes.">l4_error_code_t</a>.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section pre"><dt>Precondition</dt><dd>The invoked <a class="el" href="classL4Re_1_1Namespace.html" title="Name-space interface.">Namespace</a> capability must have the permission <a class="el" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a" title="Interface specific 'W' right for capability flexpages.">L4_CAP_FPAGE_W</a>. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace_source.html#l00165">165</a> of file <a class="el" href="namespace_source.html">namespace</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="____typeinfo_8h_source.html#l00769">L4::Kobject_t< Namespace, L4::Kobject, L4RE_PROTO_NAMESPACE, L4::Type_info::Demand_t< 1 > >::c()</a>, <a class="el" href="namespace_source.html#l00165">register_obj()</a>, and <a class="el" href="namespace_source.html#l00060">Rw</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="namespace_source.html#l00165">register_obj()</a>.</p>
|
|
<div id="dynsection-5" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
|
|
<div id="dynsection-5-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-5-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_a703b85671fa74d9deea39374c76e5a1b_cgraph.svg" width="486" height="83"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div id="dynsection-6" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the caller graph for this function:</div>
|
|
<div id="dynsection-6-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-6-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_a703b85671fa74d9deea39374c76e5a1b_icgraph.svg" width="235" height="60"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aaacbcd047be202eca6e795eb54878803" name="aaacbcd047be202eca6e795eb54878803"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aaacbcd047be202eca6e795eb54878803">◆ </a></span>unlink()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">long L4Re::Namespace::unlink </td>
|
|
<td>(</td>
|
|
<td class="paramtype">char const *</td> <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Remove an entry from the name space. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">name</td><td>Name of the entry to remove.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="retval"><dt>Return values</dt><dd>
|
|
<table class="retval">
|
|
<tr><td class="paramname">0</td><td>Entry successfully removed. </td></tr>
|
|
<tr><td class="paramname">-L4_ENOENT</td><td>Given name does not exist. </td></tr>
|
|
<tr><td class="paramname">-L4_EPERM</td><td>Insufficient permissions; see precondition. </td></tr>
|
|
<tr><td class="paramname">-L4_EACCESS</td><td>Name cannot be removed. </td></tr>
|
|
<tr><td class="paramname"><0</td><td>IPC errors, see <a class="el" href="group__l4__error__api.html#gab4c8abc71ffa221a25c1ca5840a354f9" title="L4 error codes.">l4_error_code_t</a>.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section pre"><dt>Precondition</dt><dd>The invoked <a class="el" href="classL4Re_1_1Namespace.html" title="Name-space interface.">Namespace</a> capability must have the permission <a class="el" href="group__l4__fpage__api.html#ggaee60789a48cab2782f5a368237591b39a561054fb4021ff4a22ab1881c7a7de5a" title="Interface specific 'W' right for capability flexpages.">L4_CAP_FPAGE_W</a>. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="namespace_source.html#l00191">191</a> of file <a class="el" href="namespace_source.html">namespace</a>.</p>
|
|
|
|
<p class="reference">References <a class="el" href="____typeinfo_8h_source.html#l00769">L4::Kobject_t< Namespace, L4::Kobject, L4RE_PROTO_NAMESPACE, L4::Type_info::Demand_t< 1 > >::c()</a>, and <a class="el" href="namespace_source.html#l00191">unlink()</a>.</p>
|
|
|
|
<p class="reference">Referenced by <a class="el" href="namespace_source.html#l00191">unlink()</a>.</p>
|
|
<div id="dynsection-7" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the call graph for this function:</div>
|
|
<div id="dynsection-7-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-7-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_aaacbcd047be202eca6e795eb54878803_cgraph.svg" width="448" height="83"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div id="dynsection-8" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Here is the caller graph for this function:</div>
|
|
<div id="dynsection-8-summary" class="dynsummary" style="display:block;">
|
|
</div>
|
|
<div id="dynsection-8-content" class="dyncontent" style="display:none;">
|
|
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="classL4Re_1_1Namespace_aaacbcd047be202eca6e795eb54878803_icgraph.svg" width="198" height="60"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li>l4/re/<a class="el" href="namespace_source.html">namespace</a></li>
|
|
<li>l4/re/impl/<a class="el" href="namespace__impl_8h_source.html">namespace_impl.h</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<div id="page-nav" class="page-nav-panel">
|
|
<div id="page-nav-resize-handle"></div>
|
|
<div id="page-nav-tree">
|
|
<div id="page-nav-contents">
|
|
</div><!-- page-nav-contents -->
|
|
</div><!-- page-nav-tree -->
|
|
</div><!-- page-nav -->
|
|
</div><!-- container -->
|
|
<!-- HTML footer for doxygen 1.9.1-->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a href="namespaceL4Re.html">L4Re</a></li><li class="navelem"><a href="classL4Re_1_1Namespace.html">Namespace</a></li>
|
|
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|