xrootd
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
XrdCmsProtocol Class Reference

#include <XrdCmsProtocol.hh>

Inheritance diagram for XrdCmsProtocol:
Inheritance graph
[legend]
Collaboration diagram for XrdCmsProtocol:
Collaboration graph
[legend]

Public Member Functions

void DoIt ()
 
int Execute (XrdCmsRRData &Data)
 
XrdProtocolMatch (XrdLink *lp)
 
int Process (XrdLink *lp)
 
void Recycle (XrdLink *lp, int consec, const char *reason)
 
int Stats (char *buff, int blen, int do_sync=0)
 
 XrdCmsProtocol ()
 
 ~XrdCmsProtocol ()
 
- Public Member Functions inherited from XrdProtocol
 XrdProtocol (const char *jname)
 
virtual ~XrdProtocol ()
 
- Public Member Functions inherited from XrdJob
 XrdJob (const char *desc="")
 
virtual ~XrdJob ()
 

Static Public Member Functions

static XrdCmsProtocolAlloc (const char *theRole="", const char *theMan=0, int thePort=0)
 

Private Types

enum  Bearing { isDown, isLateral, isUp }
 

Private Member Functions

XrdCmsRoutingAdmit ()
 
XrdCmsRoutingAdmit_DataServer (int)
 
XrdCmsRoutingAdmit_Redirector (int)
 
XrdCmsRoutingAdmit_Supervisor (int)
 
SMask_t AddPath (XrdCmsNode *nP, const char *pType, const char *Path)
 
int Authenticate ()
 
void ConfigCheck (unsigned char *theConfig)
 
const char * Dispatch (Bearing cDir, int maxWait, int maxTries)
 
XrdCmsRoutingLogin_Failed (const char *Reason)
 
void Pander (const char *manager, int mport)
 
void Reissue (XrdCmsRRData &Data)
 
void Reply_Delay (XrdCmsRRData &Data, kXR_unt32 theDelay)
 
void Reply_Error (XrdCmsRRData &Data, int ecode, const char *etext)
 

Private Attributes

XrdCmsProtocolProtLink
 
XrdCmsRoutingRouting
 
XrdLinkLink
 
const char * myRole
 
const char * myMan
 
int myManPort
 
XrdCmsNodemyNode
 
short RSlot
 
char loggedIn
 

Static Private Attributes

static XrdSysMutex ProtMutex
 
static XrdCmsProtocolProtStack = 0
 
static XrdCmsParser ProtArgs
 
static const int maxReqSize = 16384
 
static int readWait = 1000
 

Friends

class XrdCmsJob
 

Additional Inherited Members

- Public Attributes inherited from XrdJob
XrdJobNextJob
 
const char * Comment
 

Member Enumeration Documentation

Enumerator
isDown 
isLateral 
isUp 

Constructor & Destructor Documentation

XrdCmsProtocol::XrdCmsProtocol ( )
inline
XrdCmsProtocol::~XrdCmsProtocol ( )
inline

Member Function Documentation

SMask_t XrdCmsProtocol::AddPath ( XrdCmsNode nP,
const char *  pType,
const char *  Path 
)
private
XrdCmsRouting * XrdCmsProtocol::Admit ( )
private

References XrdCmsCluster::Add(), XrdCmsLogin::Admit(), XrdCmsConfig::asManager(), XrdCmsConfig::asMetaMan(), XrdCmsConfig::asProxy(), XrdCmsConfig::asServer(), XrdCmsConfig::asSolo(), XrdCms::Cache, XrdCms::Cluster, XrdCms::CMS_isMan, XrdCms::CMS_isPeer, XrdCms::CMS_isProxy, XrdCms::CMS_noStage, XrdCms::CMS_Suspend, XrdCms::CmsState, XrdCms::Config, DEBUG, XrdCms::CmsLoginData::dPort, XrdSysError::Emsg(), EPNAME, XrdCms::CmsLoginData::fsNum, XrdCms::CmsLoginData::fSpace, XrdCms::CmsLoginData::fsUtil, XrdOucTokenizer::GetLine(), XrdOucTokenizer::GetToken(), XrdCms::CmsLoginData::HoldTime, XrdCmsPList_Anchor::Insert(), XrdCms::CmsLoginData::kYR_debug, XrdCms::CmsLoginData::kYR_director, XrdCms::CmsLoginData::kYR_manager, XrdCms::CmsLoginData::kYR_nostage, XrdCms::CmsLoginData::kYR_peer, XrdCms::CmsLoginData::kYR_proxy, XrdCms::CmsLoginData::kYR_server, XrdCms::CmsLoginData::kYR_share, XrdCms::CmsLoginData::kYR_shift, XrdCms::CmsLoginData::kYR_shifttz, XrdCms::CmsLoginData::kYR_suspend, XrdCms::CmsLoginData::kYR_trying, XrdCms::CmsLoginData::kYR_tzone, XrdCmsConfig::LUPHold, XrdCmsRole::Manager, XrdCms::Manager, XrdCms::Meter, XrdCms::CmsLoginData::Mode, XrdCms::CmsLoginData::mSpace, XrdCmsRole::Name(), XrdCmsRole::noRole, XrdCmsConfig::P_gsdf, XrdCmsCache::Paths, XrdCms::CmsLoginData::Paths, XrdCmsRole::Peer, XrdCmsRole::PeerManager, XrdCmsRole::ProxyManager, XrdCmsRole::ProxyServer, XrdCmsManager::Reset(), XrdCmsCluster::ResetRef(), XrdCmsPInfo::rovec, XrdCms::rspVOps, XrdCms::Say, XrdCmsRole::Server, XrdCmsMeter::setVirtUpdt(), XrdCms::CmsLoginData::SID, XrdCms::CmsLoginData::sPort, XrdCmsPInfo::ssvec, XrdCmsRole::Supervisor, XrdCmsState::Suspended, XrdCms::Trace, TRACE_Debug, XrdCms::CmsLoginData::tSpace, and XrdOucTrace::What.

XrdCmsRouting* XrdCmsProtocol::Admit_DataServer ( int  )
private
XrdCmsRouting * XrdCmsProtocol::Admit_Redirector ( int  wasSuspended)
private
XrdCmsRouting* XrdCmsProtocol::Admit_Supervisor ( int  )
private
XrdCmsProtocol * XrdCmsProtocol::Alloc ( const char *  theRole = "",
const char *  theMan = 0,
int  thePort = 0 
)
static
int XrdCmsProtocol::Authenticate ( )
private
void XrdCmsProtocol::ConfigCheck ( unsigned char *  theConfig)
private
const char * XrdCmsProtocol::Dispatch ( Bearing  cDir,
int  maxWait,
int  maxTries 
)
private
void XrdCmsProtocol::DoIt ( )
virtual

Implements XrdJob.

int XrdCmsProtocol::Execute ( XrdCmsRRData Data)
XrdCmsRouting * XrdCmsProtocol::Login_Failed ( const char *  Reason)
private
XrdProtocol * XrdCmsProtocol::Match ( XrdLink lp)
virtual
void XrdCmsProtocol::Pander ( const char *  manager,
int  mport 
)
private

References XrdCmsManList::Add(), XrdCmsManager::Add(), XrdCmsState::All_Suspend, XrdCmsConfig::AskPing, XrdCmsConfig::asManager(), XrdCmsConfig::asPeer(), XrdCmsConfig::asProxy(), XrdCmsConfig::asServer(), XrdCms::CmsState, XrdCms::Config, XrdCmsManTree::Connect(), XrdInet::Connect(), DEBUG, XrdCmsManList::Del(), XrdCmsManTree::Disc(), XrdCmsConfig::DiskSS, XrdCmsConfig::doWait, XrdCms::CmsLoginData::dPort, XrdSysError::Emsg(), EPNAME, XrdCmsState::FES_Suspend, XrdCmsMeter::FreeSpace(), XrdCms::CmsLoginData::fsNum, XrdCms::CmsLoginData::fSpace, XrdCms::CmsLoginData::fsUtil, XrdCms::CmsLoginData::HoldTime, XrdSysDNS::IPAddr(), XrdCms::CmsLoginData::kYR_manager, XrdCms::CmsLoginData::kYR_nostage, XrdCms::CmsLoginData::kYR_peer, XrdCms::CmsLoginData::kYR_proxy, XrdCms::kYR_redirect, XrdCms::CmsLoginData::kYR_server, XrdCms::CmsLoginData::kYR_shift, XrdCms::CmsLoginData::kYR_shifttz, XrdCms::CmsLoginData::kYR_suspend, XrdCms::CmsLoginData::kYR_trying, XrdCms::kYR_Version, XrdCmsLogin::Login(), XrdCms::Manager, XrdCms::ManTree, XrdCms::manVOps, XrdCms::Meter, Mode, XrdCms::CmsLoginData::Mode, XrdCms::CmsLoginData::mSpace, XrdCms::myMans, XrdCmsConfig::myPaths, XrdCmsConfig::mySID, XrdCmsConfig::NetTCP, XrdCmsManList::Next(), XrdCmsState::NoStaging, XrdCmsMeter::numFS(), XrdCmsConfig::P_gshr, XrdCms::CmsLoginData::Paths, XrdCmsState::Port(), XrdCmsConfig::PortTCP, XrdCmsManTree::Register(), XrdCmsManager::Remove(), XrdCms::Say, XrdCms::CmsLoginData::SID, XrdCms::CmsLoginData::Size, XrdSysTimer::Snooze(), XrdCms::CmsLoginData::sPort, XrdCms::srvVOps, XrdCms::supVOps, XrdCmsState::Suspended, XrdCmsConfig::TimeZone, XrdCmsMeter::TotalSpace(), XrdCmsManTree::Trying(), XrdCms::CmsLoginData::tSpace, XrdCms::CmsLoginData::Version, and XRDNET_NOEMSG.

int XrdCmsProtocol::Process ( XrdLink lp)
virtual
void XrdCmsProtocol::Recycle ( XrdLink lp,
int  consec,
const char *  reason 
)
virtual

Implements XrdProtocol.

References XrdSysError::Emsg(), XrdLink::ID, and XrdCms::Say.

void XrdCmsProtocol::Reissue ( XrdCmsRRData Data)
private
void XrdCmsProtocol::Reply_Delay ( XrdCmsRRData Data,
kXR_unt32  theDelay 
)
private
void XrdCmsProtocol::Reply_Error ( XrdCmsRRData Data,
int  ecode,
const char *  etext 
)
private
int XrdCmsProtocol::Stats ( char *  buff,
int  blen,
int  do_sync = 0 
)
virtual

Friends And Related Function Documentation

friend class XrdCmsJob
friend

Member Data Documentation

XrdLink* XrdCmsProtocol::Link
private

Referenced by XrdCmsJob::Alloc().

char XrdCmsProtocol::loggedIn
private

Referenced by Alloc().

const int XrdCmsProtocol::maxReqSize = 16384
staticprivate
const char* XrdCmsProtocol::myMan
private

Referenced by Alloc().

int XrdCmsProtocol::myManPort
private

Referenced by Alloc().

XrdCmsNode* XrdCmsProtocol::myNode
private
const char* XrdCmsProtocol::myRole
private

Referenced by XrdCmsJob::Alloc(), and Alloc().

XrdCmsParser XrdCmsProtocol::ProtArgs
staticprivate
XrdCmsProtocol* XrdCmsProtocol::ProtLink
private

Referenced by Alloc().

XrdSysMutex XrdCmsProtocol::ProtMutex
staticprivate
XrdCmsProtocol * XrdCmsProtocol::ProtStack = 0
staticprivate
int XrdCmsProtocol::readWait = 1000
staticprivate
XrdCmsRouting* XrdCmsProtocol::Routing
private
short XrdCmsProtocol::RSlot
private

The documentation for this class was generated from the following files: