Rudiments
|
Inherits server.
Inherited by inetserversocket, and unixserversocket.
Public Member Functions | |
serversocket () | |
serversocket (const serversocket &s) | |
serversocket & | operator= (const serversocket &s) |
virtual | ~serversocket () |
virtual bool | supportsBlockingNonBlockingModes () |
virtual bool | useNonBlockingMode () const |
virtual bool | useBlockingMode () const |
bool | lingerOnClose (int32_t timeout) |
bool | dontLingerOnClose () |
bool | reuseAddresses () |
bool | dontReuseAddresses () |
virtual bool | listen (int32_t backlog) |
![]() | |
server () | |
server (const server &s) | |
server & | operator= (const server &s) |
virtual | ~server () |
virtual bool | bind ()=0 |
virtual filedescriptor * | accept ()=0 |
![]() | |
filedescriptor () | |
filedescriptor (const filedescriptor &f) | |
filedescriptor & | operator= (const filedescriptor &f) |
virtual | ~filedescriptor () |
virtual bool | close () |
int32_t | getFileDescriptor () const |
void | setFileDescriptor (int32_t filedesc) |
int32_t | duplicate () const |
bool | duplicate (int32_t newfd) const |
bool | isUsingNonBlockingMode () const |
ssize_t | write (uint16_t number) const |
ssize_t | write (uint32_t number) const |
ssize_t | write (uint64_t number) const |
ssize_t | write (int16_t number) const |
ssize_t | write (int32_t number) const |
ssize_t | write (int64_t number) const |
ssize_t | write (float number) const |
ssize_t | write (double number) const |
ssize_t | write (unsigned char character) const |
ssize_t | write (char character) const |
ssize_t | write (bool value) const |
ssize_t | write (const unsigned char *string) const |
ssize_t | write (const char *string) const |
ssize_t | write (const unsigned char *string, size_t size) const |
ssize_t | write (const char *string, size_t size) const |
ssize_t | write (const void *buffer, size_t size) const |
ssize_t | write (uint16_t number, long sec, long usec) const |
ssize_t | write (uint32_t number, long sec, long usec) const |
ssize_t | write (uint64_t number, long sec, long usec) const |
ssize_t | write (int16_t number, long sec, long usec) const |
ssize_t | write (int32_t number, long sec, long usec) const |
ssize_t | write (int64_t number, long sec, long usec) const |
ssize_t | write (float number, long sec, long usec) const |
ssize_t | write (double number, long sec, long usec) const |
ssize_t | write (unsigned char character, long sec, long usec) const |
ssize_t | write (char character, long sec, long usec) const |
ssize_t | write (bool value, long sec, long usec) const |
ssize_t | write (const unsigned char *string, long sec, long usec) const |
ssize_t | write (const char *string, long sec, long usec) const |
ssize_t | write (const unsigned char *string, size_t size, long sec, long usec) const |
ssize_t | write (const char *string, size_t size, long sec, long usec) const |
ssize_t | write (const void *buffer, size_t size, long sec, long usec) const |
ssize_t | read (uint16_t *buffer) const |
ssize_t | read (uint32_t *buffer) const |
ssize_t | read (uint64_t *buffer) const |
ssize_t | read (int16_t *buffer) const |
ssize_t | read (int32_t *buffer) const |
ssize_t | read (int64_t *buffer) const |
ssize_t | read (float *buffer) const |
ssize_t | read (double *buffer) const |
ssize_t | read (unsigned char *buffer) const |
ssize_t | read (char *buffer) const |
ssize_t | read (bool *buffer) const |
ssize_t | read (unsigned char *buffer, size_t size) const |
ssize_t | read (char *buffer, size_t size) const |
ssize_t | read (void *buf, size_t size) const |
ssize_t | read (char **buffer, const char *terminator) const |
ssize_t | read (uint16_t *buffer, long sec, long usec) const |
ssize_t | read (uint32_t *buffer, long sec, long usec) const |
ssize_t | read (uint64_t *buffer, long sec, long usec) const |
ssize_t | read (int16_t *buffer, long sec, long usec) const |
ssize_t | read (int32_t *buffer, long sec, long usec) const |
ssize_t | read (int64_t *buffer, long sec, long usec) const |
ssize_t | read (float *buffer, long sec, long usec) const |
ssize_t | read (double *buffer, long sec, long usec) const |
ssize_t | read (unsigned char *buffer, long sec, long usec) const |
ssize_t | read (char *buffer, long sec, long usec) const |
ssize_t | read (bool *buffer, long sec, long usec) const |
ssize_t | read (unsigned char *buffer, size_t size, long sec, long usec) const |
ssize_t | read (char *buffer, size_t size, long sec, long usec) const |
ssize_t | read (void *buf, size_t size, long sec, long usec) const |
ssize_t | read (char **buffer, const char *terminator, long sec, long usec) const |
int32_t | waitForNonBlockingRead (long sec, long usec) const |
int32_t | waitForNonBlockingWrite (long sec, long usec) const |
void | retryInterruptedReads () |
void | dontRetryInterruptedReads () |
void | retryInterruptedWrites () |
void | dontRetryInterruptedWrites () |
void | retryInterruptedWaits () |
void | dontRetryInterruptedWaits () |
void | retryInterruptedFcntl () |
void | dontRetryInterruptedFcntl () |
void | retryInterruptedIoctl () |
void | dontRetryInterruptedIoctl () |
void | allowShortReads () |
void | dontAllowShortReads () |
void | allowShortWrites () |
void | dontAllowShortWrites () |
void | useListener (listener *lstnr) |
void | dontUseListener () |
listener * | getListener () |
void | useListenerInsideReads () |
void | dontUseListenerInsideReads () |
void | useListenerInsideWrites () |
void | dontUseListenerInsideWrites () |
virtual bool | passFileDescriptor (int32_t fd) const |
virtual bool | receiveFileDescriptor (int32_t *fd) const |
void | translateByteOrder () |
void | dontTranslateByteOrder () |
int32_t | fCntl (int32_t command, long arg) const |
int32_t | ioCtl (int32_t command, void *arg) const |
bool | useNaglesAlgorithm () |
bool | dontUseNaglesAlgorithm () |
bool | setTcpWriteBufferSize (int32_t size) |
bool | getTcpWriteBufferSize (int32_t *size) |
bool | setTcpReadBufferSize (int32_t size) |
bool | getTcpReadBufferSize (int32_t *size) |
const char * | getType () const |
char * | getPeerAddress () const |
bool | setWriteBufferSize (ssize_t size) const |
bool | flushWriteBuffer (long sec, long usec) const |
bool | setReadBufferSize (ssize_t size) const |
bool | closeOnExec () |
bool | dontCloseOnExec () |
bool | getCloseOnExec () |
The serversocket class provides a base class for classes that implement the server side of a client-server communication model over a socket.
serversocket::serversocket | ( | ) |
Creates an instance of the serversocket class.
serversocket::serversocket | ( | const serversocket & | s | ) |
Creates an instance of the serversocket class that is a copy of "s".
|
virtual |
Deletes this instance of the serversocket class.
bool serversocket::dontLingerOnClose | ( | ) |
Instructs the socket to close immediately when close() is called, dumping any data that may still be buffered but that it may not have received. This is the default.
Returns true on success and false on failure.
bool serversocket::dontReuseAddresses | ( | ) |
Prevents sockets in the TIME_WAIT state from being reused. This is the default.
Returns true on success and false on failure.
bool serversocket::lingerOnClose | ( | int32_t | timeout | ) |
Instructs the socket to stay open for "timeout" seconds even after close() is called to allow it to receive any data that may still be buffered. The default is not to linger on close.
Returns true on success and false on failure.
|
virtual |
Waits until a client connects then places that connection in queue. Up to "backlog" connections may be queued before future conenctions are refused.
Returns true on success and false on failure.
Implements server.
Reimplemented in unixserversocket, and inetserversocket.
serversocket& serversocket::operator= | ( | const serversocket & | s | ) |
Makes this instance of the serversocket class identical to "s".
bool serversocket::reuseAddresses | ( | ) |
Allows sockets in the TIME_WAIT state to be reused. The default is to allocate a new socket.
Returns true on success and false on failure.
|
virtual |
Returns false if the system doesn't support blocking/nonblocking modes and true otherwise.
|
virtual |
Puts the file descriptor in blocking mode. Returns true on success and false on failure. Returns false if the system doesn't support blocking/nonblocking modes.
Reimplemented from filedescriptor.
|
virtual |
Puts the file descriptor in non-blocking mode. Returns true on success and false on failure. Returns false if the system doesn't support blocking/nonblocking modes.
Reimplemented from filedescriptor.