blob: 5e7b56738cc5b72d0d54e4facaddebfe860fc7c5 [file] [log] [blame]
Steve Frenchbf820672005-12-01 22:32:42 -08001/*
2 * fs/cifs/cifsacl.h
3 *
Steve Frenchbcb02032007-09-25 16:17:24 +00004 * Copyright (c) International Business Machines Corp., 2007
Steve Frenchbf820672005-12-01 22:32:42 -08005 * Author(s): Steve French (sfrench@us.ibm.com)
6 *
7 * This library is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU Lesser General Public License as published
9 * by the Free Software Foundation; either version 2.1 of the License, or
10 * (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
15 * the GNU Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public License
18 * along with this library; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 */
21
22#ifndef _CIFSACL_H
23#define _CIFSACL_H
24
Steve French442aa312007-09-24 20:25:46 +000025struct cifs_ntsd {
26 __u16 revision; /* revision level */
27 __u16 type;
28 __u32 osidoffset;
29 __u32 gsidoffset;
30 __u32 sacloffset;
31 __u32 dacloffset;
32} __attribute__((packed));
33
Steve Frenchbf820672005-12-01 22:32:42 -080034struct cifs_sid {
35 __u8 revision; /* revision level */
Steve French40849732007-10-01 19:59:01 +000036 __u8 num_subauth;
Steve Frenchbf820672005-12-01 22:32:42 -080037 __u8 authority[6];
Steve French40849732007-10-01 19:59:01 +000038 __u32 sub_auth[0]; /* sub_auth[num_subauth] */
Steve French442aa312007-09-24 20:25:46 +000039} __attribute__((packed));
40
41struct cifs_acl {
42 __u16 revision; /* revision level */
43 __u16 size;
44 __u32 num_aces;
45} __attribute__((packed));
46
47struct cifs_ntace {
48 __u8 type;
49 __u8 flags;
50 __u16 size;
51 __u32 access_req;
52} __attribute__((packed));
53
54struct cifs_ace {
55 __u8 revision; /* revision level */
Steve French40849732007-10-01 19:59:01 +000056 __u8 num_subauth;
Steve French442aa312007-09-24 20:25:46 +000057 __u8 authority[6];
Steve French40849732007-10-01 19:59:01 +000058 __u32 sub_auth[0];
Steve Frenchbf820672005-12-01 22:32:42 -080059} __attribute__((packed));
60
61/* everyone */
Steve French2cd646a2006-09-28 19:43:08 +000062/* extern const struct cifs_sid sid_everyone;*/
Steve Frenchbf820672005-12-01 22:32:42 -080063/* group users */
Steve French2cd646a2006-09-28 19:43:08 +000064/* extern const struct cifs_sid sid_user;*/
Steve Frencha6230af2006-01-08 20:04:55 -080065
66#endif /* _CIFSACL_H */