summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorКоренберг Марк (дома) <socketpair@gmail.com>2012-08-29 22:55:14 +0600
committerКоренберг Марк (дома) <socketpair@gmail.com>2012-08-30 03:19:04 +0600
commit582a32433ca03dd2ca78dc485329cb81d391a192 (patch)
treeadeca4c6beb49792c013625d637405768092b5f2 /lib
parentd10d9633a5b673641eebe3f33c89a334d1972aa2 (diff)
downloadlibnl-582a32433ca03dd2ca78dc485329cb81d391a192.tar.gz
Run-time version information is now available
Run-time version information is available as exported four integers: - const int nl_ver_num = LIBNL_VER_NUM; - const int nl_ver_maj = LIBNL_VER_MAJ; - const int nl_ver_min = LIBNL_VER_MIN; - const int nl_ver_mic = LIBNL_VER_MIC; The purpose of this is to get version of compiled library as run time. Use cases: - To know exact version of the library in Python's ctypes module, Say, to find out if nl_cache_mngr_alloc() allow sk=NULL - To make sure that the version of the loaded library corresponds to the version of headers (for the paranoid). Say, to check: if (LIBNL_VER_NUM != nl_ver_num) exit(1);
Diffstat (limited to 'lib')
-rw-r--r--lib/Makefile.am3
-rw-r--r--lib/version.c36
2 files changed, 38 insertions, 1 deletions
diff --git a/lib/Makefile.am b/lib/Makefile.am
index aee8d0f..9e5efd8 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -17,7 +17,8 @@ lib_LTLIBRARIES = \
libnl_3_la_SOURCES = \
addr.c attr.c cache.c cache_mngr.c cache_mngt.c data.c \
- error.c handlers.c msg.c nl.c object.c socket.c utils.c
+ error.c handlers.c msg.c nl.c object.c socket.c utils.c \
+ version.c
libnl_genl_3_la_LIBADD = libnl-3.la
libnl_genl_3_la_SOURCES = \
diff --git a/lib/version.c b/lib/version.c
new file mode 100644
index 0000000..0dcafa0
--- /dev/null
+++ b/lib/version.c
@@ -0,0 +1,36 @@
+/*
+ * lib/version.c Run-time version information
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation version 2.1
+ * of the License.
+ *
+ * Copyright (c) 2003-2012 Thomas Graf <tgraf@suug.ch>
+ */
+
+/**
+ * @ingroup core
+ * @defgroup utils Utilities
+ *
+ * Run-time version information
+ *
+ * @{
+ */
+
+
+/**
+ * @name Run-time version information
+ * @{
+ */
+
+#include <netlink/version.h>
+
+const int nl_ver_num = LIBNL_VER_NUM;
+const int nl_ver_maj = LIBNL_VER_MAJ;
+const int nl_ver_min = LIBNL_VER_MIN;
+const int nl_ver_mic = LIBNL_VER_MIC;
+
+/** @} */
+
+/** @} */