summaryrefslogtreecommitdiff
path: root/docs/html/GSignondAccessControlManager.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/html/GSignondAccessControlManager.html')
-rw-r--r--docs/html/GSignondAccessControlManager.html366
1 files changed, 366 insertions, 0 deletions
diff --git a/docs/html/GSignondAccessControlManager.html b/docs/html/GSignondAccessControlManager.html
new file mode 100644
index 0000000..13c0117
--- /dev/null
+++ b/docs/html/GSignondAccessControlManager.html
@@ -0,0 +1,366 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>GSignondAccessControlManager</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<link rel="home" href="index.html" title="gsignond API Reference Manual">
+<link rel="up" href="ch05.html" title="GSignond API for writing platform adaptation extensions">
+<link rel="prev" href="GSignondExtension.html" title="GSignondExtension">
+<link rel="next" href="gsignond-GSignondSecurityContext.html" title="GSignondSecurityContext">
+<meta name="generator" content="GTK-Doc V1.19.1 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left">
+<a href="#" class="shortcut">Top</a>
+  | 
+ <a href="#GSignondAccessControlManager.description" class="shortcut">Description</a>
+  | 
+ <a href="#GSignondAccessControlManager.object-hierarchy" class="shortcut">Object Hierarchy</a>
+  | 
+ <a href="#GSignondAccessControlManager.properties" class="shortcut">Properties</a>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="ch05.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="GSignondExtension.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gsignond-GSignondSecurityContext.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="GSignondAccessControlManager"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="GSignondAccessControlManager.top_of_page"></a>GSignondAccessControlManager</span></h2>
+<p>GSignondAccessControlManager — an object that performs access control checks</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv">
+<a name="GSignondAccessControlManager.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+#include &lt;gsignond/gsignond-access-control-manager.h&gt;
+
+struct <a class="link" href="GSignondAccessControlManager.html#GSignondAccessControlManager-struct" title="struct GSignondAccessControlManager">GSignondAccessControlManager</a>;
+struct <a class="link" href="GSignondAccessControlManager.html#GSignondAccessControlManagerClass" title="struct GSignondAccessControlManagerClass">GSignondAccessControlManagerClass</a>;
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-acl-is-valid" title="gsignond_access_control_manager_acl_is_valid ()">gsignond_access_control_manager_acl_is_valid</a>
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContextList" title="GSignondSecurityContextList"><span class="type">GSignondSecurityContextList</span></a> *identity_acl</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-peer-is-allowed-to-use-identity" title="gsignond_access_control_manager_peer_is_allowed_to_use_identity ()">gsignond_access_control_manager_peer_is_allowed_to_use_identity</a>
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *owner_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContextList" title="GSignondSecurityContextList"><span class="type">GSignondSecurityContextList</span></a> *identity_acl</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-peer-is-owner-of-identity" title="gsignond_access_control_manager_peer_is_owner_of_identity ()">gsignond_access_control_manager_peer_is_owner_of_identity</a>
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *owner_ctx</code></em>);
+<a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="returnvalue">GSignondSecurityContext</span></a> * <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-security-context-of-keychain" title="gsignond_access_control_manager_security_context_of_keychain ()">gsignond_access_control_manager_security_context_of_keychain</a>
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>);
+<span class="returnvalue">void</span> <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-security-context-of-peer" title="gsignond_access_control_manager_security_context_of_peer ()">gsignond_access_control_manager_security_context_of_peer</a>
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code><a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code><span class="type">int</span> peer_fd</code></em>,
+ <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *peer_service</code></em>,
+ <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *peer_app_ctx</code></em>);
+</pre>
+</div>
+<div class="refsect1">
+<a name="GSignondAccessControlManager.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="synopsis">
+ <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+ +----GSignondAccessControlManager
+</pre>
+</div>
+<div class="refsect1">
+<a name="GSignondAccessControlManager.properties"></a><h2>Properties</h2>
+<pre class="synopsis">
+ "<a class="link" href="GSignondAccessControlManager.html#GSignondAccessControlManager--config" title='The "config" property'>config</a>" <a class="link" href="GSignondConfig.html" title="GSignondConfig"><span class="type">GSignondConfig</span></a>* : Read / Write / Construct Only
+</pre>
+</div>
+<div class="refsect1">
+<a name="GSignondAccessControlManager.description"></a><h2>Description</h2>
+<p>
+<a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> performs access control checks using
+available system services. gSSO can be configured to use a custom extension
+that provides a subclassed implementation of <a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a>
+(see <a class="link" href="GSignondExtension.html" title="GSignondExtension"><span class="type">GSignondExtension</span></a>), otherwise a default implementation is used.
+</p>
+</div>
+<div class="refsect1">
+<a name="GSignondAccessControlManager.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="GSignondAccessControlManager-struct"></a><h3>struct GSignondAccessControlManager</h3>
+<pre class="programlisting">struct GSignondAccessControlManager;</pre>
+<p>
+Opaque <a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> data structure.
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="GSignondAccessControlManagerClass"></a><h3>struct GSignondAccessControlManagerClass</h3>
+<pre class="programlisting">struct GSignondAccessControlManagerClass {
+ GObjectClass parent_class;
+
+ void (*security_context_of_peer) (
+ GSignondAccessControlManager *self,
+ GSignondSecurityContext *peer_ctx,
+ int peer_fd, const gchar *peer_service,
+ const gchar *peer_app_ctx);
+ gboolean (*peer_is_allowed_to_use_identity) (
+ GSignondAccessControlManager *self,
+ const GSignondSecurityContext *peer_ctx,
+ const GSignondSecurityContext *owner_ctx,
+ const GSignondSecurityContextList *identity_acl);
+ gboolean (*peer_is_owner_of_identity) (
+ GSignondAccessControlManager *self,
+ const GSignondSecurityContext *peer_ctx,
+ const GSignondSecurityContext *owner_ctx);
+ gboolean (*acl_is_valid) (
+ GSignondAccessControlManager *self,
+ const GSignondSecurityContext *peer_ctx,
+ const GSignondSecurityContextList *identity_acl);
+ GSignondSecurityContext * (*security_context_of_keychain) (
+ GSignondAccessControlManager *self);
+};
+</pre>
+<p>
+<a class="link" href="GSignondAccessControlManager.html#GSignondAccessControlManagerClass" title="struct GSignondAccessControlManagerClass"><span class="type">GSignondAccessControlManagerClass</span></a> class containing pointers to class methods.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="GSignondAccessControlManagerClass.parent-class"></a>parent_class</code></em>;</span></p></td>
+<td>parent class.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="structfield"><code><a name="GSignondAccessControlManagerClass.security-context-of-peer"></a>security_context_of_peer</code></em> ()</span></p></td>
+<td>an implementation of <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-security-context-of-peer" title="gsignond_access_control_manager_security_context_of_peer ()"><code class="function">gsignond_access_control_manager_security_context_of_peer()</code></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="structfield"><code><a name="GSignondAccessControlManagerClass.peer-is-allowed-to-use-identity"></a>peer_is_allowed_to_use_identity</code></em> ()</span></p></td>
+<td>an implementation of <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-peer-is-allowed-to-use-identity" title="gsignond_access_control_manager_peer_is_allowed_to_use_identity ()"><code class="function">gsignond_access_control_manager_peer_is_allowed_to_use_identity()</code></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="structfield"><code><a name="GSignondAccessControlManagerClass.peer-is-owner-of-identity"></a>peer_is_owner_of_identity</code></em> ()</span></p></td>
+<td>an implementation of <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-peer-is-owner-of-identity" title="gsignond_access_control_manager_peer_is_owner_of_identity ()"><code class="function">gsignond_access_control_manager_peer_is_owner_of_identity()</code></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="structfield"><code><a name="GSignondAccessControlManagerClass.acl-is-valid"></a>acl_is_valid</code></em> ()</span></p></td>
+<td>an implementation of <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-acl-is-valid" title="gsignond_access_control_manager_acl_is_valid ()"><code class="function">gsignond_access_control_manager_acl_is_valid()</code></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="structfield"><code><a name="GSignondAccessControlManagerClass.security-context-of-keychain"></a>security_context_of_keychain</code></em> ()</span></p></td>
+<td>an implementation of <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-security-context-of-keychain" title="gsignond_access_control_manager_security_context_of_keychain ()"><code class="function">gsignond_access_control_manager_security_context_of_keychain()</code></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gsignond-access-control-manager-acl-is-valid"></a><h3>gsignond_access_control_manager_acl_is_valid ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gsignond_access_control_manager_acl_is_valid
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContextList" title="GSignondSecurityContextList"><span class="type">GSignondSecurityContextList</span></a> *identity_acl</code></em>);</pre>
+<p>
+Checks if the specified peer is allowed to set the specified access
+control list. <a class="link" href="GSignondAccessControlManager.html#gsignond-access-control-manager-peer-is-owner-of-identity" title="gsignond_access_control_manager_peer_is_owner_of_identity ()"><code class="function">gsignond_access_control_manager_peer_is_owner_of_identity()</code></a>
+is used before calling this method to verify identity ownership.
+</p>
+<p>
+The default implementation always returns TRUE.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
+<td>object instance.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_ctx</code></em> :</span></p></td>
+<td>security context of the peer connection.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>identity_acl</code></em> :</span></p></td>
+<td>access control list for the identity.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>access control list is OK?</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gsignond-access-control-manager-peer-is-allowed-to-use-identity"></a><h3>gsignond_access_control_manager_peer_is_allowed_to_use_identity ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gsignond_access_control_manager_peer_is_allowed_to_use_identity
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *owner_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContextList" title="GSignondSecurityContextList"><span class="type">GSignondSecurityContextList</span></a> *identity_acl</code></em>);</pre>
+<p>
+Checks if specified peer is allowed to access the specified identity.
+</p>
+<p>
+The default implementation goes over items in <em class="parameter"><code>identity_acl</code></em>, using
+<a class="link" href="gsignond-GSignondSecurityContext.html#gsignond-security-context-check" title="gsignond_security_context_check ()"><code class="function">gsignond_security_context_check()</code></a> to check them against <em class="parameter"><code>peer_ctx</code></em>.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
+<td>object instance.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_ctx</code></em> :</span></p></td>
+<td>security context of the peer connection.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>owner_ctx</code></em> :</span></p></td>
+<td>security context of the identity owner.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>identity_acl</code></em> :</span></p></td>
+<td>access control list for the identity in question. Includes the <em class="parameter"><code>owner_ctx</code></em> as well.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>access is allowed?</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gsignond-access-control-manager-peer-is-owner-of-identity"></a><h3>gsignond_access_control_manager_peer_is_owner_of_identity ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gsignond_access_control_manager_peer_is_owner_of_identity
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code>const <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *owner_ctx</code></em>);</pre>
+<p>
+Checks if the peer specified in <em class="parameter"><code>peer_ctx</code></em> is the owner of the identity.
+</p>
+<p>
+The default implementation is using <a class="link" href="gsignond-GSignondSecurityContext.html#gsignond-security-context-check" title="gsignond_security_context_check ()"><code class="function">gsignond_security_context_check()</code></a>
+to check <em class="parameter"><code>peer_ctx</code></em> against <em class="parameter"><code>owner_ctx</code></em> directly.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
+<td>object instance.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_ctx</code></em> :</span></p></td>
+<td>security context of the peer connection.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>owner_ctx</code></em> :</span></p></td>
+<td>security context of the identity owner.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>is owner?</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gsignond-access-control-manager-security-context-of-keychain"></a><h3>gsignond_access_control_manager_security_context_of_keychain ()</h3>
+<pre class="programlisting"><a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="returnvalue">GSignondSecurityContext</span></a> * gsignond_access_control_manager_security_context_of_keychain
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>);</pre>
+<p>
+Retrieves security context of the keychain application. Keychain application
+has a special management access to all stored identities and is able to
+perform deletion of all identities from storage.
+</p>
+<p>
+The default implementation returns an empty context. If gSSO was compiled
+with --enable-debug and SSO_KEYCHAIN_SYSCTX environment variable is set, then
+the value of that variable is used to set the returned system context instead.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
+<td>object instance.</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>security context of the keychain application.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="gsignond-access-control-manager-security-context-of-peer"></a><h3>gsignond_access_control_manager_security_context_of_peer ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span> gsignond_access_control_manager_security_context_of_peer
+ (<em class="parameter"><code><a class="link" href="GSignondAccessControlManager.html" title="GSignondAccessControlManager"><span class="type">GSignondAccessControlManager</span></a> *self</code></em>,
+ <em class="parameter"><code><a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> *peer_ctx</code></em>,
+ <em class="parameter"><code><span class="type">int</span> peer_fd</code></em>,
+ <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *peer_service</code></em>,
+ <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *peer_app_ctx</code></em>);</pre>
+<p>
+Retrieves and sets <a class="link" href="gsignond-GSignondSecurityContext.html#GSignondSecurityContext" title="GSignondSecurityContext"><span class="type">GSignondSecurityContext</span></a> of the specified peer.
+</p>
+<p>
+The default implementation sets the app context as it was passed, and sets
+the system context to the binary path of the process that is determined from
+<em class="parameter"><code>peer_fd</code></em> and <em class="parameter"><code>peer_service</code></em> parameters.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
+<td>object instance.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_ctx</code></em> :</span></p></td>
+<td>instance of security context to be set.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_fd</code></em> :</span></p></td>
+<td>file descriptor of the peer connection if using peer-to-peer dbus, -1 otherwise.</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_service</code></em> :</span></p></td>
+<td>g_dbus_method_invocation_get_sender() of the peer connection, if not using peer-to-peer dbus, NULL otherwise</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>peer_app_ctx</code></em> :</span></p></td>
+<td>application context of the peer connection.</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<div class="refsect1">
+<a name="GSignondAccessControlManager.property-details"></a><h2>Property Details</h2>
+<div class="refsect2">
+<a name="GSignondAccessControlManager--config"></a><h3>The <code class="literal">"config"</code> property</h3>
+<pre class="programlisting"> "config" <a class="link" href="GSignondConfig.html" title="GSignondConfig"><span class="type">GSignondConfig</span></a>* : Read / Write / Construct Only</pre>
+<p>Configuration object.</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.19.1</div>
+</body>
+</html> \ No newline at end of file