| Current File : //usr/share/doc/dbus/api/group__DBusAuth.html |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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"/>
<title>D-Bus: Authentication</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">D-Bus
 <span id="projectnumber">1.8.20</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.7.6.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Defines</a> |
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Authentication</div> </div>
<div class="ingroups"><a class="el" href="group__DBusInternals.html">D-Bus secret internal implementation details</a></div></div><!--header-->
<div class="contents">
<p><a class="el" href="structDBusAuth.html" title="Internal members of DBusAuth.">DBusAuth</a> object.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gaef3b2bcbcd611b935955eaf82ce238e2">DBUS_AUTH_IN_END_STATE</a>(auth)   ((auth)->state->handler == <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>)</td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga302e454600ae0e1aa27193d4b0a86385">_dbus_auth_server_new</a> (const <a class="el" href="structDBusString.html">DBusString</a> *guid)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a new auth conversation object for the server side. <a href="#ga302e454600ae0e1aa27193d4b0a86385"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gaee76dbcdada8bcafe131f5a2de151ac3">_dbus_auth_client_new</a> (void)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a new auth conversation object for the client side. <a href="#gaee76dbcdada8bcafe131f5a2de151ac3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gaebe46c0887021bb3f6de3d283e0c66db">_dbus_auth_ref</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Increments the refcount of an auth object. <a href="#gaebe46c0887021bb3f6de3d283e0c66db"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga7fb648be9d6d451917195a0e43eeece0">_dbus_auth_unref</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Decrements the refcount of an auth object. <a href="#ga7fb648be9d6d451917195a0e43eeece0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga9454e2c512b4e2ea54d47cff6acaa4db">_dbus_auth_set_mechanisms</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, const char **mechanisms)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Sets an array of authentication mechanism names that we are willing to use. <a href="#ga9454e2c512b4e2ea54d47cff6acaa4db"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">DBusAuthState </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga097c71f7f20b749275c6b31cd98623f5">_dbus_auth_do_work</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Analyzes buffered input and moves the auth conversation forward, returning the new state of the auth conversation. <a href="#ga097c71f7f20b749275c6b31cd98623f5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga7befc68c815fe31d7fa556b699ef67de">_dbus_auth_get_bytes_to_send</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, const <a class="el" href="structDBusString.html">DBusString</a> **str)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Gets bytes that need to be sent to the peer we're conversing with. <a href="#ga7befc68c815fe31d7fa556b699ef67de"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gaed9f7f1d3289a0ae2fea2204729ac01f">_dbus_auth_bytes_sent</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, int bytes_sent)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Notifies the auth conversation object that the given number of bytes of the outgoing buffer have been written out. <a href="#gaed9f7f1d3289a0ae2fea2204729ac01f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gac0fc38d8d0d139e4d52787881a324c05">_dbus_auth_get_buffer</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, <a class="el" href="structDBusString.html">DBusString</a> **buffer)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a buffer to be used for reading bytes from the peer we're conversing with. <a href="#gac0fc38d8d0d139e4d52787881a324c05"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga842c246877d16cb9a75cc9828a5433c2">_dbus_auth_return_buffer</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, <a class="el" href="structDBusString.html">DBusString</a> *buffer)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a buffer with new data read into it. <a href="#ga842c246877d16cb9a75cc9828a5433c2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gaf9e2ab67f2ddd26eeb7deeb8b0af7817">_dbus_auth_get_unused_bytes</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, const <a class="el" href="structDBusString.html">DBusString</a> **str)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Returns leftover bytes that were not used as part of the auth conversation. <a href="#gaf9e2ab67f2ddd26eeb7deeb8b0af7817"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gabbe8cf9e5958357c49a190ca259aa9b3">_dbus_auth_delete_unused_bytes</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Gets rid of unused bytes returned by <a class="el" href="group__DBusAuth.html#gaf9e2ab67f2ddd26eeb7deeb8b0af7817" title="Returns leftover bytes that were not used as part of the auth conversation.">_dbus_auth_get_unused_bytes()</a> after we've gotten them and successfully moved them elsewhere. <a href="#gabbe8cf9e5958357c49a190ca259aa9b3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga22ddfb5e12cba3d047dc1d1302c23490">_dbus_auth_needs_encoding</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Called post-authentication, indicates whether we need to encode the message stream with <a class="el" href="group__DBusAuth.html#ga0d59bcf62c098cdfb95f610cdfd12690" title="Called post-authentication, encodes a block of bytes for sending to the peer.">_dbus_auth_encode_data()</a> prior to sending it to the peer. <a href="#ga22ddfb5e12cba3d047dc1d1302c23490"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga0d59bcf62c098cdfb95f610cdfd12690">_dbus_auth_encode_data</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, const <a class="el" href="structDBusString.html">DBusString</a> *plaintext, <a class="el" href="structDBusString.html">DBusString</a> *encoded)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Called post-authentication, encodes a block of bytes for sending to the peer. <a href="#ga0d59bcf62c098cdfb95f610cdfd12690"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gac6e9dc07335a6291842374d834e95ad2">_dbus_auth_needs_decoding</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Called post-authentication, indicates whether we need to decode the message stream with <a class="el" href="group__DBusAuth.html#ga7eb40f71c0ede79f954bcb2c001c8502" title="Called post-authentication, decodes a block of bytes received from the peer.">_dbus_auth_decode_data()</a> after receiving it from the peer. <a href="#gac6e9dc07335a6291842374d834e95ad2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga7eb40f71c0ede79f954bcb2c001c8502">_dbus_auth_decode_data</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, const <a class="el" href="structDBusString.html">DBusString</a> *encoded, <a class="el" href="structDBusString.html">DBusString</a> *plaintext)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Called post-authentication, decodes a block of bytes received from the peer. <a href="#ga7eb40f71c0ede79f954bcb2c001c8502"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga2bb917d44b44b1a2813f60dec03731cd">_dbus_auth_set_credentials</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, <a class="el" href="structDBusCredentials.html">DBusCredentials</a> *credentials)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Sets credentials received via reliable means from the operating system. <a href="#ga2bb917d44b44b1a2813f60dec03731cd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structDBusCredentials.html">DBusCredentials</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gabfa5450530b999bcb0fabf37c414a80e">_dbus_auth_get_identity</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the identity we authorized the client as. <a href="#gabfa5450530b999bcb0fabf37c414a80e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gad0bf394093dd9ac43ebf71a5f35a4f3f">_dbus_auth_get_guid_from_server</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Gets the GUID from the server if we've authenticated; gets <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4" title="A null pointer, defined appropriately for C or C++.">NULL</a> otherwise. <a href="#gad0bf394093dd9ac43ebf71a5f35a4f3f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#gad6d64040b2cf1c91f808a1f31f7ff2f0">_dbus_auth_set_context</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, const <a class="el" href="structDBusString.html">DBusString</a> *context)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Sets the "authentication context" which scopes cookies with the DBUS_COOKIE_SHA1 auth mechanism for example. <a href="#gad6d64040b2cf1c91f808a1f31f7ff2f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga831cbd78b6c7f382840e4094f02efdb5">_dbus_auth_set_unix_fd_possible</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth, <a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> b)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Sets whether unix fd passing is potentially on the transport and hence shall be negotiated. <a href="#ga831cbd78b6c7f382840e4094f02efdb5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusAuth.html#ga2d9119a45123f6b513a60391fb617d5c">_dbus_auth_get_unix_fd_negotiated</a> (<a class="el" href="structDBusAuth.html">DBusAuth</a> *auth)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Queries whether unix fd passing was successfully negotiated. <a href="#ga2d9119a45123f6b513a60391fb617d5c"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p><a class="el" href="structDBusAuth.html" title="Internal members of DBusAuth.">DBusAuth</a> object. </p>
<p><a class="el" href="structDBusAuth.html" title="Internal members of DBusAuth.">DBusAuth</a> manages the authentication negotiation when a connection is first established, and also manage any encryption used over a connection.</p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>some SASL profiles require sending the empty string as a challenge/response, but we don't currently allow that in our protocol.</dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>right now sometimes both ends will block waiting for input from the other end, e.g. if there's an error during DBUS_COOKIE_SHA1.</dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>the cookie keyring needs to be cached globally not just per-auth (which raises threadsafety issues too)</dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>grep FIXME in <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a> </dd></dl>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="gaef3b2bcbcd611b935955eaf82ce238e2"></a><!-- doxytag: member="dbus-auth.c::DBUS_AUTH_IN_END_STATE" ref="gaef3b2bcbcd611b935955eaf82ce238e2" args="(auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define <a class="el" href="group__DBusAuth.html#gaef3b2bcbcd611b935955eaf82ce238e2">DBUS_AUTH_IN_END_STATE</a></td>
<td>(</td>
<td class="paramtype"> </td>
<td class="paramname">auth</td><td>)</td>
<td>   ((auth)->state->handler == <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>)</td>
</tr>
</table>
</div>
<div class="memdoc">
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation object </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d" title="Expands to "1".">TRUE</a> if we're in a final state </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02421">2421</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>Referenced by <a class="el" href="dbus-auth_8c_source.html#l02574">_dbus_auth_delete_unused_bytes()</a>, <a class="el" href="dbus-auth_8c_source.html#l02431">_dbus_auth_do_work()</a>, and <a class="el" href="dbus-auth_8c_source.html#l02557">_dbus_auth_get_unused_bytes()</a>.</p>
</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gaed9f7f1d3289a0ae2fea2204729ac01f"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_bytes_sent" ref="gaed9f7f1d3289a0ae2fea2204729ac01f" args="(DBusAuth *auth, int bytes_sent)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#gaed9f7f1d3289a0ae2fea2204729ac01f">_dbus_auth_bytes_sent</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"><em>bytes_sent</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Notifies the auth conversation object that the given number of bytes of the outgoing buffer have been written out. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">bytes_sent</td><td>number of bytes written out </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02500">2500</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l01175">_dbus_string_delete()</a>, <a class="el" href="dbus-string_8c_source.html#l00451">_dbus_string_get_const_data()</a>, <a class="el" href="dbus-auth_8c_source.html#l00335">DBUS_AUTH_NAME</a>, and <a class="el" href="dbus-auth_8c_source.html#l00159">outgoing</a>.</p>
</div>
</div>
<a class="anchor" id="gaee76dbcdada8bcafe131f5a2de151ac3"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_client_new" ref="gaee76dbcdada8bcafe131f5a2de151ac3" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structDBusAuth.html">DBusAuth</a>* <a class="el" href="group__DBusAuth.html#gaee76dbcdada8bcafe131f5a2de151ac3">_dbus_auth_client_new</a> </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Creates a new auth conversation object for the client side. </p>
<p>See <a href="http://dbus.freedesktop.org/doc/dbus-specification.html#auth-protocol">http://dbus.freedesktop.org/doc/dbus-specification.html#auth-protocol</a> for full details on what this object does.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the new object or <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4" title="A null pointer, defined appropriately for C or C++.">NULL</a> if no memory </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02293">2293</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l02346">_dbus_auth_unref()</a>, <a class="el" href="dbus-string_8c_source.html#l00242">_dbus_string_free()</a>, <a class="el" href="dbus-string_8c_source.html#l00175">_dbus_string_init()</a>, <a class="el" href="dbus-auth_8c_source.html#l00323">DBUS_AUTH_CLIENT</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-auth_8c_source.html#l00156">side</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport_8c_source.html#l00102">_dbus_transport_init_base()</a>.</p>
</div>
</div>
<a class="anchor" id="ga7eb40f71c0ede79f954bcb2c001c8502"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_decode_data" ref="ga7eb40f71c0ede79f954bcb2c001c8502" args="(DBusAuth *auth, const DBusString *encoded, DBusString *plaintext)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga7eb40f71c0ede79f954bcb2c001c8502">_dbus_auth_decode_data</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>encoded</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>plaintext</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Called post-authentication, decodes a block of bytes received from the peer. </p>
<p>If no encoding was negotiated, just copies the bytes (you can avoid this by checking <a class="el" href="group__DBusAuth.html#gac6e9dc07335a6291842374d834e95ad2" title="Called post-authentication, indicates whether we need to decode the message stream with _dbus_auth_de...">_dbus_auth_needs_decoding()</a>).</p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>1.0? We need to be able to distinguish "out of memory" error from "the data is hosed" error.</dd></dl>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">encoded</td><td>the encoded data </td></tr>
<tr><td class="paramname">plaintext</td><td>initialized string where decoded data is appended </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d" title="Expands to "1".">TRUE</a> if we had enough memory and successfully decoded </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02681">2681</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l02650">_dbus_auth_needs_decoding()</a>, <a class="el" href="dbus-string_8c_source.html#l01265">_dbus_string_copy()</a>, <a class="el" href="dbus-string_8c_source.html#l00722">_dbus_string_get_length()</a>, <a class="el" href="dbus-auth_8c_source.html#l00112">DBusAuthMechanismHandler::client_decode_func</a>, <a class="el" href="dbus-auth_8c_source.html#l00318">DBUS_AUTH_IS_CLIENT</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="dbus-auth_8c_source.html#l00163">mech</a>, <a class="el" href="dbus-auth_8c_source.html#l00107">DBusAuthMechanismHandler::server_decode_func</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
</div>
</div>
<a class="anchor" id="gabbe8cf9e5958357c49a190ca259aa9b3"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_delete_unused_bytes" ref="gabbe8cf9e5958357c49a190ca259aa9b3" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#gabbe8cf9e5958357c49a190ca259aa9b3">_dbus_auth_delete_unused_bytes</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets rid of unused bytes returned by <a class="el" href="group__DBusAuth.html#gaf9e2ab67f2ddd26eeb7deeb8b0af7817" title="Returns leftover bytes that were not used as part of the auth conversation.">_dbus_auth_get_unused_bytes()</a> after we've gotten them and successfully moved them elsewhere. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02574">2574</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l00785">_dbus_string_set_length()</a>, <a class="el" href="dbus-auth_8c_source.html#l02421">DBUS_AUTH_IN_END_STATE</a>, and <a class="el" href="dbus-auth_8c_source.html#l00158">incoming</a>.</p>
</div>
</div>
<a class="anchor" id="ga097c71f7f20b749275c6b31cd98623f5"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_do_work" ref="ga097c71f7f20b749275c6b31cd98623f5" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">DBusAuthState <a class="el" href="group__DBusAuth.html#ga097c71f7f20b749275c6b31cd98623f5">_dbus_auth_do_work</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Analyzes buffered input and moves the auth conversation forward, returning the new state of the auth conversation. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the new state </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02431">2431</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l00722">_dbus_string_get_length()</a>, <a class="el" href="dbus-auth_8c_source.html#l02421">DBUS_AUTH_IN_END_STATE</a>, <a class="el" href="dbus-auth_8c_source.html#l00335">DBUS_AUTH_NAME</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="dbus-auth_8c_source.html#l00158">incoming</a>, <a class="el" href="dbus-auth_8c_source.html#l00185">needed_memory</a>, <a class="el" href="dbus-auth_8c_source.html#l00159">outgoing</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport_8c_source.html#l01101">_dbus_transport_get_dispatch_status()</a>, and <a class="el" href="dbus-transport_8c_source.html#l00724">_dbus_transport_try_to_authenticate()</a>.</p>
</div>
</div>
<a class="anchor" id="ga0d59bcf62c098cdfb95f610cdfd12690"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_encode_data" ref="ga0d59bcf62c098cdfb95f610cdfd12690" args="(DBusAuth *auth, const DBusString *plaintext, DBusString *encoded)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga0d59bcf62c098cdfb95f610cdfd12690">_dbus_auth_encode_data</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>plaintext</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>encoded</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Called post-authentication, encodes a block of bytes for sending to the peer. </p>
<p>If no encoding was negotiated, just copies the bytes (you can avoid this by checking <a class="el" href="group__DBusAuth.html#ga22ddfb5e12cba3d047dc1d1302c23490" title="Called post-authentication, indicates whether we need to encode the message stream with _dbus_auth_en...">_dbus_auth_needs_encoding()</a>).</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">plaintext</td><td>the plain text data </td></tr>
<tr><td class="paramname">encoded</td><td>initialized string to where encoded data is appended </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d" title="Expands to "1".">TRUE</a> if we had enough memory and successfully encoded </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02618">2618</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l02591">_dbus_auth_needs_encoding()</a>, <a class="el" href="dbus-string_8c_source.html#l01265">_dbus_string_copy()</a>, <a class="el" href="dbus-string_8c_source.html#l00722">_dbus_string_get_length()</a>, <a class="el" href="dbus-auth_8c_source.html#l00111">DBusAuthMechanismHandler::client_encode_func</a>, <a class="el" href="dbus-auth_8c_source.html#l00318">DBUS_AUTH_IS_CLIENT</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="dbus-auth_8c_source.html#l00163">mech</a>, <a class="el" href="dbus-auth_8c_source.html#l00106">DBusAuthMechanismHandler::server_encode_func</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
</div>
</div>
<a class="anchor" id="gac0fc38d8d0d139e4d52787881a324c05"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_get_buffer" ref="gac0fc38d8d0d139e4d52787881a324c05" args="(DBusAuth *auth, DBusString **buffer)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#gac0fc38d8d0d139e4d52787881a324c05">_dbus_auth_get_buffer</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structDBusString.html">DBusString</a> ** </td>
<td class="paramname"><em>buffer</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get a buffer to be used for reading bytes from the peer we're conversing with. </p>
<p>Bytes should be appended to this buffer.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">buffer</td><td>return location for buffer to append bytes to </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02520">2520</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l00190">buffer_outstanding</a>, <a class="el" href="dbus-auth_8c_source.html#l00158">incoming</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, and <a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>.</p>
</div>
</div>
<a class="anchor" id="ga7befc68c815fe31d7fa556b699ef67de"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_get_bytes_to_send" ref="ga7befc68c815fe31d7fa556b699ef67de" args="(DBusAuth *auth, const DBusString **str)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga7befc68c815fe31d7fa556b699ef67de">_dbus_auth_get_bytes_to_send</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> ** </td>
<td class="paramname"><em>str</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets bytes that need to be sent to the peer we're conversing with. </p>
<p>After writing some bytes, <a class="el" href="group__DBusAuth.html#gaed9f7f1d3289a0ae2fea2204729ac01f" title="Notifies the auth conversation object that the given number of bytes of the outgoing buffer have been...">_dbus_auth_bytes_sent()</a> must be called to notify the auth object that they were written.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">str</td><td>return location for a ref to the buffer to send </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1" title="Expands to "0".">FALSE</a> if nothing to send </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02475">2475</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l00722">_dbus_string_get_length()</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-auth_8c_source.html#l00159">outgoing</a>, and <a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>.</p>
</div>
</div>
<a class="anchor" id="gad0bf394093dd9ac43ebf71a5f35a4f3f"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_get_guid_from_server" ref="gad0bf394093dd9ac43ebf71a5f35a4f3f" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* <a class="el" href="group__DBusAuth.html#gad0bf394093dd9ac43ebf71a5f35a4f3f">_dbus_auth_get_guid_from_server</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets the GUID from the server if we've authenticated; gets <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4" title="A null pointer, defined appropriately for C or C++.">NULL</a> otherwise. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth object </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the GUID in ASCII hex format </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02755">2755</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l00451">_dbus_string_get_const_data()</a>, <a class="el" href="dbus-auth_8c_source.html#l00323">DBUS_AUTH_CLIENT</a>, <a class="el" href="dbus-auth_8c_source.html#l00318">DBUS_AUTH_IS_CLIENT</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport_8c_source.html#l00869">_dbus_transport_get_server_id()</a>, and <a class="el" href="dbus-transport_8c_source.html#l00724">_dbus_transport_try_to_authenticate()</a>.</p>
</div>
</div>
<a class="anchor" id="gabfa5450530b999bcb0fabf37c414a80e"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_get_identity" ref="gabfa5450530b999bcb0fabf37c414a80e" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structDBusCredentials.html">DBusCredentials</a>* <a class="el" href="group__DBusAuth.html#gabfa5450530b999bcb0fabf37c414a80e">_dbus_auth_get_identity</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Gets the identity we authorized the client as. </p>
<p>Apps may have different policies as to what identities they allow.</p>
<p>Returned credentials are not a copy and should not be modified</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the credentials we've authorized BY REFERENCE do not modify </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02731">2731</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-credentials_8c_source.html#l00345">_dbus_credentials_are_empty()</a>, <a class="el" href="dbus-auth_8c_source.html#l00172">authorized_identity</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport_8c_source.html#l01377">_dbus_transport_get_adt_audit_session_data()</a>, <a class="el" href="dbus-transport_8c_source.html#l00821">_dbus_transport_get_is_anonymous()</a>, <a class="el" href="dbus-transport_8c_source.html#l01343">_dbus_transport_get_unix_process_id()</a>, <a class="el" href="dbus-transport_8c_source.html#l01310">_dbus_transport_get_unix_user()</a>, <a class="el" href="dbus-transport_8c_source.html#l01436">_dbus_transport_get_windows_user()</a>, and <a class="el" href="dbus-transport_8c_source.html#l00724">_dbus_transport_try_to_authenticate()</a>.</p>
</div>
</div>
<a class="anchor" id="ga2d9119a45123f6b513a60391fb617d5c"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_get_unix_fd_negotiated" ref="ga2d9119a45123f6b513a60391fb617d5c" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga2d9119a45123f6b513a60391fb617d5c">_dbus_auth_get_unix_fd_negotiated</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Queries whether unix fd passing was successfully negotiated. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversion </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d" title="Expands to "1".">TRUE</a> when unix fd passing was negotiated. </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02801">2801</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l00193">unix_fd_negotiated</a>.</p>
</div>
</div>
<a class="anchor" id="gaf9e2ab67f2ddd26eeb7deeb8b0af7817"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_get_unused_bytes" ref="gaf9e2ab67f2ddd26eeb7deeb8b0af7817" args="(DBusAuth *auth, const DBusString **str)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#gaf9e2ab67f2ddd26eeb7deeb8b0af7817">_dbus_auth_get_unused_bytes</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> ** </td>
<td class="paramname"><em>str</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns leftover bytes that were not used as part of the auth conversation. </p>
<p>These bytes will be part of the message stream instead. This function may not be called until authentication has succeeded.</p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">str</td><td>return location for pointer to string of unused bytes </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02557">2557</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l02421">DBUS_AUTH_IN_END_STATE</a>, and <a class="el" href="dbus-auth_8c_source.html#l00158">incoming</a>.</p>
</div>
</div>
<a class="anchor" id="gac6e9dc07335a6291842374d834e95ad2"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_needs_decoding" ref="gac6e9dc07335a6291842374d834e95ad2" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#gac6e9dc07335a6291842374d834e95ad2">_dbus_auth_needs_decoding</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Called post-authentication, indicates whether we need to decode the message stream with <a class="el" href="group__DBusAuth.html#ga7eb40f71c0ede79f954bcb2c001c8502" title="Called post-authentication, decodes a block of bytes received from the peer.">_dbus_auth_decode_data()</a> after receiving it from the peer. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d" title="Expands to "1".">TRUE</a> if we need to encode the stream </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02650">2650</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l00112">DBusAuthMechanismHandler::client_decode_func</a>, <a class="el" href="dbus-auth_8c_source.html#l00318">DBUS_AUTH_IS_CLIENT</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="dbus-auth_8c_source.html#l00163">mech</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-auth_8c_source.html#l00107">DBusAuthMechanismHandler::server_decode_func</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-auth_8c_source.html#l02681">_dbus_auth_decode_data()</a>.</p>
</div>
</div>
<a class="anchor" id="ga22ddfb5e12cba3d047dc1d1302c23490"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_needs_encoding" ref="ga22ddfb5e12cba3d047dc1d1302c23490" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga22ddfb5e12cba3d047dc1d1302c23490">_dbus_auth_needs_encoding</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Called post-authentication, indicates whether we need to encode the message stream with <a class="el" href="group__DBusAuth.html#ga0d59bcf62c098cdfb95f610cdfd12690" title="Called post-authentication, encodes a block of bytes for sending to the peer.">_dbus_auth_encode_data()</a> prior to sending it to the peer. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d" title="Expands to "1".">TRUE</a> if we need to encode the stream </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02591">2591</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l00111">DBusAuthMechanismHandler::client_encode_func</a>, <a class="el" href="dbus-auth_8c_source.html#l00318">DBUS_AUTH_IS_CLIENT</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="dbus-auth_8c_source.html#l00163">mech</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-auth_8c_source.html#l00106">DBusAuthMechanismHandler::server_encode_func</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-auth_8c_source.html#l02618">_dbus_auth_encode_data()</a>.</p>
</div>
</div>
<a class="anchor" id="gaebe46c0887021bb3f6de3d283e0c66db"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_ref" ref="gaebe46c0887021bb3f6de3d283e0c66db" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structDBusAuth.html">DBusAuth</a>* <a class="el" href="group__DBusAuth.html#gaebe46c0887021bb3f6de3d283e0c66db">_dbus_auth_ref</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Increments the refcount of an auth object. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the auth conversation </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02331">2331</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, and <a class="el" href="dbus-auth_8c_source.html#l00155">refcount</a>.</p>
</div>
</div>
<a class="anchor" id="ga842c246877d16cb9a75cc9828a5433c2"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_return_buffer" ref="ga842c246877d16cb9a75cc9828a5433c2" args="(DBusAuth *auth, DBusString *buffer)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#ga842c246877d16cb9a75cc9828a5433c2">_dbus_auth_return_buffer</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>buffer</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns a buffer with new data read into it. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">buffer</td><td>the buffer being returned </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02538">2538</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l00190">buffer_outstanding</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, and <a class="el" href="dbus-auth_8c_source.html#l00158">incoming</a>.</p>
</div>
</div>
<a class="anchor" id="ga302e454600ae0e1aa27193d4b0a86385"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_server_new" ref="ga302e454600ae0e1aa27193d4b0a86385" args="(const DBusString *guid)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structDBusAuth.html">DBusAuth</a>* <a class="el" href="group__DBusAuth.html#ga302e454600ae0e1aa27193d4b0a86385">_dbus_auth_server_new</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>guid</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Creates a new auth conversation object for the server side. </p>
<p>See <a href="http://dbus.freedesktop.org/doc/dbus-specification.html#auth-protocol">http://dbus.freedesktop.org/doc/dbus-specification.html#auth-protocol</a> for full details on what this object does.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the new object or <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4" title="A null pointer, defined appropriately for C or C++.">NULL</a> if no memory </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02247">2247</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l01265">_dbus_string_copy()</a>, <a class="el" href="dbus-string_8c_source.html#l00242">_dbus_string_free()</a>, <a class="el" href="dbus-string_8c_source.html#l00175">_dbus_string_init()</a>, <a class="el" href="dbus-auth_8c_source.html#l00328">DBUS_AUTH_SERVER</a>, <a class="el" href="dbus-auth_8c_source.html#l00216">DBusAuthServer::failures</a>, <a class="el" href="dbus-auth_8c_source.html#l00219">DBusAuthServer::guid</a>, <a class="el" href="dbus-auth_8c_source.html#l00217">DBusAuthServer::max_failures</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-auth_8c_source.html#l00156">side</a>, and <a class="el" href="dbus-auth_8c_source.html#l00161">state</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport_8c_source.html#l00102">_dbus_transport_init_base()</a>.</p>
</div>
</div>
<a class="anchor" id="gad6d64040b2cf1c91f808a1f31f7ff2f0"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_set_context" ref="gad6d64040b2cf1c91f808a1f31f7ff2f0" args="(DBusAuth *auth, const DBusString *context)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#gad6d64040b2cf1c91f808a1f31f7ff2f0">_dbus_auth_set_context</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> * </td>
<td class="paramname"><em>context</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Sets the "authentication context" which scopes cookies with the DBUS_COOKIE_SHA1 auth mechanism for example. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">context</td><td>the context </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1" title="Expands to "0".">FALSE</a> if no memory </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02774">2774</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-string_8c_source.html#l00722">_dbus_string_get_length()</a>, <a class="el" href="dbus-string_8c_source.html#l01386">_dbus_string_replace_len()</a>, and <a class="el" href="dbus-auth_8c_source.html#l00176">context</a>.</p>
</div>
</div>
<a class="anchor" id="ga2bb917d44b44b1a2813f60dec03731cd"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_set_credentials" ref="ga2bb917d44b44b1a2813f60dec03731cd" args="(DBusAuth *auth, DBusCredentials *credentials)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga2bb917d44b44b1a2813f60dec03731cd">_dbus_auth_set_credentials</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structDBusCredentials.html">DBusCredentials</a> * </td>
<td class="paramname"><em>credentials</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Sets credentials received via reliable means from the operating system. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">credentials</td><td>the credentials received </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1" title="Expands to "0".">FALSE</a> on OOM </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02713">2713</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-credentials_8c_source.html#l00377">_dbus_credentials_add_credentials()</a>, <a class="el" href="dbus-credentials_8c_source.html#l00446">_dbus_credentials_clear()</a>, and <a class="el" href="dbus-auth_8c_source.html#l00169">credentials</a>.</p>
</div>
</div>
<a class="anchor" id="ga9454e2c512b4e2ea54d47cff6acaa4db"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_set_mechanisms" ref="ga9454e2c512b4e2ea54d47cff6acaa4db" args="(DBusAuth *auth, const char **mechanisms)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> <a class="el" href="group__DBusAuth.html#ga9454e2c512b4e2ea54d47cff6acaa4db">_dbus_auth_set_mechanisms</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char ** </td>
<td class="paramname"><em>mechanisms</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Sets an array of authentication mechanism names that we are willing to use. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">mechanisms</td><td><a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4" title="A null pointer, defined appropriately for C or C++.">NULL</a>-terminated array of mechanism names </td></tr>
</table>
</dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1" title="Expands to "0".">FALSE</a> if no memory </dd></dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02396">2396</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-internals_8c_source.html#l00578">_dbus_dup_string_array()</a>, <a class="el" href="dbus-auth_8c_source.html#l00181">allowed_mechs</a>, <a class="el" href="dbus-memory_8c_source.html#l00749">dbus_free_string_array()</a>, <a class="el" href="group__DBusMacros.html#gaa93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, and <a class="el" href="group__DBusMacros.html#gaa8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport_8c_source.html#l01496">_dbus_transport_set_auth_mechanisms()</a>.</p>
</div>
</div>
<a class="anchor" id="ga831cbd78b6c7f382840e4094f02efdb5"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_set_unix_fd_possible" ref="ga831cbd78b6c7f382840e4094f02efdb5" args="(DBusAuth *auth, dbus_bool_t b)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#ga831cbd78b6c7f382840e4094f02efdb5">_dbus_auth_set_unix_fd_possible</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__DBusTypes.html#ga39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> </td>
<td class="paramname"><em>b</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Sets whether unix fd passing is potentially on the transport and hence shall be negotiated. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
<tr><td class="paramname">b</td><td>TRUE when unix fd passing shall be negotiated, otherwise FALSE </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02789">2789</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-auth_8c_source.html#l00192">unix_fd_possible</a>.</p>
<p>Referenced by <a class="el" href="dbus-transport-socket_8c_source.html#l01256">_dbus_transport_new_for_socket()</a>.</p>
</div>
</div>
<a class="anchor" id="ga7fb648be9d6d451917195a0e43eeece0"></a><!-- doxytag: member="dbus-auth.c::_dbus_auth_unref" ref="ga7fb648be9d6d451917195a0e43eeece0" args="(DBusAuth *auth)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__DBusAuth.html#ga7fb648be9d6d451917195a0e43eeece0">_dbus_auth_unref</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structDBusAuth.html">DBusAuth</a> * </td>
<td class="paramname"><em>auth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Decrements the refcount of an auth object. </p>
<dl class="params"><dt><b>Parameters:</b></dt><dd>
<table class="params">
<tr><td class="paramname">auth</td><td>the auth conversation </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="dbus-auth_8c_source.html#l02346">2346</a> of file <a class="el" href="dbus-auth_8c_source.html">dbus-auth.c</a>.</p>
<p>References <a class="el" href="dbus-credentials_8c_source.html#l00128">_dbus_credentials_unref()</a>, <a class="el" href="dbus-keyring_8c_source.html#l00681">_dbus_keyring_unref()</a>, <a class="el" href="dbus-list_8c_source.html#l00542">_dbus_list_clear()</a>, <a class="el" href="dbus-string_8c_source.html#l00242">_dbus_string_free()</a>, <a class="el" href="dbus-auth_8c_source.html#l00181">allowed_mechs</a>, <a class="el" href="dbus-auth_8c_source.html#l00172">authorized_identity</a>, <a class="el" href="dbus-auth_8c_source.html#l00179">challenge</a>, <a class="el" href="dbus-auth_8c_source.html#l00176">context</a>, <a class="el" href="dbus-auth_8c_source.html#l00169">credentials</a>, <a class="el" href="dbus-auth_8c_source.html#l00323">DBUS_AUTH_CLIENT</a>, <a class="el" href="dbus-auth_8c_source.html#l00318">DBUS_AUTH_IS_CLIENT</a>, <a class="el" href="dbus-auth_8c_source.html#l00313">DBUS_AUTH_IS_SERVER</a>, <a class="el" href="dbus-auth_8c_source.html#l00328">DBUS_AUTH_SERVER</a>, <a class="el" href="dbus-memory_8c_source.html#l00701">dbus_free()</a>, <a class="el" href="dbus-memory_8c_source.html#l00749">dbus_free_string_array()</a>, <a class="el" href="dbus-auth_8c_source.html#l00174">desired_identity</a>, <a class="el" href="dbus-auth_8c_source.html#l00165">identity</a>, <a class="el" href="dbus-auth_8c_source.html#l00158">incoming</a>, <a class="el" href="dbus-auth_8c_source.html#l00177">keyring</a>, <a class="el" href="group__DBusMacros.html#ga070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-auth_8c_source.html#l00159">outgoing</a>, and <a class="el" href="dbus-auth_8c_source.html#l00155">refcount</a>.</p>
<p>Referenced by <a class="el" href="dbus-auth_8c_source.html#l02293">_dbus_auth_client_new()</a>, <a class="el" href="dbus-transport_8c_source.html#l00216">_dbus_transport_finalize_base()</a>, and <a class="el" href="dbus-transport_8c_source.html#l00102">_dbus_transport_init_base()</a>.</p>
</div>
</div>
</div><!-- contents -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Mar 3 2016 17:50:32 for D-Bus by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>
</body>
</html>