From 96c337af8c1b79911fe0268db9337970f794094c Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Thu, 21 Aug 2008 11:04:21 +0000 Subject: Make Open() take a const std::string& for the socket name instead of a const char *, for C++ style. --- lib/server/Socket.cpp | 9 +++++---- lib/server/Socket.h | 4 +++- lib/server/SocketStream.cpp | 8 ++++---- lib/server/SocketStream.h | 2 +- lib/server/SocketStreamTLS.cpp | 5 +++-- lib/server/SocketStreamTLS.h | 3 ++- 6 files changed, 18 insertions(+), 13 deletions(-) diff --git a/lib/server/Socket.cpp b/lib/server/Socket.cpp index 28dae69f..a450cd93 100644 --- a/lib/server/Socket.cpp +++ b/lib/server/Socket.cpp @@ -37,7 +37,8 @@ // Created: 2003/07/31 // // -------------------------------------------------------------------------- -void Socket::NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, int Type, const char *Name, int Port, int &rSockAddrLenOut) +void Socket::NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, + int Type, const std::string& rName, int Port, int &rSockAddrLenOut) { int sockAddrLen = 0; @@ -47,7 +48,7 @@ void Socket::NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, int Type sockDomain = AF_INET; { // Lookup hostname - struct hostent *phost = ::gethostbyname(Name); + struct hostent *phost = ::gethostbyname(rName.c_str()); if(phost != NULL) { if(phost->h_addr_list[0] != 0) @@ -81,7 +82,7 @@ void Socket::NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, int Type sockDomain = AF_UNIX; { // Check length of name is OK - unsigned int nameLen = ::strlen(Name); + unsigned int nameLen = rName.length(); if(nameLen >= (sizeof(addr.sa_unix.sun_path) - 1)) { THROW_EXCEPTION(ServerException, SocketNameUNIXPathTooLong); @@ -91,7 +92,7 @@ void Socket::NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, int Type addr.sa_unix.sun_len = sockAddrLen; #endif addr.sa_unix.sun_family = PF_UNIX; - ::strcpy(addr.sa_unix.sun_path, Name); + ::strcpy(addr.sa_unix.sun_path, rName.c_str()); } break; #endif diff --git a/lib/server/Socket.h b/lib/server/Socket.h index 057e4cad..dcbac8c5 100644 --- a/lib/server/Socket.h +++ b/lib/server/Socket.h @@ -45,7 +45,9 @@ namespace Socket TypeUNIX = 2 }; - void NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, int Type, const char *Name, int Port, int &rSockAddrLenOut); + void NameLookupToSockAddr(SocketAllAddr &addr, int &sockDomain, + int Type, const std::string& rName, int Port, + int &rSockAddrLenOut); void LogIncomingConnection(const struct sockaddr *addr, socklen_t addrlen); std::string IncomingConnectionLogMessage(const struct sockaddr *addr, socklen_t addrlen); }; diff --git a/lib/server/SocketStream.cpp b/lib/server/SocketStream.cpp index 7faff8c3..a6f99dad 100644 --- a/lib/server/SocketStream.cpp +++ b/lib/server/SocketStream.cpp @@ -136,7 +136,7 @@ void SocketStream::Attach(int socket) // Created: 2003/07/31 // // -------------------------------------------------------------------------- -void SocketStream::Open(int Type, const char *Name, int Port) +void SocketStream::Open(int Type, const std::string& rName, int Port) { if(mSocketHandle != INVALID_SOCKET_VALUE) { @@ -147,7 +147,7 @@ void SocketStream::Open(int Type, const char *Name, int Port) int sockDomain = 0; SocketAllAddr addr; int addrLen = 0; - Socket::NameLookupToSockAddr(addr, sockDomain, Type, Name, Port, addrLen); + Socket::NameLookupToSockAddr(addr, sockDomain, Type, rName, Port, addrLen); // Create the socket mSocketHandle = ::socket(sockDomain, SOCK_STREAM, @@ -166,11 +166,11 @@ void SocketStream::Open(int Type, const char *Name, int Port) DWORD err = WSAGetLastError(); ::closesocket(mSocketHandle); BOX_LOG_WIN_ERROR_NUMBER("Failed to connect to socket " - "(type " << Type << ", name " << Name << + "(type " << Type << ", name " << rName << ", port " << Port << ")", err); #else // !WIN32 BOX_LOG_SYS_ERROR("Failed to connect to socket (type " << - Type << ", name " << Name << ", port " << Port << + Type << ", name " << rName << ", port " << Port << ")"); ::close(mSocketHandle); #endif // WIN32 diff --git a/lib/server/SocketStream.h b/lib/server/SocketStream.h index 51f2e306..fa81cfd9 100644 --- a/lib/server/SocketStream.h +++ b/lib/server/SocketStream.h @@ -36,7 +36,7 @@ public: SocketStream(const SocketStream &rToCopy); ~SocketStream(); - void Open(int Type, const char *Name, int Port = 0); + void Open(int Type, const std::string& rName, int Port = 0); void Attach(int socket); virtual int Read(void *pBuffer, int NBytes, int Timeout = IOStream::TimeOutInfinite); diff --git a/lib/server/SocketStreamTLS.cpp b/lib/server/SocketStreamTLS.cpp index 4ffe16b4..5b7bf646 100644 --- a/lib/server/SocketStreamTLS.cpp +++ b/lib/server/SocketStreamTLS.cpp @@ -99,9 +99,10 @@ SocketStreamTLS::~SocketStreamTLS() // Created: 2003/08/06 // // -------------------------------------------------------------------------- -void SocketStreamTLS::Open(const TLSContext &rContext, int Type, const char *Name, int Port) +void SocketStreamTLS::Open(const TLSContext &rContext, int Type, + const std::string& rName, int Port) { - SocketStream::Open(Type, Name, Port); + SocketStream::Open(Type, rName, Port); Handshake(rContext); ResetCounters(); } diff --git a/lib/server/SocketStreamTLS.h b/lib/server/SocketStreamTLS.h index 64e52833..769dd945 100644 --- a/lib/server/SocketStreamTLS.h +++ b/lib/server/SocketStreamTLS.h @@ -38,7 +38,8 @@ private: SocketStreamTLS(const SocketStreamTLS &rToCopy); public: - void Open(const TLSContext &rContext, int Type, const char *Name, int Port = 0); + void Open(const TLSContext &rContext, int Type, + const std::string& rName, int Port = 0); void Handshake(const TLSContext &rContext, bool IsServer = false); virtual int Read(void *pBuffer, int NBytes, int Timeout = IOStream::TimeOutInfinite); -- cgit v1.2.3