r19507: Merge my DSO fixes branch. Building Samba's libraries as shared libraries
authorJelmer Vernooij <jelmer@samba.org>
Sun, 29 Oct 2006 17:40:19 +0000 (17:40 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 19:24:41 +0000 (14:24 -0500)
works again now, by specifying --enable-dso to configure.
(This used to be commit 7a01235067a4800b07b8919a6a475954bfb0b04c)

34 files changed:
.bzrignore
source4/auth/auth.c
source4/auth/config.mk
source4/auth/gensec/config.mk
source4/auth/gensec/socket.c
source4/build/m4/check_ld.m4
source4/build/smb_build/makefile.pm
source4/configure.ac
source4/dsdb/samdb/ldb_modules/config.mk
source4/dynconfig.c
source4/dynconfig.h
source4/dynconfig.mk
source4/lib/ldb/common/ldb_modules.c
source4/lib/ldb/modules/ldb_map.c
source4/libcli/ldap/ldap_client.c
source4/librpc/config.mk
source4/main.mk
source4/ntptr/config.mk
source4/ntvfs/posix/config.mk
source4/ntvfs/posix/pvfs_xattr.c
source4/param/util.c
source4/rpc_server/config.mk
source4/script/tests/selftest.sh
source4/smbd/config.mk
source4/torture/auth/ntlmssp.c
source4/torture/auth/pac.c
source4/torture/config.mk
source4/torture/ldap/common.c
source4/torture/local/config.mk
source4/torture/rap/rap.c
source4/torture/raw/search.c
source4/torture/rpc/testjoin.c
source4/torture/util_smb.c
source4/winbind/config.mk

index 6f04c26603816cf74d3f47407df66712be098b5a..30535bffb6f3e8b33fccadb5debeee6bcddaec40 100644 (file)
@@ -1,3 +1,4 @@
+source/lib/gencache/gencache.h
 source/lib/ldb/bin
 *.pc
 autom4te.cache
index f79e2f7bbded602b5d830469ee60f51839c28102..9100891d5248d0dfb9c3327a06bb2fa39d3275f8 100644 (file)
@@ -51,7 +51,7 @@ BOOL auth_challenge_may_be_modified(struct auth_context *auth_ctx)
  Try to get a challenge out of the various authentication modules.
  Returns a const char of length 8 bytes.
 ****************************************************************************/
-NTSTATUS auth_get_challenge(struct auth_context *auth_ctx, const uint8_t **_chal)
+_PUBLIC_ NTSTATUS auth_get_challenge(struct auth_context *auth_ctx, const uint8_t **_chal)
 {
        NTSTATUS nt_status;
        struct auth_method_context *method;
index d692115321ddf1bc0e7d1bcd3cd6f19caf452af6..968072b918c166da770226125e30a530ff593f40 100644 (file)
@@ -65,7 +65,9 @@ OBJ_FILES = pam_errors.o
 
 #######################
 # Start SUBSYSTEM auth
-[SUBSYSTEM::auth]
+[LIBRARY::auth]
+VERSION = 0.0.1
+SO_VERSION = 0
 PUBLIC_HEADERS = auth.h
 PUBLIC_PROTO_HEADER = auth_proto.h
 OBJ_FILES = \
index cb8b2edc85eb6bc209171b5714dfac5f548f3528..84947785db3ccebfe7b913b5f07fe5e57b4ba278 100644 (file)
@@ -48,7 +48,7 @@ PUBLIC_DEPENDENCIES = SASL auth
 SUBSYSTEM = gensec
 INIT_FUNCTION = gensec_spnego_init
 PRIVATE_PROTO_HEADER = spnego_proto.h
-PRIVATE_DEPENDENCIES = ASN1_UTIL
+PRIVATE_DEPENDENCIES = ASN1_UTIL GENSEC_SOCKET
 OBJ_FILES = spnego.o \
                        spnego_parse.o
 # End MODULE gensec_spnego
@@ -82,7 +82,7 @@ OBJ_FILES = \
 [SUBSYSTEM::GENSEC_SOCKET]
 OBJ_FILES = \
                socket.o
-PUBLIC_DEPENDENCIES = samba-socket
+PUBLIC_DEPENDENCIES = samba-socket LIBPACKET
 #PUBLIC_DEPENDENCIES =  gensec
 #
 # End SUBSYSTEM GENSEC_SOCKET
index cf7b196f9d75d71117cc5abaae98139537751567..11db252e172235fb78086617cf77b756da5de6f1 100644 (file)
@@ -60,7 +60,7 @@ static NTSTATUS gensec_socket_init_fn(struct socket_context *sock)
 
 /* These functions are for use here only (public because SPNEGO must
  * use them for recursion) */
-NTSTATUS gensec_wrap_packets(struct gensec_security *gensec_security, 
+_PUBLIC_ NTSTATUS gensec_wrap_packets(struct gensec_security *gensec_security, 
                             TALLOC_CTX *mem_ctx, 
                             const DATA_BLOB *in, 
                             DATA_BLOB *out,
index 515c720c069dfe60862009a0453839b64cdd0825..e44c29d0e3332313c5a68872f04936acc111425d 100644 (file)
@@ -157,6 +157,7 @@ AC_MSG_RESULT([$SHLD])
 AC_MSG_CHECKING([SHLD_FLAGS])
 AC_MSG_RESULT([$SHLD_FLAGS])
 
+AC_DEFINE_UNQUOTED(SHLIBEXT, "$SHLIBEXT", [Shared library extension])
 AC_MSG_CHECKING([SHLIBEXT])
 AC_MSG_RESULT([$SHLIBEXT])
 AC_MSG_CHECKING([SONAMEFLAG])
index 30ebf962e08ac77fc0e08bbe2b1925a767af0482..259256b9b5c2e55ef69b8e52ce2166a90228a910 100644 (file)
@@ -123,7 +123,7 @@ SHELL=$self->{config}->{SHELL}
 PERL=$self->{config}->{PERL}
 
 CPP=$self->{config}->{CPP}
-CPPFLAGS=$builddir_headers-I\$(srcdir)/include -I\$(srcdir) -I\$(srcdir)/lib -D_SAMBA_BUILD_=4 -DHAVE_CONFIG_H $self->{config}->{CPPFLAGS}
+CPPFLAGS=$builddir_headers-I\$(srcdir)/include -I\$(srcdir) -I\$(srcdir)/lib -I\$(srcdir)/lib/replace -D_SAMBA_BUILD_=4 -DHAVE_CONFIG_H $self->{config}->{CPPFLAGS}
 
 CC=$self->{config}->{CC}
 CFLAGS=$self->{config}->{CFLAGS} \$(CPPFLAGS)
index 548db4d720204ac546aed71a17a35cc64e8a085c..be9f627d69eddd6c00eb34a2dcef0ee3f8508ac9 100644 (file)
@@ -32,7 +32,6 @@ m4_include(lib/ldb/libldb.m4)
 m4_include(lib/tls/config.m4)
 m4_include(lib/events/config.m4)
 
-dnl disabled until we support external heimdal again
 dnl m4_include(auth/kerberos/config.m4)
 
 m4_include(auth/gensec/config.m4)
@@ -51,6 +50,15 @@ m4_include(lib/appweb/config.m4)
 m4_include(nsswitch/config.m4)
 m4_include(libcli/config.m4)
 
+dnl disabled until we support external heimdal again
+AC_ARG_ENABLE(dso,
+[  --enable-dso                Enable building internal libraries as DSO's (experimental)],
+[ if test x$enable_dso != xno; then
+       BLDSHARED=true
+  fi], 
+[BLDSHARED=false])
+
+
 #################################################
 # add *_CFLAGS only for the real build
 CFLAGS="${CFLAGS} ${DEVELOPER_CFLAGS}"
index 725d98ac7e78e992cf8c0d3b8f914c1856ccc37b..bf286b4828dc5002d736e3e534b0048157635730 100644 (file)
@@ -28,7 +28,7 @@ OBJ_FILES = \
 [MODULE::ldb_samba3sam]
 SUBSYSTEM = ldb
 INIT_FUNCTION = ldb_samba3sam_module_init
-PRIVATE_DEPENDENCIES = LIBTALLOC
+PRIVATE_DEPENDENCIES = LIBTALLOC ldb_map
 OBJ_FILES = \
                samba3sam.o
 #
index 34a8cbec9928076619213ede5229d0b73f0ae226..4517a4f551b28d4eb44c7aa016ab5a016607c549 100644 (file)
@@ -61,9 +61,6 @@ _PUBLIC_ const char *dyn_DATADIR = DATADIR;
 
 _PUBLIC_ const char *dyn_MODULESDIR = MODULESDIR;
 
-/** Shared library extension */
-_PUBLIC_ const char *dyn_SHLIBEXT = SHLIBEXT;
-
 /**
  * @brief Directory holding lock files.
  *
index c0854b99512cde6aee3bc0dd6c10c2d25f5b2cff..d3badc73e593f002ad11e6f9760b2e06c176db07 100644 (file)
@@ -32,7 +32,6 @@ extern const char *dyn_LOGFILEBASE;
 extern const char *dyn_LMHOSTSFILE;
 extern const char *dyn_DATADIR;
 extern const char *dyn_MODULESDIR;
-extern const char *dyn_SHLIBEXT;
 extern const char *dyn_LOCKDIR; 
 extern const char *dyn_PIDDIR;
 extern const char *dyn_PRIVATE_DIR;
index c17e2638adaf9b7eb6ee7479c33841f9ba92b91d..2172ca31d81ed5aa37f8985bd3c0090a1ed4b270 100644 (file)
@@ -6,7 +6,7 @@ OBJ_FILES = dynconfig.o
 PATH_FLAGS = -DCONFIGFILE=\"$(CONFIGFILE)\" \
         -DBINDIR=\"$(BINDIR)\" -DLMHOSTSFILE=\"$(LMHOSTSFILE)\" \
         -DLOCKDIR=\"$(LOCKDIR)\" -DPIDDIR=\"$(PIDDIR)\" -DDATADIR=\"$(DATADIR)\" \
-        -DLOGFILEBASE=\"$(LOGFILEBASE)\" -DSHLIBEXT=\"$(SHLIBEXT)\" \
+        -DLOGFILEBASE=\"$(LOGFILEBASE)\" \
         -DCONFIGDIR=\"$(CONFIGDIR)\" -DNCALRPCDIR=\"$(NCALRPCDIR)\" \
         -DSWATDIR=\"$(SWATDIR)\" -DSERVICESDIR=\"$(SERVICESDIR)\" \
         -DPRIVATE_DIR=\"$(PRIVATEDIR)\" \
index ada3d9993098a72568b24fb99a005af257c9af0c..f1138afd81f85a14f286b3f238ce2ab97ae37d3d 100644 (file)
@@ -207,17 +207,26 @@ int ldb_try_load_dso(struct ldb_context *ldb, const char *name)
        char *path;
        void *handle;
        int (*init_fn) (void);
+       char *modulesdir;
 
 #ifdef HAVE_DLOPEN
+       if (getenv("LD_LDB_MODULE_PATH") != NULL) {
+               modulesdir = talloc_strdup(ldb, getenv("LD_LDB_MODULE_PATH"));
+       } else {
 #ifdef _SAMBA_BUILD_
-       path = talloc_asprintf(ldb, "%s/ldb/%s.%s", dyn_MODULESDIR, name, dyn_SHLIBEXT);
+               modulesdir = talloc_asprintf(ldb, "%s/ldb", dyn_MODULESDIR);
 #else
-       path = talloc_asprintf(ldb, "%s/%s.%s", MODULESDIR, name, SHLIBEXT);
+               modulesdir = talloc_strdup(ldb, MODULESDIR);
 #endif
+       }
+
+       path = talloc_asprintf(ldb, "%s/%s.%s", modulesdir, name, SHLIBEXT);
+
+       talloc_free(modulesdir);
 
        ldb_debug(ldb, LDB_DEBUG_TRACE, "trying to load %s from %s\n", name, path);
 
-       handle = dlopen(path, 0);
+       handle = dlopen(path, RTLD_NOW);
        if (handle == NULL) {
                ldb_debug(ldb, LDB_DEBUG_WARNING, "unable to load %s from %s: %s\n", name, path, dlerror());
                return -1;
index 1cdeeeb2934729ea41c34a1066f2ff0195ad11d6..9146f2d863bea181d8267df69e721e4abb18ec83 100644 (file)
@@ -1296,13 +1296,13 @@ static int map_init_maps(struct ldb_module *module, struct ldb_map_context *data
 }
 
 /* Copy the list of provided module operations. */
-struct ldb_module_ops ldb_map_get_ops(void)
+_PUBLIC_ struct ldb_module_ops ldb_map_get_ops(void)
 {
        return map_ops;
 }
 
 /* Initialize global private data. */
-int ldb_map_init(struct ldb_module *module, const struct ldb_map_attribute *attrs, 
+_PUBLIC_ int ldb_map_init(struct ldb_module *module, const struct ldb_map_attribute *attrs, 
                 const struct ldb_map_objectclass *ocls,
                 const char * const *wildcard_attributes,
                 const char *name)
index 7bb4d0c79a1b840454cc012ad0c7560579ac39bd..2c2cd0dd6620471b904caff12641d466c5a40a0d 100644 (file)
@@ -432,7 +432,7 @@ static void ldap_connect_recv_unix_conn(struct composite_context *ctx)
        ldap_connect_got_sock(state->ctx, conn);
 }
 
-NTSTATUS ldap_connect_recv(struct composite_context *ctx)
+_PUBLIC_ NTSTATUS ldap_connect_recv(struct composite_context *ctx)
 {
        NTSTATUS status = composite_wait(ctx);
        talloc_free(ctx);
index cf58e40c2666ce23a82fdd734f756a0b100a64b5..eeb4506219e905a6c73e59a25a83e2f527e8b273 100644 (file)
@@ -665,7 +665,7 @@ PUBLIC_DEPENDENCIES = dcerpc NDR_DFS EJSRPC
 INIT_FUNCTION = ejs_init_drsuapi
 OBJ_FILES = gen_ndr/ndr_drsuapi_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_DRSUAPI EJSRPC RPC_EJS_MISC
+PUBLIC_DEPENDENCIES = dcerpc NDR_DRSUAPI EJSRPC RPC_EJS_MISC RPC_EJS_SAMR
 
 [MODULE::RPC_EJS_SPOOLSS]
 INIT_FUNCTION = ejs_init_spoolss
index 378152c40f06eb9b8b9f24e6111de84c2795c0ca..5b9cda6c938ac98e3862502b266b4aa182eadaec 100644 (file)
@@ -408,4 +408,3 @@ configure:
 clean::
        @echo Removing dependency files
        @find . -name \*.d -o -name \*.hd | xargs rm -f
-
index 84e6aaffe253989af2cce9e2ea6206065ec8c366..a80002662e53904ce933d5d1f8e7c45de8be2ab4 100644 (file)
@@ -14,7 +14,7 @@ PUBLIC_DEPENDENCIES = \
 
 ################################################
 # Start SUBSYSTEM ntptr
-[SUBSYSTEM::ntptr]
+[LIBRARY::ntptr]
 PRIVATE_PROTO_HEADER = ntptr_proto.h
 OBJ_FILES = \
                ntptr_base.o \
index ed182d9a98770d950bdc65a283109ef38a6e9cdb..5fd6e58d2e1f8e37f3af28861c4b2c74bebd1581 100644 (file)
@@ -2,9 +2,10 @@
 # Start MODULE pvfs_acl_xattr
 [MODULE::pvfs_acl_xattr]
 INIT_FUNCTION = pvfs_acl_xattr_init 
-SUBSYSTEM = ntvfs
+SUBSYSTEM = ntvfs_posix
 OBJ_FILES = \
                pvfs_acl_xattr.o
+PRIVATE_DEPENDENCIES = NDR_XATTR
 # End MODULE pvfs_acl_xattr
 ################################################
 
@@ -52,7 +53,7 @@ OBJ_FILES = \
                pvfs_notify.o \
                xattr_system.o \
                xattr_tdb.o
-PRIVATE_DEPENDENCIES = pvfs_acl_xattr pvfs_acl_nfs4
+#PRIVATE_DEPENDENCIES = pvfs_acl_xattr pvfs_acl_nfs4
 PUBLIC_DEPENDENCIES = NDR_XATTR WRAP_XATTR BLKID ntvfs_common MESSAGING
 # End MODULE ntvfs_posix
 ################################################
index ab2f3fef6c5927054ec643e4bb279d02708c5274..fcc2d351c97914e3452e1108402e8baf74cdefb6 100644 (file)
@@ -101,7 +101,7 @@ NTSTATUS pvfs_xattr_unlink_hook(struct pvfs_state *pvfs, const char *fname)
 /*
   load a NDR structure from a xattr
 */
-NTSTATUS pvfs_xattr_ndr_load(struct pvfs_state *pvfs,
+_PUBLIC_ NTSTATUS pvfs_xattr_ndr_load(struct pvfs_state *pvfs,
                             TALLOC_CTX *mem_ctx,
                             const char *fname, int fd, const char *attr_name,
                             void *p, void *pull_fn)
@@ -126,7 +126,7 @@ NTSTATUS pvfs_xattr_ndr_load(struct pvfs_state *pvfs,
 /*
   save a NDR structure into a xattr
 */
-NTSTATUS pvfs_xattr_ndr_save(struct pvfs_state *pvfs,
+_PUBLIC_ NTSTATUS pvfs_xattr_ndr_save(struct pvfs_state *pvfs,
                             const char *fname, int fd, const char *attr_name, 
                             void *p, void *push_fn)
 {
index af97903277f70c15a8606c10ed817dd3af4578c4..2453094798b5028e8f9100361b9f4bf3d4c2bd55 100644 (file)
@@ -169,7 +169,10 @@ _PUBLIC_ char *smbd_tmp_path(TALLOC_CTX *mem_ctx, const char *name)
 
 static char *modules_path(TALLOC_CTX* mem_ctx, const char *name)
 {
-       return talloc_asprintf(mem_ctx, "%s/%s", lp_modulesdir(), name);
+       const char *env_moduledir = getenv("LD_SAMBA_MODULE_PATH");
+       return talloc_asprintf(mem_ctx, "%s/%s", 
+                                                  env_moduledir?env_moduledir:lp_modulesdir(), 
+                                                  name);
 }
 
 /**
index 23245218a4299d7a3c7abff4a4a550a7a974f44b..d1c2bf8d922db861ef552be79cc149dd913372f5 100644 (file)
@@ -141,7 +141,8 @@ PUBLIC_DEPENDENCIES = \
                SAMDB \
                DCERPC_COMMON \
                NDR_LSA \
-               LIBCLI_AUTH
+               LIBCLI_AUTH \
+               NDR_DSSETUP
 # End MODULE dcerpc_lsa
 ################################################
 
index 48db3eccf2bc417e14d119f2d874e5ee5f727ac0..6d9976699591d9aba858b2e91d71615cb91fc6e4 100755 (executable)
@@ -38,6 +38,12 @@ else
 fi
 export TLS_ENABLED
 
+LD_LDB_MODULE_PATH=$OLD_PWD/bin/modules/ldb
+export LD_LDB_MODULE_PATH
+
+LD_SAMBA_MODULE_PATH=$OLD_PWD/bin/modules
+export LD_SAMBA_MODULE_PATH
+
 LD_LIBRARY_PATH=$OLD_PWD/bin:$LD_LIBRARY_PATH
 export LD_LIBRARY_PATH
 
index 569a1f0d3803e60f82b76c90cf6c687476276068..918288f0fe9821461c70f5a895b496e955c10359 100644 (file)
@@ -12,7 +12,7 @@ PUBLIC_DEPENDENCIES = \
 
 #######################
 # Start SUBSERVICE
-[SUBSYSTEM::service]
+[LIBRARY::service]
 PRIVATE_PROTO_HEADER = service_proto.h
 OBJ_FILES = \
                service.o \
index ff111faf85e3eb5953f30bd8bf904dca38fa3ebb..b6d1ccee6258b859cdb7f803ee6d634969ce9955 100644 (file)
@@ -118,7 +118,7 @@ static bool torture_ntlmssp_self_check(struct torture_context *tctx)
        return true;
 }
 
-struct torture_suite *torture_ntlmssp(TALLOC_CTX *mem_ctx)
+_PUBLIC_ struct torture_suite *torture_ntlmssp(TALLOC_CTX *mem_ctx)
 {
        struct torture_suite *suite = torture_suite_create(mem_ctx, 
                                                                                                           "NTLMSSP");
index fffec86c0d1696a04f722daeddb22905ad267b43..629b573ec3a8d6067564ecfb3c275c40b7dc9434 100644 (file)
@@ -626,7 +626,7 @@ static bool torture_pac_saved_check(struct torture_context *tctx)
        return true;
 }
 
-struct torture_suite *torture_pac(TALLOC_CTX *mem_ctx)
+_PUBLIC_ struct torture_suite *torture_pac(TALLOC_CTX *mem_ctx)
 {
        struct torture_suite *suite = torture_suite_create(mem_ctx, "PAC");
 
index 1edaa694475f71c6ace09cb06608e167ad7fdca6..630c557d28aa6119144804198503112d0cb08e00 100644 (file)
@@ -14,6 +14,7 @@ PUBLIC_DEPENDENCIES = \
 
 [SUBSYSTEM::TORTURE_UTIL]
 OBJ_FILES = util.o util_smb.o
+PRIVATE_DEPENDENCIES = LIBCLI_RAW
 PUBLIC_PROTO_HEADER = util.h
 PUBLIC_DEPENDENCIES = POPT_CREDENTIALS
 
@@ -50,7 +51,8 @@ OBJ_FILES = \
                basic/properties.o 
 PUBLIC_DEPENDENCIES = \
                LIBCLI_SMB POPT_CREDENTIALS \
-               TORTURE_UTIL
+               TORTURE_UTIL LIBCLI_RAW
+PRIVATE_DEPENDENCIES = TORTURE_RAW
 # End SUBSYSTEM TORTURE_BASIC
 #################################
 
@@ -91,6 +93,7 @@ OBJ_FILES = \
 PUBLIC_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_LSA LIBCLI_SMB_COMPOSITE \
                POPT_CREDENTIALS
+PRIVATE_DEPENDENCIES = TORTURE_UTIL
 # End SUBSYSTEM TORTURE_RAW
 #################################
 
@@ -152,6 +155,7 @@ PUBLIC_DEPENDENCIES = \
                RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_ROT RPC_NDR_DSSETUP \
                RPC_NDR_REMACT RPC_NDR_OXIDRESOLVER WB_HELPER LIBSAMBA-NET \
                LIBCLI_AUTH POPT_CREDENTIALS
+PRIVATE_DEPENDENCIES = TORTURE_LDAP TORTURE_UTIL TORTURE_RAP
 
 #################################
 # Start SUBSYSTEM TORTURE_RAP
@@ -162,6 +166,7 @@ PRIVATE_PROTO_HEADER = \
                rap/proto.h
 OBJ_FILES = \
                rap/rap.o
+PRIVATE_DEPENDENCIES = TORTURE_UTIL
 PUBLIC_DEPENDENCIES = \
                LIBCLI_SMB
 # End SUBSYSTEM TORTURE_RAP
@@ -189,6 +194,7 @@ include local/config.mk
 [MODULE::TORTURE_NBENCH]
 SUBSYSTEM = torture
 INIT_FUNCTION = torture_nbench_init
+PRIVATE_DEPENDENCIES = TORTURE_UTIL 
 PRIVATE_PROTO_HEADER = \
                nbench/proto.h
 OBJ_FILES = \
@@ -232,6 +238,7 @@ OBJ_FILES = \
                nbt/nbt.o
 PUBLIC_DEPENDENCIES = \
                LIBCLI_SMB LIBCLI_NBT LIBCLI_DGRAM LIBCLI_WREPL
+PRIVATE_DEPENDENCIES = torture_rpc
 # End SUBSYSTEM TORTURE_NBT
 #################################
 
@@ -255,6 +262,7 @@ OBJ_FILES = \
 PUBLIC_DEPENDENCIES = \
                LIBSAMBA-NET \
                POPT_CREDENTIALS
+PRIVATE_DEPENDENCIES = torture_rpc
 # End SUBSYSTEM TORTURE_NET
 #################################
 
index 5b28e825f2b2b5b1265c3f2f161ecf3504b67570..071f0faa2da9e75e5fb6b8530c60ce9a04116a0d 100644 (file)
@@ -39,7 +39,7 @@ NTSTATUS torture_ldap_bind(struct ldap_connection *conn, const char *userdn, con
        return status;
 }
 
-NTSTATUS torture_ldap_bind_sasl(struct ldap_connection *conn, 
+_PUBLIC_ NTSTATUS torture_ldap_bind_sasl(struct ldap_connection *conn, 
                                struct cli_credentials *creds)
 {
         NTSTATUS status;
@@ -54,7 +54,7 @@ NTSTATUS torture_ldap_bind_sasl(struct ldap_connection *conn,
 }
 
 /* open a ldap connection to a server */
-NTSTATUS torture_ldap_connection(TALLOC_CTX *mem_ctx, struct ldap_connection **conn, 
+_PUBLIC_ NTSTATUS torture_ldap_connection(TALLOC_CTX *mem_ctx, struct ldap_connection **conn, 
                                const char *url)
 {
        NTSTATUS status;
index 9917dcb128a2e0dcf511395903c2fb61672e257b..9e1fe32147a44312b8812eb63ae61498a769865e 100644 (file)
@@ -38,7 +38,9 @@ PUBLIC_DEPENDENCIES = \
                registry \
                LIBCRYPTO \
                POPT_CREDENTIALS \
-               TORTURE_UI
+               TORTURE_UI \
+               TORTURE_AUTH \
+               TORTURE_UTIL
 # End SUBSYSTEM TORTURE_LOCAL
 #################################
 
index f05183a0336b762b78274c4423ac22e5e8f1a5a1..682bfdb0eb0c8feb9c3a9ee69cc9adee76de1a03 100644 (file)
@@ -419,7 +419,7 @@ static BOOL test_netserverenum(struct smbcli_tree *tree)
        return True;
 }
 
-NTSTATUS smbcli_rap_netservergetinfo(struct smbcli_tree *tree,
+_PUBLIC_ NTSTATUS smbcli_rap_netservergetinfo(struct smbcli_tree *tree,
                                     TALLOC_CTX *mem_ctx,
                                     struct rap_WserverGetInfo *r)
 {
index 26b542c27afb1a4a883ea0e60fe4379096724e46..56a496632866dfb4949b3388a738ae1be5caa77b 100644 (file)
@@ -43,7 +43,7 @@ static BOOL single_search_callback(void *private, union smb_search_data *file)
 /*
   do a single file (non-wildcard) search 
 */
-NTSTATUS torture_single_search(struct smbcli_state *cli, 
+_PUBLIC_ NTSTATUS torture_single_search(struct smbcli_state *cli, 
                               TALLOC_CTX *mem_ctx,
                               const char *pattern,
                               enum smb_search_level level,
index 16060851b25cdd6fbb0385616afea98eedbce684..83ecc4b4c99c2e5f2ce6c87e6c39ef80811ffd7c 100644 (file)
@@ -280,7 +280,7 @@ failed:
 }
 
 
-struct test_join *torture_join_domain(const char *machine_name, 
+_PUBLIC_ struct test_join *torture_join_domain(const char *machine_name, 
                                      uint32_t acct_flags,
                                      struct cli_credentials **machine_credentials)
 {
@@ -462,7 +462,7 @@ NTSTATUS torture_leave_ads_domain(TALLOC_CTX *mem_ctx, struct libnet_JoinDomain
   leave the domain, deleting the machine acct
 */
 
-void torture_leave_domain(struct test_join *join)
+_PUBLIC_ void torture_leave_domain(struct test_join *join)
 {
        struct samr_DeleteUser d;
        NTSTATUS status;
@@ -491,7 +491,7 @@ void torture_leave_domain(struct test_join *join)
 /*
   return the dom sid for a test join
 */
-const struct dom_sid *torture_join_sid(struct test_join *join)
+_PUBLIC_ const struct dom_sid *torture_join_sid(struct test_join *join)
 {
        return join->dom_sid;
 }
index 0fee43f6023825dd88d492353af164f21927f6ba..9473ab018bc9b88a247edeb9dbec414d35cb767f 100644 (file)
@@ -462,7 +462,7 @@ NTSTATUS torture_check_ea(struct smbcli_state *cli,
        return NT_STATUS_EA_CORRUPT_ERROR;
 }
 
-bool torture_open_connection_share(TALLOC_CTX *mem_ctx,
+_PUBLIC_ bool torture_open_connection_share(TALLOC_CTX *mem_ctx,
                                   struct smbcli_state **c, 
                                   const char *hostname, 
                                   const char *sharename,
index 3ecf489a93d086099a9d42ba13dce013a1b70baf..6b63e090ee6fd86a62c04d031df6977795e7eb08 100644 (file)
@@ -31,7 +31,8 @@ PUBLIC_DEPENDENCIES = \
                process_model \
                RPC_NDR_LSA \
                RPC_NDR_SAMR \
-               PAM_ERRORS
+               PAM_ERRORS \
+               LIBCLI_LDAP
 # End SUBSYSTEM WINBIND
 #######################