xrootd
Loading...
Searching...
No Matches
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
41namespace XrdSfs
42{
44static const uint64_t hasAUTZ = 0x0000000000000001LL;
45
47static const uint64_t hasCHKP = 0x0000000000000002LL;
48
50static const uint64_t hasGPF = 0x0000000000000004LL;
51
53static const uint64_t hasGPFA = 0x0000000000000008LL;
54
56static const uint64_t hasPGRW = 0x0000000000000010LL;
57
59static const uint64_t hasPOSC = 0x0000000000000020LL;
60
62static const uint64_t hasPRP2 = 0x0000000000000040LL;
63
65static const uint64_t hasPRXY = 0x0000000000000080LL;
66
68static const uint64_t hasSXIO = 0x0000000000000100LL;
69
71static const uint64_t hasNOSF = 0x0000000000000200LL;
72
74static const uint64_t hasCACH = 0x0000000000000400LL;
75
77static 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
100static const dev_t XRDSFS_OFFLINE =
101 static_cast<dev_t>(0x80LL<<((sizeof(dev_t)*8)-8));
102static const dev_t XRDSFS_HASBKUP =
103 static_cast<dev_t>(0x40LL<<((sizeof(dev_t)*8)-8));
104static 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
Definition XrdSfsFlags.hh:42
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