summaryrefslogtreecommitdiff
path: root/source4/include
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2003-11-25 03:15:26 +0000
committerJelmer Vernooij <jelmer@samba.org>2003-11-25 03:15:26 +0000
commita846e592058726b670e40505493a4668bd856186 (patch)
treeef949e82c7bbd5e58dffb11f75ecababcf10d369 /source4/include
parent97dbe926ecbc71a8b0f423c07b09140f44647598 (diff)
downloadsamba-a846e592058726b670e40505493a4668bd856186.tar.gz
samba-a846e592058726b670e40505493a4668bd856186.tar.bz2
samba-a846e592058726b670e40505493a4668bd856186.zip
CVS: ----------------------------------------------------------------------
CVS: Enter Log. Lines beginning with `CVS:' are removed automatically CVS: CVS: Committing in . CVS: CVS: Modified Files: CVS: Makefile.in configure.in include/includes.h include/ntvfs.h CVS: include/smb.h lib/iconv.c lib/module.c ntvfs/ntvfs_base.c CVS: ntvfs/cifs/vfs_cifs.c ntvfs/ipc/vfs_ipc.c CVS: ntvfs/posix/vfs_posix.c ntvfs/print/vfs_print.c CVS: ntvfs/reference/vfs_ref.c ntvfs/simple/vfs_simple.c CVS: passdb/pdb_interface.c CVS: Added Files: CVS: include/module.h CVS: ---------------------------------------------------------------------- Update to the modules system. Fixed: - get rid of smb_probe_module - merge older updates from 3.0 - introduced register_subsystem() and register_backend() functions - adapt ntvfs and charset to use new register functions - made smb_load_modules() work recursively (e.g. 'preload modules = /usr/lib/samba') - got rid of some old remains Things that still need work: - Did I break tankFS? I don't think so, but I can't test it here :-( - Add 'postload modules = ' (for modules that need to be loaded after fork() in smbd, if applicable) - Convert RPC, auth, passdb, etc to use new register_{subsystem,backend}() functions - Accept wildcards in 'preload modules' option, instead of loading recursively (This used to be commit 7512b9ab1a8b3103f7a6c13f736353c46a26b668)
Diffstat (limited to 'source4/include')
-rw-r--r--source4/include/includes.h3
-rw-r--r--source4/include/module.h30
-rw-r--r--source4/include/ntvfs.h3
-rw-r--r--source4/include/smb.h3
4 files changed, 35 insertions, 4 deletions
diff --git a/source4/include/includes.h b/source4/include/includes.h
index 0f5e73cf56..908d2a4e76 100644
--- a/source4/include/includes.h
+++ b/source4/include/includes.h
@@ -759,11 +759,12 @@ extern int errno;
#include "ntlmssp.h"
#include "auth.h"
-
#include "passdb.h"
#include "session.h"
+#include "module.h"
+
#include "asn_1.h"
#include "popt.h"
diff --git a/source4/include/module.h b/source4/include/module.h
new file mode 100644
index 0000000000..02826595e4
--- /dev/null
+++ b/source4/include/module.h
@@ -0,0 +1,30 @@
+/*
+ Unix SMB/CIFS implementation.
+ Handling of idle/exit events
+ Copyright (C) Jelmer Vernooij 2003
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#ifndef _MODULE_H
+#define _MODULE_H
+
+/* Module support */
+typedef NTSTATUS (*init_module_function) (void);
+
+/* Module that registers a backend for a certain subsystem */
+typedef NTSTATUS (*register_backend_function) (void *data);
+
+#endif /* _MODULE_H */
diff --git a/source4/include/ntvfs.h b/source4/include/ntvfs.h
index 2b1f519b32..b972a4ef99 100644
--- a/source4/include/ntvfs.h
+++ b/source4/include/ntvfs.h
@@ -32,6 +32,9 @@ enum ntvfs_type {NTVFS_DISK, NTVFS_PRINT, NTVFS_IPC};
/* the ntvfs operations structure - contains function pointers to
the backend implementations of each operation */
struct ntvfs_ops {
+ const char *name;
+ enum ntvfs_type type;
+
/* initial setup */
NTSTATUS (*connect)(struct request_context *req, const char *sharename);
NTSTATUS (*disconnect)(struct tcon_context *conn);
diff --git a/source4/include/smb.h b/source4/include/smb.h
index f6a4281e01..e9f09ce0a5 100644
--- a/source4/include/smb.h
+++ b/source4/include/smb.h
@@ -1355,9 +1355,6 @@ typedef struct {
#define DEFAULT_TRUST_ACCOUNT_PASSWORD_LENGTH 14
-/* Module support */
-typedef int (init_module_function) (void);
-
/* a set of flags to control handling of request structures */
#define REQ_CONTROL_PROTECTED (1<<0) /* don't destroy this request */