--- a/src/metadata.hpp +++ b/src/metadata.hpp @@ -41,7 +41,11 @@ namespace zmq { public: +#ifdef __UCLIBCXX_MAJOR__ + typedef std::map dict_t; +#else typedef std::map dict_t; +#endif metadata_t (const dict_t &dict); virtual ~metadata_t (); --- a/src/stream_engine.cpp +++ b/src/stream_engine.cpp @@ -208,7 +208,11 @@ void zmq::stream_engine_t::plug (io_thread_t *io_thread_, // Compile metadata. typedef metadata_t::dict_t properties_t; properties_t properties; +#ifdef __UCLIBCXX_MAJOR__ + properties.insert(std::make_pair("Peer-Address", peer_address)); +#else properties.insert(std::make_pair("Peer-Address", peer_address)); +#endif zmq_assert (metadata == NULL); metadata = new (std::nothrow) metadata_t (properties); } @@ -824,7 +828,11 @@ void zmq::stream_engine_t::mechanism_ready () // If we have a peer_address, add it to metadata if (!peer_address.empty()) { +#ifdef __UCLIBCXX_MAJOR__ + properties.insert(std::make_pair("Peer-Address", peer_address)); +#else properties.insert(std::make_pair("Peer-Address", peer_address)); +#endif } // Add ZAP properties.