diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2003-03-27 12:08:46 +0000 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2003-03-27 12:08:46 +0000 |
commit | 11db21cc1c00d63c6b23ec6b3a3bdb48728b2b64 (patch) | |
tree | 5b01c27120ecdfd8a78fa1733c55fe6ecac685c7 /source3/modules/vfs_recycle.c | |
parent | e6df31f14b3fa0a8819b8dfe443eaea009ac9657 (diff) | |
download | samba-11db21cc1c00d63c6b23ec6b3a3bdb48728b2b64.tar.gz samba-11db21cc1c00d63c6b23ec6b3a3bdb48728b2b64.tar.bz2 samba-11db21cc1c00d63c6b23ec6b3a3bdb48728b2b64.zip |
Use the new modules system in VFS. If a module can't be loaded with the
new modules system, we still fall back to the old system.
(This used to be commit cebe8d8b424f10006f2f791a8f086c6c8a7f5d57)
Diffstat (limited to 'source3/modules/vfs_recycle.c')
-rw-r--r-- | source3/modules/vfs_recycle.c | 41 |
1 files changed, 6 insertions, 35 deletions
diff --git a/source3/modules/vfs_recycle.c b/source3/modules/vfs_recycle.c index ba453bad2c..a669d864c6 100644 --- a/source3/modules/vfs_recycle.c +++ b/source3/modules/vfs_recycle.c @@ -87,13 +87,12 @@ static vfs_op_tuple recycle_ops[] = { * * @retval initialised vfs_op_tuple array **/ -vfs_op_tuple *vfs_init(int *vfs_version, struct vfs_ops *def_vfs_ops, +static vfs_op_tuple *recycle_init(const struct vfs_ops *def_vfs_ops, struct smb_vfs_handle_struct *vfs_handle) { TALLOC_CTX *mem_ctx = NULL; DEBUG(10, ("Initializing VFS module recycle\n")); - *vfs_version = SMB_VFS_INTERFACE_VERSION; memcpy(&default_vfs_ops, def_vfs_ops, sizeof(struct vfs_ops)); vfs_recycle_debug_level = debug_add_class("vfs_recycle_bin"); if (vfs_recycle_debug_level == -1) { @@ -120,39 +119,6 @@ vfs_op_tuple *vfs_init(int *vfs_version, struct vfs_ops *def_vfs_ops, return recycle_ops; } -/** - * VFS finalization function. - * - **/ -void vfs_done(void) -{ - recycle_bin_private_data *recdata; - recycle_bin_connections *recconn; - - DEBUG(10, ("Unloading/Cleaning VFS module recycle bin\n")); - - if (recycle_bin_private_handle) - recdata = (recycle_bin_private_data *)(recycle_bin_private_handle->data); - else { - DEBUG(0, ("Recycle bin not initialized!\n")); - return; - } - - if (recdata) { - if (recdata->conns) { - recconn = recdata->conns; - while (recconn) { - talloc_destroy(recconn->data->mem_ctx); - recconn = recconn->next; - } - } - if (recdata->mem_ctx) { - talloc_destroy(recdata->mem_ctx); - } - recdata = NULL; - } -} - static int recycle_connect(struct connection_struct *conn, const char *service, const char *user) { TALLOC_CTX *ctx = NULL; @@ -646,3 +612,8 @@ done: SAFE_FREE(final_name); return rc; } + +int vfs_recycle_init(void) +{ + return smb_register_vfs("recycle", recycle_init, SMB_VFS_INTERFACE_VERSION); +} |