XRootD
XrdSfsFlags.hh
Go to the documentation of this file.
1 #ifndef __SFS_FLAGS_H__
2 #define __SFS_FLAGS_H__
3 /******************************************************************************/
4 /* */
5 /* X r d S f s F l a g s . h h */
6 /* */
7 /*(c) 2014 by the Board of Trustees of the Leland Stanford, Jr., University */
8 /*Produced by Andrew Hanushevsky for Stanford University under contract */
9 /* DE-AC02-76-SFO0515 with the Deprtment of Energy */
10 /* */
11 /* This file is part of the XRootD software suite. */
12 /* */
13 /* XRootD is free software: you can redistribute it and/or modify it under */
14 /* the terms of the GNU Lesser General Public License as published by the */
15 /* Free Software Foundation, either version 3 of the License, or (at your */
16 /* option) any later version. */
17 /* */
18 /* XRootD is distributed in the hope that it will be useful, but WITHOUT */
19 /* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
20 /* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
21 /* License for more details. */
22 /* */
23 /* You should have received a copy of the GNU Lesser General Public License */
24 /* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
25 /* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
26 /* */
27 /* The copyright holder's institutional names and contributor's names may not */
28 /* be used to endorse or promote products derived from this software without */
29 /* specific prior written permission of the institution or contributor. */
30 /******************************************************************************/
31 
32 #include <cstdint>
33 #include <sys/stat.h>
34 #include <fcntl.h>
35 
36 //-----------------------------------------------------------------------------
39 //-----------------------------------------------------------------------------
40 
41 namespace XrdSfs
42 {
44 static const uint64_t hasAUTZ = 0x0000000000000001LL;
45 
47 static const uint64_t hasCHKP = 0x0000000000000002LL;
48 
50 static const uint64_t hasGPF = 0x0000000000000004LL;
51 
53 static const uint64_t hasGPFA = 0x0000000000000008LL;
54 
56 static const uint64_t hasPGRW = 0x0000000000000010LL;
57 
59 static const uint64_t hasPOSC = 0x0000000000000020LL;
60 
62 static const uint64_t hasPRP2 = 0x0000000000000040LL;
63 
65 static const uint64_t hasPRXY = 0x0000000000000080LL;
66 
68 static const uint64_t hasSXIO = 0x0000000000000100LL;
69 
71 static const uint64_t hasNOSF = 0x0000000000000200LL;
72 
74 static const uint64_t hasCACH = 0x0000000000000400LL;
75 
77 static const uint64_t hasNAIO = 0x0000000000000800LL;
78 }
79 
80 //-----------------------------------------------------------------------------
84 //-----------------------------------------------------------------------------
85 
86 #ifdef __solaris__
87 #define XRDSFS_POSCPEND S_ISUID
88 #else
89 #define XRDSFS_POSCPEND S_ISVTX
90 #endif
91 
92 //-----------------------------------------------------------------------------
98 //-----------------------------------------------------------------------------
99 
100 static const dev_t XRDSFS_OFFLINE =
101  static_cast<dev_t>(0x80LL<<((sizeof(dev_t)*8)-8));
102 static const dev_t XRDSFS_HASBKUP =
103  static_cast<dev_t>(0x40LL<<((sizeof(dev_t)*8)-8));
104 static const dev_t XRDSFS_RDVMASK =
105  static_cast<dev_t>(~(0xffLL<<((sizeof(dev_t)*8)-8)));
106 #endif
static const dev_t XRDSFS_HASBKUP
Definition: XrdSfsFlags.hh:102
static const dev_t XRDSFS_RDVMASK
Definition: XrdSfsFlags.hh:104
static const dev_t XRDSFS_OFFLINE
Definition: XrdSfsFlags.hh:100
static const uint64_t hasPGRW
Feature: pgRead and pgWrite.
Definition: XrdSfsFlags.hh:56
static const uint64_t hasAUTZ
Feature: Authorization.
Definition: XrdSfsFlags.hh:44
static const uint64_t hasPRP2
Feature: Prepare Handler Version 2 (different calling conventions)
Definition: XrdSfsFlags.hh:62
static const uint64_t hasGPFA
Feature: gpFile anonymous.
Definition: XrdSfsFlags.hh:53
static const uint64_t hasCACH
Feature: Implements a data cache.
Definition: XrdSfsFlags.hh:74
static const uint64_t hasSXIO
Feature: Supports SfsXio.
Definition: XrdSfsFlags.hh:68
static const uint64_t hasNOSF
Feature: Supports no sendfile.
Definition: XrdSfsFlags.hh:71
static const uint64_t hasPOSC
Feature: Persist On Successful Close.
Definition: XrdSfsFlags.hh:59
static const uint64_t hasGPF
Feature: gpFile.
Definition: XrdSfsFlags.hh:50
static const uint64_t hasCHKP
Feature: Checkpointing.
Definition: XrdSfsFlags.hh:47
static const uint64_t hasNAIO
Feature: Supports no async I/O.
Definition: XrdSfsFlags.hh:77
static const uint64_t hasPRXY
Feature: Proxy Server.
Definition: XrdSfsFlags.hh:65