XRootD
Loading...
Searching...
No Matches
XProtocol.hh File Reference
#include "XProtocol/XPtypes.hh"
#include <cerrno>
+ Include dependency graph for XProtocol.hh:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ALIGN_CHECK
 
struct  ClientAuthRequest
 
struct  ClientBindRequest
 
struct  ClientChkPointRequest
 
struct  ClientChmodRequest
 
struct  ClientCloseRequest
 
struct  ClientDirlistRequest
 
struct  ClientEndsessRequest
 
struct  ClientFattrRequest
 
struct  ClientGPfileRequest
 
struct  ClientInitHandShake
 
struct  ClientLocateRequest
 
struct  ClientLoginRequest
 
struct  ClientMkdirRequest
 
struct  ClientMvRequest
 
struct  ClientOpenRequest
 
struct  ClientPgReadReqArgs
 
struct  ClientPgReadRequest
 
struct  ClientPgWriteRequest
 
struct  ClientPingRequest
 
struct  ClientPrepareRequest
 
struct  ClientProtocolRequest
 
struct  ClientQueryRequest
 
struct  ClientReadRequest
 
struct  ClientReadVRequest
 
union  ClientRequest
 
struct  ClientRequestHdr
 
struct  ClientRmdirRequest
 
struct  ClientRmRequest
 
struct  ClientSetRequest
 
struct  ClientSigverRequest
 
struct  ClientStatRequest
 
struct  ClientSyncRequest
 
struct  ClientTruncateRequest
 
struct  ClientWriteRequest
 
struct  ClientWriteVRequest
 
struct  read_args
 
struct  XrdProto::read_list
 
struct  readahead_list
 
union  SecurityRequest
 
struct  ServerInitHandShake
 
struct  ServerResponse
 
union  ServerResponse.body
 
struct  ServerResponseBifs_Protocol
 
struct  ServerResponseBody_Attn
 
struct  XProtocol::ServerResponseBody_Attn_asyncdi
 
struct  ServerResponseBody_Attn_asyncms
 
struct  XProtocol::ServerResponseBody_Attn_asyncrd
 
struct  XProtocol::ServerResponseBody_Attn_asyncwt
 
struct  ServerResponseBody_Attn_asynresp
 
struct  ServerResponseBody_Authmore
 
struct  ServerResponseBody_Bind
 
struct  ServerResponseBody_Buffer
 
struct  ServerResponseBody_ChkPoint
 
struct  ServerResponseBody_Error
 
struct  ServerResponseBody_Open
 
struct  ServerResponseBody_pgRead
 
struct  ServerResponseBody_pgWrCSE
 
struct  ServerResponseBody_pgWrite
 
struct  ServerResponseBody_Protocol
 
struct  ServerResponseBody_Redirect
 
struct  ServerResponseBody_Status
 
struct  ServerResponseBody_Wait
 
struct  ServerResponseBody_Waitresp
 
struct  ServerResponseHeader
 
struct  ServerResponseReqs_Protocol
 
struct  ServerResponseStatus
 
struct  ServerResponseSVec_Protocol
 
struct  ServerResponseV2
 
union  ServerResponseV2.info
 
struct  XrdProto::write_list
 
class  XProtocol
 

Namespaces

namespace  XrdProto
 

Macros

#define EAUTH   EBADE
 
#define EBADRQC   EBADRPC
 
#define ENOATTR   ENODATA
 
#define kXR_anongpf   0x00800000
 
#define kXR_attrCache   0x00000080
 
#define kXR_attrMeta   0x00000100
 
#define kXR_attrProxy   0x00000200
 
#define kXR_attrSuper   0x00000400
 
#define kXR_attrVirtRdr   0x00000800
 
#define kXR_collapseRedir   0x00002000
 
#define kXR_DataServer   1
 
#define kXR_ecRedir   0x00004000
 
#define kXR_gotoTLS   0x40000000
 
#define kXR_haveTLS   0x80000000
 
#define kXR_isManager   0x00000002
 
#define kXR_isServer   0x00000001
 
#define kXR_LBalServer   0
 
#define kXR_maxReqRetry   10
 
#define kXR_PROTOCOLVERSION   0x00000511
 
#define kXR_PROTOCOLVSTRING   "5.1.0"
 
#define kXR_PROTPGRWVERSION   0x00000511
 
#define kXR_PROTSIGNVERSION   0x00000310
 
#define kXR_PROTTLSVERSION   0x00000500
 
#define kXR_PROTXATTVERSION   0x00000500
 
#define kXR_recoverWrts   0x00001000
 
#define kXR_secCompatible   1
 
#define kXR_secIntense   3
 
#define kXR_secNone   0
 
#define kXR_secOData   0x01
 
#define kXR_secOFrce   0x02
 
#define kXR_secPedantic   4
 
#define kXR_secStandard   2
 
#define kXR_secver_0   0
 
#define kXR_ShortProtRespLen
 
#define kXR_signIgnore   0
 
#define kXR_signLikely   1
 
#define kXR_signNeeded   2
 
#define kXR_supgpf   0x00400000
 
#define kXR_suppgrw   0x00200000
 
#define kXR_supposc   0x00100000
 
#define kXR_tlsAny   0x1f000000
 
#define kXR_tlsData   0x01000000
 
#define kXR_tlsGPF   0x02000000
 
#define kXR_tlsGPFA   0x20000000
 
#define kXR_tlsLogin   0x04000000
 
#define kXR_tlsSess   0x08000000
 
#define kXR_tlsTPC   0x10000000
 

Typedefs

typedef struct ServerResponseBifs_Protocol XrdProto::bifReqs
 
typedef struct ServerResponseReqs_Protocol XrdProto::secReqs
 

Enumerations

enum  XrdProto::RespType {
  XrdProto::kXR_FinalResult = 0x00 ,
  XrdProto::kXR_PartialResult = 0x01 ,
  XrdProto::kXR_ProgressInfo = 0x02
}
 
enum  XActionCode {
  kXR_asyncab = 5000 ,
  kXR_asyncdi ,
  kXR_asyncms = 5002 ,
  kXR_asyncrd ,
  kXR_asyncwt ,
  kXR_asyncav ,
  kXR_asynunav ,
  kXR_asyncgo ,
  kXR_asynresp = 5008
}
 
enum  XDirlistRequestOption {
  kXR_online = 1 ,
  kXR_dstat = 2 ,
  kXR_dcksm = 4
}
 
enum  XErrorCode {
  kXR_ArgInvalid = 3000 ,
  kXR_ArgMissing ,
  kXR_ArgTooLong ,
  kXR_FileLocked ,
  kXR_FileNotOpen ,
  kXR_FSError ,
  kXR_InvalidRequest ,
  kXR_IOError ,
  kXR_NoMemory ,
  kXR_NoSpace ,
  kXR_NotAuthorized ,
  kXR_NotFound ,
  kXR_ServerError ,
  kXR_Unsupported ,
  kXR_noserver ,
  kXR_NotFile ,
  kXR_isDirectory ,
  kXR_Cancelled ,
  kXR_ItExists ,
  kXR_ChkSumErr ,
  kXR_inProgress ,
  kXR_overQuota ,
  kXR_SigVerErr ,
  kXR_DecryptErr ,
  kXR_Overloaded ,
  kXR_fsReadOnly ,
  kXR_BadPayload ,
  kXR_AttrNotFound ,
  kXR_TLSRequired ,
  kXR_noReplicas ,
  kXR_AuthFailed ,
  kXR_Impossible ,
  kXR_Conflict ,
  kXR_TooManyErrs ,
  kXR_ReqTimedOut ,
  kXR_TimerExpired ,
  kXR_ERRFENCE ,
  kXR_noErrorYet = 10000
}
 
enum  xfaLimits {
  kXR_faMaxVars = 16 ,
  kXR_faMaxNlen = 248 ,
  kXR_faMaxVlen = 65536
}
 
enum  xfaSubCode {
  kXR_fattrDel = 0 ,
  kXR_fattrGet = 1 ,
  kXR_fattrList = 2 ,
  kXR_fattrSet = 3 ,
  kXR_fatrrMaxSC = 3
}
 
enum  XLoginAbility {
  kXR_nothing = 0 ,
  kXR_fullurl = 1 ,
  kXR_multipr = 3 ,
  kXR_readrdok = 4 ,
  kXR_hasipv64 = 8 ,
  kXR_onlyprv4 = 16 ,
  kXR_onlyprv6 = 32 ,
  kXR_lclfile = 64 ,
  kXR_redirflags = 128
}
 
enum  XLoginAbility2 {
  kXR_empty = 0 ,
  kXR_ecredir = 1
}
 
enum  XLoginCapVer {
  kXR_lcvnone = 0 ,
  kXR_vermask = 63 ,
  kXR_asyncap = 128
}
 
enum  XLoginVersion {
  kXR_ver000 = 0 ,
  kXR_ver001 = 1 ,
  kXR_ver002 = 2 ,
  kXR_ver003 = 3 ,
  kXR_ver004 = 4 ,
  kXR_ver005 = 5
}
 
enum  XMkdirOptions {
  kXR_mknone = 0 ,
  kXR_mkdirpath = 1
}
 
enum  XOpenRequestMode {
  kXR_ur = 0x100 ,
  kXR_uw = 0x080 ,
  kXR_ux = 0x040 ,
  kXR_gr = 0x020 ,
  kXR_gw = 0x010 ,
  kXR_gx = 0x008 ,
  kXR_or = 0x004 ,
  kXR_ow = 0x002 ,
  kXR_ox = 0x001
}
 
enum  XOpenRequestOption {
  kXR_compress = 0x0001 ,
  kXR_delete = 0x0002 ,
  kXR_force = 0x0004 ,
  kXR_new = 0x0008 ,
  kXR_open_read = 0x0010 ,
  kXR_open_updt = 0x0020 ,
  kXR_async = 0x0040 ,
  kXR_refresh = 0x0080 ,
  kXR_mkpath = 0x0100 ,
  kXR_prefname = 0x0100 ,
  kXR_open_apnd = 0x0200 ,
  kXR_retstat = 0x0400 ,
  kXR_4dirlist = 0x0400 ,
  kXR_replica = 0x0800 ,
  kXR_posc = 0x1000 ,
  kXR_nowait = 0x2000 ,
  kXR_seqio = 0x4000 ,
  kXR_open_wrto = 0x8000
}
 
enum  XOpenRequestOption2 {
  kXR_dup = 0x0001 ,
  kXR_samefs = 0x0002
}
 
enum  XPrepRequestOption {
  kXR_cancel = 1 ,
  kXR_notify = 2 ,
  kXR_noerrs = 4 ,
  kXR_stage = 8 ,
  kXR_wmode = 16 ,
  kXR_coloc = 32 ,
  kXR_fresh = 64 ,
  kXR_usetcp = 128 ,
  kXR_evict = 0x0001
}
 
enum  XQueryType {
  kXR_QStats = 1 ,
  kXR_QPrep = 2 ,
  kXR_Qcksum = 3 ,
  kXR_Qxattr = 4 ,
  kXR_Qspace = 5 ,
  kXR_Qckscan = 6 ,
  kXR_Qconfig = 7 ,
  kXR_Qvisa = 8 ,
  kXR_Qopaque =16 ,
  kXR_Qopaquf =32 ,
  kXR_Qopaqug =64
}
 
enum  XRequestTypes {
  kXR_1stRequest = 3000 ,
  kXR_auth = 3000 ,
  kXR_query ,
  kXR_chmod ,
  kXR_close ,
  kXR_dirlist ,
  kXR_gpfile ,
  kXR_protocol ,
  kXR_login ,
  kXR_mkdir ,
  kXR_mv ,
  kXR_open ,
  kXR_ping ,
  kXR_chkpoint ,
  kXR_read ,
  kXR_rm ,
  kXR_rmdir ,
  kXR_sync ,
  kXR_stat ,
  kXR_set ,
  kXR_write ,
  kXR_fattr ,
  kXR_prepare ,
  kXR_statx ,
  kXR_endsess ,
  kXR_bind ,
  kXR_readv ,
  kXR_pgwrite ,
  kXR_locate ,
  kXR_truncate ,
  kXR_sigver ,
  kXR_pgread ,
  kXR_writev ,
  kXR_REQFENCE
}
 
enum  XResponseType {
  kXR_ok = 0 ,
  kXR_oksofar = 4000 ,
  kXR_attn ,
  kXR_authmore ,
  kXR_error ,
  kXR_redirect ,
  kXR_wait ,
  kXR_waitresp ,
  kXR_status ,
  kXR_noResponsesYet = 10000
}
 
enum  XSecCrypto {
  kXR_SHA256 = 0x01 ,
  kXR_HashMask = 0x0f ,
  kXR_rsaKey = 0x80
}
 
enum  XSecFlags { kXR_nodata = 1 }
 
enum  XSecVersion { kXR_Ver_00 = 0 }
 
enum  XStatRequestOption { kXR_vfs = 1 }
 
enum  XStatRespFlags {
  kXR_file = 0 ,
  kXR_xset = 1 ,
  kXR_isDir = 2 ,
  kXR_other = 4 ,
  kXR_offline = 8 ,
  kXR_readable =16 ,
  kXR_writable =32 ,
  kXR_poscpend =64 ,
  kXR_bkpexist =128 ,
  kXR_cachersp =512
}
 
enum  XVirtRequestTypes { kXR_virtReadv = 2000 }
 

Variables

static const kXR_char XrdProto::kXR_AnyPath = 0xff
 
static const int kXR_ckpBegin = 0
 
static const int kXR_ckpCommit = 1
 
static const int kXR_ckpMinMax = 104857604
 
static const int kXR_ckpQuery = 2
 
static const int kXR_ckpRollback = 3
 
static const int kXR_ckpXeq = 4
 
static const int XrdProto::kXR_pgMaxEos = 256
 
static const int XrdProto::kXR_pgMaxEpr = 128
 
static const int XrdProto::kXR_pgPageBL = 12
 
static const int XrdProto::kXR_pgPageSZ = 4096
 
static const int XrdProto::kXR_pgRetry = 0x01
 
static const int XrdProto::kXR_pgUnitSZ = kXR_pgPageSZ + sizeof(kXR_unt32)
 
static const int XrdProto::kXR_statusBodyLen = sizeof(ServerResponseBody_Status)
 
static const int XrdProto::maxRVdsz = minRVbsz-rlItemLen
 
static const int XrdProto::maxRvecln = 16384
 
static const int XrdProto::maxRvecsz = maxRvecln/rlItemLen
 
static const int XrdProto::maxWvecln = 16384
 
static const int XrdProto::maxWvecsz = maxWvecln/wlItemLen
 
static const int XrdProto::minRVbsz = 2097152
 
static const int XrdProto::rlItemLen = sizeof(read_list)
 
static const int XrdProto::wlItemLen = sizeof(write_list)
 

Class Documentation

◆ ALIGN_CHECK

struct ALIGN_CHECK

Definition at line 1318 of file XProtocol.hh.

+ Collaboration diagram for ALIGN_CHECK:
Class Members
char chkszreq[25-sizeof(ClientRequest)]
char chkszrsp[9-sizeof(ServerResponseHeader)]

◆ ClientAuthRequest

struct ClientAuthRequest

Definition at line 166 of file XProtocol.hh.

+ Collaboration diagram for ClientAuthRequest:
Class Members
kXR_char credtype[4]
kXR_int32 dlen
kXR_unt16 requestid
kXR_char reserved[12]
kXR_char streamid[2]

◆ ClientBindRequest

struct ClientBindRequest

Definition at line 178 of file XProtocol.hh.

+ Collaboration diagram for ClientBindRequest:
Class Members
kXR_int32 dlen
kXR_unt16 requestid
kXR_char sessid[16]
kXR_char streamid[2]

◆ ClientChkPointRequest

struct ClientChkPointRequest

Definition at line 201 of file XProtocol.hh.

+ Collaboration diagram for ClientChkPointRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_char opcode
kXR_unt16 requestid
kXR_char reserved[11]
kXR_char streamid[2]

◆ ClientChmodRequest

struct ClientChmodRequest

Definition at line 189 of file XProtocol.hh.

+ Collaboration diagram for ClientChmodRequest:
Class Members
kXR_int32 dlen
kXR_unt16 mode
kXR_unt16 requestid
kXR_char reserved[14]
kXR_char streamid[2]

◆ ClientCloseRequest

struct ClientCloseRequest

Definition at line 226 of file XProtocol.hh.

+ Collaboration diagram for ClientCloseRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_unt16 requestid
kXR_char reserved[12]
kXR_char streamid[2]

◆ ClientDirlistRequest

struct ClientDirlistRequest

Definition at line 244 of file XProtocol.hh.

+ Collaboration diagram for ClientDirlistRequest:
Class Members
kXR_int32 dlen
kXR_char options[1]
kXR_unt16 requestid
kXR_char reserved[15]
kXR_char streamid[2]

◆ ClientEndsessRequest

struct ClientEndsessRequest

Definition at line 256 of file XProtocol.hh.

+ Collaboration diagram for ClientEndsessRequest:
Class Members
kXR_int32 dlen
kXR_unt16 requestid
kXR_char sessid[16]
kXR_char streamid[2]

◆ ClientGPfileRequest

struct ClientGPfileRequest

Definition at line 330 of file XProtocol.hh.

+ Collaboration diagram for ClientGPfileRequest:
Class Members
kXR_int32 buffsz
kXR_int32 dlen
kXR_int32 options
kXR_unt16 requestid
kXR_char reserved[8]
kXR_char streamid[2]

◆ ClientInitHandShake

struct ClientInitHandShake

Definition at line 83 of file XProtocol.hh.

+ Collaboration diagram for ClientInitHandShake:
Class Members
kXR_int32 fifth
kXR_int32 first
kXR_int32 fourth
kXR_int32 second
kXR_int32 third

◆ ClientLocateRequest

struct ClientLocateRequest

Definition at line 343 of file XProtocol.hh.

+ Collaboration diagram for ClientLocateRequest:
Class Members
kXR_int32 dlen
kXR_unt16 options
kXR_unt16 requestid
kXR_char reserved[14]
kXR_char streamid[2]

◆ ClientLoginRequest

struct ClientLoginRequest

Definition at line 392 of file XProtocol.hh.

+ Collaboration diagram for ClientLoginRequest:
Class Members
kXR_char ability
kXR_char ability2
kXR_char capver[1]
kXR_int32 dlen
kXR_int32 pid
kXR_unt16 requestid
kXR_char reserved2
kXR_char streamid[2]
kXR_char username[8]

◆ ClientMkdirRequest

struct ClientMkdirRequest

Definition at line 413 of file XProtocol.hh.

+ Collaboration diagram for ClientMkdirRequest:
Class Members
kXR_int32 dlen
kXR_unt16 mode
kXR_char options[1]
kXR_unt16 requestid
kXR_char reserved[13]
kXR_char streamid[2]

◆ ClientMvRequest

struct ClientMvRequest

Definition at line 426 of file XProtocol.hh.

+ Collaboration diagram for ClientMvRequest:
Class Members
kXR_int16 arg1len
kXR_int32 dlen
kXR_unt16 requestid
kXR_char reserved[14]
kXR_char streamid[2]

◆ ClientOpenRequest

struct ClientOpenRequest

Definition at line 477 of file XProtocol.hh.

+ Collaboration diagram for ClientOpenRequest:
Class Members
kXR_int32 dlen
kXR_unt16 mode
kXR_unt16 options
kXR_unt16 requestid
kXR_char reserved[12]
kXR_char streamid[2]

◆ ClientPgReadReqArgs

struct ClientPgReadReqArgs

Definition at line 515 of file XProtocol.hh.

+ Collaboration diagram for ClientPgReadReqArgs:
Class Members
kXR_char pathid
kXR_char reqflags

◆ ClientPgReadRequest

struct ClientPgReadRequest

Definition at line 506 of file XProtocol.hh.

+ Collaboration diagram for ClientPgReadRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_int64 offset
kXR_unt16 requestid
kXR_int32 rlen
kXR_char streamid[2]

◆ ClientPgWriteRequest

struct ClientPgWriteRequest

Definition at line 528 of file XProtocol.hh.

+ Collaboration diagram for ClientPgWriteRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_int64 offset
kXR_char pathid
kXR_char reqflags
kXR_unt16 requestid
kXR_char reserved[2]
kXR_char streamid[2]

◆ ClientPingRequest

struct ClientPingRequest

Definition at line 544 of file XProtocol.hh.

+ Collaboration diagram for ClientPingRequest:
Class Members
kXR_int32 dlen
kXR_unt16 requestid
kXR_char reserved[16]
kXR_char streamid[2]

◆ ClientPrepareRequest

struct ClientPrepareRequest

Definition at line 599 of file XProtocol.hh.

+ Collaboration diagram for ClientPrepareRequest:
Class Members
kXR_int32 dlen
kXR_char options
kXR_unt16 optionX
kXR_unt16 port
kXR_char prty
kXR_unt16 requestid
kXR_char reserved[10]
kXR_char streamid[2]

◆ ClientQueryRequest

struct ClientQueryRequest

Definition at line 628 of file XProtocol.hh.

+ Collaboration diagram for ClientQueryRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_unt16 infotype
kXR_unt16 requestid
kXR_char reserved1[2]
kXR_char reserved2[8]
kXR_char streamid[2]

◆ ClientReadRequest

struct ClientReadRequest

Definition at line 642 of file XProtocol.hh.

+ Collaboration diagram for ClientReadRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_int64 offset
kXR_unt16 requestid
kXR_int32 rlen
kXR_char streamid[2]

◆ ClientReadVRequest

struct ClientReadVRequest

Definition at line 668 of file XProtocol.hh.

+ Collaboration diagram for ClientReadVRequest:
Class Members
kXR_int32 dlen
kXR_char pathid
kXR_unt16 requestid
kXR_char reserved[15]
kXR_char streamid[2]

◆ ClientRequest

union ClientRequest

Definition at line 845 of file XProtocol.hh.

+ Collaboration diagram for ClientRequest:
Class Members
struct ClientAuthRequest auth
struct ClientBindRequest bind
struct ClientChkPointRequest chkpoint
struct ClientChmodRequest chmod
struct ClientCloseRequest close
struct ClientDirlistRequest dirlist
struct ClientEndsessRequest endsess
struct ClientFattrRequest fattr
struct ClientGPfileRequest gpfile
struct ClientRequestHdr header
struct ClientLocateRequest locate
struct ClientLoginRequest login
struct ClientMkdirRequest mkdir
struct ClientMvRequest mv
struct ClientOpenRequest open
struct ClientPgReadRequest pgread
struct ClientPgWriteRequest pgwrite
struct ClientPingRequest ping
struct ClientPrepareRequest prepare
struct ClientProtocolRequest protocol
struct ClientQueryRequest query
struct ClientReadRequest read
struct ClientReadVRequest readv
struct ClientRmRequest rm
struct ClientRmdirRequest rmdir
struct ClientSetRequest set
struct ClientSigverRequest sigver
struct ClientStatRequest stat
struct ClientSyncRequest sync
struct ClientTruncateRequest truncate
struct ClientWriteRequest write
struct ClientWriteVRequest writev

◆ ClientRequestHdr

struct ClientRequestHdr

Definition at line 155 of file XProtocol.hh.

+ Collaboration diagram for ClientRequestHdr:
Class Members
kXR_char body[16]
kXR_int32 dlen
kXR_unt16 requestid
kXR_char streamid[2]

◆ ClientRmdirRequest

struct ClientRmdirRequest

Definition at line 706 of file XProtocol.hh.

+ Collaboration diagram for ClientRmdirRequest:
Class Members
kXR_int32 dlen
kXR_unt16 requestid
kXR_char reserved[16]
kXR_char streamid[2]

◆ ClientRmRequest

struct ClientRmRequest

Definition at line 695 of file XProtocol.hh.

+ Collaboration diagram for ClientRmRequest:
Class Members
kXR_int32 dlen
kXR_unt16 requestid
kXR_char reserved[16]
kXR_char streamid[2]

◆ ClientSetRequest

struct ClientSetRequest

Definition at line 717 of file XProtocol.hh.

+ Collaboration diagram for ClientSetRequest:
Class Members
kXR_int32 dlen
kXR_char modifier
kXR_unt16 requestid
kXR_char reserved[15]
kXR_char streamid[2]

◆ ClientSigverRequest

struct ClientSigverRequest

Definition at line 746 of file XProtocol.hh.

+ Collaboration diagram for ClientSigverRequest:
Class Members
kXR_char crypto
kXR_int32 dlen
kXR_unt16 expectrid
kXR_char flags
kXR_unt16 requestid
kXR_char rsvd2[3]
kXR_unt64 seqno
kXR_char streamid[2]
kXR_char version

◆ ClientStatRequest

struct ClientStatRequest

Definition at line 766 of file XProtocol.hh.

+ Collaboration diagram for ClientStatRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_char options
kXR_unt16 requestid
kXR_char reserved[11]
kXR_char streamid[2]

◆ ClientSyncRequest

struct ClientSyncRequest

Definition at line 779 of file XProtocol.hh.

+ Collaboration diagram for ClientSyncRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_unt16 requestid
kXR_char reserved[12]
kXR_char streamid[2]

◆ ClientTruncateRequest

struct ClientTruncateRequest

Definition at line 791 of file XProtocol.hh.

+ Collaboration diagram for ClientTruncateRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_int64 offset
kXR_unt16 requestid
kXR_char reserved[4]
kXR_char streamid[2]

◆ ClientWriteRequest

struct ClientWriteRequest

Definition at line 804 of file XProtocol.hh.

+ Collaboration diagram for ClientWriteRequest:
Class Members
kXR_int32 dlen
kXR_char fhandle[4]
kXR_int64 offset
kXR_char pathid
kXR_unt16 requestid
kXR_char reserved[3]
kXR_char streamid[2]

◆ read_args

struct read_args

Definition at line 652 of file XProtocol.hh.

+ Collaboration diagram for read_args:
Class Members
kXR_char pathid
kXR_char reserved[7]

◆ XrdProto::read_list

struct XrdProto::read_list

Definition at line 679 of file XProtocol.hh.

+ Collaboration diagram for XrdProto::read_list:
Class Members
kXR_char fhandle[4]
kXR_int64 offset
kXR_int32 rlen

◆ readahead_list

struct readahead_list

Definition at line 658 of file XProtocol.hh.

+ Collaboration diagram for readahead_list:
Class Members
kXR_char fhandle[4]
kXR_int64 offset
kXR_int32 rlen

◆ SecurityRequest

union SecurityRequest

Definition at line 880 of file XProtocol.hh.

+ Collaboration diagram for SecurityRequest:
Class Members
struct ClientRequestHdr header
struct ClientSigverRequest sigver

◆ ServerInitHandShake

struct ServerInitHandShake

Definition at line 93 of file XProtocol.hh.

+ Collaboration diagram for ServerInitHandShake:
Class Members
kXR_int32 msglen
kXR_int32 msgval
kXR_int32 protover

◆ ServerResponse

struct ServerResponse

Definition at line 1286 of file XProtocol.hh.

+ Collaboration diagram for ServerResponse:
Class Members
union ServerResponse.body body
ServerResponseHeader hdr

◆ ServerResponse.body

union ServerResponse.body

Definition at line 1289 of file XProtocol.hh.

+ Collaboration diagram for ServerResponse.body:
Class Members
ServerResponseBody_Attn attn
ServerResponseBody_Authmore authmore
ServerResponseBody_Bind bind
ServerResponseBody_Buffer buffer
ServerResponseBody_Error error
ServerResponseBody_Login login
ServerResponseBody_Protocol protocol
ServerResponseBody_Redirect redirect
ServerResponseBody_Status status
ServerResponseBody_Wait wait
ServerResponseBody_Waitresp waitresp

◆ ServerResponseBifs_Protocol

struct ServerResponseBifs_Protocol

Definition at line 1091 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBifs_Protocol:
Class Members
kXR_unt16 bifILen
kXR_char rsvd
kXR_char theTag

◆ ServerResponseBody_Attn

struct ServerResponseBody_Attn

Definition at line 941 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Attn:
Class Members
kXR_int32 actnum
char parms[4096]

◆ XProtocol::ServerResponseBody_Attn_asyncdi

struct XProtocol::ServerResponseBody_Attn_asyncdi

Definition at line 1462 of file XProtocol.hh.

+ Collaboration diagram for XProtocol::ServerResponseBody_Attn_asyncdi:
Class Members
kXR_int32 actnum
kXR_int32 msec
kXR_int32 wsec

◆ ServerResponseBody_Attn_asyncms

struct ServerResponseBody_Attn_asyncms

Definition at line 946 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Attn_asyncms:
Class Members
kXR_int32 actnum
char reserved[4]
char respdata[4096]
ServerResponseHeader resphdr

◆ XProtocol::ServerResponseBody_Attn_asyncrd

struct XProtocol::ServerResponseBody_Attn_asyncrd

Definition at line 1468 of file XProtocol.hh.

+ Collaboration diagram for XProtocol::ServerResponseBody_Attn_asyncrd:
Class Members
kXR_int32 actnum
char host[4092]
kXR_int32 port

◆ XProtocol::ServerResponseBody_Attn_asyncwt

struct XProtocol::ServerResponseBody_Attn_asyncwt

Definition at line 1474 of file XProtocol.hh.

+ Collaboration diagram for XProtocol::ServerResponseBody_Attn_asyncwt:
Class Members
kXR_int32 actnum
kXR_int32 wsec

◆ ServerResponseBody_Attn_asynresp

struct ServerResponseBody_Attn_asynresp

Definition at line 953 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Attn_asynresp:
Class Members
kXR_int32 actnum
char reserved[4]
char respdata[4096]
ServerResponseHeader resphdr

◆ ServerResponseBody_Authmore

struct ServerResponseBody_Authmore

Definition at line 964 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Authmore:
Class Members
char data[4096]

◆ ServerResponseBody_Bind

struct ServerResponseBody_Bind

Definition at line 972 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Bind:
Class Members
kXR_char substreamid

◆ ServerResponseBody_Buffer

struct ServerResponseBody_Buffer

Definition at line 921 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Buffer:
Class Members
char data[4096]

◆ ServerResponseBody_ChkPoint

struct ServerResponseBody_ChkPoint

Definition at line 980 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_ChkPoint:
Class Members
kXR_unt32 maxCkpSize
kXR_unt32 useCkpSize

◆ ServerResponseBody_Error

struct ServerResponseBody_Error

Definition at line 1030 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Error:
Class Members
char errmsg[4096]
kXR_int32 errnum

◆ ServerResponseBody_Login

struct ServerResponseBody_Login

Definition at line 1039 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Login:
Class Members
kXR_char sec[4096]
kXR_char sessid[16]

◆ ServerResponseBody_Open

struct ServerResponseBody_Open

Definition at line 1048 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Open:
Class Members
kXR_int32 cpsize
kXR_char cptype[4]
kXR_char fhandle[4]

◆ ServerResponseBody_pgRead

struct ServerResponseBody_pgRead

Definition at line 1058 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_pgRead:
Class Members
kXR_int64 offset

◆ ServerResponseBody_pgWrCSE

struct ServerResponseBody_pgWrCSE

Definition at line 1075 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_pgWrCSE:
Class Members
kXR_unt32 cseCRC
kXR_int16 dlFirst
kXR_int16 dlLast

◆ ServerResponseBody_pgWrite

struct ServerResponseBody_pgWrite

Definition at line 1067 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_pgWrite:
Class Members
kXR_int64 offset

◆ ServerResponseBody_Protocol

struct ServerResponseBody_Protocol

Definition at line 1191 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Protocol:
Class Members
kXR_int32 flags
kXR_int32 pval
ServerResponseReqs_Protocol secreq

◆ ServerResponseBody_Redirect

struct ServerResponseBody_Redirect

Definition at line 1207 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Redirect:
Class Members
char host[4096]
kXR_int32 port

◆ ServerResponseBody_Status

struct ServerResponseBody_Status

Definition at line 1235 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Status:
Class Members
kXR_unt32 crc32c
kXR_int32 dlen
kXR_char requestid
kXR_char reserved[4]
kXR_char resptype
kXR_char streamID[2]

◆ ServerResponseBody_Wait

struct ServerResponseBody_Wait

Definition at line 1269 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Wait:
Class Members
char infomsg[4096]
kXR_int32 seconds

◆ ServerResponseBody_Waitresp

struct ServerResponseBody_Waitresp

Definition at line 1278 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseBody_Waitresp:
Class Members
kXR_int32 seconds

◆ ServerResponseHeader

struct ServerResponseHeader

Definition at line 913 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseHeader:
Class Members
kXR_int32 dlen
kXR_unt16 status
kXR_char streamid[2]

◆ ServerResponseReqs_Protocol

struct ServerResponseReqs_Protocol

Definition at line 1107 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseReqs_Protocol:
Class Members
kXR_char rsvd
kXR_char seclvl
kXR_char secopt
ServerResponseSVec_Protocol secvec
kXR_char secver
kXR_char secvsz
kXR_char theTag

◆ ServerResponseStatus

struct ServerResponseStatus

Definition at line 1260 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseStatus:
Class Members
struct ServerResponseBody_Status bdy
struct ServerResponseHeader hdr

◆ ServerResponseSVec_Protocol

struct ServerResponseSVec_Protocol

Definition at line 1102 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseSVec_Protocol:
Class Members
kXR_char reqindx
kXR_char reqsreq

◆ ServerResponseV2

struct ServerResponseV2

Definition at line 1308 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseV2:
Class Members
union ServerResponseV2.info info
ServerResponseStatus status

◆ ServerResponseV2.info

union ServerResponseV2.info

Definition at line 1311 of file XProtocol.hh.

+ Collaboration diagram for ServerResponseV2.info:
Class Members
ServerResponseBody_pgRead pgread
ServerResponseBody_pgWrite pgwrite

◆ XrdProto::write_list

struct XrdProto::write_list

Definition at line 831 of file XProtocol.hh.

+ Collaboration diagram for XrdProto::write_list:
Class Members
kXR_char fhandle[4]
kXR_int64 offset
kXR_int32 wlen

Macro Definition Documentation

◆ EAUTH

#define EAUTH   EBADE

◆ EBADRQC

#define EBADRQC   EBADRPC

Definition at line 1347 of file XProtocol.hh.

Referenced by XProtocol::mapError(), and XProtocol::toErrno().

◆ ENOATTR

◆ kXR_anongpf

#define kXR_anongpf   0x00800000

Definition at line 1172 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_attrCache

#define kXR_attrCache   0x00000080

Definition at line 1158 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_attrMeta

#define kXR_attrMeta   0x00000100

◆ kXR_attrProxy

#define kXR_attrProxy   0x00000200

Definition at line 1160 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_attrSuper

#define kXR_attrSuper   0x00000400

Definition at line 1161 of file XProtocol.hh.

◆ kXR_attrVirtRdr

#define kXR_attrVirtRdr   0x00000800

Definition at line 1162 of file XProtocol.hh.

Referenced by XrdCl::MessageUtils::RedirectMessage().

◆ kXR_collapseRedir

#define kXR_collapseRedir   0x00002000

Definition at line 1167 of file XProtocol.hh.

Referenced by XrdCl::XRootDMsgHandler::Process().

◆ kXR_DataServer

#define kXR_DataServer   1

Definition at line 1150 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure(), and XrdXrootdProtocol::Match().

◆ kXR_ecRedir

#define kXR_ecRedir   0x00004000

Definition at line 1168 of file XProtocol.hh.

Referenced by XrdCl::XRootDMsgHandler::Process().

◆ kXR_gotoTLS

#define kXR_gotoTLS   0x40000000

◆ kXR_haveTLS

#define kXR_haveTLS   0x80000000

Definition at line 1179 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_isManager

◆ kXR_isServer

◆ kXR_LBalServer

#define kXR_LBalServer   0

Definition at line 1151 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure(), and XrdXrootdProtocol::Match().

◆ kXR_maxReqRetry

#define kXR_maxReqRetry   10

Definition at line 1493 of file XProtocol.hh.

◆ kXR_PROTOCOLVERSION

#define kXR_PROTOCOLVERSION   0x00000511

◆ kXR_PROTOCOLVSTRING

#define kXR_PROTOCOLVSTRING   "5.1.0"

Definition at line 75 of file XProtocol.hh.

Referenced by XrdgetProtocol().

◆ kXR_PROTPGRWVERSION

#define kXR_PROTPGRWVERSION   0x00000511

Definition at line 73 of file XProtocol.hh.

Referenced by XrdCl::Utils::HasPgRW(), and XrdCl::FileStateHandler::PgRead().

◆ kXR_PROTSIGNVERSION

#define kXR_PROTSIGNVERSION   0x00000310

Definition at line 74 of file XProtocol.hh.

Referenced by XrdSecProtector::New4Server().

◆ kXR_PROTTLSVERSION

#define kXR_PROTTLSVERSION   0x00000500

Definition at line 72 of file XProtocol.hh.

◆ kXR_PROTXATTVERSION

#define kXR_PROTXATTVERSION   0x00000500

Definition at line 71 of file XProtocol.hh.

Referenced by XrdCl::Utils::HasXAttr().

◆ kXR_recoverWrts

#define kXR_recoverWrts   0x00001000

◆ kXR_secCompatible

#define kXR_secCompatible   1

Definition at line 1132 of file XProtocol.hh.

◆ kXR_secIntense

#define kXR_secIntense   3

Definition at line 1134 of file XProtocol.hh.

◆ kXR_secNone

#define kXR_secNone   0

Definition at line 1131 of file XProtocol.hh.

Referenced by XrdSecProtector::New4Client(), and XrdSecGetProtection().

◆ kXR_secOData

#define kXR_secOData   0x01

Definition at line 1126 of file XProtocol.hh.

Referenced by XrdSecProtect::SetProtection().

◆ kXR_secOFrce

#define kXR_secOFrce   0x02

Definition at line 1127 of file XProtocol.hh.

Referenced by XrdSecProtector::New4Client().

◆ kXR_secPedantic

#define kXR_secPedantic   4

Definition at line 1135 of file XProtocol.hh.

Referenced by XrdSecProtect::SetProtection().

◆ kXR_secStandard

#define kXR_secStandard   2

Definition at line 1133 of file XProtocol.hh.

◆ kXR_secver_0

#define kXR_secver_0   0

◆ kXR_ShortProtRespLen

#define kXR_ShortProtRespLen
Value:

Definition at line 1200 of file XProtocol.hh.

1200#define kXR_ShortProtRespLen sizeof(ServerResponseBody_Protocol)-\
1201 sizeof(ServerResponseReqs_Protocol)

Referenced by XrdSecGetProtection().

◆ kXR_signIgnore

#define kXR_signIgnore   0

Definition at line 1139 of file XProtocol.hh.

◆ kXR_signLikely

#define kXR_signLikely   1

Definition at line 1140 of file XProtocol.hh.

◆ kXR_signNeeded

#define kXR_signNeeded   2

Definition at line 1141 of file XProtocol.hh.

Referenced by XrdSecProtect::SetProtection().

◆ kXR_supgpf

#define kXR_supgpf   0x00400000

Definition at line 1173 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_suppgrw

#define kXR_suppgrw   0x00200000

Definition at line 1174 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure(), and XrdCl::FileStateHandler::PgRead().

◆ kXR_supposc

#define kXR_supposc   0x00100000

Definition at line 1175 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_tlsAny

#define kXR_tlsAny   0x1f000000

Definition at line 1181 of file XProtocol.hh.

Referenced by XrdXrootdProtocol::Configure().

◆ kXR_tlsData

#define kXR_tlsData   0x01000000

◆ kXR_tlsGPF

#define kXR_tlsGPF   0x02000000

Definition at line 1183 of file XProtocol.hh.

◆ kXR_tlsGPFA

#define kXR_tlsGPFA   0x20000000

Definition at line 1187 of file XProtocol.hh.

◆ kXR_tlsLogin

#define kXR_tlsLogin   0x04000000

◆ kXR_tlsSess

#define kXR_tlsSess   0x08000000

◆ kXR_tlsTPC

#define kXR_tlsTPC   0x10000000

Definition at line 1186 of file XProtocol.hh.

Enumeration Type Documentation

◆ XActionCode

Enumerator
kXR_asyncab 
kXR_asyncdi 
kXR_asyncms 
kXR_asyncrd 
kXR_asyncwt 
kXR_asyncav 
kXR_asynunav 
kXR_asyncgo 
kXR_asynresp 

Definition at line 929 of file XProtocol.hh.

929 {
930 kXR_asyncab = 5000, // No longer supported
931 kXR_asyncdi, // 5001 No longer supported
932 kXR_asyncms = 5002,
933 kXR_asyncrd, // 5003 No longer supported
934 kXR_asyncwt, // 5004 No longer supported
935 kXR_asyncav, // 5005 No longer supported
936 kXR_asynunav, // 5006 No longer supported
937 kXR_asyncgo, // 5007 No longer supported
938 kXR_asynresp= 5008
939};
@ kXR_asyncgo
Definition XProtocol.hh:937
@ kXR_asyncwt
Definition XProtocol.hh:934
@ kXR_asynunav
Definition XProtocol.hh:936
@ kXR_asynresp
Definition XProtocol.hh:938
@ kXR_asyncav
Definition XProtocol.hh:935
@ kXR_asyncms
Definition XProtocol.hh:932
@ kXR_asyncab
Definition XProtocol.hh:930
@ kXR_asyncrd
Definition XProtocol.hh:933
@ kXR_asyncdi
Definition XProtocol.hh:931

◆ XDirlistRequestOption

Enumerator
kXR_online 
kXR_dstat 
kXR_dcksm 

Definition at line 238 of file XProtocol.hh.

238 {
239 kXR_online = 1,
240 kXR_dstat = 2,
241 kXR_dcksm = 4 // dcksm implies dstat irrespective of dstat setting
242};
@ kXR_dstat
Definition XProtocol.hh:240
@ kXR_dcksm
Definition XProtocol.hh:241
@ kXR_online
Definition XProtocol.hh:239

◆ XErrorCode

enum XErrorCode
Enumerator
kXR_ArgInvalid 
kXR_ArgMissing 
kXR_ArgTooLong 
kXR_FileLocked 
kXR_FileNotOpen 
kXR_FSError 
kXR_InvalidRequest 
kXR_IOError 
kXR_NoMemory 
kXR_NoSpace 
kXR_NotAuthorized 
kXR_NotFound 
kXR_ServerError 
kXR_Unsupported 
kXR_noserver 
kXR_NotFile 
kXR_isDirectory 
kXR_Cancelled 
kXR_ItExists 
kXR_ChkSumErr 
kXR_inProgress 
kXR_overQuota 
kXR_SigVerErr 
kXR_DecryptErr 
kXR_Overloaded 
kXR_fsReadOnly 
kXR_BadPayload 
kXR_AttrNotFound 
kXR_TLSRequired 
kXR_noReplicas 
kXR_AuthFailed 
kXR_Impossible 
kXR_Conflict 
kXR_TooManyErrs 
kXR_ReqTimedOut 
kXR_TimerExpired 
kXR_ERRFENCE 
kXR_noErrorYet 

Definition at line 989 of file XProtocol.hh.

989 {
990 kXR_ArgInvalid = 3000,
991 kXR_ArgMissing, // 3001
992 kXR_ArgTooLong, // 3002
993 kXR_FileLocked, // 3003
994 kXR_FileNotOpen, // 3004
995 kXR_FSError, // 3005
996 kXR_InvalidRequest, // 3006
997 kXR_IOError, // 3007
998 kXR_NoMemory, // 3008
999 kXR_NoSpace, // 3009
1000 kXR_NotAuthorized, // 3010
1001 kXR_NotFound, // 3011
1002 kXR_ServerError, // 3012
1003 kXR_Unsupported, // 3013
1004 kXR_noserver, // 3014
1005 kXR_NotFile, // 3015
1006 kXR_isDirectory, // 3016
1007 kXR_Cancelled, // 3017
1008 kXR_ItExists, // 3018
1009 kXR_ChkSumErr, // 3019
1010 kXR_inProgress, // 3020
1011 kXR_overQuota, // 3021
1012 kXR_SigVerErr, // 3022
1013 kXR_DecryptErr, // 3023
1014 kXR_Overloaded, // 3024
1015 kXR_fsReadOnly, // 3025
1016 kXR_BadPayload, // 3026
1017 kXR_AttrNotFound, // 3027
1018 kXR_TLSRequired, // 3028
1019 kXR_noReplicas, // 3029
1020 kXR_AuthFailed, // 3030
1021 kXR_Impossible, // 3031
1022 kXR_Conflict, // 3032
1023 kXR_TooManyErrs, // 3033
1024 kXR_ReqTimedOut, // 3034
1025 kXR_TimerExpired, // 3035
1026 kXR_ERRFENCE, // Always last valid errcode + 1
1027 kXR_noErrorYet = 10000
1028};
@ kXR_ArgInvalid
Definition XProtocol.hh:990
@ kXR_InvalidRequest
Definition XProtocol.hh:996
@ kXR_ArgMissing
Definition XProtocol.hh:991
@ kXR_fsReadOnly
@ kXR_Impossible
@ kXR_TLSRequired
@ kXR_SigVerErr
@ kXR_TimerExpired
@ kXR_TooManyErrs
@ kXR_AttrNotFound
@ kXR_ItExists
@ kXR_AuthFailed
@ kXR_NotAuthorized
@ kXR_NotFound
@ kXR_FileLocked
Definition XProtocol.hh:993
@ kXR_ERRFENCE
@ kXR_noErrorYet
@ kXR_ChkSumErr
@ kXR_DecryptErr
@ kXR_overQuota
@ kXR_BadPayload
@ kXR_NoSpace
Definition XProtocol.hh:999
@ kXR_FileNotOpen
Definition XProtocol.hh:994
@ kXR_isDirectory
@ kXR_noReplicas
@ kXR_inProgress
@ kXR_NotFile
@ kXR_Unsupported
@ kXR_Cancelled
@ kXR_Conflict
@ kXR_ServerError
@ kXR_Overloaded
@ kXR_ArgTooLong
Definition XProtocol.hh:992
@ kXR_noserver
@ kXR_ReqTimedOut
@ kXR_IOError
Definition XProtocol.hh:997
@ kXR_FSError
Definition XProtocol.hh:995
@ kXR_NoMemory
Definition XProtocol.hh:998

◆ xfaLimits

enum xfaLimits
Enumerator
kXR_faMaxVars 
kXR_faMaxNlen 
kXR_faMaxVlen 

Definition at line 279 of file XProtocol.hh.

279 {
280 kXR_faMaxVars = 16, // Maximum variables per request
281 kXR_faMaxNlen = 248, // Maximum length of variable name
282 kXR_faMaxVlen = 65536 // Maximum length of variable value
283};
@ kXR_faMaxVars
Definition XProtocol.hh:280
@ kXR_faMaxVlen
Definition XProtocol.hh:282
@ kXR_faMaxNlen
Definition XProtocol.hh:281

◆ xfaSubCode

enum xfaSubCode
Enumerator
kXR_fattrDel 
kXR_fattrGet 
kXR_fattrList 
kXR_fattrSet 
kXR_fatrrMaxSC 

Definition at line 269 of file XProtocol.hh.

269 {
270 kXR_fattrDel = 0,
271 kXR_fattrGet = 1,
272 kXR_fattrList = 2,
273 kXR_fattrSet = 3,
274 kXR_fatrrMaxSC = 3 // Highest valid subcode
275};
@ kXR_fattrDel
Definition XProtocol.hh:270
@ kXR_fattrSet
Definition XProtocol.hh:273
@ kXR_fattrList
Definition XProtocol.hh:272
@ kXR_fattrGet
Definition XProtocol.hh:271
@ kXR_fatrrMaxSC
Definition XProtocol.hh:274

◆ XLoginAbility

Enumerator
kXR_nothing 
kXR_fullurl 
kXR_multipr 
kXR_readrdok 
kXR_hasipv64 
kXR_onlyprv4 
kXR_onlyprv6 
kXR_lclfile 
kXR_redirflags 

Definition at line 356 of file XProtocol.hh.

356 {
357 kXR_nothing = 0,
358 kXR_fullurl = 1,
359 kXR_multipr = 3,
360 kXR_readrdok = 4,
361 kXR_hasipv64 = 8,
362 kXR_onlyprv4 = 16,
363 kXR_onlyprv6 = 32,
364 kXR_lclfile = 64,
365 kXR_redirflags = 128
366};
@ kXR_readrdok
Definition XProtocol.hh:360
@ kXR_fullurl
Definition XProtocol.hh:358
@ kXR_onlyprv4
Definition XProtocol.hh:362
@ kXR_lclfile
Definition XProtocol.hh:364
@ kXR_multipr
Definition XProtocol.hh:359
@ kXR_nothing
Definition XProtocol.hh:357
@ kXR_redirflags
Definition XProtocol.hh:365
@ kXR_hasipv64
Definition XProtocol.hh:361
@ kXR_onlyprv6
Definition XProtocol.hh:363

◆ XLoginAbility2

Enumerator
kXR_empty 
kXR_ecredir 

Definition at line 369 of file XProtocol.hh.

369 {
370 kXR_empty = 0,
371 kXR_ecredir = 1
372};
@ kXR_empty
Definition XProtocol.hh:370
@ kXR_ecredir
Definition XProtocol.hh:371

◆ XLoginCapVer

Enumerator
kXR_lcvnone 
kXR_vermask 
kXR_asyncap 

Definition at line 375 of file XProtocol.hh.

375 {
376 kXR_lcvnone = 0,
377 kXR_vermask = 63,
378 kXR_asyncap = 128
379};
@ kXR_vermask
Definition XProtocol.hh:377
@ kXR_asyncap
Definition XProtocol.hh:378
@ kXR_lcvnone
Definition XProtocol.hh:376

◆ XLoginVersion

Enumerator
kXR_ver000 
kXR_ver001 
kXR_ver002 
kXR_ver003 
kXR_ver004 
kXR_ver005 

Definition at line 383 of file XProtocol.hh.

383 {
384 kXR_ver000 = 0, // Old clients predating history
385 kXR_ver001 = 1, // Generally implemented 2005 protocol
386 kXR_ver002 = 2, // Same as 1 but adds asyncresp recognition
387 kXR_ver003 = 3, // The 2011-2012 rewritten client
388 kXR_ver004 = 4, // The 2016 sign-capable client
389 kXR_ver005 = 5 // The 2019 TLS-capable client
390};
@ kXR_ver005
Definition XProtocol.hh:389
@ kXR_ver001
Definition XProtocol.hh:385
@ kXR_ver003
Definition XProtocol.hh:387
@ kXR_ver000
Definition XProtocol.hh:384
@ kXR_ver004
Definition XProtocol.hh:388
@ kXR_ver002
Definition XProtocol.hh:386

◆ XMkdirOptions

Enumerator
kXR_mknone 
kXR_mkdirpath 

Definition at line 408 of file XProtocol.hh.

408 {
409 kXR_mknone = 0,
410 kXR_mkdirpath = 1
411};
@ kXR_mkdirpath
Definition XProtocol.hh:410
@ kXR_mknone
Definition XProtocol.hh:409

◆ XOpenRequestMode

Enumerator
kXR_ur 
kXR_uw 
kXR_ux 
kXR_gr 
kXR_gw 
kXR_gx 
kXR_or 
kXR_ow 
kXR_ox 

Definition at line 439 of file XProtocol.hh.

439 {
440 kXR_ur = 0x100,
441 kXR_uw = 0x080,
442 kXR_ux = 0x040,
443 kXR_gr = 0x020,
444 kXR_gw = 0x010,
445 kXR_gx = 0x008,
446 kXR_or = 0x004,
447 kXR_ow = 0x002,
448 kXR_ox = 0x001
449};
@ kXR_gw
Definition XProtocol.hh:444
@ kXR_ur
Definition XProtocol.hh:440
@ kXR_uw
Definition XProtocol.hh:441
@ kXR_gr
Definition XProtocol.hh:443
@ kXR_ow
Definition XProtocol.hh:447
@ kXR_gx
Definition XProtocol.hh:445
@ kXR_or
Definition XProtocol.hh:446
@ kXR_ox
Definition XProtocol.hh:448
@ kXR_ux
Definition XProtocol.hh:442

◆ XOpenRequestOption

Enumerator
kXR_compress 
kXR_delete 
kXR_force 
kXR_new 
kXR_open_read 
kXR_open_updt 
kXR_async 
kXR_refresh 
kXR_mkpath 
kXR_prefname 
kXR_open_apnd 
kXR_retstat 
kXR_4dirlist 
kXR_replica 
kXR_posc 
kXR_nowait 
kXR_seqio 
kXR_open_wrto 

Definition at line 451 of file XProtocol.hh.

451 {
452 kXR_compress = 0x0001, // 1 // also locate (return unique hosts)
453 kXR_delete = 0x0002, // 2
454 kXR_force = 0x0004, // 4
455 kXR_new = 0x0008, // 8
456 kXR_open_read= 0x0010, // 16
457 kXR_open_updt= 0x0020, // 32
458 kXR_async = 0x0040, // 64
459 kXR_refresh = 0x0080, // 128 // also locate
460 kXR_mkpath = 0x0100, // 256
461 kXR_prefname = 0x0100, // 256 // only locate
462 kXR_open_apnd= 0x0200, // 512
463 kXR_retstat = 0x0400, // 1024
464 kXR_4dirlist = 0x0400, // 1024 // for locate intending a dirlist
465 kXR_replica = 0x0800, // 2048
466 kXR_posc = 0x1000, // 4096
467 kXR_nowait = 0x2000, // 8192 // also locate
468 kXR_seqio = 0x4000, // 16384
469 kXR_open_wrto= 0x8000 // 32768
470};
@ kXR_open_wrto
Definition XProtocol.hh:469
@ kXR_compress
Definition XProtocol.hh:452
@ kXR_async
Definition XProtocol.hh:458
@ kXR_delete
Definition XProtocol.hh:453
@ kXR_prefname
Definition XProtocol.hh:461
@ kXR_nowait
Definition XProtocol.hh:467
@ kXR_open_read
Definition XProtocol.hh:456
@ kXR_open_updt
Definition XProtocol.hh:457
@ kXR_mkpath
Definition XProtocol.hh:460
@ kXR_seqio
Definition XProtocol.hh:468
@ kXR_replica
Definition XProtocol.hh:465
@ kXR_posc
Definition XProtocol.hh:466
@ kXR_refresh
Definition XProtocol.hh:459
@ kXR_new
Definition XProtocol.hh:455
@ kXR_force
Definition XProtocol.hh:454
@ kXR_4dirlist
Definition XProtocol.hh:464
@ kXR_open_apnd
Definition XProtocol.hh:462
@ kXR_retstat
Definition XProtocol.hh:463

◆ XOpenRequestOption2

Enumerator
kXR_dup 
kXR_samefs 

Definition at line 472 of file XProtocol.hh.

472 {
473 kXR_dup = 0x0001, // 1
474 kXR_samefs = 0x0002 // 2
475};
@ kXR_dup
Definition XProtocol.hh:473
@ kXR_samefs
Definition XProtocol.hh:474

◆ XPrepRequestOption

Enumerator
kXR_cancel 
kXR_notify 
kXR_noerrs 
kXR_stage 
kXR_wmode 
kXR_coloc 
kXR_fresh 
kXR_usetcp 
kXR_evict 

Definition at line 586 of file XProtocol.hh.

586 {
587 kXR_cancel = 1,
588 kXR_notify = 2,
589 kXR_noerrs = 4,
590 kXR_stage = 8,
591 kXR_wmode = 16,
592 kXR_coloc = 32,
593 kXR_fresh = 64,
594 kXR_usetcp = 128,
595
596 kXR_evict = 0x0001 // optionsX: file no longer useful
597};
@ kXR_wmode
Definition XProtocol.hh:591
@ kXR_evict
Definition XProtocol.hh:596
@ kXR_usetcp
Definition XProtocol.hh:594
@ kXR_cancel
Definition XProtocol.hh:587
@ kXR_fresh
Definition XProtocol.hh:593
@ kXR_notify
Definition XProtocol.hh:588
@ kXR_coloc
Definition XProtocol.hh:592
@ kXR_stage
Definition XProtocol.hh:590
@ kXR_noerrs
Definition XProtocol.hh:589

◆ XQueryType

enum XQueryType
Enumerator
kXR_QStats 
kXR_QPrep 
kXR_Qcksum 
kXR_Qxattr 
kXR_Qspace 
kXR_Qckscan 
kXR_Qconfig 
kXR_Qvisa 
kXR_Qopaque 
kXR_Qopaquf 
kXR_Qopaqug 

Definition at line 614 of file XProtocol.hh.

614 {
615 kXR_QStats = 1,
616 kXR_QPrep = 2,
617 kXR_Qcksum = 3,
618 kXR_Qxattr = 4,
619 kXR_Qspace = 5,
620 kXR_Qckscan= 6,
621 kXR_Qconfig= 7,
622 kXR_Qvisa = 8,
623 kXR_Qopaque=16,
624 kXR_Qopaquf=32,
625 kXR_Qopaqug=64
626};
@ kXR_QPrep
Definition XProtocol.hh:616
@ kXR_Qopaqug
Definition XProtocol.hh:625
@ kXR_Qconfig
Definition XProtocol.hh:621
@ kXR_Qopaquf
Definition XProtocol.hh:624
@ kXR_Qckscan
Definition XProtocol.hh:620
@ kXR_Qxattr
Definition XProtocol.hh:618
@ kXR_Qspace
Definition XProtocol.hh:619
@ kXR_Qvisa
Definition XProtocol.hh:622
@ kXR_QStats
Definition XProtocol.hh:615
@ kXR_Qcksum
Definition XProtocol.hh:617
@ kXR_Qopaque
Definition XProtocol.hh:623

◆ XRequestTypes

Enumerator
kXR_1stRequest 
kXR_auth 
kXR_query 
kXR_chmod 
kXR_close 
kXR_dirlist 
kXR_gpfile 
kXR_protocol 
kXR_login 
kXR_mkdir 
kXR_mv 
kXR_open 
kXR_ping 
kXR_chkpoint 
kXR_read 
kXR_rm 
kXR_rmdir 
kXR_sync 
kXR_stat 
kXR_set 
kXR_write 
kXR_fattr 
kXR_prepare 
kXR_statx 
kXR_endsess 
kXR_bind 
kXR_readv 
kXR_pgwrite 
kXR_locate 
kXR_truncate 
kXR_sigver 
kXR_pgread 
kXR_writev 
kXR_REQFENCE 

Definition at line 110 of file XProtocol.hh.

110 {
111 kXR_1stRequest= 3000,
112 kXR_auth = 3000,
113 kXR_query, // 3001
114 kXR_chmod, // 3002
115 kXR_close, // 3003
116 kXR_dirlist, // 3004
117 kXR_gpfile, // 3005 was kXR_getfile
118 kXR_protocol,// 3006
119 kXR_login, // 3007
120 kXR_mkdir, // 3008
121 kXR_mv, // 3009
122 kXR_open, // 3010
123 kXR_ping, // 3011
124 kXR_chkpoint,// 3012 was kXR_putfile
125 kXR_read, // 3013
126 kXR_rm, // 3014
127 kXR_rmdir, // 3015
128 kXR_sync, // 3016
129 kXR_stat, // 3017
130 kXR_set, // 3018
131 kXR_write, // 3019
132 kXR_fattr, // 3020 was kXR_admin
133 kXR_prepare, // 3021
134 kXR_statx, // 3022
135 kXR_endsess, // 3023
136 kXR_bind, // 3024
137 kXR_readv, // 3025
138 kXR_pgwrite, // 3026 was kXR_verifyw
139 kXR_locate, // 3027
140 kXR_truncate,// 3028
141 kXR_sigver, // 3029
142 kXR_pgread, // 3030 was kXR_decrypt
143 kXR_writev, // 3031
144 kXR_REQFENCE // Always last valid request code +1
145};
@ kXR_read
Definition XProtocol.hh:125
@ kXR_open
Definition XProtocol.hh:122
@ kXR_writev
Definition XProtocol.hh:143
@ kXR_readv
Definition XProtocol.hh:137
@ kXR_mkdir
Definition XProtocol.hh:120
@ kXR_sync
Definition XProtocol.hh:128
@ kXR_REQFENCE
Definition XProtocol.hh:144
@ kXR_chmod
Definition XProtocol.hh:114
@ kXR_bind
Definition XProtocol.hh:136
@ kXR_dirlist
Definition XProtocol.hh:116
@ kXR_sigver
Definition XProtocol.hh:141
@ kXR_fattr
Definition XProtocol.hh:132
@ kXR_rm
Definition XProtocol.hh:126
@ kXR_query
Definition XProtocol.hh:113
@ kXR_write
Definition XProtocol.hh:131
@ kXR_gpfile
Definition XProtocol.hh:117
@ kXR_login
Definition XProtocol.hh:119
@ kXR_auth
Definition XProtocol.hh:112
@ kXR_endsess
Definition XProtocol.hh:135
@ kXR_set
Definition XProtocol.hh:130
@ kXR_rmdir
Definition XProtocol.hh:127
@ kXR_1stRequest
Definition XProtocol.hh:111
@ kXR_statx
Definition XProtocol.hh:134
@ kXR_truncate
Definition XProtocol.hh:140
@ kXR_protocol
Definition XProtocol.hh:118
@ kXR_mv
Definition XProtocol.hh:121
@ kXR_ping
Definition XProtocol.hh:123
@ kXR_stat
Definition XProtocol.hh:129
@ kXR_pgread
Definition XProtocol.hh:142
@ kXR_chkpoint
Definition XProtocol.hh:124
@ kXR_locate
Definition XProtocol.hh:139
@ kXR_close
Definition XProtocol.hh:115
@ kXR_pgwrite
Definition XProtocol.hh:138
@ kXR_prepare
Definition XProtocol.hh:133

◆ XResponseType

Enumerator
kXR_ok 
kXR_oksofar 
kXR_attn 
kXR_authmore 
kXR_error 
kXR_redirect 
kXR_wait 
kXR_waitresp 
kXR_status 
kXR_noResponsesYet 

Definition at line 898 of file XProtocol.hh.

898 {
899 kXR_ok = 0,
900 kXR_oksofar = 4000,
901 kXR_attn, // 4001
902 kXR_authmore,// 4002
903 kXR_error, // 4003
904 kXR_redirect,// 4004
905 kXR_wait, // 4005
906 kXR_waitresp,// 4006
907 kXR_status, // 4007
908 kXR_noResponsesYet = 10000
909};
@ kXR_noResponsesYet
Definition XProtocol.hh:908
@ kXR_waitresp
Definition XProtocol.hh:906
@ kXR_redirect
Definition XProtocol.hh:904
@ kXR_oksofar
Definition XProtocol.hh:900
@ kXR_status
Definition XProtocol.hh:907
@ kXR_ok
Definition XProtocol.hh:899
@ kXR_authmore
Definition XProtocol.hh:902
@ kXR_attn
Definition XProtocol.hh:901
@ kXR_wait
Definition XProtocol.hh:905
@ kXR_error
Definition XProtocol.hh:903

◆ XSecCrypto

enum XSecCrypto
Enumerator
kXR_SHA256 
kXR_HashMask 
kXR_rsaKey 

Definition at line 730 of file XProtocol.hh.

730 {
731 kXR_SHA256 = 0x01, // Hash used
732 kXR_HashMask = 0x0f, // Mak to extract the hash type
733 kXR_rsaKey = 0x80 // The rsa key was used
734};
@ kXR_SHA256
Definition XProtocol.hh:731
@ kXR_HashMask
Definition XProtocol.hh:732
@ kXR_rsaKey
Definition XProtocol.hh:733

◆ XSecFlags

enum XSecFlags
Enumerator
kXR_nodata 

Definition at line 737 of file XProtocol.hh.

737 {
738 kXR_nodata = 1 // Request payload was not hashed
739};
@ kXR_nodata
Definition XProtocol.hh:738

◆ XSecVersion

Enumerator
kXR_Ver_00 

Definition at line 742 of file XProtocol.hh.

742 {
743 kXR_Ver_00 = 0
744};
@ kXR_Ver_00
Definition XProtocol.hh:743

◆ XStatRequestOption

Enumerator
kXR_vfs 

Definition at line 762 of file XProtocol.hh.

762 {
763 kXR_vfs = 1
764};
@ kXR_vfs
Definition XProtocol.hh:763

◆ XStatRespFlags

Enumerator
kXR_file 
kXR_xset 
kXR_isDir 
kXR_other 
kXR_offline 
kXR_readable 
kXR_writable 
kXR_poscpend 
kXR_bkpexist 
kXR_cachersp 

Definition at line 1218 of file XProtocol.hh.

1218 {
1219 kXR_file = 0,
1220 kXR_xset = 1,
1221 kXR_isDir = 2,
1222 kXR_other = 4,
1223 kXR_offline = 8,
1224 kXR_readable=16,
1225 kXR_writable=32,
1226 kXR_poscpend=64,
1227 kXR_bkpexist=128,
1228 kXR_cachersp=512
1229};
@ kXR_readable
@ kXR_file
@ kXR_isDir
@ kXR_offline
@ kXR_bkpexist
@ kXR_other
@ kXR_poscpend
@ kXR_writable
@ kXR_cachersp
@ kXR_xset

◆ XVirtRequestTypes

Enumerator
kXR_virtReadv 

Definition at line 149 of file XProtocol.hh.

149 {
150 kXR_virtReadv = 2000
151};
@ kXR_virtReadv
Definition XProtocol.hh:150

Variable Documentation

◆ kXR_ckpBegin

const int kXR_ckpBegin = 0
static

Definition at line 212 of file XProtocol.hh.

Referenced by XrdCl::XRootDTransport::GenerateDescription().

◆ kXR_ckpCommit

const int kXR_ckpCommit = 1
static

Definition at line 213 of file XProtocol.hh.

Referenced by XrdCl::XRootDTransport::GenerateDescription().

◆ kXR_ckpMinMax

const int kXR_ckpMinMax = 104857604
static

Definition at line 220 of file XProtocol.hh.

◆ kXR_ckpQuery

const int kXR_ckpQuery = 2
static

Definition at line 214 of file XProtocol.hh.

Referenced by XrdCl::XRootDTransport::GenerateDescription().

◆ kXR_ckpRollback

const int kXR_ckpRollback = 3
static

Definition at line 215 of file XProtocol.hh.

Referenced by XrdCl::XRootDTransport::GenerateDescription().

◆ kXR_ckpXeq