ASSA::UNIXAddress Class Reference

#include <UNIXAddress.h>

Inheritance diagram for ASSA::UNIXAddress:

ASSA::Address List of all members.

Public Member Functions

 UNIXAddress (const char *socket_name_)
 Constructor.
 UNIXAddress (SA *socket_address_)
 Copy constructor.
virtual ~UNIXAddress ()
 Destructor.
const int getLength () const
 Retrieve address length.
SAgetAddress () const
 Retrieve underlying address structure.

Private Attributes

SA_UN m_address
 UNIX socket address structure.

Detailed Description

Definition at line 26 of file UNIXAddress.h.


Constructor & Destructor Documentation

UNIXAddress::UNIXAddress const char *  socket_name_  ) 
 

Constructor.

Parameters:
socket_name_ UNIX path name

Definition at line 20 of file UNIXAddress.cpp.

References ASSA::Address::badbit, EL, ASSA::ERROR, m_address, ASSA::Address::setstate(), and trace.

00021 {
00022     trace("UNIXAddress::UNIXAddress(char* name_)");
00023     
00024     size_t len;
00025     m_address.sun_family = AF_UNIX;
00026     
00027     if ( (len = strlen(socket_name_)) > sizeof(m_address.sun_path) ) {
00028         EL((ERROR,"Socket path name is too long (%d bytes)\n", len));
00029         setstate (Address::badbit);
00030     }
00031     strcpy (m_address.sun_path, socket_name_);
00032 }

UNIXAddress::UNIXAddress SA socket_address_  ) 
 

Copy constructor.

Parameters:
socket_address_ address to copy from

Definition at line 35 of file UNIXAddress.cpp.

References ASSA::Address::badbit, EL, ASSA::ERROR, m_address, ASSA::Address::setstate(), and trace.

00036 {
00037     trace("UNIXAddress::UNIXAddress(SA_UN*)");
00038 
00039     SA_UN* sa_un = (SA_UN*) saddr_;
00040     m_address.sun_family = AF_UNIX;
00041     
00042     size_t len = strlen(sa_un->sun_path);
00043 
00044     if ( len > sizeof (m_address.sun_path) - 1 ) {
00045         EL((ERROR,"Socket path name is too long (%d bytes)\n", len));
00046         setstate (Address::badbit);
00047     }
00048     strcpy(m_address.sun_path, sa_un->sun_path);
00049 }

ASSA::UNIXAddress::~UNIXAddress  )  [inline, virtual]
 

Destructor.

Definition at line 54 of file UNIXAddress.h.

References trace.

00054 { trace("UNIXAddress::~UNIXAddress"); }


Member Function Documentation

SA * ASSA::UNIXAddress::getAddress  )  const [inline, virtual]
 

Retrieve underlying address structure.

Implements ASSA::Address.

Definition at line 62 of file UNIXAddress.h.

References m_address.

Referenced by ASSA::ConUDPSocket::unconnect().

00062 { return (SA*) &m_address; }

const int ASSA::UNIXAddress::getLength  )  const [inline, virtual]
 

Retrieve address length.

Implements ASSA::Address.

Definition at line 58 of file UNIXAddress.h.

References m_address.

00058 { return sizeof (m_address); }


Member Data Documentation

SA_UN ASSA::UNIXAddress::m_address [private]
 

UNIX socket address structure.

Definition at line 49 of file UNIXAddress.h.

Referenced by getAddress(), getLength(), and UNIXAddress().


The documentation for this class was generated from the following files:
Generated on Mon Dec 19 15:55:18 2005 for libassa by  doxygen 1.4.5