Files
i2p.itoopie/apps/sam/python/doc/epydoc/html/public/i2p.socket.Socket-class.html
2004-08-02 14:00:56 +00:00

508 lines
25 KiB
HTML

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>i2p.socket.Socket</title>
<link rel="stylesheet" href="epydoc.css" type="text/css"></link>
</head>
<body bgcolor="white" text="black" link="blue" vlink="#204080"
alink="#204080">
<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
<tr valign="center">
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="i2p-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar" width="100%"></th>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="100%">
<font size="-1"><b class="breadcrumbs">
<a href="i2p-module.html">Package&nbsp;i2p</a> ::
<a href="i2p.socket-module.html">Module&nbsp;socket</a> ::
Class&nbsp;Socket
</b></font></br>
</td>
<td><table cellpadding="0" cellspacing="0">
<tr><td align="right"><font size="-2">[<a href="../private/i2p.socket.Socket-class.html">show&nbsp;private</a>&nbsp;|&nbsp;hide&nbsp;private]</font></td></tr>
<tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a>&nbsp;|&nbsp;<a href="i2p.socket.Socket-class.html" target="_top">no&nbsp;frames</a>]</font></td></tr>
</table></td>
</tr></table>
<!-- =========== START OF CLASS DESCRIPTION =========== -->
<h2 class="class">Class Socket</h2>
<hr/>
A socket object.
<hr/>
<!-- =========== START OF METHOD SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
<th colspan="2">Method Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#__init__" class="summary-sig-name"><code>__init__</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>session</span>,
<span class=summary-sig-arg>type</span>,
<span class=summary-sig-arg>samaddr</span>,
<span class="summary-sig-kwarg">**kwargs</span>)</span></code>
<br />
Equivalent to socket().</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#__copy__" class="summary-sig-name"><code>__copy__</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Returns the original object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#__deepcopy__" class="summary-sig-name"><code>__deepcopy__</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>memo</span>)</span></code>
<br />
Returns the original object.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#accept" class="summary-sig-name"><code>accept</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Accept an incoming connection.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#bind" class="summary-sig-name"><code>bind</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>address</span>)</span></code>
<br />
Does nothing.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#close" class="summary-sig-name"><code>close</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Closes the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#connect" class="summary-sig-name"><code>connect</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>address</span>)</span></code>
<br />
Connect to a remote dest, identified in local SAM bridge's hosts file
as host 'address'.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#connect_ex" class="summary-sig-name"><code>connect_ex</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>address</span>)</span></code>
<br />
Like connect(), but return any error that is raised.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#getpeername" class="summary-sig-name"><code>getpeername</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Get the remote Destination associated with the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#getsockname" class="summary-sig-name"><code>getsockname</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Get the local Destination associated with the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#gettimeout" class="summary-sig-name"><code>gettimeout</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Get the timeout value.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#listen" class="summary-sig-name"><code>listen</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>backlog</span>)</span></code>
<br />
Listen for connections made to the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#makefile" class="summary-sig-name"><code>makefile</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>mode</span>,
<span class=summary-sig-arg>bufsize</span>)</span></code>
<br />
Return a file object for the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#recv" class="summary-sig-name"><code>recv</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>bufsize</span>,
<span class=summary-sig-arg>flags</span>)</span></code>
<br />
Receive string data from the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#recvfrom" class="summary-sig-name"><code>recvfrom</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>bufsize</span>,
<span class=summary-sig-arg>flags</span>)</span></code>
<br />
Like recv(), but returns a tuple (data, remoteaddr), where data is the
string data received, and remoteaddr is the remote Destination.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#send" class="summary-sig-name"><code>send</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>string</span>,
<span class=summary-sig-arg>flags</span>)</span></code>
<br />
Sends string data to a remote Destination.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#sendall" class="summary-sig-name"><code>sendall</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>string</span>,
<span class=summary-sig-arg>flags</span>)</span></code>
<br />
Identical to send().</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#sendto" class="summary-sig-name"><code>sendto</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>string</span>,
<span class=summary-sig-arg>flags</span>,
<span class=summary-sig-arg>address</span>)</span></code>
<br />
Send a packet to the given Destination.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#setblocking" class="summary-sig-name"><code>setblocking</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>flag</span>)</span></code>
<br />
Set blocking or non-blocking mode for the socket.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><code><span class="summary-sig"><a href="i2p.socket.Socket-class.html#settimeout" class="summary-sig-name"><code>settimeout</code></a>(<span class=summary-sig-arg>self</span>,
<span class=summary-sig-arg>value</span>)</span></code>
<br />
Set a timeout for the socket.</td></tr>
</table><br />
<!-- =========== START OF PROPERTY SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
<th colspan="2">Property Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><b><a href="i2p.socket.Socket-class.html#dest"><code>dest</code></a></b>: Local I2P Destination of socket</td></tr><tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><b><a href="i2p.socket.Socket-class.html#session"><code>session</code></a></b>: Session name</td></tr><tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
<td><b><a href="i2p.socket.Socket-class.html#type"><code>type</code></a></b>: Socket type: SOCK_STREAM, SOCK_DGRAM, or SOCK_RAW.</td></tr></table><br />
<!-- =========== START OF METHOD DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
<th colspan="2">Method Details</th></tr>
</table>
<a name="__init__"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">__init__</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>session</span>,
<span class=sig-arg>type</span>,
<span class=sig-arg>samaddr</span>=<span class=sig-default>'127.0.0.1:7656'</span>,
<span class="sig-kwarg">**kwargs</span>)</span>
<br /><i>(Constructor)</i>
</h3>
Equivalent to socket().
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="__copy__"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">__copy__</span>(<span class=sig-arg>self</span>)</span>
</h3>
Returns the original object.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="__deepcopy__"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">__deepcopy__</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>memo</span>)</span>
</h3>
Returns the original object.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="accept"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">accept</span>(<span class=sig-arg>self</span>)</span>
</h3>
<p>Accept an incoming connection. The socket must be type SOCK_STREAM,
and listen() must be called prior to this command. The return value is
(conn, remotedest), where conn is a new socket object made for the
connection, and remotedest is the remote Destination from which the
connection was made.</p>
Example:
<pre class="doctestblock">
<span class="py-src"><span class="py-prompt">&gt;&gt;&gt; </span><span class="py-keyword">from</span> i2p <span class="py-keyword">import</span> socket
<span class="py-prompt">&gt;&gt;&gt; </span>s = socket.socket(<span class="py-string">'Alice'</span>, socket.SOCK_STREAM)
<span class="py-prompt">&gt;&gt;&gt; </span>s.listen(10)</span></pre>
This prepares the server. Now accept an incoming connection:
<pre class="doctestblock">
<span class="py-src"><span class="py-prompt">&gt;&gt;&gt; </span>c, remotedest = s.accept()
<span class="py-prompt">&gt;&gt;&gt; </span>c.send(<span class="py-string">'hello world!'</span>)</span></pre>
If accept() is called on a socket that is in non-blocking mode or
has a timeout, i2p.socket.BlockError or i2p.socket.Timeout may be
raised. This indicates that no incoming connection is currently
available.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="bind"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">bind</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>address</span>)</span>
</h3>
Does nothing. Provided for compatibility with the Python socket
command bind(), which binds a server to a port.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="close"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">close</span>(<span class=sig-arg>self</span>)</span>
</h3>
Closes the socket. It is an error to call any method other than
recv() or recvfrom() on a closed socket. For streams, the receive
methods return data that was received prior to the closing of the
socket. For datagram and raw sockets, the receive methods cannot be
used on a closed socket.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="connect"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">connect</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>address</span>)</span>
</h3>
<p>Connect to a remote dest, identified in local SAM bridge's hosts
file as host 'address'.</p>
For example:
<pre class="doctestblock">
<span class="py-src"><span class="py-prompt">&gt;&gt;&gt; </span>s.connect(<span class="py-string">'duck.i2p'</span>)</span></pre>
<p>Alternatively, you can use a full base64 Destination:</p>
Example:
<pre class="doctestblock">
<span class="py-src"><span class="py-prompt">&gt;&gt;&gt; </span>s.connect(<span class="py-string">'238797sdfh2k34kjh....AAAA'</span>)</span></pre>
If connect() is called on a socket that is in non-blocking mode or
has a timeout, i2p.socket.BlockError or i2p.socket.Timeout may be
raised. This indicates that the connection is still being initiated.
Use i2p.select.select() to determine when the connection is ready.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="connect_ex"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">connect_ex</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>address</span>)</span>
</h3>
Like connect(), but return any error that is raised. Returns None if
no error is raised.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="getpeername"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">getpeername</span>(<span class=sig-arg>self</span>)</span>
</h3>
Get the remote Destination associated with the socket. This is
equivalent to s.remotedest, and is provided for compatibility with the
Python socket module.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="getsockname"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">getsockname</span>(<span class=sig-arg>self</span>)</span>
</h3>
Get the local Destination associated with the socket. This is
equivalent to s.dest, and is provided for compatibility with the Python
socket module.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="gettimeout"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">gettimeout</span>(<span class=sig-arg>self</span>)</span>
</h3>
Get the timeout value.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="listen"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">listen</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>backlog</span>)</span>
</h3>
Listen for connections made to the socket. This method must be
called before accept(). The backlog argument specifies the maximum
number of queued incoming connections.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="makefile"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">makefile</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>mode</span>=<span class=sig-default>'r'</span>,
<span class=sig-arg>bufsize</span>=<span class=sig-default>-1</span>)</span>
</h3>
Return a file object for the socket. See socket.makefile() in the
Python documentation for more information.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="recv"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">recv</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>bufsize</span>,
<span class=sig-arg>flags</span>=<span class=sig-default>0</span>)</span>
</h3>
<p>Receive string data from the socket.</p>
<p>The maximum amount of data to be received is given by bufsize. If
bufsize is zero, this function returns an empty string immediately. If
bufsize is nonzero, this function blocks until at least one character
is available for reading. If the socket has been closed, an empty
string is returned as an end of file indicator.</p>
<p>If recv() is called on a socket that is in non-blocking mode or has
a timeout, i2p.socket.BlockError or i2p.socket.Timeout will be raised
if data is not available within the given timeframe.</p>
<p>For a datagram or raw socket, the first bufsize characters of the
packet are read, and the remainder of the packet is discarded. To read
the entire packet, use bufsize = -1.</p>
<p>For datagram and raw sockets, the packet may originate from any
Destination. Use recvfrom() with datagrams to determine the Destination
from which the packet was received.</p>
The flags argument can be a bitwise OR of MSG_PEEK, MSG_WAITALL,
and/or MSG_DONTWAIT. MSG_PEEK indicates that any data read should not
be removed from the socket's incoming buffer. MSG_WAITALL indicates to
wait for exactly bufsize characters or an error. MSG_DONTWAIT indicates
that the recv() command should not block execution.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="recvfrom"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">recvfrom</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>bufsize</span>,
<span class=sig-arg>flags</span>=<span class=sig-default>0</span>)</span>
</h3>
Like recv(), but returns a tuple (data, remoteaddr), where data is
the string data received, and remoteaddr is the remote Destination.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="send"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">send</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>string</span>,
<span class=sig-arg>flags</span>=<span class=sig-default>0</span>)</span>
</h3>
<p>Sends string data to a remote Destination.</p>
<p>For a stream, connect() must be called prior to send(). Once close()
is called, no further data can be sent, and the stream cannot be
re-opened.</p>
<p>For datagram and raw sockets, connect() only specifies a Destination
to which packets are sent to. send() will then send a packet to the
given Destination. connect() can be used multiple times.</p>
The send() command never blocks execution. The flags argument is
ignored.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="sendall"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">sendall</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>string</span>,
<span class=sig-arg>flags</span>=<span class=sig-default>0</span>)</span>
</h3>
Identical to send().
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="sendto"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">sendto</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>string</span>,
<span class=sig-arg>flags</span>,
<span class=sig-arg>address</span>)</span>
</h3>
<p>Send a packet to the given Destination.</p>
<p>Only valid for datagram and raw sockets. The address argument should
be either a name from the hosts file, or a base64 Destination.</p>
The sendto() command never blocks execution. The flags argument is
ignored.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="setblocking"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">setblocking</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>flag</span>)</span>
</h3>
<p>Set blocking or non-blocking mode for the socket.</p>
<p>If flag is True, any method called on the socket will hang until the
method has completed. If flag is False, all methods will raise
i2p.socket.BlockError() if they cannot complete instantly.</p>
s.setblocking(False) is equivalent to s.settimeout(0);
s.setblocking(True) is equivalent to s.settimeout(None).
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<a name="settimeout"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<h3><span class="sig"><span class="sig-name">settimeout</span>(<span class=sig-arg>self</span>,
<span class=sig-arg>value</span>)</span>
</h3>
<p>Set a timeout for the socket.</p>
<p>The value argument should be a timeout value in seconds, or None.
None is equivalent to an infinite timeout.</p>
A socket operation will raise a i2p.socket.Timeout if the operation
cannot complete within in the specified time limit.
<dl><dt></dt><dd>
</dd></dl>
</td></tr></table>
<br />
<!-- =========== START OF PROPERTY DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
<th colspan="2">Property Details</th></tr>
</table>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<a name="dest"></a>
<h3>dest</h3>
Local I2P Destination of socket
</td></tr></table><table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<a name="session"></a>
<h3>session</h3>
Session name
</td></tr></table><table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
<a name="type"></a>
<h3>type</h3>
Socket type: SOCK_STREAM, SOCK_DGRAM, or SOCK_RAW.
</td></tr></table><br />
<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
<tr valign="center">
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="i2p-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
<th class="navbar" width="100%"></th>
</tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="left"><font size="-2">Generated by Epydoc 2.1 on Mon Aug 02 01:07:41 2004</font></td>
<td align="right"><a href="http://epydoc.sourceforge.net"
><font size="-2">http://epydoc.sf.net</font></a></td>
</tr>
</table>
</body>
</html>