s3:smbd: check the incoming session id for SMB2 requests
[ira/wip.git] / source3 / modules / vfs_irixacl.c
1 /*
2    Unix SMB/Netbios implementation.
3    VFS module to get and set irix acls
4    Copyright (C) Michael Adam 2006,2008
5
6    This program is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 3 of the License, or
9    (at your option) any later version.
10
11    This program is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 #include "includes.h"
21
22 /* prototypes for private functions first - for clarity */
23
24 /* public functions - the api */
25
26 SMB_ACL_T irixacl_sys_acl_get_file(vfs_handle_struct *handle,
27                                     const char *path_p,
28                                     SMB_ACL_TYPE_T type)
29 {
30         errno = ENOTSUP;
31         return NULL;
32 }
33
34 SMB_ACL_T irixacl_sys_acl_get_fd(vfs_handle_struct *handle,
35                                  files_struct *fsp)
36 {
37         errno = ENOTSUP;
38         return NULL;
39 }
40
41 int irixacl_sys_acl_set_file(vfs_handle_struct *handle,
42                               const char *name,
43                               SMB_ACL_TYPE_T type,
44                               SMB_ACL_T theacl)
45 {
46         errno = ENOTSUP;
47         return -1;
48 }
49
50 int irixacl_sys_acl_set_fd(vfs_handle_struct *handle,
51                             files_struct *fsp,
52                             SMB_ACL_T theacl)
53 {
54         errno = ENOTSUP;
55         return -1;
56 }
57
58 int irixacl_sys_acl_delete_def_file(vfs_handle_struct *handle,
59                                      const char *path)
60 {
61         errno = ENOTSUP;
62         return -1;
63 }
64
65 /* private functions */
66
67 /* VFS operations structure */
68
69 static vfs_op_tuple irixacl_op_tuples[] = {
70         /* Disk operations */
71   {SMB_VFS_OP(irixacl_sys_acl_get_file),
72    SMB_VFS_OP_SYS_ACL_GET_FILE,
73    SMB_VFS_LAYER_TRANSPARENT},
74
75   {SMB_VFS_OP(irixacl_sys_acl_get_fd),
76    SMB_VFS_OP_SYS_ACL_GET_FD,
77    SMB_VFS_LAYER_TRANSPARENT},
78
79   {SMB_VFS_OP(irixacl_sys_acl_set_file),
80    SMB_VFS_OP_SYS_ACL_SET_FILE,
81    SMB_VFS_LAYER_TRANSPARENT},
82
83   {SMB_VFS_OP(irixacl_sys_acl_set_fd),
84    SMB_VFS_OP_SYS_ACL_SET_FD,
85    SMB_VFS_LAYER_TRANSPARENT},
86
87   {SMB_VFS_OP(irixacl_sys_acl_delete_def_file),
88    SMB_VFS_OP_SYS_ACL_DELETE_DEF_FILE,
89    SMB_VFS_LAYER_TRANSPARENT},
90
91   {SMB_VFS_OP(NULL),
92    SMB_VFS_OP_NOOP,
93    SMB_VFS_LAYER_NOOP}
94 };
95
96 NTSTATUS vfs_irixacl_init(void);
97 NTSTATUS vfs_irixacl_init(void)
98 {
99         return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "irixacl",
100                                 irixacl_op_tuples);
101 }
102
103 /* ENTE */