diff options
author | nw1 <nw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-11-03 07:48:15 +0000 |
---|---|---|
committer | nw1 <nw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-11-03 07:48:15 +0000 |
commit | 746ba75dc77ab6a7c9864d8ac1010d4ea639a3dc (patch) | |
tree | e48ca078a4ed01d360130fe15acbd48f63d995f7 | |
parent | e83d20c531e613bc1d1a22a5b3564750768e09cd (diff) | |
download | ATCD-746ba75dc77ab6a7c9864d8ac1010d4ea639a3dc.tar.gz |
Added checking for address types in operator==.
-rw-r--r-- | ace/FILE_Addr.i | 26 | ||||
-rw-r--r-- | ace/INET_Addr.cpp | 93 | ||||
-rw-r--r-- | ace/SPIPE_Addr.i | 19 | ||||
-rw-r--r-- | ace/UNIX_Addr.i | 21 |
4 files changed, 81 insertions, 78 deletions
diff --git a/ace/FILE_Addr.i b/ace/FILE_Addr.i index 810e35b74d6..f364be3f719 100644 --- a/ace/FILE_Addr.i +++ b/ace/FILE_Addr.i @@ -13,17 +13,17 @@ ACE_INLINE ACE_FILE_Addr::ACE_FILE_Addr (void) : ACE_Addr (AF_FILE, sizeof this->filename_) { - (void) ACE_OS::memset ((void *) &this->filename_, + (void) ACE_OS::memset ((void *) &this->filename_, 0, sizeof this->filename_); } -// Copy constructor. +// Copy constructor. ACE_INLINE ACE_FILE_Addr::ACE_FILE_Addr (const ACE_FILE_Addr &sa) : ACE_Addr (AF_FILE, ACE_OS::strlen (sa.filename_)) { - (void) ACE_OS::memcpy ((void *) &this->filename_, + (void) ACE_OS::memcpy ((void *) &this->filename_, (void *) &sa.filename_, sa.get_size ()); } @@ -31,13 +31,13 @@ ACE_INLINE ACE_FILE_Addr & ACE_FILE_Addr::operator= (const ACE_FILE_Addr &sa) { if (this != &sa) - (void) ACE_OS::memcpy ((void *) &this->filename_, - (void *) &sa.filename_, + (void) ACE_OS::memcpy ((void *) &this->filename_, + (void *) &sa.filename_, sa.get_size ()); return *this; } -ACE_INLINE void +ACE_INLINE void ACE_FILE_Addr::set (LPCTSTR filename) { @@ -53,7 +53,7 @@ ACE_FILE_Addr::ACE_FILE_Addr (LPCTSTR filename) this->set (filename); } -// Transform the current address into string format. +// Transform the current address into string format. #if defined (UNICODE) ACE_INLINE int @@ -68,12 +68,12 @@ ACE_INLINE int ACE_FILE_Addr::addr_to_string (char *s, size_t len) const { ACE_OS::strncpy (s, - ACE_MULTIBYTE_STRING (this->filename_), + ACE_MULTIBYTE_STRING (this->filename_), len); return 0; } -// Return the address. +// Return the address. ACE_INLINE void * ACE_FILE_Addr::get_addr (void) const @@ -86,8 +86,9 @@ ACE_FILE_Addr::get_addr (void) const ACE_INLINE int ACE_FILE_Addr::operator == (const ACE_Addr &sap) const { - return ACE_OS::strcmp (this->filename_, - ((ACE_FILE_Addr &) sap).filename_) == 0; + return this->ACE_Addr::operator== (sap) + && ACE_OS::strcmp (this->filename_, + ((ACE_FILE_Addr &) sap).filename_) == 0; } // Compare two addresses for inequality. @@ -95,7 +96,7 @@ ACE_FILE_Addr::operator == (const ACE_Addr &sap) const ACE_INLINE int ACE_FILE_Addr::operator != (const ACE_Addr &sap) const { - return !((*this) == sap); // This is lazy, of course... ;-) + return !((*this) == sap); // This is lazy, of course... ;-) } // Return the path name used for the rendezvous point. @@ -105,4 +106,3 @@ ACE_FILE_Addr::get_path_name (void) const { return this->filename_; } - diff --git a/ace/INET_Addr.cpp b/ace/INET_Addr.cpp index 30fff2ce6a4..66abf1334b3 100644 --- a/ace/INET_Addr.cpp +++ b/ace/INET_Addr.cpp @@ -1,7 +1,7 @@ // INET_Addr.cpp // $Id$ -// Defines the Internet domain address family address format. +// Defines the Internet domain address family address format. #define ACE_BUILD_DLL #include "ace/INET_Addr.h" @@ -20,8 +20,8 @@ ACE_INET_Addr::addr_to_string (char s[], size_t) const ACE_TRACE ("ACE_INET_Addr::addr_to_string"); // This should check to make sure len is long enough... ACE_OS::sprintf (s, "%s:%d", - this->get_host_addr (), - this->get_port_number ()); + this->get_host_addr (), + this->get_port_number ()); return 0; } @@ -35,7 +35,7 @@ ACE_INET_Addr::dump (void) const char s[ACE_MAX_FULLY_QUALIFIED_NAME_LEN + 16]; ACE_OS::sprintf (s, "%s:%d", this->get_host_addr (), - this->get_port_number ()); + this->get_port_number ()); ACE_DEBUG ((LM_DEBUG, "%s", s)); ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP)); } @@ -57,8 +57,9 @@ ACE_INET_Addr::operator == (const ACE_Addr &sap) const ACE_TRACE ("ACE_INET_Addr::operator =="); const sockaddr_in &inet_sap = ((const ACE_INET_Addr &) sap).inet_addr_; - return this->inet_addr_.sin_port == inet_sap.sin_port - && ACE_OS::memcmp ((void *) &this->inet_addr_.sin_addr, + return this->ACE_Addr::operator == (sap) + && this->inet_addr_.sin_port == inet_sap.sin_port + && ACE_OS::memcmp ((void *) &this->inet_addr_.sin_addr, (void *) &inet_sap.sin_addr, sizeof (this->inet_addr_.sin_addr)) == 0; } @@ -67,8 +68,8 @@ ACE_INET_Addr::ACE_INET_Addr (void) : ACE_Addr (AF_INET, sizeof this->inet_addr_) { // ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); - (void) ACE_OS::memset ((void *) &this->inet_addr_, 0, - sizeof this->inet_addr_); + (void) ACE_OS::memset ((void *) &this->inet_addr_, 0, + sizeof this->inet_addr_); } int @@ -76,8 +77,8 @@ ACE_INET_Addr::set (const ACE_INET_Addr &sa) { ACE_TRACE ("ACE_INET_Addr::set"); this->ACE_Addr::base_set (AF_INET, sizeof this->inet_addr_); - (void) ACE_OS::memcpy ((void *) &this->inet_addr_, - (void *) &sa.inet_addr_, + (void) ACE_OS::memcpy ((void *) &this->inet_addr_, + (void *) &sa.inet_addr_, sizeof this->inet_addr_); return 0; } @@ -105,7 +106,7 @@ ACE_INET_Addr::string_to_addr (const char s[]) { *ip_addr = '\0'; u_short port = (u_short) ACE_OS::atoi (ip_addr + 1); // Skip over ':' - result = this->set (port, t); + result = this->set (port, t); } ACE_OS::free (ACE_MALLOC_T (t)); return result; @@ -133,16 +134,16 @@ ACE_INET_Addr::ACE_INET_Addr (const ACE_INET_Addr &sa) } // Initializes a ACE_INET_Addr from a PORT_NUMBER and an Internet -// address. +// address. int -ACE_INET_Addr::set (u_short port_number, - ACE_UINT32 inet_address, - int encode) +ACE_INET_Addr::set (u_short port_number, + ACE_UINT32 inet_address, + int encode) { ACE_TRACE ("ACE_INET_Addr::set"); this->ACE_Addr::base_set (AF_INET, sizeof this->inet_addr_); - (void) ACE_OS::memset ((void *) &this->inet_addr_, + (void) ACE_OS::memset ((void *) &this->inet_addr_, 0, sizeof this->inet_addr_); this->inet_addr_.sin_family = AF_INET; #if defined (ACE_HAS_SIN_LEN) @@ -157,26 +158,26 @@ ACE_INET_Addr::set (u_short port_number, else this->inet_addr_.sin_port = port_number; - (void) ACE_OS::memcpy ((void *) &this->inet_addr_.sin_addr, + (void) ACE_OS::memcpy ((void *) &this->inet_addr_.sin_addr, (void *) &inet_address, sizeof this->inet_addr_.sin_addr); return 0; } // Initializes a ACE_INET_Addr from a PORT_NUMBER and the remote -// HOST_NAME. +// HOST_NAME. int -ACE_INET_Addr::set (u_short port_number, - const char host_name[], +ACE_INET_Addr::set (u_short port_number, + const char host_name[], int encode) { ACE_TRACE ("ACE_INET_Addr::set"); ACE_UINT32 addr; - + this->ACE_Addr::base_set (AF_INET, sizeof this->inet_addr_); (void) ACE_OS::memset ((void *) &this->inet_addr_, 0, sizeof - this->inet_addr_); + this->inet_addr_); // Yow, someone gave us a NULL host_name! if (host_name == 0) @@ -187,7 +188,7 @@ ACE_INET_Addr::set (u_short port_number, else if (ACE_OS::inet_aton (host_name, (struct in_addr *) &addr) == 1) return this->set (port_number, encode ? ntohl (addr) : addr, encode); - else + else { #if defined (VXWORKS) hostent *hp = ACE_OS::gethostbyname (host_name); @@ -199,7 +200,7 @@ ACE_INET_Addr::set (u_short port_number, hostent *hp = ACE_OS::gethostbyname_r (host_name, &hentry, buf, &error); #endif /* VXWORKS */ - + if (hp == 0) { errno = EINVAL; @@ -207,17 +208,17 @@ ACE_INET_Addr::set (u_short port_number, } else { - (void) ACE_OS::memcpy ((void *) &addr, hp->h_addr, hp->h_length); + (void) ACE_OS::memcpy ((void *) &addr, hp->h_addr, hp->h_length); return this->set (port_number, encode ? ntohl (addr) : addr, encode); } } } - + // Initializes a ACE_INET_Addr from a <port_name> and the remote -// <host_name>. +// <host_name>. int -ACE_INET_Addr::set (const char port_name[], +ACE_INET_Addr::set (const char port_name[], const char host_name[]) { ACE_TRACE ("ACE_INET_Addr::set"); @@ -230,7 +231,7 @@ ACE_INET_Addr::set (const char port_name[], servent sentry; ACE_SERVENT_DATA buf; - servent *sp = ACE_OS::getservbyname_r ((char *) port_name, + servent *sp = ACE_OS::getservbyname_r ((char *) port_name, "tcp", &sentry, buf); if (sp == 0) return -1; @@ -243,7 +244,7 @@ ACE_INET_Addr::set (const char port_name[], // address. int -ACE_INET_Addr::set (const char port_name[], +ACE_INET_Addr::set (const char port_name[], ACE_UINT32 inet_address) { ACE_TRACE ("ACE_INET_Addr::set"); @@ -256,20 +257,20 @@ ACE_INET_Addr::set (const char port_name[], servent sentry; ACE_SERVENT_DATA buf; - servent *sp = ACE_OS::getservbyname_r ((char *) port_name, + servent *sp = ACE_OS::getservbyname_r ((char *) port_name, "tcp", &sentry, buf); if (sp == 0) - return -1; + return -1; else return this->set (sp->s_port, inet_address, 0); #endif /* VXWORKS */ } // Creates a ACE_INET_Addr from a PORT_NUMBER and the remote -// HOST_NAME. +// HOST_NAME. -ACE_INET_Addr::ACE_INET_Addr (u_short port_number, +ACE_INET_Addr::ACE_INET_Addr (u_short port_number, const char host_name[]) { ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); @@ -284,19 +285,19 @@ ACE_INET_Addr::set (const sockaddr_in *addr, int len) { ACE_TRACE ("ACE_INET_Addr::set"); this->ACE_Addr::base_set (AF_INET, len); - ACE_OS::memcpy ((void *) &this->inet_addr_, + ACE_OS::memcpy ((void *) &this->inet_addr_, (void *) addr, len); return 0; } // Set a pointer to the address. -void +void ACE_INET_Addr::set_addr (void *addr, int len) { ACE_TRACE ("ACE_INET_Addr::set_addr"); this->ACE_Addr::base_set (AF_INET, len); - ACE_OS::memcpy ((void *) &this->inet_addr_, + ACE_OS::memcpy ((void *) &this->inet_addr_, (void *) addr, len); } @@ -312,7 +313,7 @@ ACE_INET_Addr::ACE_INET_Addr (const sockaddr_in *addr, int len) // Creates a ACE_INET_Addr from a PORT_NUMBER and an Internet address. -ACE_INET_Addr::ACE_INET_Addr (u_short port_number, +ACE_INET_Addr::ACE_INET_Addr (u_short port_number, ACE_UINT32 inet_address) { ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); @@ -323,7 +324,7 @@ ACE_INET_Addr::ACE_INET_Addr (u_short port_number, // Creates a ACE_INET_Addr from a PORT_NAME and the remote // HOST_NAME. -ACE_INET_Addr::ACE_INET_Addr (const char port_name[], +ACE_INET_Addr::ACE_INET_Addr (const char port_name[], const char host_name[]) { ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); @@ -334,7 +335,7 @@ ACE_INET_Addr::ACE_INET_Addr (const char port_name[], // Creates a ACE_INET_Addr from a PORT_NAME and an Internet address. -ACE_INET_Addr::ACE_INET_Addr (const char* port_name, +ACE_INET_Addr::ACE_INET_Addr (const char* port_name, ACE_UINT32 inet_address) { ACE_TRACE ("ACE_INET_Addr::ACE_INET_Addr"); @@ -349,17 +350,17 @@ ACE_INET_Addr::get_host_name (char hostname[], size_t len) const #if defined (VXWORKS) char name [MAXHOSTNAMELEN + 1]; int error = ::hostGetByAddr ((int) this->inet_addr_.sin_addr.s_addr, name); - if (error == OK) + if (error == OK) { - if (ACE_OS::strlen (name) >= len) + if (ACE_OS::strlen (name) >= len) return -1; - else + else { ACE_OS::strcpy (hostname, name); return 0; } - } - else + } + else { errno = error; return -1; @@ -419,7 +420,7 @@ ACE_INET_Addr::get_host_name (void) const } void -ACE_INET_Addr::set_port_number (u_short port_number, +ACE_INET_Addr::set_port_number (u_short port_number, int encode) { ACE_TRACE ("ACE_INET_Addr::set_port_number"); diff --git a/ace/SPIPE_Addr.i b/ace/SPIPE_Addr.i index 527c1bf2322..9aed87534e4 100644 --- a/ace/SPIPE_Addr.i +++ b/ace/SPIPE_Addr.i @@ -5,7 +5,7 @@ #include "ace/SString.h" -// Transform the current address into string format. +// Transform the current address into string format. #if defined (UNICODE) ACE_INLINE int @@ -19,13 +19,13 @@ ACE_SPIPE_Addr::addr_to_string (wchar_t *s, size_t len) const ACE_INLINE int ACE_SPIPE_Addr::addr_to_string (char *s, size_t len) const { - ACE_OS::strncpy (s, - ACE_MULTIBYTE_STRING (this->SPIPE_addr_.rendezvous_), + ACE_OS::strncpy (s, + ACE_MULTIBYTE_STRING (this->SPIPE_addr_.rendezvous_), len); return 0; } -// Return the address. +// Return the address. ACE_INLINE void * ACE_SPIPE_Addr::get_addr (void) const @@ -33,16 +33,17 @@ ACE_SPIPE_Addr::get_addr (void) const return (void *) &this->SPIPE_addr_; } -// Compare two addresses for equality. +// Compare two addresses for equality. ACE_INLINE int ACE_SPIPE_Addr::operator == (const ACE_Addr &sap) const { - return ACE_OS::strcmp (this->SPIPE_addr_.rendezvous_, - ((ACE_SPIPE_Addr &) sap).SPIPE_addr_.rendezvous_) == 0; + return this->ACE_Addr::operator == (sap) + && ACE_OS::strcmp (this->SPIPE_addr_.rendezvous_, + ((ACE_SPIPE_Addr &) sap).SPIPE_addr_.rendezvous_) == 0; } -// Compare two addresses for inequality. +// Compare two addresses for inequality. ACE_INLINE int ACE_SPIPE_Addr::operator != (const ACE_Addr &sap) const @@ -64,7 +65,7 @@ ACE_SPIPE_Addr::user_id (void) const return this->SPIPE_addr_.uid_; } -ACE_INLINE void +ACE_INLINE void ACE_SPIPE_Addr::user_id (uid_t uid) { this->SPIPE_addr_.uid_ = uid; diff --git a/ace/UNIX_Addr.i b/ace/UNIX_Addr.i index 88fcc688cc5..f4bcfb6fad4 100644 --- a/ace/UNIX_Addr.i +++ b/ace/UNIX_Addr.i @@ -5,7 +5,7 @@ #if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS) -// Return a pointer to the underlying address. +// Return a pointer to the underlying address. ACE_INLINE void * ACE_UNIX_Addr::get_addr (void) const @@ -15,15 +15,15 @@ ACE_UNIX_Addr::get_addr (void) const // Transform the string into the current addressing format. -ACE_INLINE int +ACE_INLINE int ACE_UNIX_Addr::string_to_addr (const char addr[]) { - ACE_OS::strncpy (this->unix_addr_.sun_path, addr, + ACE_OS::strncpy (this->unix_addr_.sun_path, addr, sizeof this->unix_addr_.sun_path); return 0; } -// Transform the current address into string format. +// Transform the current address into string format. ACE_INLINE int ACE_UNIX_Addr::addr_to_string (char s[], size_t len) const @@ -37,20 +37,21 @@ ACE_UNIX_Addr::addr_to_string (char s[], size_t len) const ACE_INLINE int ACE_UNIX_Addr::operator == (const ACE_Addr &sap) const { - return ACE_OS::strncmp (this->unix_addr_.sun_path, - ((const ACE_UNIX_Addr &) sap).unix_addr_.sun_path, - sizeof this->unix_addr_.sun_path) == 0; + return this->ACE_Addr::operator == (sap) + && ACE_OS::strncmp (this->unix_addr_.sun_path, + ((const ACE_UNIX_Addr &) sap).unix_addr_.sun_path, + sizeof this->unix_addr_.sun_path) == 0; } -// Compare two addresses for inequality. +// Compare two addresses for inequality. ACE_INLINE int ACE_UNIX_Addr::operator != (const ACE_Addr &sap) const { - return !((*this) == sap); // This is lazy, of course... ;-) + return !((*this) == sap); // This is lazy, of course... ;-) } -// Return the path name used for the rendezvous point. +// Return the path name used for the rendezvous point. ACE_INLINE const char * ACE_UNIX_Addr::get_path_name (void) const |