]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- Redefine internal minievent symbols to unique symbols that helps
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 4 Nov 2014 14:04:37 +0000 (14:04 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 4 Nov 2014 14:04:37 +0000 (14:04 +0000)
  linking on platforms where the linker leaks names across modules.

git-svn-id: file:///svn/unbound/trunk@3252 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
util/mini_event.h
util/winsock_event.h

index 47e56497337eab302434e196c7f0e64ae11305eb..6f522369361f4d48333d55bb5e1a54316b3e5244 100644 (file)
@@ -1,6 +1,8 @@
 4 November 2014: Wouter
        - Add ub_ctx_add_ta_autr function to add a RFC5011 automatically
          tracked trust anchor to libunbound.
+       - Redefine internal minievent symbols to unique symbols that helps
+         linking on platforms where the linker leaks names across modules.
 
 27 October 2014: Wouter
        - Disabled use of SSLv3 in remote-control and ssl-upstream.
index 58bbc8073938425b70c36e21a4cfc7849aa9b59b..1a5bcb445ae0e3a9658dcb0ab58a28540d81acdb 100644 (file)
 #define HAVE_EVENT_BASE_FREE
 #endif 
 
+/* redefine to use our own namespace so that on platforms where
+ * linkers crosslink library-private symbols with other symbols, it works */
+#define event_init minievent_init
+#define event_get_version minievent_get_version
+#define event_get_method minievent_get_method
+#define event_base_dispatch minievent_base_dispatch
+#define event_base_loopexit minievent_base_loopexit
+#define event_base_free minievent_base_free
+#define event_set minievent_set
+#define event_base_set minievent_base_set
+#define event_add minievent_add
+#define event_del minievent_del
+#define signal_add minisignal_add
+#define signal_del minisignal_del
+
 /** event timeout */
 #define EV_TIMEOUT     0x01
 /** event fd readable */
index 40892c14b1c098c6c09ee933691d41e6bf5fa90b..f6426574347b3a45f6051a817f602441acee3ac5 100644 (file)
 #define HAVE_EVENT_BASE_FREE
 #endif
 
+/* redefine the calls to different names so that there is no name
+ * collision with other code that uses libevent names. (that uses libunbound)*/
+#define event_init winsockevent_init
+#define event_get_version winsockevent_get_version
+#define event_get_method winsockevent_get_method
+#define event_base_dispatch winsockevent_base_dispatch
+#define event_base_loopexit winsockevent_base_loopexit
+#define event_base_free winsockevent_base_free
+#define event_set winsockevent_set
+#define event_base_set winsockevent_base_set
+#define event_add winsockevent_add
+#define event_del winsockevent_del
+#define signal_add winsocksignal_add
+#define signal_del winsocksignal_del
+
 /** event timeout */
 #define EV_TIMEOUT      0x01
 /** event fd readable */