|
| URLStream (Family family=IPV4, timeout_t timer=0) |
| Construct an instance of URL stream.
|
|
URLStream & | getline (char *buffer, size_t len) |
| Line parsing with conversion.
|
|
Error | get (const char *url, size_t buffer=512) |
| Get URL data from a named stream of a known buffer size.
|
|
Error | get (size_t buffer=512) |
| Get URL data from a named stream of a known buffer size.
|
|
Error | submit (const char *url, const char **vars, size_t buffer=512) |
| Submit URL with vars passed as argument array.
|
|
Error | post (const char *url, const char **vars, size_t buffer=512) |
| Post URL vars with post method.
|
|
Error | post (const char *url, MIMEMultipartForm &form, size_t buffer=512) |
| Post URL with MIME multipart form.
|
|
Error | head (const char *url, size_t buffer=512) |
| Used to fetch header information for a resource.
|
|
void | close () |
| Close the URL stream for a new connection.
|
|
void | setReferer (const char *str) |
| Set the referer url.
|
|
void | setHost (const char *str) |
| Set the host for the url.
|
|
void | setAddress (const char *str) |
| Set the address for the url.
|
|
void | setCookie (const char *str) |
| Set the cookie to pass.
|
|
void | setUser (const char *str) |
| Set user id for the url.
|
|
void | setPassword (const char *str) |
| Set password for the url.
|
|
void | setAuthentication (Authentication a, const char *str=NULL) |
| Set authentication type for the url.
|
|
void | setProxyUser (const char *str) |
| Set proxy user id for the url.
|
|
void | setProxyPassword (const char *str) |
| Set proxy password for the url.
|
|
void | setProxyAuthentication (Authentication a, const char *str=NULL) |
| Set proxy authentication type for the url.
|
|
void | setPragma (const char *str) |
| Set the pragmas.
|
|
void | setProxy (const char *host, tpport_t port) |
| Set the proxy server used.
|
|
void | setAgent (const char *str) |
| Set the agent.
|
|
Method | getMethod (void) |
| Get url method (and protocol) employed.
|
|
void | setTimeout (timeout_t to) |
| Set socket timeout characteristics for processing URL requests.
|
|
void | setFollow (bool enable) |
| Specify url following.
|
|
void | setProtocol (Protocol pro) |
| Specify http protocol level being used.
|
|
void | setLocalInterface (const char *intf) |
| Specify local interface to use.
|
|
| TCPStream (Family family=IPV4, bool throwflag=true, timeout_t to=0) |
| The constructor required for building other classes or to start an unconnected TCPStream for connect.
|
|
void | disconnect (void) |
| Disconnect the current session and prepare for a new one.
|
|
int | getSegmentSize (void) |
| Get protocol segment size.
|
|
| TCPStream (TCPSocket &server, bool throwflag=true, timeout_t timeout=0) |
| Create a TCP stream by accepting a connection from a bound TCP socket acting as a server.
|
|
| TCPStream (TCPV6Socket &server, bool throwflag=true, timeout_t timeout=0) |
|
void | connect (TCPSocket &server) |
| Accept a connection from a TCP Server.
|
|
void | connect (TCPV6Socket &server) |
|
| TCPStream (const IPV4Host &host, tpport_t port, unsigned mss=536, bool throwflag=true, timeout_t timeout=0) |
| Create a TCP stream by connecting to a TCP socket (on a remote machine).
|
|
| TCPStream (const IPV6Host &host, tpport_t port, unsigned mss=536, bool throwflag=true, timeout_t timeout=0) |
|
| TCPStream (const char *name, Family family=IPV4, unsigned mss=536, bool throwflag=false, timeout_t timer=0) |
| Construct a named TCP Socket connected to a remote machine.
|
|
void | setTimeout (timeout_t timer) |
| Set the I/O operation timeout for socket I/O operations.
|
|
| TCPStream (const TCPStream &source) |
| A copy constructor creates a new stream buffer.
|
|
virtual | ~TCPStream () |
| Flush and empty all buffers, and then remove the allocated buffers.
|
|
int | sync (void) |
| Flushes the stream input and output buffers, writes pending output.
|
|
size_t | printf (const char *format,...) |
| Print content into a socket.
|
|
bool | isPending (Pending pend, timeout_t timeout=TIMEOUT_INF) |
| Get the status of pending stream data.
|
|
ssize_t | peek (void *buf, size_t len) |
| Examine contents of next waiting packet.
|
|
size_t | getBufferSize (void) const |
| Return the size of the current stream buffering used.
|
|
virtual | ~Socket () |
| The socket base class may be "thrown" as a result of an error, and the "catcher" may then choose to destroy the object.
|
|
Socket & | operator= (const Socket &from) |
| Sockets may also be duplicated by the assignment operator.
|
|
virtual IPV4Host | getIPV4Sender (tpport_t *port=NULL) const |
| May be used to examine the origin of data waiting in the socket receive queue.
|
|
IPV4Host | getSender (tpport_t *port=NULL) const |
|
virtual IPV6Host | getIPV6Sender (tpport_t *port=NULL) const |
|
IPV4Host | getIPV4Peer (tpport_t *port=NULL) const |
| Get the host address and port of the socket this socket is connected to.
|
|
IPV4Host | getPeer (tpport_t *port=NULL) const |
|
IPV6Host | getIPV6Peer (tpport_t *port=NULL) const |
|
IPV4Host | getIPV4Local (tpport_t *port=NULL) const |
| Get the local address and port number this socket is currently bound to.
|
|
IPV4Host | getLocal (tpport_t *port=NULL) const |
|
IPV6Host | getIPV6Local (tpport_t *port=NULL) const |
|
IPV4Host | getIPV4NAT (tpport_t *port=NULL) const |
| Perform NAT table lookup for this socket.
|
|
IPV4Host | getNAT (tpport_t *port) const |
|
IPV6Host | getIPV6NAT (tpport_t *port=NULL) const |
|
void | setCompletion (bool immediate) |
| Used to specify blocking mode for the socket.
|
|
Error | setLinger (bool linger) |
| Enable lingering sockets on close.
|
|
Error | setKeepAlive (bool enable) |
| Set the keep-alive status of this socket and if keep-alive messages will be sent.
|
|
Error | setTypeOfService (Tos service) |
| Set packet scheduling on platforms which support ip quality of service conventions.
|
|
bool | isConnected (void) const |
| Can test to see if this socket is "connected", and hence whether a "catch" can safely call getPeer().
|
|
bool | isActive (void) const |
| Test to see if the socket is at least operating or if it is mearly initialized.
|
|
bool | operator! () const |
| Operator based testing to see if a socket is currently active.
|
|
bool | isBroadcast (void) const |
| Return if broadcast has been enabled for the specified socket.
|
|
bool | isRouted (void) const |
| Return if socket routing is enabled.
|
|
Error | getErrorNumber (void) const |
| Often used by a "catch" to fetch the last error of a thrown socket.
|
|
const char * | getErrorString (void) const |
| Often used by a "catch" to fetch the user set error string of a thrown socket, but only if EXTENDED error codes are used.
|
|
long | getSystemError (void) const |
|
const char * | getSystemErrorString (void) const |
|
virtual bool | isPending (Pending pend, timeout_t timeout=TIMEOUT_INF) |
| Get the status of pending operations.
|
|
|
Error | sendHTTPHeader (const char *url, const char **vars, size_t bufsize) |
| Send http header to server.
|
|
int | underflow (void) |
| Called if stream buffer needs refilling.
|
|
virtual int | aRead (char *buffer, size_t len, timeout_t timer) |
| Derived method for async or timed I/O function on url stream.
|
|
virtual int | aWrite (char *buffer, size_t len, timeout_t timer) |
| Derived method for async or timed I/O function on url stream.
|
|
virtual void | httpHeader (const char *header, const char *value) |
| Derived method to receive and parse http "headers".
|
|
virtual char ** | extraHeader (void) |
| A virtual to insert additional header info into the request.
|
|
void | allocate (size_t size) |
| Used to allocate the buffer space needed for iostream operations.
|
|
void | endStream (void) |
| Used to terminate the buffer space and cleanup the socket connection.
|
|
int | underflow () |
| This streambuf method is used to load the input buffer through the established tcp socket connection.
|
|
int | uflow () |
| This streambuf method is used for doing unbuffered reads through the establish tcp socket connection when in interactive mode.
|
|
int | overflow (int ch) |
| This streambuf method is used to write the output buffer through the established tcp connection.
|
|
void | connect (const IPV4Host &host, tpport_t port, unsigned mss=536) |
| Create a TCP stream by connecting to a TCP socket (on a remote machine).
|
|
void | connect (const IPV6Host &host, tpport_t port, unsigned mss=536) |
|
void | connect (const char *name, unsigned mss=536) |
| Connect a TCP stream to a named destination host and port number, using getaddrinfo interface if available.
|
|
std::iostream * | tcp (void) |
| Used in derived classes to refer to the current object via it's iostream.
|
|
Error | error (Error error, const char *err=NULL, long systemError=0) const |
| This service is used to throw all socket errors which usually occur during the socket constructor.
|
|
void | error (const char *err) const |
| This service is used to throw application defined socket errors where the application specific error code is a string.
|
|
void | setError (bool enable) |
| This service is used to turn the error handler on or off for "throwing" exceptions by manipulating the thrown flag.
|
|
void | endSocket (void) |
| Used as the default destructor for ending a socket.
|
|
Error | connectError (void) |
| Used as a common handler for connection failure processing.
|
|
Error | sendLimit (int limit=2048) |
| Set the send limit.
|
|
Error | receiveLimit (int limit=1) |
| Set thr receive limit.
|
|
Error | sendTimeout (timeout_t timer) |
| Set the send timeout for sending raw network data.
|
|
Error | receiveTimeout (timeout_t timer) |
| Receive timeout for receiving raw network data.
|
|
Error | sendBuffer (unsigned size) |
| Set the protocol stack network kernel send buffer size associated with the socket.
|
|
Error | receiveBuffer (unsigned size) |
| Set the protocol stack network kernel receive buffer size associated with the socket.
|
|
Error | bufferSize (unsigned size) |
| Set the total protocol stack network kernel buffer size for both send and receive together.
|
|
Error | setBroadcast (bool enable) |
| Set the subnet broadcast flag for the socket.
|
|
Error | setMulticastByFamily (bool enable, Family family=IPV4) |
| Setting multicast binds the multicast interface used for the socket to the interface the socket itself has been implicitly bound to.
|
|
Error | setLoopbackByFamily (bool enable, Family family=IPV4) |
| Set the multicast loopback flag for the socket.
|
|
Error | setTimeToLiveByFamily (unsigned char ttl, Family fam=IPV4) |
| Set the multicast time to live for a multicast socket.
|
|
Error | join (const IPV4Multicast &ia) |
| Join a multicast group.
|
|
Error | join (const IPV6Multicast &ia) |
|
Error | drop (const IPV4Multicast &ia) |
| Drop membership from a multicast group.
|
|
Error | drop (const IPV6Multicast &ia) |
|
Error | setRouting (bool enable) |
| Set the socket routing to indicate if outgoing messages should bypass normal routing (set false).
|
|
Error | setNoDelay (bool enable) |
| Enable/disable delaying packets (Nagle algorithm)
|
|
| Socket (int domain, int type, int protocol=0) |
| An unconnected socket may be created directly on the local machine.
|
|
| Socket (SOCKET fd) |
| A socket object may be created from a file descriptor when that descriptor was created either through a socket() or accept() call.
|
|
| Socket () |
| Create an inactive socket object for base constructors.
|
|
| Socket (const Socket &source) |
| A socket can also be constructed from an already existing Socket object.
|
|
ssize_t | readLine (char *buf, size_t len, timeout_t timeout=0) |
| Process a logical input line from a socket descriptor directly.
|
|
virtual ssize_t | readData (void *buf, size_t len, char separator=0, timeout_t t=0) |
| Read in a block of len bytes with specific separator.
|
|
virtual ssize_t | writeData (const void *buf, size_t len, timeout_t t=0) |
| Write a block of len bytes to socket.
|
|
|
(Note that these are not member symbols.)
|
__EXPORT char * | urlDecode (char *source, char *dest=NULL) |
| Decode an url parameter (ie "\%20" -> " ")
|
|
__EXPORT char * | urlEncode (const char *source, char *dest, size_t size) |
| Encode an url parameter (ie " " -> "+")
|
|
__EXPORT char * | b64Decode (char *src, char *dest=NULL) |
| Decode a string using base64 coding.
|
|
__EXPORT char * | b64Encode (const char *source, char *dest, size_t size) |
| Encode a string using base64 coding.
|
|
__EXPORT size_t | b64Encode (const unsigned char *src, size_t srcsize, char *dst, size_t dstsize) |
| Encode a octet stream using base64 coding.
|
|
__EXPORT size_t | b64Decode (const char *src, unsigned char *dst, size_t dstsize) |
| Decode a string using base64 coding.
|
|
__EXPORT String | b64Encode (const String &src) |
| Encode a STL string using base64 coding into a STL string.
|
|
__EXPORT String | b64Decode (const String &src) |
| Decode a STL string using base64 coding into an STL String.
|
|
__EXPORT String | b64Encode (const unsigned char *src, size_t srcsize) |
| Encode a octet stream using base64 coding into a STL string.
|
|
__EXPORT size_t | b64Decode (const String &src, unsigned char *dst, size_t dstsize) |
| Decode a string using base64 coding.
|
|