#include <PracticalSocket.h>
|
| UDPSocket () throw (SocketException) |
|
| UDPSocket (unsigned short localPort) throw (SocketException) |
|
| UDPSocket (const string &localAddress, unsigned short localPort) throw (SocketException) |
|
void | disconnect () throw (SocketException) |
|
void | sendTo (const void *buffer, int bufferLen, const string &foreignAddress, unsigned short foreignPort) throw (SocketException) |
|
int | recvFrom (void *buffer, int bufferLen, string &sourceAddress, unsigned short &sourcePort) throw (SocketException) |
|
void | setMulticastTTL (unsigned char multicastTTL) throw (SocketException) |
|
void | joinGroup (const string &multicastGroup) throw (SocketException) |
|
void | leaveGroup (const string &multicastGroup) throw (SocketException) |
|
void | connect (const string &foreignAddress, unsigned short foreignPort) throw (SocketException) |
|
void | send (const void *buffer, int bufferLen) throw (SocketException) |
|
int | recv (void *buffer, int bufferLen) throw (SocketException) |
|
string | getForeignAddress () throw (SocketException) |
|
unsigned short | getForeignPort () throw (SocketException) |
|
string | getLocalAddress () throw (SocketException) |
|
unsigned short | getLocalPort () throw (SocketException) |
|
void | setLocalPort (unsigned short localPort) throw (SocketException) |
|
void | setLocalAddressAndPort (const string &localAddress, unsigned short localPort=0) throw (SocketException) |
|
|
static void | cleanUp () throw (SocketException) |
|
static unsigned short | resolveService (const string &service, const string &protocol="tcp") |
|
UDP socket class
Definition at line 256 of file PracticalSocket.h.
Construct a UDP socket with the given local port
- Parameters
-
- Exceptions
-
Definition at line 288 of file PracticalSocket.cpp.
UDPSocket::UDPSocket |
( |
const string & |
localAddress, |
|
|
unsigned short |
localPort |
|
) |
| |
throw | ( | SocketException |
| ) | | |
Construct a UDP socket with the given local port and address
- Parameters
-
localAddress | local address |
localPort | local port |
- Exceptions
-
Definition at line 294 of file PracticalSocket.cpp.
void UDPSocket::sendTo |
( |
const void * |
buffer, |
|
|
int |
bufferLen, |
|
|
const string & |
foreignAddress, |
|
|
unsigned short |
foreignPort |
|
) |
| |
throw | ( | SocketException |
| ) | | |
Send the given buffer as a UDP datagram to the specified address/port
- Parameters
-
buffer | buffer to be written |
bufferLen | number of bytes to write |
foreignAddress | address (IP address or name) to send to |
foreignPort | port number to send to |
- Returns
- true if send is successful
- Exceptions
-
Definition at line 325 of file PracticalSocket.cpp.
References fillAddr(), and Socket::sockDesc.
Referenced by Controller::get_remote_data().
int UDPSocket::recvFrom |
( |
void * |
buffer, |
|
|
int |
bufferLen, |
|
|
string & |
sourceAddress, |
|
|
unsigned short & |
sourcePort |
|
) |
| |
throw | ( | SocketException |
| ) | | |
Read read up to bufferLen bytes data from this socket. The given buffer is where the data will be placed
- Parameters
-
buffer | buffer to receive data |
bufferLen | maximum number of bytes to receive |
sourceAddress | address of datagram source |
sourcePort | port of data source |
- Returns
- number of bytes received and -1 for error
- Exceptions
-
Definition at line 338 of file PracticalSocket.cpp.
References Socket::sockDesc.
Referenced by Controller::get_remote_data().
void UDPSocket::setMulticastTTL |
( |
unsigned char |
multicastTTL | ) |
|
throw | ( | SocketException |
| ) | | |
void UDPSocket::joinGroup |
( |
const string & |
multicastGroup | ) |
|
throw | ( | SocketException |
| ) | | |
void UDPSocket::leaveGroup |
( |
const string & |
multicastGroup | ) |
|
throw | ( | SocketException |
| ) | | |
void UDPSocket::setBroadcast |
( |
| ) |
|
|
private |
void CommunicatingSocket::connect |
( |
const string & |
foreignAddress, |
|
|
unsigned short |
foreignPort |
|
) |
| |
throw | ( | SocketException |
| ) | | |
|
inherited |
Attempt to establish a socket connection with the given foreign address and port
- Parameters
-
foreignAddress | foreign address (IP address or name) |
foreignPort | foreign port |
- Returns
- true if connection successfully established
- Exceptions
-
Definition at line 186 of file PracticalSocket.cpp.
References fillAddr().
Referenced by disconnect().
void CommunicatingSocket::send |
( |
const void * |
buffer, |
|
|
int |
bufferLen |
|
) |
| |
throw | ( | SocketException |
| ) | | |
|
inherited |
Write the given buffer to this socket. Call connect() before calling send()
- Parameters
-
buffer | buffer to be written |
bufferLen | number of bytes from buffer to be written |
- Returns
- true if the send is successful
- Exceptions
-
Definition at line 198 of file PracticalSocket.cpp.
int CommunicatingSocket::recv |
( |
void * |
buffer, |
|
|
int |
bufferLen |
|
) |
| |
throw | ( | SocketException |
| ) | | |
|
inherited |
Read into the given buffer up to bufferLen bytes data from this socket. Call connect() before calling recv()
- Parameters
-
buffer | buffer to receive the data |
bufferLen | maximum number of bytes to read into buffer |
- Returns
- number of bytes read, 0 for EOF, and -1 for error
- Exceptions
-
Definition at line 205 of file PracticalSocket.cpp.
unsigned short CommunicatingSocket::getForeignPort |
( |
| ) |
|
throw | ( | SocketException |
| ) | | |
|
inherited |
Get the local address
- Returns
- local address of socket
- Exceptions
-
Definition at line 115 of file PracticalSocket.cpp.
void Socket::setLocalPort |
( |
unsigned short |
localPort | ) |
|
throw | ( | SocketException |
| ) | | |
|
inherited |
Set the local port to the specified port and the local address to any interface
- Parameters
-
- Exceptions
-
Definition at line 135 of file PracticalSocket.cpp.
void Socket::setLocalAddressAndPort |
( |
const string & |
localAddress, |
|
|
unsigned short |
localPort = 0 |
|
) |
| |
throw | ( | SocketException |
| ) | | |
|
inherited |
Set the local port to the specified port and the local address to the specified address. If you omit the port, a random port will be selected.
- Parameters
-
localAddress | local address |
localPort | local port |
- Exceptions
-
Definition at line 148 of file PracticalSocket.cpp.
References fillAddr().
If WinSock, unload the WinSock DLLs; otherwise do nothing. We ignore this in our sample client code but include it in the library for completeness. If you are running on Windows and you are concerned about DLL resource consumption, call this after you are done with all Socket instances. If you execute this on Windows while some instance of Socket exists, you are toast. For portability of client code, this is an empty function on non-Windows platforms so you can always include it.
- Parameters
-
buffer | buffer to receive the data |
bufferLen | maximum number of bytes to read into buffer |
- Returns
- number of bytes read, 0 for EOF, and -1 for error
- Exceptions
-
Definition at line 159 of file PracticalSocket.cpp.
unsigned short Socket::resolveService |
( |
const string & |
service, |
|
|
const string & |
protocol = "tcp" |
|
) |
| |
|
staticinherited |
Resolve the specified service for the specified protocol to the corresponding port number in host byte order
- Parameters
-
service | service to resolve (e.g., "http") |
protocol | protocol of service to resolve. Default is "tcp". |
Definition at line 167 of file PracticalSocket.cpp.
The documentation for this class was generated from the following files: