Boron 2.1.0
os_file.h
1#ifndef OS_FILE_H
2#define OS_FILE_H
3/*
4 Operating system file interface.
5*/
6
7
8enum OSFileInfoMask
9{
10 FI_Size = 0x01,
11 FI_Time = 0x02,
12 FI_Type = 0x04
13};
14
15
16enum OSFileType
17{
18 FI_File,
19 FI_Link,
20 FI_Dir,
21 FI_Socket,
22 FI_OtherType
23};
24
25
26enum OSFilePerm
27{
28 FI_User,
29 FI_Group,
30 FI_Other,
31 FI_Misc,
32
33 FI_Read = 4, // FI_User, FI_Group, FI_Other
34 FI_Write = 2,
35 FI_Exec = 1,
36
37 FI_SetUser = 4, // FI_Misc
38 FI_SetGroup = 2
39};
40
41
42typedef struct
43{
44 int64_t size;
45 double accessed;
46 double modified;
47 int16_t perm[4];
48 uint8_t type;
49}
50OSFileInfo;
51
52
53extern int ur_fileInfo( const char* path, OSFileInfo* info, int mask );
54
55
56#endif /* OS_FILE_H */