Mercurial > hg > orthanc
changeset 3828:3d1bb2193832
fix build on os x
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 10 Apr 2020 16:35:41 +0200 |
parents | e82bd07c384e |
children | 4fde7933e504 447880856ce8 |
files | Core/DicomNetworking/DicomAssociation.cpp Core/DicomNetworking/DicomAssociationParameters.cpp Core/DicomNetworking/DicomAssociationParameters.h Core/DicomNetworking/DicomControlUserConnection.cpp Core/DicomNetworking/DicomUserConnection.cpp Core/DicomNetworking/NetworkingCompatibility.h |
diffstat | 6 files changed, 64 insertions(+), 57 deletions(-) [+] |
line wrap: on
line diff
--- a/Core/DicomNetworking/DicomAssociation.cpp Fri Apr 10 16:12:10 2020 +0200 +++ b/Core/DicomNetworking/DicomAssociation.cpp Fri Apr 10 16:35:41 2020 +0200 @@ -38,8 +38,10 @@ # error The macro DCMTK_VERSION_NUMBER must be defined #endif +#include "../Compatibility.h" #include "../Logging.h" #include "../OrthancException.h" +#include "NetworkingCompatibility.h" #include <dcmtk/dcmnet/diutil.h> // For dcmConnectionTimeout() #include <dcmtk/dcmdata/dcdeftag.h>
--- a/Core/DicomNetworking/DicomAssociationParameters.cpp Fri Apr 10 16:12:10 2020 +0200 +++ b/Core/DicomNetworking/DicomAssociationParameters.cpp Fri Apr 10 16:35:41 2020 +0200 @@ -34,33 +34,10 @@ #include "../PrecompiledHeaders.h" #include "DicomAssociationParameters.h" - -#ifdef _WIN32 -/** - * "The maximum length, in bytes, of the string returned in the buffer - * pointed to by the name parameter is dependent on the namespace provider, - * but this string must be 256 bytes or less. - * http://msdn.microsoft.com/en-us/library/windows/desktop/ms738527(v=vs.85).aspx - **/ -# define HOST_NAME_MAX 256 -# include <winsock.h> -#endif - - -#if !defined(HOST_NAME_MAX) && defined(_POSIX_HOST_NAME_MAX) -/** - * TO IMPROVE: "_POSIX_HOST_NAME_MAX is only the minimum value that - * HOST_NAME_MAX can ever have [...] Therefore you cannot allocate an - * array of size _POSIX_HOST_NAME_MAX, invoke gethostname() and expect - * that the result will fit." - * http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00128.html - **/ -#define HOST_NAME_MAX _POSIX_HOST_NAME_MAX -#endif - - +#include "../Compatibility.h" #include "../Logging.h" #include "../OrthancException.h" +#include "NetworkingCompatibility.h" #include <boost/thread/mutex.hpp> @@ -143,10 +120,4 @@ defaultTimeout_ = seconds; } } - - - size_t DicomAssociationParameters::GetMaxHostNameSize() - { - return HOST_NAME_MAX; - } }
--- a/Core/DicomNetworking/DicomAssociationParameters.h Fri Apr 10 16:12:10 2020 +0200 +++ b/Core/DicomNetworking/DicomAssociationParameters.h Fri Apr 10 16:35:41 2020 +0200 @@ -124,7 +124,5 @@ } static void SetDefaultTimeout(uint32_t seconds); - - static size_t GetMaxHostNameSize(); }; }
--- a/Core/DicomNetworking/DicomControlUserConnection.cpp Fri Apr 10 16:12:10 2020 +0200 +++ b/Core/DicomNetworking/DicomControlUserConnection.cpp Fri Apr 10 16:35:41 2020 +0200 @@ -34,6 +34,7 @@ #include "../PrecompiledHeaders.h" #include "DicomControlUserConnection.h" +#include "../Compatibility.h" #include "../DicomParsing/FromDcmtkBridge.h" #include "../Logging.h" #include "../OrthancException.h"
--- a/Core/DicomNetworking/DicomUserConnection.cpp Fri Apr 10 16:12:10 2020 +0200 +++ b/Core/DicomNetworking/DicomUserConnection.cpp Fri Apr 10 16:35:41 2020 +0200 @@ -92,6 +92,7 @@ #include "../OrthancException.h" #include "../DicomParsing/FromDcmtkBridge.h" #include "../DicomParsing/ToDcmtkBridge.h" +#include "NetworkingCompatibility.h" #include <dcmtk/dcmdata/dcdeftag.h> #include <dcmtk/dcmdata/dcfilefo.h> @@ -103,30 +104,6 @@ #include <set> -#ifdef _WIN32 -/** - * "The maximum length, in bytes, of the string returned in the buffer - * pointed to by the name parameter is dependent on the namespace provider, - * but this string must be 256 bytes or less. - * http://msdn.microsoft.com/en-us/library/windows/desktop/ms738527(v=vs.85).aspx - **/ -# define HOST_NAME_MAX 256 -# include <winsock.h> -#endif - - -#if !defined(HOST_NAME_MAX) && defined(_POSIX_HOST_NAME_MAX) -/** - * TO IMPROVE: "_POSIX_HOST_NAME_MAX is only the minimum value that - * HOST_NAME_MAX can ever have [...] Therefore you cannot allocate an - * array of size _POSIX_HOST_NAME_MAX, invoke gethostname() and expect - * that the result will fit." - * http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00128.html - **/ -#define HOST_NAME_MAX _POSIX_HOST_NAME_MAX -#endif - - static const char* DEFAULT_PREFERRED_TRANSFER_SYNTAX = UID_LittleEndianImplicitTransferSyntax; /**
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Core/DicomNetworking/NetworkingCompatibility.h Fri Apr 10 16:35:41 2020 +0200 @@ -0,0 +1,58 @@ +/** + * Orthanc - A Lightweight, RESTful DICOM Store + * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics + * Department, University Hospital of Liege, Belgium + * Copyright (C) 2017-2020 Osimis S.A., Belgium + * + * This program is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * In addition, as a special exception, the copyright holders of this + * program give permission to link the code of its release with the + * OpenSSL project's "OpenSSL" library (or with modified versions of it + * that use the same license as the "OpenSSL" library), and distribute + * the linked executables. You must obey the GNU General Public License + * in all respects for all of the code used other than "OpenSSL". If you + * modify file(s) with this exception, you may extend this exception to + * your version of the file(s), but you are not obligated to do so. If + * you do not wish to do so, delete this exception statement from your + * version. If you delete this exception statement from all source files + * in the program, then also delete it here. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + **/ + + +#pragma once + + +#ifdef _WIN32 +/** + * "The maximum length, in bytes, of the string returned in the buffer + * pointed to by the name parameter is dependent on the namespace provider, + * but this string must be 256 bytes or less. + * http://msdn.microsoft.com/en-us/library/windows/desktop/ms738527(v=vs.85).aspx + **/ +# define HOST_NAME_MAX 256 +# include <winsock.h> +#endif + + +#if !defined(HOST_NAME_MAX) && defined(_POSIX_HOST_NAME_MAX) +/** + * TO IMPROVE: "_POSIX_HOST_NAME_MAX is only the minimum value that + * HOST_NAME_MAX can ever have [...] Therefore you cannot allocate an + * array of size _POSIX_HOST_NAME_MAX, invoke gethostname() and expect + * that the result will fit." + * http://lists.gnu.org/archive/html/bug-gnulib/2009-08/msg00128.html + **/ +# define HOST_NAME_MAX _POSIX_HOST_NAME_MAX +#endif