Update to use smb_register_passdb()
authorJelmer Vernooij <jelmer@samba.org>
Fri, 15 Nov 2002 17:49:47 +0000 (17:49 +0000)
committerJelmer Vernooij <jelmer@samba.org>
Fri, 15 Nov 2002 17:49:47 +0000 (17:49 +0000)
(This used to be commit b10541b71ba288783976e8c124b6667b7df3b12d)

examples/pdb/README
examples/pdb/pdb_test.c

index 561473129b00adb9c644524691ea49f9cbbf903b..7fe45248824e1e6913211b1dde64cdc9e0de5a7a 100644 (file)
@@ -1,46 +1,7 @@
 README for Samba Password Database (PDB) examples
 ====================================================
-8-8-2002 Jelmer Vernooij <jelmer@samba.org>
-
-Added mysql and xml modules. See README in xml/ and mysql/ for details.
-
-21-6-2002 Stefan (metze) Metzmacher <metze@metzemix.de>
-
-I have added an interface versioning.
-
-Every module MUST have a pdb_version() function.
-
-this is defined in include/passdb.h:
-#define PDB_MODULE_VERSIONING_MAGIC \
-int pdb_version(void)\
-{\
-       return PASSDB_INTERFACE_VERSION;\
-}
-
-You MUST add this line inside a module:
-PDB_MODULE_VERSIONING_MAGIC
-
-21-6-2002 Stefan (metze) Metzmacher <metze@metzemix.de>
-
-The pdb_interface was changed:
-
-this function are deleted:
-static BOOL testsam_getsampwrid (struct pdb_methods *methods, SAM_ACCOUNT *user, uint32 rid)
-
-this function are added:
-static BOOL testsam_getsampwsid (struct pdb_methods *methods, SAM_ACCOUNT *user, DOM_SID sid)
-
-In the SAM_ACCOUNT struct:
-
-this fields are deleted:
-uint32 user_rid;
-uint32 group_rid;
-
-this fields are added:
-DOM_SID user_sid;
-DOM_SID group_sid; 
-
-15-2-2002 Jelmer Vernooij <jelmer@nl.linux.org>
+Jelmer Vernooij <jelmer@nl.linux.org>
+Stefan (metze) Metzmacher <metze@metzemix.de>
 
 The pdb_test.c file in this directory contains a very basic example of 
 a pdb plugin. It just prints the name of the function that is executed using
@@ -50,6 +11,5 @@ future too..
 To debug passdb backends, try to run gdb on the 'pdbedit' executable. That's really much easier than restarting smbd constantly and attaching with your debugger.
 
 New passdb plugins should go into the samba lib directory, (/usr/lib/samba/ for
-most distributions) and should be prefixed with 'pdb_'. An example would be: 
-/usr/lib/samba/pdb_test.so
+most distributions). An example would be: /usr/lib/samba/test.so
 
index c5ba094e42c7646033f15247396478763e313b58..f5fb57ddb20acc7c2181595c567672b3cfd67e80 100644 (file)
@@ -25,9 +25,6 @@ static int testsam_debug_level = DBGC_ALL;
 #undef DBGC_CLASS
 #define DBGC_CLASS testsam_debug_level
 
-/* define the version of the passdb interface */ 
-PDB_MODULE_VERSIONING_MAGIC
-
 /***************************************************************
  Start enumeration of the passwd list.
 ****************************************************************/
@@ -107,7 +104,7 @@ static NTSTATUS testsam_add_sam_account (struct pdb_methods *methods, SAM_ACCOUN
        return NT_STATUS_NOT_IMPLEMENTED;
 }
 
-NTSTATUS pdb_init(PDB_CONTEXT *pdb_context, PDB_METHODS **pdb_method, const char *location)
+NTSTATUS testsam_init(PDB_CONTEXT *pdb_context, PDB_METHODS **pdb_method, const char *location)
 {
        NTSTATUS nt_status;
 
@@ -141,3 +138,12 @@ NTSTATUS pdb_init(PDB_CONTEXT *pdb_context, PDB_METHODS **pdb_method, const char
 
        return NT_STATUS_OK;
 }
+
+int init_module(void);
+
+int init_module() {
+       if(smb_register_passdb("testsam", testsam_init, PASSDB_INTERFACE_VERSION))
+               return 0;
+
+       return 1;
+}