📄 class_socket.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>Crypto++: Socket class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.2 --><div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a></div><h1>Socket Class Reference</h1><code>#include <<a class="el" href="socketft_8h-source.html">socketft.h</a>></code><p><p>Inheritance diagram for Socket:<p><center><img src="class_socket.png" usemap="#Socket_map" border="0" alt=""></center><map name="Socket_map"><area href="class_socket_sink.html" alt="SocketSink" shape="rect" coords="0,56,91,80"><area href="class_socket_source.html" alt="SocketSource" shape="rect" coords="101,56,192,80"></map><a href="class_socket-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>wrapper for Windows or Berkeley Sockets <p><p>Definition at line <a class="el" href="socketft_8h-source.html#l00043">43</a> of file <a class="el" href="socketft_8h-source.html">socketft.h</a>.<table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socketa0" doxytag="Socket::Socket"></a> </td><td class="memItemRight" valign=bottom><b>Socket</b> (socket_t s=INVALID_SOCKET, bool own=false)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socketa1" doxytag="Socket::Socket"></a> </td><td class="memItemRight" valign=bottom><b>Socket</b> (const <a class="el" href="class_socket.html">Socket</a> &s)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea24" doxytag="Socket::GetOwnership"></a>bool </td><td class="memItemRight" valign=bottom><b>GetOwnership</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea25" doxytag="Socket::SetOwnership"></a>void </td><td class="memItemRight" valign=bottom><b>SetOwnership</b> (bool own)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea26" doxytag="Socket::operator socket_t"></a> </td><td class="memItemRight" valign=bottom><b>operator socket_t</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea27" doxytag="Socket::GetSocket"></a>socket_t </td><td class="memItemRight" valign=bottom><b>GetSocket</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea28" doxytag="Socket::AttachSocket"></a>void </td><td class="memItemRight" valign=bottom><b>AttachSocket</b> (socket_t s, bool own=false)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea29" doxytag="Socket::DetachSocket"></a>socket_t </td><td class="memItemRight" valign=bottom><b>DetachSocket</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea30" doxytag="Socket::CloseSocket"></a>void </td><td class="memItemRight" valign=bottom><b>CloseSocket</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea31" doxytag="Socket::Create"></a>void </td><td class="memItemRight" valign=bottom><b>Create</b> (int nType=SOCK_STREAM)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea32" doxytag="Socket::Bind"></a>void </td><td class="memItemRight" valign=bottom><b>Bind</b> (unsigned int port, const char *addr=NULL)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea33" doxytag="Socket::Bind"></a>void </td><td class="memItemRight" valign=bottom><b>Bind</b> (const sockaddr *psa, socklen_t saLen)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea34" doxytag="Socket::Listen"></a>void </td><td class="memItemRight" valign=bottom><b>Listen</b> (int backlog=5)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea35" doxytag="Socket::Connect"></a>bool </td><td class="memItemRight" valign=bottom><b>Connect</b> (const char *addr, unsigned int port)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea36" doxytag="Socket::Connect"></a>bool </td><td class="memItemRight" valign=bottom><b>Connect</b> (const sockaddr *psa, socklen_t saLen)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea37" doxytag="Socket::Accept"></a>bool </td><td class="memItemRight" valign=bottom><b>Accept</b> (<a class="el" href="class_socket.html">Socket</a> &s, sockaddr *psa=NULL, socklen_t *psaLen=NULL)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea38" doxytag="Socket::GetSockName"></a>void </td><td class="memItemRight" valign=bottom><b>GetSockName</b> (sockaddr *psa, socklen_t *psaLen)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea39" doxytag="Socket::Send"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>Send</b> (const byte *buf, unsigned int bufLen, int flags=0)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea40" doxytag="Socket::Receive"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>Receive</b> (byte *buf, unsigned int bufLen, int flags=0)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea41" doxytag="Socket::ShutDown"></a>void </td><td class="memItemRight" valign=bottom><b>ShutDown</b> (int how=SD_SEND)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea42" doxytag="Socket::IOCtl"></a>void </td><td class="memItemRight" valign=bottom><b>IOCtl</b> (long cmd, unsigned long *argp)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea43" doxytag="Socket::SendReady"></a>bool </td><td class="memItemRight" valign=bottom><b>SendReady</b> (const timeval *timeout)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea44" doxytag="Socket::ReceiveReady"></a>bool </td><td class="memItemRight" valign=bottom><b>ReceiveReady</b> (const timeval *timeout)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea45" doxytag="Socket::HandleError"></a>virtual void </td><td class="memItemRight" valign=bottom><b>HandleError</b> (const char *operation) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea46" doxytag="Socket::CheckAndHandleError_int"></a>void </td><td class="memItemRight" valign=bottom><b>CheckAndHandleError_int</b> (const char *operation, int result) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea47" doxytag="Socket::CheckAndHandleError"></a>void </td><td class="memItemRight" valign=bottom><b>CheckAndHandleError</b> (const char *operation, socket_t result) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcea48" doxytag="Socket::CheckAndHandleError"></a>void </td><td class="memItemRight" valign=bottom><b>CheckAndHandleError</b> (const char *operation, BOOL result) const</td></tr><tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcee0" doxytag="Socket::PortNameToNumber"></a>unsigned int </td><td class="memItemRight" valign=bottom><a class="el" href="class_socket.html#_socket_sourcee0">PortNameToNumber</a> (const char *name, const char *protocol="tcp")</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">look up the port number given its name, returns 0 if not found <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcee1" doxytag="Socket::StartSockets"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_socket.html#_socket_sourcee1">StartSockets</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">start Windows Sockets 2 <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcee2" doxytag="Socket::ShutdownSockets"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_socket.html#_socket_sourcee2">ShutdownSockets</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">calls WSACleanup for Windows Sockets <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcee3" doxytag="Socket::GetLastError"></a>int </td><td class="memItemRight" valign=bottom><a class="el" href="class_socket.html#_socket_sourcee3">GetLastError</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">returns errno or WSAGetLastError <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcee4" doxytag="Socket::SetLastError"></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="class_socket.html#_socket_sourcee4">SetLastError</a> (int errorCode)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">sets errno or calls WSASetLastError <br><br></td></tr><tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourceb17" doxytag="Socket::SocketChanged"></a>virtual void </td><td class="memItemRight" valign=bottom><b>SocketChanged</b> ()</td></tr><tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcep2" doxytag="Socket::m_s"></a>socket_t </td><td class="memItemRight" valign=bottom><b>m_s</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_socket_sourcep3" doxytag="Socket::m_own"></a>bool </td><td class="memItemRight" valign=bottom><b>m_own</b></td></tr></table><hr>The documentation for this class was generated from the following files:<ul><li><a class="el" href="socketft_8h-source.html">socketft.h</a><li><a class="el" href="socketft_8cpp-source.html">socketft.cpp</a></ul><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 8 23:35:35 2003 for Crypto++ by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.2 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -