35 #include <netinet/in.h>
103 bool lsall=
false,
bool lsuniq=
false);
114 char *Avoid,
bool &doRedir);
137 void Disc(
const char *reason=0,
int needLock=1);
152 {
if (strcmp(
myNID, nid))
return 0;
153 if (*nid ==
'*')
return 1;
184 inline int Send(
const char *buff,
int blen=0)
186 inline int Send(
const struct iovec *
iov,
int iovcnt,
int iotot=0)
215 int port=0,
int lvl=0,
int id=-1);
224 const char *
fsFail(
const char *Who,
const char *What,
const char *Path,
int rc);
225 int getMode(
const char *theMode, mode_t &Mode);
226 int getSize(
const char *theSize,
long long &Size);
unsigned int ConfigID
Definition: XrdCmsNode.hh:92
char rsvd
Definition: XrdCmsNode.hh:74
const char * do_Trunc(XrdCmsRRData &Arg)
int do_SelAvoid(XrdCmsRRData &Arg, XrdCmsSelect &Sel, char *Avoid, bool &doRedir)
RAtomic_int RefTotW
Definition: XrdCmsNode.hh:256
RAtomic_int RefW
Definition: XrdCmsNode.hh:255
short subsPort
Definition: XrdCmsNode.hh:244
Definition: XrdCmsManager.hh:55
char * Ident
Definition: XrdCmsNode.hh:61
XrdCmsNode(XrdLink *lnkp, const char *theIF=0, const char *sid=0, int port=0, int lvl=0, int id=-1)
Definition: XrdCmsPrepArgs.hh:40
RAtomic_uint refCnt
Definition: XrdCmsNode.hh:230
static int do_SelPrep(XrdCmsPrepArgs &Arg)
char TimeZone
Definition: XrdCmsNode.hh:76
RAtomic_int RefR
Definition: XrdCmsNode.hh:257
int myLevel
Definition: XrdCmsNode.hh:243
const char * do_Status(XrdCmsRRData &Arg)
char isNoStage
Definition: XrdCmsNode.hh:66
const char * do_Mkpath(XrdCmsRRData &Arg)
Definition: XrdSysPthread.hh:329
short getSlot()
Definition: XrdCmsNode.hh:208
Definition: XrdCmsCluster.hh:114
void setVersion(unsigned short vnum)
Definition: XrdCmsNode.hh:205
const char * do_Rmdir(XrdCmsRRData &Arg)
void Disc(const char *reason=0, int needLock=1)
Definition: XrdCmsClustID.hh:40
char isKnown
Definition: XrdCmsNode.hh:70
const char * do_Pong(XrdCmsRRData &Arg)
static const int fsL2PFail1
Definition: XrdCmsNode.hh:219
int myNlen
Definition: XrdCmsNode.hh:249
void setShare(int shrval)
Definition: XrdCmsNode.hh:193
char isConn
Definition: XrdCmsNode.hh:71
Definition: XrdCmsSelect.hh:104
int Same(const XrdNetAddrInfo *ipAddr, bool plusPort=false)
int Send(const struct iovec *iov, int iovcnt, int iotot=0)
Definition: XrdCmsNode.hh:186
int isNode(XrdLink *lp, const char *nid, int port)
Definition: XrdCmsNode.hh:150
void unRef()
Definition: XrdCmsNode.hh:180
const char * do_Ping(XrdCmsRRData &Arg)
char * myCID
Definition: XrdCmsNode.hh:246
int isNode(const XrdNetAddr *addr)
Definition: XrdCmsNode.hh:147
short RSlot
Definition: XrdCmsNode.hh:259
static const char allowsRW
Definition: XrdCmsNode.hh:84
int Inst()
Definition: XrdCmsNode.hh:141
void g2nLock(XrdSysRWLock &gMutex)
Definition: XrdCmsNode.hh:162
void DeleteWarn(unsigned int lkVal)
const char * do_Chmod(XrdCmsRRData &Arg)
Definition: XrdNetIF.hh:48
int setTZone(int tZone)
Definition: XrdCmsNode.hh:198
int do_StateFWD(XrdCmsRRData &Arg)
RAtomic_int RefTotR
Definition: XrdCmsNode.hh:258
int DiskNums
Definition: XrdCmsNode.hh:88
static bool InDomain(XrdNetAddrInfo *epaddr)
void ReadLock()
Definition: XrdSysPthread.hh:342
XrdNetAddr netID
Definition: XrdCmsNode.hh:233
Definition: XrdCmsBaseFS.hh:48
int myMass
Definition: XrdCmsNode.hh:254
char isBound
Definition: XrdCmsNode.hh:69
RAtomic_char Shrem
Definition: XrdCmsNode.hh:261
void setManager(XrdCmsManager *mP)
Definition: XrdCmsNode.hh:189
XrdCmsClustID * cidP
Definition: XrdCmsNode.hh:239
XrdCmsManager * Manager
Definition: XrdCmsNode.hh:235
int fsExec(XrdOucProg *Prog, char *Arg1, char *Arg2=0)
void Delete(XrdSysMutex &gMutex)
Definition: XrdCmsNode.hh:132
const char * do_Try(XrdCmsRRData &Arg)
Definition: XrdNetAddr.hh:41
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:252
void Lock()
Definition: XrdCmsNode.hh:175
const char * do_PrepAdd(XrdCmsRRData &Arg)
const XrdNetAddr * NetAddr() const
void setSlot(short rslot)
Definition: XrdCmsNode.hh:207
Definition: XrdSysPthread.hh:433
int Instance
Definition: XrdCmsNode.hh:242
Definition: XrdSysPthread.hh:164
char RoleID
Definition: XrdCmsNode.hh:75
unsigned int DiskTotal
Definition: XrdCmsNode.hh:87
static XrdSysMutex mlMutex
Definition: XrdCmsNode.hh:268
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)
int Port()
Definition: XrdNetIF.hh:276
SMask_t NodeMask
Definition: XrdCmsNode.hh:240
void WriteLock()
Definition: XrdSysPthread.hh:343
const char * do_Mv(XrdCmsRRData &Arg)
static const char allowsSS
Definition: XrdCmsNode.hh:85
int getSize(const char *theSize, long long &Size)
char isPeer
Definition: XrdCmsNode.hh:68
Definition: XrdLink.hh:51
void Ref()
Definition: XrdCmsNode.hh:179
Definition: XrdOucProg.hh:37
unsigned short myVersion
Definition: XrdCmsNode.hh:245
char TZValid
Definition: XrdCmsNode.hh:77
void setHash(XrdCmsSelect &Sel, int acount)
char Rsvd[3]
Definition: XrdCmsNode.hh:264
Definition: XrdCmsRRData.hh:51
Definition: XrdCmsBaseFS.hh:87
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:160
const char * do_Select(XrdCmsRRData &Arg)
const char * do_Mkdir(XrdCmsRRData &Arg)
int DiskFree
Definition: XrdCmsNode.hh:90
char isOffline
Definition: XrdCmsNode.hh:64
int NodeID
Definition: XrdCmsNode.hh:241
const char * do_Usage(XrdCmsRRData &Arg)
void setName(XrdLink *lnkp, const char *theIF, int port)
static int LastFree
Definition: XrdCmsNode.hh:269
const char * do_State(XrdCmsRRData &Arg)
char isPerm
Definition: XrdCmsNode.hh:73
char * myNID
Definition: XrdCmsNode.hh:247
static void Report_Usage(XrdLink *lp)
XrdCmsDrop * DropJob
Definition: XrdCmsNode.hh:237
const char * do_Gone(XrdCmsRRData &Arg)
const char * do_StatFS(XrdCmsRRData &Arg)
int Send(const char *buff, int blen)
char Shrip
Definition: XrdCmsNode.hh:263
char * myName
Definition: XrdCmsNode.hh:248
const char * do_Update(XrdCmsRRData &Arg)
const char * do_Load(XrdCmsRRData &Arg)
const char * do_Locate(XrdCmsRRData &Arg)
XrdNetIF netIF
Definition: XrdCmsNode.hh:234
const char * do_Have(XrdCmsRRData &Arg)
time_t DropTime
Definition: XrdCmsNode.hh:236
char * Name()
Definition: XrdCmsNode.hh:158
char isRW
Definition: XrdCmsNode.hh:65
void Lock()
Definition: XrdSysPthread.hh:222
const char * do_Stats(XrdCmsRRData &Arg)
void n2gLock(XrdSysRWLock &gMutex, bool rdlock=false)
Definition: XrdCmsNode.hh:168
bool inDomain()
Definition: XrdCmsNode.hh:143
static const char isDoomed
Definition: XrdCmsNode.hh:82
XrdSysMutex nodeMutex
Definition: XrdCmsNode.hh:229
void Delete(XrdSysRWLock &gMutex)
Definition: XrdCmsNode.hh:129
static const char isSuspend
Definition: XrdCmsNode.hh:81
static const char isBlisted
Definition: XrdCmsNode.hh:79
int Send(const char *buff, int blen=0)
Definition: XrdCmsNode.hh:184
static const char isDisabled
Definition: XrdCmsNode.hh:80
char isMan
Definition: XrdCmsNode.hh:67
void ShowIF()
Definition: XrdCmsNode.hh:210
static void do_StateDFS(XrdCmsBaseFR *rP, int rc)
friend class XrdCmsDrop
Definition: XrdCmsCluster.hh:117
char isGone
Definition: XrdCmsNode.hh:72
Definition: XrdCmsNode.hh:57
int DiskUtil
Definition: XrdCmsNode.hh:91
int logload
Definition: XrdCmsNode.hh:251
void UnLock()
Definition: XrdCmsNode.hh:177
void Display(const char *pfx="=====> ")
void UnLock()
Definition: XrdSysPthread.hh:224
static const int fsL2PFail2
Definition: XrdCmsNode.hh:220
char isBad
Definition: XrdCmsNode.hh:63
RAtomic_char Shrin
Definition: XrdCmsNode.hh:262
Definition: XrdCmsSelect.hh:43
const char * do_Disc(XrdCmsRRData &Arg)
void UnLock()
Definition: XrdSysPthread.hh:348
int ID(int &INum)
Definition: XrdCmsNode.hh:139
char hasNet
Definition: XrdCmsNode.hh:62
XrdLink * Link
Definition: XrdCmsNode.hh:232
int DiskMinF
Definition: XrdCmsNode.hh:89
int isNode(SMask_t smask)
Definition: XrdCmsNode.hh:145
const char * do_Rm(XrdCmsRRData &Arg)
int myLoad
Definition: XrdCmsNode.hh:253
char Share
Definition: XrdCmsNode.hh:260