35 #include <netinet/in.h> 102 bool lsall=
false,
bool lsuniq=
false);
113 char *Avoid,
bool &doRedir);
130 void Disc(
const char *reason=0,
int needLock=1);
145 {
if (strcmp(
myNID, nid))
return 0;
146 if (*nid ==
'*')
return 1;
195 inline int Send(
const char *buff,
int blen=0)
197 inline int Send(
const struct iovec *
iov,
int iovcnt,
int iotot=0)
226 int port=0,
int lvl=0,
int id=-1);
235 const char *
fsFail(
const char *Who,
const char *What,
const char *Path,
int rc);
236 int getMode(
const char *theMode, mode_t &Mode);
237 int getSize(
const char *theSize,
long long &Size);
unsigned int ConfigID
Definition: XrdCmsNode.hh:91
int RefTotW
Definition: XrdCmsNode.hh:268
const char * do_Trunc(XrdCmsRRData &Arg)
int do_SelAvoid(XrdCmsRRData &Arg, XrdCmsSelect &Sel, char *Avoid, bool &doRedir)
short subsPort
Definition: XrdCmsNode.hh:256
Definition: XrdCmsManager.hh:55
char * Ident
Definition: XrdCmsNode.hh:60
const XrdNetAddr * NetAddr() const
XrdCmsNode(XrdLink *lnkp, const char *theIF=0, const char *sid=0, int port=0, int lvl=0, int id=-1)
Definition: XrdCmsPrepArgs.hh:40
static int do_SelPrep(XrdCmsPrepArgs &Arg)
char TimeZone
Definition: XrdCmsNode.hh:75
int myLevel
Definition: XrdCmsNode.hh:255
const char * do_Status(XrdCmsRRData &Arg)
char isNoStage
Definition: XrdCmsNode.hh:65
const char * do_Mkpath(XrdCmsRRData &Arg)
short getSlot()
Definition: XrdCmsNode.hh:219
Definition: XrdCmsCluster.hh:113
void setVersion(unsigned short vnum)
Definition: XrdCmsNode.hh:216
const char * do_Rmdir(XrdCmsRRData &Arg)
void Disc(const char *reason=0, int needLock=1)
Definition: XrdCmsClustID.hh:40
char isKnown
Definition: XrdCmsNode.hh:69
const char * do_Pong(XrdCmsRRData &Arg)
static const int fsL2PFail1
Definition: XrdCmsNode.hh:230
int myNlen
Definition: XrdCmsNode.hh:261
void setShare(int shrval)
Definition: XrdCmsNode.hh:204
char isConn
Definition: XrdCmsNode.hh:70
void g2nLock(XrdSysMutex &gMutex)
Definition: XrdCmsNode.hh:159
Definition: XrdCmsSelect.hh:101
int Same(const XrdNetAddrInfo *ipAddr, bool plusPort=false)
int Send(const struct iovec *iov, int iovcnt, int iotot=0)
Definition: XrdCmsNode.hh:197
int isNode(XrdLink *lp, const char *nid, int port)
Definition: XrdCmsNode.hh:143
const char * do_Ping(XrdCmsRRData &Arg)
void n2gLock(XrdSysMutex &gMutex)
Definition: XrdCmsNode.hh:167
char * myCID
Definition: XrdCmsNode.hh:258
char Shrem
Definition: XrdCmsNode.hh:274
int isNode(const XrdNetAddr *addr)
Definition: XrdCmsNode.hh:140
short RSlot
Definition: XrdCmsNode.hh:271
static const char allowsRW
Definition: XrdCmsNode.hh:83
void DeleteWarn(XrdSysMutex &gMutex, unsigned int &lkVal)
int Inst()
Definition: XrdCmsNode.hh:134
int RefR
Definition: XrdCmsNode.hh:269
int RefTotR
Definition: XrdCmsNode.hh:270
const char * do_Chmod(XrdCmsRRData &Arg)
Definition: XrdNetIF.hh:48
int setTZone(int tZone)
Definition: XrdCmsNode.hh:209
int do_StateFWD(XrdCmsRRData &Arg)
int DiskNums
Definition: XrdCmsNode.hh:87
static bool InDomain(XrdNetAddrInfo *epaddr)
void Signal()
Definition: XrdSysPthread.hh:84
XrdNetAddr netID
Definition: XrdCmsNode.hh:244
Definition: XrdCmsBaseFS.hh:48
int myMass
Definition: XrdCmsNode.hh:266
char isBound
Definition: XrdCmsNode.hh:68
void setManager(XrdCmsManager *mP)
Definition: XrdCmsNode.hh:200
XrdCmsClustID * cidP
Definition: XrdCmsNode.hh:251
XrdCmsManager * Manager
Definition: XrdCmsNode.hh:246
int fsExec(XrdOucProg *Prog, char *Arg1, char *Arg2=0)
void Delete(XrdSysMutex &gMutex)
const char * do_Try(XrdCmsRRData &Arg)
Definition: XrdNetAddr.hh:41
char Rsvd[2]
Definition: XrdCmsNode.hh:276
static int do_LocFmt(char *buff, XrdCmsSelected *sP, SMask_t pf, SMask_t wf, bool lsall=false, bool lsuniq=false)
int myCost
Definition: XrdCmsNode.hh:264
unsigned int ulCount
Definition: XrdCmsNode.hh:241
const char * do_PrepAdd(XrdCmsRRData &Arg)
unsigned int lkCount
Definition: XrdCmsNode.hh:240
void setSlot(short rslot)
Definition: XrdCmsNode.hh:218
int Shrin
Definition: XrdCmsNode.hh:277
int RefW
Definition: XrdCmsNode.hh:267
int Instance
Definition: XrdCmsNode.hh:254
Definition: XrdSysPthread.hh:165
char RoleID
Definition: XrdCmsNode.hh:74
unsigned int DiskTotal
Definition: XrdCmsNode.hh:86
static XrdSysMutex mlMutex
Definition: XrdCmsNode.hh:281
const char * do_Avail(XrdCmsRRData &Arg)
const char * do_Space(XrdCmsRRData &Arg)
Definition: XrdOucIOVec.hh:65
const char * fsFail(const char *Who, const char *What, const char *Path, int rc)
char incUL
Definition: XrdCmsNode.hh:73
int Port()
Definition: XrdNetIF.hh:276
SMask_t NodeMask
Definition: XrdCmsNode.hh:252
const char * do_Mv(XrdCmsRRData &Arg)
static const char allowsSS
Definition: XrdCmsNode.hh:84
int getSize(const char *theSize, long long &Size)
char isPeer
Definition: XrdCmsNode.hh:67
Definition: XrdLink.hh:51
Definition: XrdSysPthread.hh:78
Definition: XrdOucProg.hh:37
unsigned short myVersion
Definition: XrdCmsNode.hh:257
char TZValid
Definition: XrdCmsNode.hh:76
Definition: XrdCmsRRData.hh:51
Definition: XrdCmsBaseFS.hh:87
XrdCmsNode * Next
Definition: XrdCmsNode.hh:247
const char * do_PrepDel(XrdCmsRRData &Arg)
unsigned long long SMask_t
Definition: XrdCmsTypes.hh:33
int getMode(const char *theMode, mode_t &Mode)
SMask_t Mask()
Definition: XrdCmsNode.hh:153
const char * do_Select(XrdCmsRRData &Arg)
const char * do_Mkdir(XrdCmsRRData &Arg)
int DiskFree
Definition: XrdCmsNode.hh:89
char isOffline
Definition: XrdCmsNode.hh:63
int NodeID
Definition: XrdCmsNode.hh:253
const char * do_Usage(XrdCmsRRData &Arg)
XrdSysCondVar nodeMutex
Definition: XrdCmsNode.hh:239
void setName(XrdLink *lnkp, const char *theIF, int port)
static int LastFree
Definition: XrdCmsNode.hh:282
const char * do_State(XrdCmsRRData &Arg)
char isPerm
Definition: XrdCmsNode.hh:72
char * myNID
Definition: XrdCmsNode.hh:259
static void Report_Usage(XrdLink *lp)
XrdCmsDrop * DropJob
Definition: XrdCmsNode.hh:249
const char * do_Gone(XrdCmsRRData &Arg)
const char * do_StatFS(XrdCmsRRData &Arg)
int Send(const char *buff, int blen)
char Shrip
Definition: XrdCmsNode.hh:275
char * myName
Definition: XrdCmsNode.hh:260
const char * do_Update(XrdCmsRRData &Arg)
void Lock(bool doinc)
Definition: XrdCmsNode.hh:177
const char * do_Load(XrdCmsRRData &Arg)
const char * do_Locate(XrdCmsRRData &Arg)
XrdNetIF netIF
Definition: XrdCmsNode.hh:245
const char * do_Have(XrdCmsRRData &Arg)
time_t DropTime
Definition: XrdCmsNode.hh:248
char * Name()
Definition: XrdCmsNode.hh:151
char isRW
Definition: XrdCmsNode.hh:64
void Lock()
Definition: XrdSysPthread.hh:222
void Ref2g(XrdSysMutex &gMutex)
Definition: XrdCmsNode.hh:157
const char * do_Stats(XrdCmsRRData &Arg)
bool inDomain()
Definition: XrdCmsNode.hh:136
static const char isDoomed
Definition: XrdCmsNode.hh:81
static const char isSuspend
Definition: XrdCmsNode.hh:80
static const char isBlisted
Definition: XrdCmsNode.hh:78
int Send(const char *buff, int blen=0)
Definition: XrdCmsNode.hh:195
static const char isDisabled
Definition: XrdCmsNode.hh:79
char isMan
Definition: XrdCmsNode.hh:66
void ShowIF()
Definition: XrdCmsNode.hh:221
static void do_StateDFS(XrdCmsBaseFR *rP, int rc)
friend class XrdCmsDrop
Definition: XrdCmsCluster.hh:116
void UnLock()
Definition: XrdSysPthread.hh:94
char isGone
Definition: XrdCmsNode.hh:71
Definition: XrdCmsNode.hh:56
int DiskUtil
Definition: XrdCmsNode.hh:90
int logload
Definition: XrdCmsNode.hh:263
void UnLock()
Definition: XrdCmsNode.hh:185
char isLocked
Definition: XrdCmsNode.hh:272
void Display(const char *pfx="=====> ")
void g2Ref(XrdSysMutex &gMutex)
Definition: XrdCmsNode.hh:155
void UnLock()
Definition: XrdSysPthread.hh:224
static const int fsL2PFail2
Definition: XrdCmsNode.hh:231
char isBad
Definition: XrdCmsNode.hh:62
Definition: XrdCmsSelect.hh:43
const char * do_Disc(XrdCmsRRData &Arg)
int ID(int &INum)
Definition: XrdCmsNode.hh:132
char hasNet
Definition: XrdCmsNode.hh:61
XrdLink * Link
Definition: XrdCmsNode.hh:243
void Lock()
Definition: XrdSysPthread.hh:82
int DiskMinF
Definition: XrdCmsNode.hh:88
int isNode(SMask_t smask)
Definition: XrdCmsNode.hh:138
const char * do_Rm(XrdCmsRRData &Arg)
int myLoad
Definition: XrdCmsNode.hh:265
char Share
Definition: XrdCmsNode.hh:273