IBR-DTNSuite  0.10
ibrcommon::filesocket Class Reference

#include <socket.h>

Inheritance diagram for ibrcommon::filesocket:
Inheritance graph
Collaboration diagram for ibrcommon::filesocket:
Collaboration graph

Public Member Functions

 filesocket (int fd)
 
 filesocket (const File &file)
 
virtual ~filesocket ()
 
virtual void up () throw (socket_exception)
 
virtual void down () throw (socket_exception)
 
- Public Member Functions inherited from ibrcommon::clientsocket
virtual ~clientsocket ()=0
 
ssize_t send (const char *data, size_t len, int flags=0) throw (socket_error)
 
ssize_t recv (char *data, size_t len, int flags=0) throw (socket_error)
 
void set (CLIENT_OPTION opt, bool val) throw (socket_error)
 
- Public Member Functions inherited from ibrcommon::basesocket
virtual ~basesocket ()=0
 
virtual int fd () const throw (socket_exception)
 
virtual int release () throw (socket_exception)
 
void close () throw (socket_exception)
 
void shutdown (int how) throw (socket_exception)
 
bool ready () const
 
sa_family_t get_family () const throw (socket_exception)
 

Additional Inherited Members

- Public Types inherited from ibrcommon::clientsocket
enum  CLIENT_OPTION { NO_DELAY = 0, BLOCKING = 1 }
 
- Static Public Member Functions inherited from ibrcommon::basesocket
static sa_family_t get_family (int fd) throw (socket_exception)
 
static bool hasSupport (const sa_family_t family, const int type=SOCK_DGRAM, const int protocol=0) throw ()
 
- Static Public Attributes inherited from ibrcommon::basesocket
static int DEFAULT_SOCKET_FAMILY = AF_INET6
 
static int DEFAULT_SOCKET_FAMILY_ALTERNATIVE = AF_INET
 
- Protected Types inherited from ibrcommon::basesocket
enum  socketstate { SOCKET_DOWN, SOCKET_UP, SOCKET_UNMANAGED, SOCKET_DESTROYED }
 
- Protected Member Functions inherited from ibrcommon::clientsocket
 clientsocket ()
 
 clientsocket (int fd)
 
- Protected Attributes inherited from ibrcommon::basesocket
socketstate _state
 
int _fd
 
sa_family_t _family
 

Detailed Description

A file socket opens a named socket for communication.

Definition at line 272 of file socket.h.

Constructor & Destructor Documentation

ibrcommon::filesocket::filesocket ( int  fd)

Definition at line 473 of file socket.cpp.

ibrcommon::filesocket::filesocket ( const File file)

Definition at line 478 of file socket.cpp.

ibrcommon::filesocket::~filesocket ( )
virtual

Definition at line 483 of file socket.cpp.

References down().

Here is the call graph for this function:

Member Function Documentation

void ibrcommon::filesocket::down ( ) throw (socket_exception)
virtual

Close and destroy the file descriptor of this socket assignment.

Exceptions
socket_exceptionif the action has failed

Reimplemented from ibrcommon::clientsocket.

Definition at line 531 of file socket.cpp.

References ibrcommon::basesocket::_state, ibrcommon::basesocket::close(), ibrcommon::basesocket::SOCKET_DESTROYED, and ibrcommon::basesocket::SOCKET_DOWN.

Referenced by ~filesocket().

Here is the call graph for this function:

void ibrcommon::filesocket::up ( ) throw (socket_exception)
virtual

Create the file descriptor for this socket and bind to the interface if necessary.

Exceptions
socket_exceptionif the action has failed

Reimplemented from ibrcommon::clientsocket.

Definition at line 490 of file socket.cpp.

References ibrcommon::basesocket::_fd, ibrcommon::basesocket::_state, ibrcommon::basesocket::close(), ibrcommon::File::getPath(), ibrcommon::basesocket::init_socket(), ibrcommon::basesocket::SOCKET_DOWN, and ibrcommon::basesocket::SOCKET_UP.

Here is the call graph for this function:


The documentation for this class was generated from the following files: