[Libreoffice-commits] core.git: sal/osl
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Wed Jan 16 21:12:16 UTC 2019
sal/osl/unx/socket.cxx | 39 ++++++++++-----------------------------
1 file changed, 10 insertions(+), 29 deletions(-)
New commits:
commit a89f127d146c6e39113ccba9e7e114bd88145cca
Author: Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Wed Jan 16 16:43:26 2019 +0100
Commit: Stephan Bergmann <sbergman at redhat.com>
CommitDate: Wed Jan 16 22:11:48 2019 +0100
Avoid unnecessary string copying in osl_getDottedInetAddrOfSocketAddr
Change-Id: I57aea80f0489c4176990d7233a4c218e5199a993
Reviewed-on: https://gerrit.libreoffice.org/66467
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
diff --git a/sal/osl/unx/socket.cxx b/sal/osl/unx/socket.cxx
index 454ff463d70f..a77b3f364bf0 100644
--- a/sal/osl/unx/socket.cxx
+++ b/sal/osl/unx/socket.cxx
@@ -278,9 +278,6 @@ static oslSocketAddr osl_psz_resolveHostname (
static sal_Int32 osl_psz_getServicePort (
const sal_Char* pszServicename, const sal_Char* pszProtocol);
-static oslSocketResult osl_psz_getDottedInetAddrOfSocketAddr (
- oslSocketAddr Addr, sal_Char *pBuffer, sal_uInt32 BufferSize);
-
static void osl_psz_getLastSocketErrorDescription (
oslSocket Socket, sal_Char* pBuffer, sal_uInt32 BufferSize);
@@ -1110,38 +1107,22 @@ oslSocketResult SAL_CALL osl_getHostnameOfSocketAddr(oslSocketAddr Addr, rtl_uSt
oslSocketResult SAL_CALL osl_getDottedInetAddrOfSocketAddr(oslSocketAddr Addr, rtl_uString **ustrDottedInetAddr)
{
- oslSocketResult Result;
- sal_Char pszDottedInetAddr[1024];
-
- pszDottedInetAddr[0] = '\0';
-
- Result = osl_psz_getDottedInetAddrOfSocketAddr(Addr,pszDottedInetAddr,sizeof(pszDottedInetAddr));
-
- rtl_uString_newFromAscii(ustrDottedInetAddr,pszDottedInetAddr);
-
- return Result;
+ if( !Addr )
+ {
+ return osl_Socket_Error;
+ }
-}
+ struct sockaddr_in* pSystemInetAddr = reinterpret_cast<sockaddr_in *>(&Addr->m_sockaddr);
-oslSocketResult osl_psz_getDottedInetAddrOfSocketAddr(oslSocketAddr pAddr,
- sal_Char *pBuffer, sal_uInt32 BufferSize)
-{
- SAL_WARN_IF( !pAddr, "sal.osl", "undefined address" );
-
- if( pAddr )
+ if (pSystemInetAddr->sin_family != FAMILY_TO_NATIVE(osl_Socket_FamilyInet))
{
- struct sockaddr_in* pSystemInetAddr = reinterpret_cast<sockaddr_in *>(&pAddr->m_sockaddr);
+ return osl_Socket_Error;
+ }
- if (pSystemInetAddr->sin_family == FAMILY_TO_NATIVE(osl_Socket_FamilyInet))
- {
- strncpy(pBuffer, inet_ntoa(pSystemInetAddr->sin_addr), BufferSize);
- pBuffer[BufferSize - 1] = '\0';
+ rtl_uString_newFromAscii(ustrDottedInetAddr,inet_ntoa(pSystemInetAddr->sin_addr));
- return osl_Socket_Ok;
- }
- }
+ return osl_Socket_Ok;
- return osl_Socket_Error;
}
oslSocket SAL_CALL osl_createSocket(
More information about the Libreoffice-commits
mailing list