]> git.saurik.com Git - apple/xnu.git/blame - osfmk/man/ledger_get_remote.html
xnu-2422.1.72.tar.gz
[apple/xnu.git] / osfmk / man / ledger_get_remote.html
CommitLineData
13fec989
A
1<h2>ledger_get_remote</h2>
2<hr>
3<p>
4<strong>Function</strong> - Return send right to specified host's remote ledger port.
5<h3>SYNOPSIS</h3>
6<pre>
7<strong>kern_return_t ledger_get_remote</strong>
8 <strong>(ledger_port_t</strong> <var>ledger</var>,
9 <strong>host_t</strong> <var>host_name</var>,
10 <strong>ledger</strong> <var>service_port</var><strong>);</strong>
11
12
13<strong>kern_return_t ledger_return_remote</strong>
14 <strong>(ledger_port_t</strong> <var>ledger</var>,
15 <strong>host_t</strong> <var>host_name</var>,
16 <strong>ledger</strong> <var>service_port</var><strong>);</strong>
17</pre>
18<h3>PARAMETERS</h3>
19<dl>
20<p>
21<dt> <var>ledger</var>
22<dd>
23[in ledger send right]
24The ledger whose service port is desired.
25<p>
26<dt> <var>host_name</var>
27<dd>
28[in host-name send right]
29The name for the host requesting the service
30port.
31<p>
32<dt> <var>service_port</var>
33<dd>
34[out ledger-service send right]
35The ledger service port.
36</dl>
37<h3>DESCRIPTION</h3>
38<p>
39The <strong>ledger_get_remote</strong> function returns the remote ledger
40service port for the
41ledger
42<h3>NOTES</h3>
43<p>
44This interface is not implemented in OSF/1 R1.3.
45<p>
46This mechanism supports distributed resource ledgers in the following way:
47<dl>
48<dd>
49With <strong>ledger_set_remote</strong>, a ledger is assigned a remote
50ledger service port.
51<dd>
52This ledger is used as the ledger for a create operation.
53If the ledger is local to the target kernel, all is fine.
54<dd>
55For a non-local creation, the target kernel sees that the supplied
56ledger is not
57a local ledger. The kernel sends a <strong>ledger_get_remote</strong> message to it,
58including the host name.
59<dd>
60The (remote) ledger receives this message, ignores the host name and returns
61the remote ledger service port.
62<dd>
63Assuming that the remote ledger service port is not a local ledger, the kernel
64sends a <strong>ledger_get_remote</strong> message to this service port.
65<dd>
66A server receives this request (with the <strong>ledger_return_remote</strong>
67server interface)
68and uses the identity of the service port as well as the host name of the
69target kernel to locate or create a suitable ledger on that kernel.
70<dd>
71The port for a ledger on the target kernel is sent to that kernel and used.
72</dl>
73<h3>RETURN VALUES</h3>
74<p>
75Only generic errors apply.
76<h3>RELATED INFORMATION</h3>
77<p>
78Functions:
79<a href="ledger_create.html"><strong>ledger_create</strong></a>,
80<a href="ledger_set_remote.html"><strong>ledger_set_remote</strong></a>.