summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bindings/c/zmq.h6
-rw-r--r--src/config.hpp4
-rw-r--r--src/zmq.cpp8
3 files changed, 18 insertions, 0 deletions
diff --git a/bindings/c/zmq.h b/bindings/c/zmq.h
index 3bcee9d..d5fb4f4 100644
--- a/bindings/c/zmq.h
+++ b/bindings/c/zmq.h
@@ -40,6 +40,12 @@ extern "C" {
#endif
////////////////////////////////////////////////////////////////////////////////
+// 0MQ versioning supprt.
+////////////////////////////////////////////////////////////////////////////////
+
+ZMQ_EXPORT void zmq_version (int *major, int *minor, int *patch);
+
+////////////////////////////////////////////////////////////////////////////////
// 0MQ errors.
////////////////////////////////////////////////////////////////////////////////
diff --git a/src/config.hpp b/src/config.hpp
index 9724733..a0d5755 100644
--- a/src/config.hpp
+++ b/src/config.hpp
@@ -27,6 +27,10 @@ namespace zmq
enum
{
+ // Current version of 0MQ.
+ version_major = 0,
+ version_minor = 0,
+ version_patch = 0,
// Number of new messages in message pipe needed to trigger new memory
// allocation. Setting this parameter to 256 decreases the impact of
diff --git a/src/zmq.cpp b/src/zmq.cpp
index 3ebd8d0..609c8f2 100644
--- a/src/zmq.cpp
+++ b/src/zmq.cpp
@@ -30,6 +30,7 @@
#include "msg_content.hpp"
#include "platform.hpp"
#include "stdint.hpp"
+#include "config.hpp"
#include "err.hpp"
#include "fd.hpp"
@@ -49,6 +50,13 @@
#include <pgm/pgm.h>
#endif
+void zmq_version (int *major_, int *minor_, int *patch_)
+{
+ *major_ = zmq::version_major;
+ *minor_ = zmq::version_minor;
+ *patch_ = zmq::version_patch;
+}
+
const char *zmq_strerror (int errnum_)
{
switch (errnum_) {