XRootD
Loading...
Searching...
No Matches
XrdCmsRRData.hh
Go to the documentation of this file.
1#ifndef __XRDCMSRRDATA_H__
2#define __XRDCMSRRDATA_H__
3/******************************************************************************/
4/* */
5/* X r d C m s R R D a t a . h h */
6/* */
7/* (c) 2007 by the Board of Trustees of the Leland Stanford, Jr., University */
8/* All Rights Reserved */
9/* Produced by Andrew Hanushevsky for Stanford University under contract */
10/* DE-AC02-76-SFO0515 with the Department of Energy */
11/* */
12/* This file is part of the XRootD software suite. */
13/* */
14/* XRootD is free software: you can redistribute it and/or modify it under */
15/* the terms of the GNU Lesser General Public License as published by the */
16/* Free Software Foundation, either version 3 of the License, or (at your */
17/* option) any later version. */
18/* */
19/* XRootD is distributed in the hope that it will be useful, but WITHOUT */
20/* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
21/* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
22/* License for more details. */
23/* */
24/* You should have received a copy of the GNU Lesser General Public License */
25/* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
26/* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
27/* */
28/* The copyright holder's institutional names and contributor's names may not */
29/* be used to endorse or promote products derived from this software without */
30/* specific prior written permission of the institution or contributor. */
31/******************************************************************************/
32
33#include <cstdlib>
34
36
38{
39public:
40
41 char *theAuth;
42 char *theSID;
43 char *thePaths;
44 int totLen;
45
46// XrdCmsRLData() {} Lack of constructor makes this a POD type
47// ~XrdCmsRLData() {} Lack of destructor makes this a POD type
48};
49
50
52{
53public:
55 char *Path; // all -prepcan
56 char *Opaque; // all -prepcan
57 char *Path2; // mv
58 char *Opaque2; // mv
59 char *Avoid; // locate, select
60 char *Reqid; // prepadd, prepcan
61 char *Notify; // prepadd
62 char *Prty; // prepadd
63 char *Mode; // chmod, mkdir, mkpath, prepadd
64 char *Ident; // all
65 unsigned int Opts; // locate, select
66 int PathLen; // locate, prepadd, select (inc null byte)
67 unsigned int dskFree; // avail, load
68union {unsigned int dskUtil; // avail
69 int waitVal;
70 };
71 char *Buff; // Buffer underlying the pointers
72 int Blen; // Length of buffer
73 int Dlen; // Length of data in the buffer
74 int Routing; // Routing options
75
83
84 Arg_Count // Always the last item which equals the number of elements
85};
86
88
89 int getBuff(size_t bsz);
90
91// XrdCmsRRData() {} Lack of constructor makes this a POD type
92// ~XrdCmsRRData() {} Lack of destructor makes this a POD type
93
94XrdCmsRRData *Next; // POD types canot have private members so virtual private
95};
96#endif
unsigned int Opts
static XrdCmsRRData * Objectify(XrdCmsRRData *op=0)
unsigned int dskFree
XrdCmsRRData * Next
int getBuff(size_t bsz)
XrdCms::CmsRRHdr Request