WHATSNEW: Start release notes for Samba 4.23.0pre1.
[samba.git] / librpc / idl / smb3posix.idl
blobe07d4c1f46f85554c9a5af3be26fb1a21b4d9f1d
1 #include "idl_types.h"
3 /*
4 IDL for smb311 unix structures
5 */
7 import "security.idl";
10 version(0.0),
11 pointer_default(unique),
12 headerhelper("../lib/util/time.h")
14 interface smb3posix
16 const int UNIX_TYPE_FILE = 0;
17 const int UNIX_TYPE_DIR = 1;
18 const int UNIX_TYPE_SYMLINK = 2;
19 const int UNIX_TYPE_CHARDEV = 3;
20 const int UNIX_TYPE_BLKDEV = 4;
21 const int UNIX_TYPE_FIFO = 5;
22 const int UNIX_TYPE_SOCKET = 6;
23 const int UNIX_TYPE_UNKNOWN = 0xFFFFFFFF;
25 const int UNIX_X_OTH = 0000001;
26 const int UNIX_W_OTH = 0000002;
27 const int UNIX_R_OTH = 0000004;
28 const int UNIX_X_GRP = 0000010;
29 const int UNIX_W_GRP = 0000020;
30 const int UNIX_R_GRP = 0000040;
31 const int UNIX_X_USR = 0000100;
32 const int UNIX_W_USR = 0000200;
33 const int UNIX_R_USR = 0000400;
34 const int UNIX_STICKY = 0001000;
35 const int UNIX_SET_GID = 0002000;
36 const int UNIX_SET_UID = 0004000;
38 const int UNIX_OTH_MASK = 0000007;
39 const int UNIX_GRP_MASK = 0000070;
40 const int UNIX_USR_MASK = 0000700;
41 const int UNIX_PERM_MASK = 0000777;
42 const int UNIX_EXTRA_MASK = 0007000;
43 const int UNIX_FILETYPE_MASK = 0070000;
44 const int UNIX_FILETYPE_SHIFT = 12;
45 const int UNIX_ALL_MASK = 0077777;
47 typedef [public,flag(NDR_NOALIGN)] struct {
48 uint32 nlinks;
49 uint32 reparse_tag;
50 uint32 posix_mode;
51 dom_sid owner;
52 dom_sid group;
53 } smb3_posix_cc_info;
55 typedef [public,flag(NDR_NOALIGN)] struct {
56 NTTIME creation_time;
57 NTTIME last_access_time;
58 NTTIME last_write_time;
59 NTTIME change_time;
60 hyper end_of_file;
61 hyper allocation_size;
62 uint32 file_attributes;
63 hyper inode;
64 uint32 device;
65 uint32 reserved;
66 smb3_posix_cc_info cc;
67 } smb3_file_posix_information;