]> git.proxmox.com Git - ceph.git/blame - ceph/src/include/win32/fs_compat.h
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / include / win32 / fs_compat.h
CommitLineData
f67539c2
TL
1/*
2 * Ceph - scalable distributed file system
3 *
4 * Copyright (C) 2021 SUSE LINUX GmbH
5 *
6 * This is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License version 2.1, as published by the Free Software
9 * Foundation. See file COPYING.
10 *
11 */
12
13// Those definitions allow handling information coming from Ceph and should
14// not be passed to Windows functions.
15
1e59de90
TL
16#pragma once
17
f67539c2
TL
18#define S_IFLNK 0120000
19
20#define S_ISTYPE(m, TYPE) ((m & S_IFMT) == TYPE)
21#define S_ISLNK(m) S_ISTYPE(m, S_IFLNK)
22#define S_ISUID 04000
23#define S_ISGID 02000
24#define S_ISVTX 01000
25
26#define LOCK_SH 1
27#define LOCK_EX 2
28#define LOCK_NB 4
29#define LOCK_UN 8
30#define LOCK_MAND 32
31#define LOCK_READ 64
32#define LOCK_WRITE 128
33#define LOCK_RW 192
34
35#define AT_SYMLINK_NOFOLLOW 0x100
b3b6e05e 36#define AT_REMOVEDIR 0x200
f67539c2
TL
37
38#define MAXSYMLINKS 65000
1e59de90
TL
39
40#define O_DIRECTORY 0200000
41#define O_NOFOLLOW 0400000
42
43#define XATTR_CREATE 1
44#define XATTR_REPLACE 2