diff --git a/source/adios2/ADIOSConfig.h.in b/source/adios2/ADIOSConfig.h.in
index 9a2570846194bfab15913bcf0d248fc3de9641ed..b993cbaa486abeb10714f015f6144b64eb1517a4 100644
--- a/source/adios2/ADIOSConfig.h.in
+++ b/source/adios2/ADIOSConfig.h.in
@@ -42,9 +42,6 @@
 /* CMake Option: ADIOS_USE_ZeroMQ=ON */
 #cmakedefine ADIOS2_HAVE_ZEROMQ
 
-/* CMake Option: ADIOS_USE_DataMan=ON */
-#cmakedefine ADIOS2_HAVE_DATAMAN
-
 /* CMake Option: ADIOS_USE_SysVShMem=ON */
 #cmakedefine ADIOS2_HAVE_SYSVSHMEM
 
diff --git a/source/adios2/CMakeLists.txt b/source/adios2/CMakeLists.txt
index 8115d1ead819073920e2d3fea4ec1a707449459b..7c7fde182d24a19d3e018bbd8a933b0ce991fe7b 100644
--- a/source/adios2/CMakeLists.txt
+++ b/source/adios2/CMakeLists.txt
@@ -74,13 +74,11 @@ if(ADIOS2_HAVE_ZeroMQ)
   target_link_libraries(adios2 PRIVATE ZeroMQ::ZMQ)
 endif()
 
-if(ADIOS2_HAVE_DataMan)
-  target_sources(adios2 PRIVATE
+target_sources(adios2 PRIVATE
     engine/dataman/DataManReader.cpp
     engine/dataman/DataManWriter.cpp
-  )
-  target_link_libraries(adios2 PRIVATE NLohmannJson)
-endif()
+)
+target_link_libraries(adios2 PRIVATE NLohmannJson)
 
 
 if(ADIOS2_HAVE_BZip2)
diff --git a/source/adios2/toolkit/transport/wan/WANZmq.cpp b/source/adios2/toolkit/transport/wan/WANZmq.cpp
index 9b4d38fa5b10cd60028d504c7e9bbb227eecddf7..9d9e3644108dc94fb96816ccdb034be9d15450e5 100644
--- a/source/adios2/toolkit/transport/wan/WANZmq.cpp
+++ b/source/adios2/toolkit/transport/wan/WANZmq.cpp
@@ -24,6 +24,10 @@ WANZmq::WANZmq(const std::string ipAddress, const std::string port,
   m_Port(port)
 {
     m_Context = zmq_ctx_new();
+    if (m_Context == nullptr || m_Context == NULL)
+    {
+        throw std::runtime_error("ERROR: Creating ZeroMQ context failed");
+    }
     if (m_DebugMode)
     {
         // TODO verify port is unsigned int
@@ -57,6 +61,11 @@ void WANZmq::Open(const std::string &name, const OpenMode openMode)
         m_Socket = zmq_socket(m_Context, ZMQ_REQ);
         const std::string fullIP("tcp://" + m_IPAddress + ":" + m_Port);
         int err = zmq_connect(m_Socket, fullIP.c_str());
+        if (err)
+        {
+            throw std::runtime_error("ERROR: zmq_connect() failed with " +
+                                     std::to_string(err));
+        }
 
         if (m_Profiler.IsActive)
         {
@@ -93,7 +102,7 @@ void WANZmq::Open(const std::string &name, const OpenMode openMode)
 
     if (m_DebugMode)
     {
-        if (m_Socket == NULL) // something goes wrong
+        if (m_Socket == nullptr || m_Socket == NULL) // something goes wrong
         {
             throw std::ios_base::failure(
                 "ERROR: couldn't open socket for address " + m_Name +