This file is indexed.

/usr/share/doc/libucommon-dev/a00205.html is in libucommon-doc 3.2.0-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<!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"/>
<title>UCommon: ucommon/socket.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>ucommon/socket.h File Reference</h1>
<p>Common socket class and address manipulation.  
<a href="#_details">More...</a></p>
<code>#include &lt;<a class="el" href="a00209_source.html">ucommon/timers.h</a>&gt;</code><br/>
<code>#include &lt;<a class="el" href="a00195_source.html">ucommon/linked.h</a>&gt;</code><br/>
<code>#include &lt;unistd.h&gt;</code><br/>
<code>#include &lt;sys/socket.h&gt;</code><br/>
<code>#include &lt;net/if.h&gt;</code><br/>
<code>#include &lt;netinet/in.h&gt;</code><br/>
<code>#include &lt;netdb.h&gt;</code><br/>
<code>#include &lt;errno.h&gt;</code><br/>
<code>#include &lt;stdio.h&gt;</code><br/>
<div class="dynheader">
Include dependency graph for socket.h:</div>
<div class="dynsection">
<div class="center"><img src="a00265.png" border="0" usemap="#ucommon_2socket_8h_map" alt=""/></div>
<map name="ucommon_2socket_8h_map" id="ucommon_2socket_8h">
<area shape="rect" id="node3" href="a00209.html" title="Realtime timers and timer queues." alt="" coords="940,83,1084,112"/><area shape="rect" id="node5" href="a00195.html" title="Linked objects, lists, templates, and containers." alt="" coords="777,160,916,189"/><area shape="rect" id="node7" href="a00201.html" title="Various miscelanous platform specific headers and defines." alt="" coords="627,315,784,344"/><area shape="rect" id="node32" href="a00199.html" title="A common object base class with auto&#45;pointer support." alt="" coords="776,237,917,267"/></map>
</div>
<div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dynsection">
<div class="center"><img src="a00266.png" border="0" usemap="#ucommon_2socket_8hdep_map" alt=""/></div>
<map name="ucommon_2socket_8hdep_map" id="ucommon_2socket_8hdep">
<area shape="rect" id="node3" href="a00187.html" title="This is the GNU telephonic audio library for the GNU uCommon C++ framework." alt="" coords="95,315,234,344"/><area shape="rect" id="node6" href="a00189.html" title="A common buffered I/O class is used to stream character data without need for stdlib..." alt="" coords="28,160,167,189"/><area shape="rect" id="node12" href="a00210.html" title="Top level include file for the GNU uCommon C++ core library." alt="" coords="479,315,647,344"/><area shape="rect" id="node19" href="a00206.html" title="Any ucommon streaming classes that are built from std::streamio facilities and that..." alt="" coords="1014,237,1163,267"/><area shape="rect" id="node22" href="a00207.html" title="A common string class and character string support functions." alt="" coords="380,83,519,112"/><area shape="rect" id="node9" href="a00204.html" title="Generic shell parsing and application services." alt="" coords="292,237,423,267"/><area shape="rect" id="node14" href="a00202.html" title="This library holds the ucommon scripting engine code." alt="" coords="410,392,548,421"/><area shape="rect" id="node16" href="a00203.html" title="This library holds basic crytographic functions and secure socket support for use..." alt="" coords="572,392,719,421"/><area shape="rect" id="node26" href="a00191.html" title="Basic classes for manipulating time and date based data, particularly that may be..." alt="" coords="600,237,760,267"/><area shape="rect" id="node29" href="a00196.html" title="Support for memory mapped objects." alt="" coords="784,237,939,267"/><area shape="rect" id="node35" href="a00211.html" title="Basic UCommon Unicode support." alt="" coords="292,160,444,189"/><area shape="rect" id="node38" href="a00213.html" title="XML &quot;SAX&quot; (stream) parsing support from GNU Common C++." alt="" coords="468,160,594,189"/></map>
</div>

<p><a href="a00205_source.html">Go to the source code of this file.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html">hostaddr_internet</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An object that holds ipv4 or ipv6 binary encoded host addresses.  <a href="a00014.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00016.html">sockaddr_internet</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An object that can hold a ipv4 or ipv6 socket address.  <a href="a00016.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00037.html">ucc::cidr</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A class to hold internet segment routing rules.  <a href="a00037.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00070.html">ucc::ListenSocket</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A bound socket used to listen for inbound socket connections.  <a href="a00070.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00151.html">ucc::Socket</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A generic socket base class.  <a href="a00151.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00152.html">ucc::Socket::address</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A generic socket address class.  <a href="a00152.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Namespaces</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html">ucc</a></td></tr>

<p><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Common namespace for all ucommon objects. </p>
<br/></td></tr>
</p>
<tr><td colspan="2"><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16c181b16f7720e75f6cc61535cc122d"></a><!-- doxytag: member="socket.h::DCCP_SOCKOPT_AVAILABLE_CCIDS" ref="a16c181b16f7720e75f6cc61535cc122d" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>DCCP_SOCKOPT_AVAILABLE_CCIDS</b>&nbsp;&nbsp;&nbsp;12</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad44ca1305ac56bb818451e8b63bbe7a2"></a><!-- doxytag: member="socket.h::DCCP_SOCKOPT_CCID" ref="ad44ca1305ac56bb818451e8b63bbe7a2" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>DCCP_SOCKOPT_CCID</b>&nbsp;&nbsp;&nbsp;13</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af81f3e7855b319a6eef64a91256c93e1"></a><!-- doxytag: member="socket.h::DCCP_SOCKOPT_RX_CCID" ref="af81f3e7855b319a6eef64a91256c93e1" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>DCCP_SOCKOPT_RX_CCID</b>&nbsp;&nbsp;&nbsp;15</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9af996be1e65747467d42107a9fcaa0"></a><!-- doxytag: member="socket.h::DCCP_SOCKOPT_TX_CCID" ref="af9af996be1e65747467d42107a9fcaa0" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>DCCP_SOCKOPT_TX_CCID</b>&nbsp;&nbsp;&nbsp;14</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00d2d2603fe6ca4a68079ee3b39311e3"></a><!-- doxytag: member="socket.h::DEFAULT_FAMILY" ref="a00d2d2603fe6ca4a68079ee3b39311e3" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>DEFAULT_FAMILY</b>&nbsp;&nbsp;&nbsp;AF_INET</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe40d548994c51723b9da30440be3c08"></a><!-- doxytag: member="socket.h::IPPROTO_DCCP" ref="abe40d548994c51723b9da30440be3c08" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>IPPROTO_DCCP</b>&nbsp;&nbsp;&nbsp;23</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6dc4cfef3512b905e64164e25a611e54"></a><!-- doxytag: member="socket.h::IPTOS_MINCOST" ref="a6dc4cfef3512b905e64164e25a611e54" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>IPTOS_MINCOST</b>&nbsp;&nbsp;&nbsp;0x02</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4dab62eb6b0c87716f292a38ea179f60"></a><!-- doxytag: member="socket.h::IPTOS_RELIABILITY" ref="a4dab62eb6b0c87716f292a38ea179f60" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>IPTOS_RELIABILITY</b>&nbsp;&nbsp;&nbsp;0x04</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a130bd030a96cdf2ad079d4d0e452af8c"></a><!-- doxytag: member="socket.h::IPTOS_THROUGHPUT" ref="a130bd030a96cdf2ad079d4d0e452af8c" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>IPTOS_THROUGHPUT</b>&nbsp;&nbsp;&nbsp;0x08</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f9a3faa2c7b9488103960ead54e7d88"></a><!-- doxytag: member="socket.h::SOCK_DCCP" ref="a4f9a3faa2c7b9488103960ead54e7d88" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>SOCK_DCCP</b>&nbsp;&nbsp;&nbsp;6</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2290ff3727586e79a74d1319a9fec83"></a><!-- doxytag: member="socket.h::SOL_DCCP" ref="ab2290ff3727586e79a74d1319a9fec83" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><b>SOL_DCCP</b>&nbsp;&nbsp;&nbsp;269</td></tr>
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a893dd756b92039df4ec182c8c5387ce7"></a><!-- doxytag: member="socket.h::inethostaddr_t" ref="a893dd756b92039df4ec182c8c5387ce7" args="" -->
typedef struct <a class="el" href="a00014.html">hostaddr_internet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00205.html#a893dd756b92039df4ec182c8c5387ce7">inethostaddr_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An object that holds ipv4 or ipv6 binary encoded host addresses. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a00016.html">sockaddr_internet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00205.html#a1ef866af87ca85c8aa76b509c9b69c9a">inetsockaddr_t</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An object that can hold a ipv4 or ipv6 socket address.  <a href="#a1ef866af87ca85c8aa76b509c9b69c9a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ca2d93a322738c829ff68f92124c2a1"></a><!-- doxytag: member="socket.h::socket" ref="a1ca2d93a322738c829ff68f92124c2a1" args="" -->
typedef Socket&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html#a1ca2d93a322738c829ff68f92124c2a1">ucc::socket</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A convenience class for socket. <br/></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct sockaddr *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html#a808c8560ceaca5f9237fb473c0f748f2">ucc::addr</a> (socket::address &amp;address)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A convenience function to convert a socket address list into a socket address.  <a href="#a808c8560ceaca5f9237fb473c0f748f2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct addrinfo *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html#af219737d0331ec303433aa3d4028c8cf">ucc::addrinfo</a> (socket::address &amp;address)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A convenience function to convert a socket address list into an addrinfo.  <a href="#af219737d0331ec303433aa3d4028c8cf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html#a0e1adcdf60fa42958a5e35da9220a636">ucc::eq</a> (struct sockaddr_storage *s1, struct sockaddr_storage *s2)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two stored socket addresses to see if equal.  <a href="#a0e1adcdf60fa42958a5e35da9220a636"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html#ae8329c8eceb3e760d48253f1c3386623">ucc::eq</a> (struct sockaddr *s1, struct sockaddr *s2)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two socket addresses to see if equal.  <a href="#ae8329c8eceb3e760d48253f1c3386623"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00214.html#a742db3229a0512ac26f85c592fc6bdfb">ucc::ieq</a> (struct sockaddr *s1, struct sockaddr *s2)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compare two host addresses to see if equal.  <a href="#a742db3229a0512ac26f85c592fc6bdfb"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Common socket class and address manipulation. </p>
<p>This offers a common socket base class that exposes socket functionality based on what the target platform supports. Support for multicast, IPV6 addressing, and manipulation of cidr policies are all supported here. </p>

<p>Definition in file <a class="el" href="a00205_source.html">socket.h</a>.</p>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="a1ef866af87ca85c8aa76b509c9b69c9a"></a><!-- doxytag: member="socket.h::inetsockaddr_t" ref="a1ef866af87ca85c8aa76b509c9b69c9a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="a00016.html">sockaddr_internet</a>  <a class="el" href="a00016.html">inetsockaddr_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>An object that can hold a ipv4 or ipv6 socket address. </p>
<p>This would be used for tcpip socket connections. We do not use sockaddr_storage because it is not present in pre ipv6 stacks, and because the storage size also includes the size of the path of a unix domain socket on posix systems. </p>

</div>
</div>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Tue Jul 6 08:22:14 2010 for UCommon by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>