static int rmdir_acl_tdb(vfs_handle_struct *handle, const char *path) { SMB_STRUCT_STAT sbuf; struct db_context *db = acl_db; int ret = -1; if (lp_posix_pathnames()) { ret = vfs_lstat_smb_fname(handle->conn, path, &sbuf); } else { ret = vfs_stat_smb_fname(handle->conn, path, &sbuf); } if (ret == -1) { return -1; } ret = rmdir_acl_common(handle, path); if (ret == -1) { return -1; } acl_tdb_delete(handle, db, &sbuf); return 0; }
static int rmdir_acl_tdb(vfs_handle_struct *handle, const struct smb_filename *smb_fname) { SMB_STRUCT_STAT sbuf; struct db_context *db = acl_db; int ret = -1; ret = vfs_stat_smb_basename(handle->conn, smb_fname, &sbuf); if (ret == -1) { return -1; } ret = rmdir_acl_common(handle, smb_fname); if (ret == -1) { return -1; } acl_tdb_delete(handle, db, &sbuf); return 0; }