summaryrefslogtreecommitdiff
path: root/source4/include
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2008-06-17 13:11:29 +1000
committerAndrew Tridgell <tridge@samba.org>2008-06-17 13:11:29 +1000
commit310875e637fd237752770027b28675ed970352dd (patch)
treec89feb3d60d311f064c5e266c11e85aed2e240a8 /source4/include
parent370f95acfc197759f9140876b31ac127d3a0e10c (diff)
downloadsamba-310875e637fd237752770027b28675ed970352dd.tar.gz
samba-310875e637fd237752770027b28675ed970352dd.tar.bz2
samba-310875e637fd237752770027b28675ed970352dd.zip
Change our module code to not use the special symbol name init_module()
Current glibc libraries include a function called init_module(). If we use the same name, then a dlsym() can find the glibc function if the module doesn't have an initialisation function. In ldb, none of our modules have an init_module(), so we end up calling the libc functions with bogus arguments. (This used to be commit 1b0621068998590e7b1e9528b78744dcd2cd5909)
Diffstat (limited to 'source4/include')
-rw-r--r--source4/include/includes.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/source4/include/includes.h b/source4/include/includes.h
index 1a92e46657..df0d8f7713 100644
--- a/source4/include/includes.h
+++ b/source4/include/includes.h
@@ -54,4 +54,10 @@
#define TALLOC_ABORT(reason) smb_panic(reason)
#endif
+/* this needs to be a string which is not in the C library. We
+ previously used "init_module", but that meant that modules which
+ did not define this function ended up calling the C library
+ function init_module() which makes a system call */
+#define SAMBA_INIT_MODULE "samba_init_module"
+
#endif /* _INCLUDES_H */