s3: libsmb: In cli_ntrename_internal_send() (SMBntrename) check for DFS dst pathname.
[Samba.git] / source3 / modules / offload_token.h
blob8662d3ee2b152d8224463151f8af18f8945a3ba7
1 /*
2 Unix SMB/Netbios implementation.
3 Copyright (c) 2017 Ralph Boehme <slow@samba.org>
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 #ifndef _OFFLOAD_TOKEN_H_
20 #define _OFFLOAD_TOKEN_H_
22 struct vfs_offload_ctx;
23 struct req_resume_key_rsp;
25 #define SMB_VFS_ODX_TOKEN_OFFSET_PFID 0
26 #define SMB_VFS_ODX_TOKEN_OFFSET_VFID 8
27 #define SMB_VFS_ODX_TOKEN_OFFSET_FSCTL 16
29 NTSTATUS vfs_offload_token_ctx_init(TALLOC_CTX *mem_ctx,
30 struct vfs_offload_ctx **_ctx);
31 NTSTATUS vfs_offload_token_db_store_fsp(struct vfs_offload_ctx *ctx,
32 const files_struct *fsp,
33 const DATA_BLOB *token_blob);
34 NTSTATUS vfs_offload_token_db_fetch_fsp(struct vfs_offload_ctx *ctx,
35 const DATA_BLOB *token_blob,
36 files_struct **fsp);
37 NTSTATUS vfs_offload_token_create_blob(TALLOC_CTX *mem_ctx,
38 const files_struct *fsp,
39 uint32_t fsctl,
40 DATA_BLOB *token_blob);
41 NTSTATUS vfs_offload_token_check_handles(uint32_t fsctl,
42 files_struct *src_fsp,
43 files_struct *dst_fsp);
44 #endif