#include <XrdCmsNode.hh>
Public Member Functions | |
const char * | do_Avail (XrdCmsRRData &Arg) |
const char * | do_Chmod (XrdCmsRRData &Arg) |
const char * | do_Disc (XrdCmsRRData &Arg) |
const char * | do_Gone (XrdCmsRRData &Arg) |
const char * | do_Have (XrdCmsRRData &Arg) |
const char * | do_Load (XrdCmsRRData &Arg) |
const char * | do_Locate (XrdCmsRRData &Arg) |
const char * | do_Mkdir (XrdCmsRRData &Arg) |
const char * | do_Mkpath (XrdCmsRRData &Arg) |
const char * | do_Mv (XrdCmsRRData &Arg) |
const char * | do_Ping (XrdCmsRRData &Arg) |
const char * | do_Pong (XrdCmsRRData &Arg) |
const char * | do_PrepAdd (XrdCmsRRData &Arg) |
const char * | do_PrepDel (XrdCmsRRData &Arg) |
const char * | do_Rm (XrdCmsRRData &Arg) |
const char * | do_Rmdir (XrdCmsRRData &Arg) |
const char * | do_Select (XrdCmsRRData &Arg) |
const char * | do_Space (XrdCmsRRData &Arg) |
const char * | do_State (XrdCmsRRData &Arg) |
int | do_StateFWD (XrdCmsRRData &Arg) |
const char * | do_StatFS (XrdCmsRRData &Arg) |
const char * | do_Stats (XrdCmsRRData &Arg) |
const char * | do_Status (XrdCmsRRData &Arg) |
const char * | do_Trunc (XrdCmsRRData &Arg) |
const char * | do_Try (XrdCmsRRData &Arg) |
const char * | do_Update (XrdCmsRRData &Arg) |
const char * | do_Usage (XrdCmsRRData &Arg) |
void | Disc (const char *reason=0, int needLock=1) |
int | ID (int &INum) |
int | Inst () |
int | isNode (SMask_t smask) |
int | isNode (const char *hn) |
int | isNode (unsigned int ipa) |
int | isNode (unsigned int ipa, const char *nid) |
char * | Name () |
char * | Name (int &len, int &port) |
SMask_t | Mask () |
void | Lock () |
void | UnLock () |
int | Send (const char *buff, int blen=0) |
int | Send (const struct iovec *iov, int iovcnt, int iotot=0) |
void | setName (XrdLink *lnkp, int port) |
void | setSlot (short rslot) |
short | getSlot () |
void | SyncSpace () |
XrdCmsNode (XrdLink *lnkp, int port=0, const char *sid=0, int lvl=0, int id=-1) | |
~XrdCmsNode () | |
Static Public Member Functions | |
static int | do_LocFmt (char *buff, XrdCmsSelected *sP, SMask_t pf, SMask_t wf) |
static int | do_SelPrep (XrdCmsPrepArgs &Arg) |
static void | Report_Usage (XrdLink *lp) |
Public Attributes | |
char * | Ident |
char | isDisable |
char | isOffline |
char | isNoStage |
char | isMan |
char | isPeer |
char | isProxy |
char | isSuspend |
char | isBound |
char | isRW |
char | isKnown |
char | isConn |
char | isGone |
char | isPerm |
char | isReserved [3] |
unsigned int | DiskTotal |
int | DiskNums |
int | DiskMinF |
int | DiskFree |
int | DiskUtil |
unsigned int | ConfigID |
Static Public Attributes | |
static const char | allowsRW = 0x01 |
static const char | allowsSS = 0x02 |
Private Member Functions | |
int | fsExec (XrdOucProg *Prog, char *Arg1, char *Arg2=0) |
const char * | fsFail (const char *Who, const char *What, const char *Path, int rc) |
int | getMode (const char *theMode, mode_t &Mode) |
int | getSize (const char *theSize, long long &Size) |
Static Private Member Functions | |
static int | isOnline (char *path, int upt=1) |
Private Attributes | |
XrdSysMutex | myMutex |
XrdLink * | Link |
unsigned int | IPAddr |
XrdCmsNode * | Next |
time_t | DropTime |
XrdCmsDrop * | DropJob |
int | IPV6Len |
char | IPV6 [28] |
SMask_t | NodeMask |
int | NodeID |
int | Instance |
int | Port |
int | myLevel |
int | myCNUM |
char * | myCID |
char * | myNID |
char * | myName |
int | myNlen |
int | logload |
int | myCost |
int | myLoad |
int | myMass |
int | RefA |
int | RefTotA |
int | RefR |
int | RefTotR |
short | RSlot |
char | isLocked |
char | RSVD |
Static Private Attributes | |
static const int | fsL2PFail1 = 999991 |
static const int | fsL2PFail2 = 999992 |
static XrdSysMutex | mlMutex |
static int | LastFree |
Friends | |
class | XrdCmsCluster |
Definition at line 30 of file XrdCmsNode.hh.
XrdCmsNode::XrdCmsNode | ( | XrdLink * | lnkp, | |
int | port = 0 , |
|||
const char * | sid = 0 , |
|||
int | lvl = 0 , |
|||
int | id = -1 | |||
) |
Definition at line 72 of file XrdCmsNode.cc.
References XrdFrm::Config(), ConfigID, DiskFree, DiskMinF, DiskNums, DiskTotal, DiskUtil, DropJob, DropTime, Ident, Instance, IPAddr, isBound, isConn, isDisable, isGone, isKnown, isMan, isNoStage, isOffline, isPeer, isPerm, isProxy, isSuspend, Link, XrdSysMutex::Lock(), logload, myCID, myCNUM, myCost, myLevel, myLoad, myMass, myName, myNID, myNlen, Next, NodeID, NodeMask, Port, RefA, RefR, RefTotA, RefTotR, setName(), and XrdSysMutex::UnLock().
XrdCmsNode::~XrdCmsNode | ( | ) |
const char * XrdCmsNode::do_Avail | ( | XrdCmsRRData & | Arg | ) |
Definition at line 222 of file XrdCmsNode.cc.
References DEBUGR, DiskFree, DiskUtil, XrdCmsRRData::dskFree, XrdCmsRRData::dskUtil, and EPNAME.
const char * XrdCmsNode::do_Chmod | ( | XrdCmsRRData & | Arg | ) |
Definition at line 243 of file XrdCmsNode.cc.
References XrdOss::Chmod(), XrdCmsXmi::Chmod(), XrdFrm::Config(), DEBUGR, EPNAME, fsExec(), fsFail(), getMode(), XrdCmsRRData::Ident, XrdCmsRRData::Mode, XrdCmsRRData::Opaque, XrdFrmConfig::ossFS, XrdCmsRRData::Path, XrdCmsRRData::Request, XrdCms::CmsRRHdr::streamid, and XrdCms::Xmi_Chmod.
const char * XrdCmsNode::do_Disc | ( | XrdCmsRRData & | Arg | ) |
Definition at line 285 of file XrdCmsNode.cc.
References XrdLink::Close(), XrdFrm::Config(), XrdSysError::Emsg(), isOffline, Link, XrdLink::Name(), XrdCmsRRData::Request, XrdFrm::Say(), and XrdLink::Send().
const char * XrdCmsNode::do_Gone | ( | XrdCmsRRData & | Arg | ) |
Definition at line 310 of file XrdCmsNode.cc.
References XrdCmsSelect::Advisory, XrdCmsRRData::Buff, XrdCms::Cache, XrdFrm::Config(), XrdCmsCache::DelFile(), XrdCmsRRData::Dlen, EPNAME, XrdCmsPrepare::Gone(), XrdCmsManager::Inform(), XrdCms::Manager, NodeMask, XrdCmsRRData::Path, XrdCmsRRData::PathLen, XrdCms::PrepQ, XrdCmsManager::Present(), XrdCmsRRData::Request, and TRACER.
const char * XrdCmsNode::do_Have | ( | XrdCmsRRData & | Arg | ) |
Definition at line 351 of file XrdCmsNode.cc.
References XrdCmsCache::AddFile(), XrdCmsSelect::Advisory, XrdCmsRRData::Buff, XrdCms::Cache, XrdFrm::Config(), XrdCmsRRData::Dlen, EPNAME, XrdCmsPList_Anchor::Find(), XrdCmsKey::Hash, XrdCmsManager::Inform(), XrdCms::Manager, XrdCms::CmsRRHdr::modifier, NodeMask, XrdMpx::Opts, XrdCmsRRData::Path, XrdCmsSelect::Path, XrdCmsRRData::PathLen, XrdCmsCache::Paths, XrdCmsSelect::Pending, XrdCmsManager::Present(), XrdCmsRRData::Request, XrdCmsPInfo::rwvec, XrdCms::CmsRRHdr::streamid, TRACER, and XrdCmsSelect::Write.
const char * XrdCmsNode::do_Load | ( | XrdCmsRRData & | Arg | ) |
Definition at line 396 of file XrdCmsNode.cc.
References XrdCmsMeter::calcLoad(), XrdFrm::Config(), DEBUGR, DiskFree, DiskUtil, do_Pong(), do_Space(), XrdCmsRRData::dskFree, XrdSysError::Emsg(), EPNAME, isRW, LastFree, XrdSysMutex::Lock(), logload, XrdCms::Meter, mlMutex, myLoad, myMass, Name(), XrdCmsRRData::Opaque, XrdCmsMeter::Record(), XrdFrm::Say(), XrdCmsMeter::setVirtUpdt(), snprintf, and XrdSysMutex::UnLock().
const char * XrdCmsNode::do_Locate | ( | XrdCmsRRData & | Arg | ) |
Definition at line 458 of file XrdCmsNode.cc.
References EPNAME, Instance, XrdCmsRRData::Path, XrdCmsRRData::PathLen, XrdCmsRRData::Request, RSlot, STMax, XrdCms::CmsRRHdr::streamid, and Val.
int XrdCmsNode::do_LocFmt | ( | char * | buff, | |
XrdCmsSelected * | sP, | |||
SMask_t | pf, | |||
SMask_t | wf | |||
) | [static] |
Definition at line 541 of file XrdCmsNode.cc.
References XrdCmsSelected::Disable, XrdCmsSelected::IPV6, XrdCmsSelected::IPV6Len, XrdCmsSelected::isMangr, XrdCmsSelected::Mask, XrdCmsSelected::next, XrdCmsSelected::Offline, XrdCmsSelected::Status, and strcpy().
Referenced by XrdCmsRRQ::sendLocResp().
const char * XrdCmsNode::do_Mkdir | ( | XrdCmsRRData & | Arg | ) |
Definition at line 575 of file XrdCmsNode.cc.
References XrdFrm::Config(), DEBUGR, EPNAME, fsExec(), fsFail(), getMode(), XrdCmsRRData::Ident, XrdOss::Mkdir(), XrdCmsXmi::Mkdir(), XrdCmsRRData::Mode, XrdCmsRRData::Opaque, XrdFrmConfig::ossFS, XrdCmsRRData::Path, XrdCmsRRData::Request, XrdCms::CmsRRHdr::streamid, and XrdCms::Xmi_Mkdir.
const char * XrdCmsNode::do_Mkpath | ( | XrdCmsRRData & | Arg | ) |
Definition at line 615 of file XrdCmsNode.cc.
References XrdFrm::Config(), DEBUGR, EPNAME, fsExec(), fsFail(), getMode(), XrdCmsRRData::Ident, XrdOss::Mkdir(), XrdCmsXmi::Mkpath(), XrdCmsRRData::Mode, XrdCmsRRData::Opaque, XrdFrmConfig::ossFS, XrdCmsRRData::Path, XrdCmsRRData::Request, XrdCms::CmsRRHdr::streamid, and XrdCms::Xmi_Mkpath.
const char * XrdCmsNode::do_Mv | ( | XrdCmsRRData & | Arg | ) |
Definition at line 655 of file XrdCmsNode.cc.
References XrdCms::Cache, XrdCms::Cluster, XrdFrm::Config(), DEBUGR, XrdCmsSelect::Defer, XrdCmsCache::DelFile(), XrdSysError::Emsg(), EPNAME, fsExec(), fsFail(), XrdCmsSelect::hf, XrdCmsRRData::Ident, XrdCmsSelect::InfoP, XrdCmsSelect::iovN, XrdCmsSelect::iovP, XrdCms::kYR_dnf, XrdCms::CmsRRHdr::modifier, XrdCmsSelect::nmask, XrdCmsRRData::Opaque, XrdCmsRRData::Opaque2, XrdFrmConfig::ossFS, XrdCmsRRData::Path, XrdCmsRRData::Path2, XrdOss::Rename(), XrdCmsXmi::Rename(), XrdCmsRRData::Request, XrdFrm::Say(), XrdCmsCluster::Select(), XrdCms::CmsRRHdr::streamid, XrdCmsSelect::Vec, XrdCmsRRData::waitVal, and XrdCms::Xmi_Rename.
const char * XrdCmsNode::do_Ping | ( | XrdCmsRRData & | Arg | ) |
Definition at line 719 of file XrdCmsNode.cc.
References XrdCms::kYR_pong, Link, and XrdLink::Send().
const char * XrdCmsNode::do_Pong | ( | XrdCmsRRData & | Arg | ) |
const char * XrdCmsNode::do_PrepAdd | ( | XrdCmsRRData & | Arg | ) |
Definition at line 748 of file XrdCmsNode.cc.
References DEBUGR, EPNAME, XrdCmsRRData::Mode, XrdCmsRRData::Notify, XrdCmsRRData::Opaque, XrdCmsRRData::Opts, XrdCmsRRData::Path, XrdCmsXmi::Prep(), XrdCmsRRData::Prty, XrdCmsRRData::Reqid, XrdCms::Xmi_Prep, and XMI_RW.
const char * XrdCmsNode::do_PrepDel | ( | XrdCmsRRData & | Arg | ) |
Definition at line 775 of file XrdCmsNode.cc.
References XrdFrm::Config(), DEBUGR, XrdCmsPrepare::Del(), EPNAME, XrdCmsXmi::Prep(), XrdCms::PrepQ, XrdCmsRRData::Reqid, XMI_CANCEL, and XrdCms::Xmi_Prep.
const char * XrdCmsNode::do_Rm | ( | XrdCmsRRData & | Arg | ) |
Definition at line 804 of file XrdCmsNode.cc.
References XrdCms::Cache, XrdFrm::Config(), DEBUGR, XrdCmsCache::DelFile(), EPNAME, fsExec(), fsFail(), XrdCmsRRData::Ident, XrdCms::kYR_dnf, XrdCms::CmsRRHdr::modifier, XrdCmsRRData::Opaque, XrdFrmConfig::ossFS, XrdCmsRRData::Path, XrdCmsXmi::Remove(), XrdCmsRRData::Request, XrdCms::CmsRRHdr::streamid, XrdOss::Unlink(), and XrdCms::Xmi_Remove.
const char * XrdCmsNode::do_Rmdir | ( | XrdCmsRRData & | Arg | ) |
Definition at line 846 of file XrdCmsNode.cc.
References XrdCms::Cache, XrdFrm::Config(), DEBUGR, XrdCmsCache::DelFile(), EPNAME, fsExec(), fsFail(), XrdCmsRRData::Ident, XrdCms::kYR_dnf, XrdCms::CmsRRHdr::modifier, XrdCmsRRData::Opaque, XrdFrmConfig::ossFS, XrdCmsRRData::Path, XrdOss::Remdir(), XrdCmsXmi::Remdir(), XrdCmsRRData::Request, XrdCms::CmsRRHdr::streamid, and XrdCms::Xmi_Remdir.
const char * XrdCmsNode::do_Select | ( | XrdCmsRRData & | Arg | ) |
Definition at line 889 of file XrdCmsNode.cc.
References XrdCmsRRData::Avoid, XrdCms::Cluster, XrdCmsSelect::Data, XrdCms::CmsRRHdr::datalen, DEBUGR, XrdCmsSelect::DLen, EPNAME, XrdCmsCluster::getMask(), XrdNetDNS::Host2IP(), XrdCmsSelect::InfoP, Instance, iovec::iov_base, iovec::iov_len, XrdCmsSelect::iovN, XrdCmsSelect::iovP, XrdCmsSelect::isMeta, XrdCms::kYR_ENOENT, XrdCms::kYR_error, XrdCms::kYR_redirect, XrdCms::kYR_trunc, XrdCms::kYR_wait, Link, XrdCmsSelect::NewFile, XrdCmsSelect::nmask, XrdCmsSelect::noBind, XrdCmsSelect::Online, XrdCmsRRData::Opaque, XrdCmsRRData::Opts, XrdCmsSelect::Opts, opts, XrdCmsRRData::Path, XrdCmsRRData::PathLen, XrdCmsSelect::Peers, XrdCmsSelect::Port, XrdCmsSelect::Refresh, XrdCmsSelect::Replica, XrdCmsRRData::Request, XrdCmsSelect::Resp, XrdCms::CmsRRHdr::rrCode, RSlot, XrdCmsCluster::Select(), XrdLink::Send(), XrdCmsXmi::Stat(), XrdCms::CmsRRHdr::streamid, XrdCmsSelect::Trunc, XrdCmsSelect::Write, XMI_NEW, XMI_RW, XrdCms::Xmi_Select, XrdCms::Xmi_Stat, and XMI_TRUNC.
int XrdCmsNode::do_SelPrep | ( | XrdCmsPrepArgs & | Arg | ) | [static] |
Definition at line 996 of file XrdCmsNode.cc.
References XrdCmsPrepArgs::clPath, XrdCms::Cluster, XrdCmsSelect::Data, DEBUGR, XrdCmsSelect::Defer, XrdSysError::Emsg(), EPNAME, XrdCmsSelect::Freshen, XrdCmsSelect::InfoP, XrdCmsPrepare::Inform(), XrdCmsPrepArgs::ioV, XrdCmsSelect::iovN, XrdCmsPrepArgs::iovNum, XrdCmsSelect::iovP, XrdCmsSelect::nmask, XrdCmsPrepArgs::opaque, XrdCmsPrepArgs::options, XrdCmsSelect::Opts, opts, XrdCmsPrepArgs::path, XrdCmsPrepArgs::pathlen, XrdCmsSelect::Peers, XrdCmsXmi::Prep(), XrdCms::PrepQ, XrdCmsPrepArgs::reqid, XrdCmsSelect::Resp, XrdFrm::Say(), XrdCms::Sched, XrdScheduler::Schedule(), XrdCmsCluster::Select(), XrdCmsSelect::smask, XrdCmsSelect::Write, XrdCms::Xmi_Prep, and XMI_RW.
Referenced by XrdCmsPrepArgs::DoIt().
const char * XrdCmsNode::do_Space | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1065 of file XrdCmsNode.cc.
References DEBUGR, EPNAME, XrdCmsMeter::FreeSpace(), XrdCmsManager::Inform(), int, iovec::iov_base, iovec::iov_len, XrdCms::kYR_avail, XrdCms::kYR_space, Link, XrdCms::Manager, XrdCms::Meter, XrdOucPup::Pack(), XrdCmsRRData::Request, XrdCms::CmsRRHdr::rrCode, and XrdLink::Send().
Referenced by do_Load(), and SyncSpace().
const char * XrdCmsNode::do_State | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1107 of file XrdCmsNode.cc.
References XrdCmsRRData::Buff, XrdFrm::Config(), XrdCmsRRData::Dlen, do_StateFWD(), EPNAME, iovec::iov_base, iovec::iov_len, isKnown, isMan, isOnline(), XrdCms::kYR_have, XrdCms::kYR_raw, Link, XrdCms::CmsRRHdr::modifier, XrdCmsRRData::Path, XrdCmsRRData::Request, XrdCms::CmsRRHdr::rrCode, XrdLink::Send(), and TRACER.
int XrdCmsNode::do_StateFWD | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1148 of file XrdCmsNode.cc.
References XrdCmsCache::AddFile(), XrdCmsSelect::bf, XrdCmsCluster::Broadcast(), XrdCmsRRData::Buff, XrdCms::Cache, XrdCms::Cluster, DEBUGR, XrdCmsRRData::Dlen, EPNAME, XrdCmsPList_Anchor::Find(), XrdCmsCache::GetFile(), XrdCmsSelect::hf, XrdCms::CmsRRHdr::modifier, XrdCmsRRData::Path, XrdCmsRRData::PathLen, XrdCmsCache::Paths, XrdCmsSelect::pf, XrdCmsRRData::Request, XrdCmsPInfo::rovec, and XrdCmsSelect::Vec.
Referenced by do_State().
const char * XrdCmsNode::do_StatFS | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1187 of file XrdCmsNode.cc.
References XrdCms::Cache, XrdCms::Cluster, XrdCms::CmsRRHdr::datalen, XrdCmsPList_Anchor::Find(), iovec::iov_len, XrdCms::kYR_data, Link, XrdCmsRRData::Path, XrdCmsCache::Paths, XrdCmsRRData::Request, XrdCmsPInfo::rovec, XrdCms::CmsRRHdr::rrCode, XrdLink::Send(), XrdCmsCluster::Space(), sprintf(), and strlcpy().
const char * XrdCmsNode::do_Stats | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1223 of file XrdCmsNode.cc.
References XrdCms::Cluster, XrdCms::CmsRRHdr::datalen, iovec::iov_base, iovec::iov_len, XrdCms::kYR_data, Link, XrdSysMutex::Lock(), malloc(), XrdCms::CmsRRHdr::modifier, XrdCmsRRData::Request, XrdCms::CmsRRHdr::rrCode, XrdLink::Send(), XrdCmsCluster::Stats(), and XrdSysMutex::UnLock().
const char * XrdCmsNode::do_Status | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1288 of file XrdCmsNode.cc.
References XrdCmsCache::Bounce(), XrdCms::Cache, XrdCms::CmsState, XrdCmsState::Counts, DEBUGR, XrdSysError::Emsg(), EPNAME, isDisable, isNoStage, isOffline, isSuspend, XrdCms::Manager, XrdCms::CmsRRHdr::modifier, Name(), NodeID, NodeMask, Port, XrdCmsRRData::Request, XrdCmsManager::Reset(), Reset(), XrdFrm::Say(), XrdCms::CmsRRHdr::streamid, and XrdCmsState::Update().
const char * XrdCmsNode::do_Trunc | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1356 of file XrdCmsNode.cc.
References XrdFrm::Config(), DEBUGR, EPNAME, fsExec(), fsFail(), getSize(), XrdCmsRRData::Ident, XrdCmsRRData::Mode, XrdFrmConfig::ossFS, XrdCmsRRData::Path, xmlio::Size, and XrdOss::Truncate().
const char * XrdCmsNode::do_Try | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1397 of file XrdCmsNode.cc.
References XrdCmsManList::Add(), XrdFrm::Config(), DEBUGR, XrdCmsManList::Del(), EPNAME, XrdOucTokenizer::GetLine(), XrdOucTokenizer::GetToken(), IPAddr, myLevel, XrdCms::myMans, and XrdCmsRRData::Path.
const char * XrdCmsNode::do_Update | ( | XrdCmsRRData & | Arg | ) |
Definition at line 1427 of file XrdCmsNode.cc.
References XrdCms::CmsState, Link, and XrdCmsState::sendState().
const char * XrdCmsNode::do_Usage | ( | XrdCmsRRData & | Arg | ) |
void XrdCmsNode::Disc | ( | const char * | reason = 0 , |
|
int | needLock = 1 | |||
) |
Definition at line 194 of file XrdCmsNode.cc.
References XrdLink::Close(), isConn, isOffline, Link, XrdSysMutex::Lock(), myMutex, XrdLink::setEtext(), and XrdSysMutex::UnLock().
Referenced by XrdCmsCluster::Remove().
int XrdCmsNode::ID | ( | int & | INum | ) | [inline] |
Definition at line 92 of file XrdCmsNode.hh.
References Instance, and NodeID.
Referenced by XrdCmsProtocol::ConfigCheck(), XrdCmsCluster::Remove(), and XrdCmsManager::Remove().
int XrdCmsNode::Inst | ( | ) | [inline] |
Definition at line 94 of file XrdCmsNode.hh.
References Instance.
Referenced by XrdCmsCluster::Drop(), and XrdCmsReq::XrdCmsReq().
int XrdCmsNode::isNode | ( | SMask_t | smask | ) | [inline] |
Definition at line 96 of file XrdCmsNode.hh.
References NodeMask.
Referenced by XrdCmsCluster::Broadcast(), XrdCmsCluster::getMask(), XrdCmsCluster::MonRefs(), and XrdCmsCluster::Space().
int XrdCmsNode::isNode | ( | const char * | hn | ) | [inline] |
int XrdCmsNode::isNode | ( | unsigned int | ipa | ) | [inline] |
int XrdCmsNode::isNode | ( | unsigned int | ipa, | |
const char * | nid | |||
) | [inline] |
char* XrdCmsNode::Name | ( | ) | [inline] |
Definition at line 103 of file XrdCmsNode.hh.
References myName.
Referenced by XrdCmsManager::Add(), do_Load(), do_Status(), XrdCmsManager::Inform(), XrdCmsCluster::List(), XrdCmsManager::Remove(), XrdCmsManager::Reset(), XrdCmsCluster::Select(), and XrdCmsCluster::SelNode().
char* XrdCmsNode::Name | ( | int & | len, | |
int & | port | |||
) | [inline] |
SMask_t XrdCmsNode::Mask | ( | ) | [inline] |
Definition at line 108 of file XrdCmsNode.hh.
References NodeMask.
Referenced by XrdCmsProtocol::AddPath(), XrdCmsProtocol::Admit(), XrdCmsCluster::Broadcast(), and XrdCmsProtocol::ConfigCheck().
void XrdCmsNode::Lock | ( | ) | [inline] |
Definition at line 110 of file XrdCmsNode.hh.
References isLocked, XrdSysMutex::Lock(), and myMutex.
Referenced by XrdCmsCluster::Add(), XrdCmsProtocol::Admit_Redirector(), XrdCmsCluster::Broadcast(), XrdCmsManager::Inform(), XrdCmsCluster::MonRefs(), XrdCmsProtocol::Process(), XrdCmsManager::Reset(), and XrdCmsCluster::Select().
void XrdCmsNode::UnLock | ( | void | ) | [inline] |
Definition at line 111 of file XrdCmsNode.hh.
References isLocked, myMutex, and XrdSysMutex::UnLock().
Referenced by XrdCmsCluster::Broadcast(), XrdCmsManager::Inform(), XrdCmsCluster::List(), XrdCmsCluster::MonRefs(), XrdCmsProtocol::Process(), XrdCmsManager::Reset(), XrdCmsCluster::Select(), XrdCmsCluster::SelNode(), and ~XrdCmsNode().
void XrdCmsNode::Report_Usage | ( | XrdLink * | lp | ) | [static] |
Definition at line 1457 of file XrdCmsNode.cc.
References DEBUG, EPNAME, XrdCmsManager::Inform(), iovec::iov_base, iovec::iov_len, XrdCms::kYR_load, XrdCms::Manager, XrdCms::Meter, myLoad, XrdOucPup::Pack(), XrdCmsMeter::Report(), and XrdLink::Send().
Referenced by do_Usage(), and XrdCmsMeter::Run().
int XrdCmsNode::Send | ( | const char * | buff, | |
int | blen = 0 | |||
) | [inline] |
Definition at line 115 of file XrdCmsNode.hh.
References isOffline, Link, and XrdLink::Send().
Referenced by XrdCmsProtocol::Admit_Redirector(), XrdCmsCluster::Broadcast(), XrdCmsManager::Inform(), XrdCmsReq::Reply(), XrdCmsManager::Reset(), XrdCmsCluster::SelNode(), XrdCmsRTable::Send(), XrdCmsRRQ::sendLocResp(), and XrdCmsRRQ::sendResponse().
int XrdCmsNode::Send | ( | const struct iovec * | iov, | |
int | iovcnt, | |||
int | iotot = 0 | |||
) | [inline] |
void XrdCmsNode::setName | ( | XrdLink * | lnkp, | |
int | port | |||
) |
Definition at line 151 of file XrdCmsNode.cc.
References free(), XrdLink::Host(), XrdLink::ID, Ident, XrdNetDNS::IP2String(), IPAddr, XrdNetDNS::IPAddr(), IPV6, IPV6Len, myName, myNlen, XrdLink::Name(), Port, sprintf(), and strcpy().
Referenced by XrdCmsCluster::Add(), and XrdCmsNode().
void XrdCmsNode::setSlot | ( | short | rslot | ) | [inline] |
Definition at line 122 of file XrdCmsNode.hh.
References RSlot.
Referenced by XrdCmsProtocol::Admit_Redirector().
short XrdCmsNode::getSlot | ( | ) | [inline] |
Definition at line 123 of file XrdCmsNode.hh.
References RSlot.
Referenced by XrdCmsReq::XrdCmsReq().
void XrdCmsNode::SyncSpace | ( | ) |
Definition at line 1498 of file XrdCmsNode.cc.
References DiskFree, DiskUtil, do_Space(), XrdCmsRRData::dskFree, XrdCmsRRData::dskUtil, Ident, XrdCmsRRData::Ident, isRW, XrdCms::kYR_login, LastFree, XrdSysMutex::Lock(), mlMutex, XrdCmsRRData::Request, XrdCms::CmsRRHdr::rrCode, and XrdSysMutex::UnLock().
Referenced by XrdCmsProtocol::Admit().
int XrdCmsNode::fsExec | ( | XrdOucProg * | Prog, | |
char * | Arg1, | |||
char * | Arg2 = 0 | |||
) | [private] |
Definition at line 1528 of file XrdCmsNode.cc.
References XrdFrm::Config(), fsL2PFail1, fsL2PFail2, XrdFrmConfig::lcl_N2N, XrdOucName2Name::lfn2pfn(), Prog, and XrdCmsMAX_PATH_LEN.
Referenced by do_Chmod(), do_Mkdir(), do_Mkpath(), do_Mv(), do_Rm(), do_Rmdir(), and do_Trunc().
const char * XrdCmsNode::fsFail | ( | const char * | Who, | |
const char * | What, | |||
const char * | Path, | |||
int | rc | |||
) | [private] |
Definition at line 1556 of file XrdCmsNode.cc.
References DEBUGR, XrdSysError::Emsg(), EPNAME, fsL2PFail1, fsL2PFail2, Ident, XrdFrm::Say(), and strerror().
Referenced by do_Chmod(), do_Mkdir(), do_Mkpath(), do_Mv(), do_Rm(), do_Rmdir(), and do_Trunc().
int XrdCmsNode::getMode | ( | const char * | theMode, | |
mode_t & | Mode | |||
) | [private] |
Definition at line 1577 of file XrdCmsNode.cc.
References strtol().
Referenced by do_Chmod(), do_Mkdir(), and do_Mkpath().
int XrdCmsNode::isOnline | ( | char * | path, | |
int | upt = 1 | |||
) | [static, private] |
Definition at line 1605 of file XrdCmsNode.cc.
References XrdFrm::Config(), XrdCmsPrepare::Exists(), XrdFrmConfig::ossFS, XrdCms::PrepQ, stat, XrdOss::Stat(), XRDOSS_resonly, and XRDOSS_updtatm.
Referenced by do_State().
friend class XrdCmsCluster [friend] |
Definition at line 32 of file XrdCmsNode.hh.
char* XrdCmsNode::Ident |
Definition at line 34 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsProtocol::Admit(), XrdCmsProtocol::Admit_Redirector(), XrdCmsCluster::Broadcast(), XrdCmsProtocol::Dispatch(), XrdCmsCluster::Drop(), XrdCmsProtocol::Execute(), fsFail(), XrdCmsCluster::Remove(), XrdCmsManager::Remove(), XrdCmsProtocol::Reply_Delay(), XrdCmsProtocol::Reply_Error(), setName(), SyncSpace(), XrdCmsNode(), and ~XrdCmsNode().
Definition at line 35 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsProtocol::Admit(), do_Status(), XrdCmsCluster::List(), XrdCmsCluster::Select(), and XrdCmsNode().
Definition at line 36 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsManager::Add(), Disc(), do_Disc(), do_Status(), XrdCmsCluster::Drop(), XrdCmsManager::Inform(), XrdCmsCluster::List(), XrdCmsCluster::Remove(), XrdCmsManager::Remove(), XrdCmsManager::Reset(), XrdCmsCluster::SelbyCost(), XrdCmsCluster::SelbyLoad(), XrdCmsCluster::SelbyRef(), XrdCmsCluster::Select(), Send(), XrdCmsCluster::Space(), XrdCmsNode(), and ~XrdCmsNode().
Definition at line 37 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsManager::Add(), do_Status(), XrdCmsCluster::List(), XrdCmsCluster::Remove(), XrdCmsCluster::Select(), and XrdCmsNode().
char XrdCmsNode::isMan |
Definition at line 38 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsManager::Add(), do_State(), XrdCmsCluster::Drop(), XrdCmsCluster::List(), and XrdCmsNode().
char XrdCmsNode::isPeer |
Definition at line 39 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsProtocol::Admit(), XrdCmsCluster::Drop(), XrdCmsCluster::List(), and XrdCmsNode().
char XrdCmsNode::isProxy |
Definition at line 41 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsManager::Add(), XrdCmsProtocol::Admit(), do_Status(), XrdCmsCluster::List(), XrdCmsCluster::Remove(), XrdCmsCluster::Select(), and XrdCmsNode().
char XrdCmsNode::isBound |
Definition at line 42 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsManager::Add(), XrdCmsCluster::Drop(), XrdCmsProtocol::Process(), XrdCmsCluster::Remove(), and XrdCmsNode().
char XrdCmsNode::isRW |
Definition at line 43 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::AddPath(), do_Load(), XrdCmsCluster::List(), XrdCmsCluster::Space(), and SyncSpace().
char XrdCmsNode::isKnown |
Definition at line 44 of file XrdCmsNode.hh.
Referenced by do_State(), XrdCmsManager::Reset(), and XrdCmsNode().
char XrdCmsNode::isConn |
Definition at line 45 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsManager::Add(), Disc(), XrdCmsProtocol::Process(), XrdCmsCluster::Remove(), and XrdCmsNode().
char XrdCmsNode::isGone |
Definition at line 46 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::Process(), XrdCmsCluster::Remove(), and XrdCmsNode().
char XrdCmsNode::isPerm |
char XrdCmsNode::isReserved[3] |
Definition at line 48 of file XrdCmsNode.hh.
const char XrdCmsNode::allowsRW = 0x01 [static] |
Definition at line 50 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::AddPath(), XrdCmsCluster::SelNode(), and XrdCmsCluster::Space().
const char XrdCmsNode::allowsSS = 0x02 [static] |
Definition at line 51 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::AddPath(), XrdCmsCluster::SelbyLoad(), XrdCmsCluster::SelbyRef(), and XrdCmsCluster::SelNode().
unsigned int XrdCmsNode::DiskTotal |
Definition at line 53 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::Admit(), XrdCmsCluster::Space(), and XrdCmsNode().
Definition at line 54 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::Admit(), and XrdCmsNode().
Definition at line 55 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::Admit(), XrdCmsCluster::Select(), XrdCmsCluster::Space(), and XrdCmsNode().
Definition at line 56 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::Admit(), do_Avail(), do_Load(), XrdCmsCluster::Select(), XrdCmsCluster::Space(), SyncSpace(), and XrdCmsNode().
Definition at line 57 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::Admit(), do_Avail(), do_Load(), XrdCmsCluster::List(), XrdCmsCluster::Space(), SyncSpace(), and XrdCmsNode().
unsigned int XrdCmsNode::ConfigID |
Definition at line 58 of file XrdCmsNode.hh.
Referenced by XrdCmsProtocol::ConfigCheck(), and XrdCmsNode().
const int XrdCmsNode::fsL2PFail1 = 999991 [static, private] |
const int XrdCmsNode::fsL2PFail2 = 999992 [static, private] |
XrdSysMutex XrdCmsNode::myMutex [private] |
XrdLink* XrdCmsNode::Link [private] |
Definition at line 142 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), Disc(), do_Disc(), do_Ping(), do_Select(), do_Space(), do_State(), do_StatFS(), do_Stats(), do_Update(), do_Usage(), isNode(), Send(), and XrdCmsNode().
unsigned int XrdCmsNode::IPAddr [private] |
Definition at line 143 of file XrdCmsNode.hh.
Referenced by do_Try(), isNode(), XrdCmsCluster::List(), setName(), and XrdCmsNode().
XrdCmsNode* XrdCmsNode::Next [private] |
time_t XrdCmsNode::DropTime [private] |
Definition at line 145 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Drop(), XrdCmsCluster::Remove(), and XrdCmsNode().
XrdCmsDrop* XrdCmsNode::DropJob [private] |
Definition at line 146 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Drop(), XrdCmsCluster::Remove(), and XrdCmsNode().
int XrdCmsNode::IPV6Len [private] |
char XrdCmsNode::IPV6[28] [private] |
SMask_t XrdCmsNode::NodeMask [private] |
Definition at line 150 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), do_Gone(), do_Have(), do_Status(), XrdCmsCluster::Drop(), XrdCmsCluster::getMask(), isNode(), XrdCmsCluster::List(), Mask(), XrdCmsCluster::SelbyCost(), XrdCmsCluster::SelbyLoad(), XrdCmsCluster::SelbyRef(), XrdCmsCluster::SelNode(), and XrdCmsNode().
int XrdCmsNode::NodeID [private] |
Definition at line 151 of file XrdCmsNode.hh.
Referenced by do_Status(), ID(), XrdCmsCluster::List(), and XrdCmsNode().
int XrdCmsNode::Instance [private] |
Definition at line 152 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), do_Locate(), do_Select(), ID(), Inst(), and XrdCmsNode().
int XrdCmsNode::Port [private] |
Definition at line 153 of file XrdCmsNode.hh.
Referenced by do_Status(), XrdCmsCluster::List(), Name(), setName(), and XrdCmsNode().
int XrdCmsNode::myLevel [private] |
int XrdCmsNode::myCNUM [private] |
Definition at line 155 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), XrdCmsCluster::getMask(), and XrdCmsNode().
char* XrdCmsNode::myCID [private] |
char* XrdCmsNode::myNID [private] |
Definition at line 157 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::Add(), isNode(), XrdCmsNode(), and ~XrdCmsNode().
char* XrdCmsNode::myName [private] |
Definition at line 158 of file XrdCmsNode.hh.
Referenced by Name(), setName(), XrdCmsNode(), and ~XrdCmsNode().
int XrdCmsNode::myNlen [private] |
int XrdCmsNode::logload [private] |
int XrdCmsNode::myCost [private] |
int XrdCmsNode::myLoad [private] |
Definition at line 163 of file XrdCmsNode.hh.
Referenced by do_Load(), XrdCmsCluster::List(), Report_Usage(), XrdCmsCluster::Select(), and XrdCmsNode().
int XrdCmsNode::myMass [private] |
int XrdCmsNode::RefA [private] |
Definition at line 165 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::List(), XrdCmsCluster::MonRefs(), and XrdCmsNode().
int XrdCmsNode::RefTotA [private] |
Definition at line 166 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::List(), XrdCmsCluster::MonRefs(), and XrdCmsNode().
int XrdCmsNode::RefR [private] |
Definition at line 167 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::List(), XrdCmsCluster::MonRefs(), XrdCmsCluster::Select(), and XrdCmsNode().
int XrdCmsNode::RefTotR [private] |
Definition at line 168 of file XrdCmsNode.hh.
Referenced by XrdCmsCluster::List(), XrdCmsCluster::MonRefs(), and XrdCmsNode().
short XrdCmsNode::RSlot [private] |
Definition at line 169 of file XrdCmsNode.hh.
Referenced by do_Locate(), do_Select(), getSlot(), and setSlot().
char XrdCmsNode::isLocked [private] |
char XrdCmsNode::RSVD [private] |
Definition at line 171 of file XrdCmsNode.hh.
XrdSysMutex XrdCmsNode::mlMutex [static, private] |
int XrdCmsNode::LastFree [static, private] |