KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /usr/share/devhelp/books/dbus/api/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/devhelp/books/dbus/api/group__DBusServerSocket.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>D-Bus: DBusServer implementations for SOCKET</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul></div>
<h1>DBusServer implementations for SOCKET<br>
<small>
[<a class="el" href="group__DBusInternals.html">D-Bus secret internal implementation details</a>]</small>
</h1>Implementation details of <a class="el" href="structDBusServer.html">DBusServer</a> on SOCKET.  
<a href="#_details">More...</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusServerSocket.html">DBusServerSocket</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Implementation details of <a class="el" href="structDBusServerSocket.html">DBusServerSocket</a>.  <a href="structDBusServerSocket.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gce7aafbe2ae3cdbfbce3b01972dde0ce"></a><!-- doxytag: member="DBusServerSocket::DBusServerSocket" ref="gce7aafbe2ae3cdbfbce3b01972dde0ce" args="" -->
typedef <a class="el" href="structDBusServerSocket.html">DBusServerSocket</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusServerSocket.html#gce7aafbe2ae3cdbfbce3b01972dde0ce">DBusServerSocket</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Opaque object representing a Socket server implementation. <br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structDBusServer.html">DBusServer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusServerSocket.html#ga4e84ec90015e063c74232cf782f0a8d">_dbus_server_new_for_socket</a> (int *fds, int n_fds, const <a class="el" href="structDBusString.html">DBusString</a> *address)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new server listening on the given file descriptor.  <a href="#ga4e84ec90015e063c74232cf782f0a8d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structDBusServer.html">DBusServer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusServerSocket.html#gb0ab2570f212e697645ab215e62848b9">_dbus_server_new_for_tcp_socket</a> (const char *host, const char *bind, const char *port, const char *family, <a class="el" href="structDBusError.html">DBusError</a> *error)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new server listening on TCP.  <a href="#gb0ab2570f212e697645ab215e62848b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBusServerListenResult&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusServerSocket.html#g90a89943c15760592e5ddce31bf0e021">_dbus_server_listen_socket</a> (<a class="el" href="structDBusAddressEntry.html">DBusAddressEntry</a> *entry, <a class="el" href="structDBusServer.html">DBusServer</a> **server_p, <a class="el" href="structDBusError.html">DBusError</a> *error)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tries to interpret the address entry for various socket-related addresses (well, currently only tcp).  <a href="#g90a89943c15760592e5ddce31bf0e021"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusServerSocket.html#ga9518c980672f1b8dba8f5a981b93fd9">_dbus_server_socket_own_filename</a> (<a class="el" href="structDBusServer.html">DBusServer</a> *server, char *filename)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a bad hack since it's really unix domain socket specific.  <a href="#ga9518c980672f1b8dba8f5a981b93fd9"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Implementation details of <a class="el" href="structDBusServer.html">DBusServer</a> on SOCKET. 
<p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="g90a89943c15760592e5ddce31bf0e021"></a><!-- doxytag: member="dbus-server-socket.c::_dbus_server_listen_socket" ref="g90a89943c15760592e5ddce31bf0e021" args="(DBusAddressEntry *entry, DBusServer **server_p, DBusError *error)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">DBusServerListenResult _dbus_server_listen_socket           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusAddressEntry.html">DBusAddressEntry</a> *&nbsp;</td>
          <td class="paramname"> <em>entry</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structDBusServer.html">DBusServer</a> **&nbsp;</td>
          <td class="paramname"> <em>server_p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structDBusError.html">DBusError</a> *&nbsp;</td>
          <td class="paramname"> <em>error</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Tries to interpret the address entry for various socket-related addresses (well, currently only tcp). 
<p>
Sets error if the result is not OK.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>entry</em>&nbsp;</td><td>an address entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>server_p</em>&nbsp;</td><td>a new <a class="el" href="structDBusServer.html">DBusServer</a>, or <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> on failure. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>error</em>&nbsp;</td><td>location to store rationale for failure on bad address </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>the outcome </dd></dl>

<p>
Definition at line <a class="el" href="dbus-server-socket_8c-source.html#l00476">476</a> of file <a class="el" href="dbus-server-socket_8c-source.html">dbus-server-socket.c</a>.
<p>
References <a class="el" href="dbus-server-socket_8c-source.html#l00369">_dbus_server_new_for_tcp_socket()</a>, <a class="el" href="dbus-address_8c-source.html#l00227">dbus_address_entry_get_method()</a>, <a class="el" href="dbus-address_8c-source.html#l00244">dbus_address_entry_get_value()</a>, and <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>.
</div>
</div><p>
<a class="anchor" name="ga4e84ec90015e063c74232cf782f0a8d"></a><!-- doxytag: member="dbus-server-socket.c::_dbus_server_new_for_socket" ref="ga4e84ec90015e063c74232cf782f0a8d" args="(int *fds, int n_fds, const DBusString *address)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structDBusServer.html">DBusServer</a>* _dbus_server_new_for_socket           </td>
          <td>(</td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>fds</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>n_fds</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structDBusString.html">DBusString</a> *&nbsp;</td>
          <td class="paramname"> <em>address</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new server listening on the given file descriptor. 
<p>
The file descriptor should be nonblocking (use _dbus_set_fd_nonblocking() to make it so). The file descriptor should be listening for connections, that is, listen() should have been successfully invoked on it. The server will use accept() to accept new client connections.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fds</em>&nbsp;</td><td>list of file descriptors. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n_fds</em>&nbsp;</td><td>number of file descriptors </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>address</em>&nbsp;</td><td>the server's address </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>the new server, or <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> if no memory. </dd></dl>

<p>
Definition at line <a class="el" href="dbus-server-socket_8c-source.html#l00266">266</a> of file <a class="el" href="dbus-server-socket_8c-source.html">dbus-server-socket.c</a>.
<p>
References <a class="el" href="dbus-server_8c-source.html#l00263">_dbus_server_add_watch()</a>, <a class="el" href="dbus-server_8c-source.html#l00168">_dbus_server_finalize_base()</a>, <a class="el" href="dbus-server_8c-source.html#l00096">_dbus_server_init_base()</a>, <a class="el" href="dbus-server_8c-source.html#l00279">_dbus_server_remove_watch()</a>, <a class="el" href="dbus-watch_8c-source.html#l00067">_dbus_watch_new()</a>, <a class="el" href="dbus-server-socket_8c-source.html#l00049">base</a>, <a class="el" href="dbus-memory_8h-source.html#l00046">dbus_new</a>, <a class="el" href="dbus-memory_8h-source.html#l00047">dbus_new0</a>, <a class="el" href="dbus-server-socket_8c-source.html#l00051">fds</a>, <a class="el" href="dbus-server-socket_8c-source.html#l00050">n_fds</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>, and <a class="el" href="dbus-server-socket_8c-source.html#l00052">watch</a>.
<p>
Referenced by <a class="el" href="dbus-server-unix_8c-source.html#l00167">_dbus_server_new_for_domain_socket()</a>, and <a class="el" href="dbus-server-socket_8c-source.html#l00369">_dbus_server_new_for_tcp_socket()</a>.
</div>
</div><p>
<a class="anchor" name="gb0ab2570f212e697645ab215e62848b9"></a><!-- doxytag: member="dbus-server-socket.c::_dbus_server_new_for_tcp_socket" ref="gb0ab2570f212e697645ab215e62848b9" args="(const char *host, const char *bind, const char *port, const char *family, DBusError *error)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structDBusServer.html">DBusServer</a>* _dbus_server_new_for_tcp_socket           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>host</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>bind</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>family</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structDBusError.html">DBusError</a> *&nbsp;</td>
          <td class="paramname"> <em>error</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new server listening on TCP. 
<p>
If host is NULL, it will default to localhost. If bind is NULL, it will default to the value for the host parameter, and if that is NULL, then localhost If bind is a hostname, it will be resolved and will listen on all returned addresses. If family is NULL, hostname resolution will try all address families, otherwise it can be ipv4 or ipv6 to restrict the addresses considered.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>host</em>&nbsp;</td><td>the hostname to report for the listen address </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bind</em>&nbsp;</td><td>the hostname to listen on </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>the port to listen on or 0 to let the OS choose </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>family</em>&nbsp;</td><td></td></tr>
    <tr><td valign="top"></td><td valign="top"><em>error</em>&nbsp;</td><td>location to store reason for failure. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>the new server, or <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> on failure. </dd></dl>

<p>
Definition at line <a class="el" href="dbus-server-socket_8c-source.html#l00369">369</a> of file <a class="el" href="dbus-server-socket_8c-source.html">dbus-server-socket.c</a>.
<p>
References <a class="el" href="dbus-address_8c-source.html#l00104">_dbus_address_append_escaped()</a>, <a class="el" href="dbus-sysdeps-unix_8c-source.html#l00133">_dbus_close_socket()</a>, <a class="el" href="dbus-sysdeps-unix_8c-source.html#l02509">_dbus_fd_set_close_on_exec()</a>, <a class="el" href="dbus-sysdeps-unix_8c-source.html#l00854">_dbus_listen_tcp_socket()</a>, <a class="el" href="dbus-server-socket_8c-source.html#l00266">_dbus_server_new_for_socket()</a>, <a class="el" href="dbus-string_8c-source.html#l00987">_dbus_string_append()</a>, <a class="el" href="dbus-string_8c-source.html#l00262">_dbus_string_free()</a>, <a class="el" href="dbus-string_8c-source.html#l00175">_dbus_string_init()</a>, <a class="el" href="dbus-string_8c-source.html#l00209">_dbus_string_init_const()</a>, <a class="el" href="dbus-protocol_8h-source.html#l00332">DBUS_ERROR_NO_MEMORY</a>, <a class="el" href="dbus-memory_8c-source.html#l00617">dbus_free()</a>, <a class="el" href="dbus-errors_8c-source.html#l00326">dbus_set_error()</a>, and <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>.
<p>
Referenced by <a class="el" href="dbus-server-socket_8c-source.html#l00476">_dbus_server_listen_socket()</a>.
</div>
</div><p>
<a class="anchor" name="ga9518c980672f1b8dba8f5a981b93fd9"></a><!-- doxytag: member="dbus-server-socket.c::_dbus_server_socket_own_filename" ref="ga9518c980672f1b8dba8f5a981b93fd9" args="(DBusServer *server, char *filename)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_server_socket_own_filename           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusServer.html">DBusServer</a> *&nbsp;</td>
          <td class="paramname"> <em>server</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>filename</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is a bad hack since it's really unix domain socket specific. 
<p>
Also, the function weirdly adopts ownership of the passed-in string.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>server</em>&nbsp;</td><td>a socket server </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>socket filename to report/delete </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-server-socket_8c-source.html#l00529">529</a> of file <a class="el" href="dbus-server-socket_8c-source.html">dbus-server-socket.c</a>.
<p>
References <a class="el" href="dbus-server-socket_8c-source.html#l00053">socket_name</a>.
<p>
Referenced by <a class="el" href="dbus-server-unix_8c-source.html#l00167">_dbus_server_new_for_domain_socket()</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Mon Dec 14 22:26:14 2009 for D-Bus by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>

Anon7 - 2021