summaryrefslogtreecommitdiff
path: root/source3/modules/vfs_acl_tdb.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/modules/vfs_acl_tdb.c')
-rw-r--r--source3/modules/vfs_acl_tdb.c51
1 files changed, 1 insertions, 50 deletions
diff --git a/source3/modules/vfs_acl_tdb.c b/source3/modules/vfs_acl_tdb.c
index dcd323a148..a1088ab63c 100644
--- a/source3/modules/vfs_acl_tdb.c
+++ b/source3/modules/vfs_acl_tdb.c
@@ -235,56 +235,6 @@ static NTSTATUS store_acl_blob_fsp(vfs_handle_struct *handle,
return rec->store(rec, data, 0);
}
-/*******************************************************************
- Store a DATA_BLOB into a tdb record given a pathname.
-*******************************************************************/
-
-static NTSTATUS store_acl_blob_pathname(vfs_handle_struct *handle,
- const char *fname,
- DATA_BLOB *pblob)
-{
- uint8 id_buf[16];
- struct file_id id;
- TDB_DATA data;
- SMB_STRUCT_STAT sbuf;
- struct db_context *db;
- struct db_record *rec;
- int ret = -1;
-
- DEBUG(10,("store_acl_blob_pathname: storing blob "
- "length %u on file %s\n",
- (unsigned int)pblob->length, fname));
-
- SMB_VFS_HANDLE_GET_DATA(handle, db, struct db_context,
- return NT_STATUS_INTERNAL_DB_CORRUPTION);
-
- if (lp_posix_pathnames()) {
- ret = vfs_lstat_smb_fname(handle->conn, fname, &sbuf);
- } else {
- ret = vfs_stat_smb_fname(handle->conn, fname, &sbuf);
- }
-
- if (ret == -1) {
- return map_nt_error_from_unix(errno);
- }
-
- id = vfs_file_id_from_sbuf(handle->conn, &sbuf);
-
- /* For backwards compatibility only store the dev/inode. */
- push_file_id_16((char *)id_buf, &id);
-
- rec = db->fetch_locked(db, talloc_tos(),
- make_tdb_data(id_buf,
- sizeof(id_buf)));
- if (rec == NULL) {
- DEBUG(0, ("store_acl_blob_pathname_tdb: fetch_lock failed\n"));
- return NT_STATUS_INTERNAL_DB_CORRUPTION;
- }
- data.dptr = pblob->data;
- data.dsize = pblob->length;
- return rec->store(rec, data, 0);
-}
-
/*********************************************************************
On unlink we need to delete the tdb record (if using tdb).
*********************************************************************/
@@ -464,6 +414,7 @@ static struct vfs_fn_pointers vfs_acl_tdb_fns = {
.opendir = opendir_acl_common,
.mkdir = mkdir_acl_common,
.open = open_acl_common,
+ .create_file = create_file_acl_common,
.unlink = unlink_acl_tdb,
.rmdir = rmdir_acl_tdb,
.fget_nt_acl = fget_nt_acl_common,