#include <XrdXrootdAdmin.hh>
Public Member Functions | |
void | Login (int socknum) |
void * | Start (XrdNetSocket *AdminSock) |
XrdXrootdAdmin () | |
~XrdXrootdAdmin () | |
Static Public Member Functions | |
static void | addJob (const char *jname, XrdXrootdJob *jp) |
static int | Init (XrdSysError *erp, XrdNetSocket *asock) |
Private Member Functions | |
int | do_Abort () |
int | do_Cj () |
int | do_Cont () |
int | do_Disc () |
int | do_Login () |
int | do_Lsc () |
int | do_Lsj () |
int | do_Lsj_Xeq (XrdXrootdJob *jp) |
int | do_Lsd () |
int | do_Msg () |
int | do_Pause () |
int | do_Red () |
char * | getMsg (char *msg, int &mlen) |
int | getreqID () |
int | getTarget (const char *act, char **rest=0) |
int | sendErr (int rc, const char *act, const char *msg) |
int | sendOK (int sent) |
int | sendResp (const char *act, XActionCode anum) |
int | sendResp (const char *act, XActionCode anum, const char *msg, int mlen) |
void | Xeq () |
Private Attributes | |
XrdOucStream | Stream |
XrdLinkMatch | Target |
XrdXrootdAdmin::usr | usResp |
char | TraceID [24] |
char | reqID [16] |
Static Private Attributes | |
static JobTable * | JobList |
static XrdSysError * | eDest |
Classes | |
struct | JobTable |
struct | usr |
Definition at line 25 of file XrdXrootdAdmin.hh.
XrdXrootdAdmin::XrdXrootdAdmin | ( | ) | [inline] |
Definition at line 37 of file XrdXrootdAdmin.hh.
XrdXrootdAdmin::~XrdXrootdAdmin | ( | ) | [inline] |
Definition at line 38 of file XrdXrootdAdmin.hh.
void XrdXrootdAdmin::addJob | ( | const char * | jname, | |
XrdXrootdJob * | jp | |||
) | [static] |
Definition at line 64 of file XrdXrootdAdmin.cc.
References XrdXrootdAdmin::JobTable::Jname, XrdXrootdAdmin::JobTable::Job, JobList, and XrdXrootdAdmin::JobTable::Next.
Referenced by XrdXrootdProtocol::Configure().
int XrdXrootdAdmin::Init | ( | XrdSysError * | erp, | |
XrdNetSocket * | asock | |||
) | [static] |
Definition at line 78 of file XrdXrootdAdmin.cc.
References eDest, XrdSysError::Emsg(), XrdSysThread::Run(), and XrdXrootdInitAdmin().
Referenced by XrdXrootdProtocol::Configure().
void XrdXrootdAdmin::Login | ( | int | socknum | ) |
Definition at line 96 of file XrdXrootdAdmin.cc.
References XrdOucStream::AttachIO(), do_Login(), eDest, XrdSysError::Emsg(), XrdOucStream::GetLine(), getreqID(), XrdOucStream::GetToken(), XrdOucStream::SetEroute(), Stream, TraceID, and Xeq().
void * XrdXrootdAdmin::Start | ( | XrdNetSocket * | AdminSock | ) |
Definition at line 133 of file XrdXrootdAdmin.cc.
References XrdNetSocket::Accept(), close, eDest, XrdSysError::Emsg(), XrdSysThread::Run(), and XrdXrootdLoginAdmin().
int XrdXrootdAdmin::do_Abort | ( | ) | [private] |
Definition at line 157 of file XrdXrootdAdmin.cc.
References getMsg(), getTarget(), kXR_asyncab, and sendResp().
Referenced by Xeq().
int XrdXrootdAdmin::do_Cj | ( | ) | [private] |
Definition at line 180 of file XrdXrootdAdmin.cc.
References XrdXrootdJob::Cancel(), XrdOucStream::GetToken(), i, XrdXrootdAdmin::JobTable::Jname, XrdXrootdAdmin::JobTable::Job, JobList, XrdXrootdAdmin::JobTable::Next, XrdOucStream::Put(), reqID, sendErr(), sprintf(), and Stream.
Referenced by Xeq().
int XrdXrootdAdmin::do_Cont | ( | ) | [private] |
Definition at line 235 of file XrdXrootdAdmin.cc.
References getTarget(), kXR_asyncgo, and sendResp().
Referenced by Xeq().
int XrdXrootdAdmin::do_Disc | ( | ) | [private] |
Definition at line 252 of file XrdXrootdAdmin.cc.
References getTarget(), XrdOucStream::GetToken(), kXR_asyncdi, sendErr(), sendResp(), Stream, and strtol().
Referenced by Xeq().
int XrdXrootdAdmin::do_Login | ( | ) | [private] |
Definition at line 279 of file XrdXrootdAdmin.cc.
References eDest, XrdSysError::Emsg(), XrdOucStream::GetToken(), XrdOucStream::Put(), reqID, snprintf, Stream, strlcpy(), TraceID, and XROOTD_VERSION.
Referenced by Login().
int XrdXrootdAdmin::do_Lsc | ( | ) | [private] |
Definition at line 303 of file XrdXrootdAdmin.cc.
References XrdLink::getName(), getTarget(), i, XrdOucStream::Put(), reqID, sprintf(), Stream, and Target.
Referenced by Xeq().
int XrdXrootdAdmin::do_Lsj | ( | ) | [private] |
Definition at line 415 of file XrdXrootdAdmin.cc.
References do_Lsj_Xeq(), XrdOucStream::GetToken(), i, XrdXrootdAdmin::JobTable::Jname, XrdXrootdAdmin::JobTable::Job, JobList, XrdXrootdAdmin::JobTable::Next, XrdOucStream::Put(), reqID, sendErr(), sprintf(), and Stream.
Referenced by Xeq().
int XrdXrootdAdmin::do_Lsj_Xeq | ( | XrdXrootdJob * | jp | ) | [private] |
Definition at line 466 of file XrdXrootdAdmin.cc.
References XrdXrootdJob::List(), XrdOucTList::next, XrdOucStream::Put(), Stream, XrdOucTList::text, and XrdOucTList::val.
Referenced by do_Lsj().
int XrdXrootdAdmin::do_Lsd | ( | ) | [private] |
Definition at line 333 of file XrdXrootdAdmin.cc.
References XrdXrootdProtocol::CapVer, XrdLink::Client(), XrdXrootdProtocol::Client, XrdXrootdProtocol::cumReadP, XrdXrootdProtocol::cumReads, XrdXrootdProtocol::cumWrites, XrdXrootdProtocol::Entity, XrdLink::Find(), XrdLink::getIOStats(), XrdLink::getProtocol(), getTarget(), XrdSecEntity::host, i, XrdXrootdProtocol::monFILE, XrdXrootdProtocol::monIO, XrdSecEntity::name, XrdXrootdProtocol::numFiles, XrdXrootdProtocol::numReadP, XrdXrootdProtocol::numReads, XrdXrootdProtocol::numWrites, XrdSecEntity::prot, XrdOucStream::Put(), reqID, XrdSecEntity::role, XrdLink::setRef(), sprintf(), XrdXrootdProtocol::Status, Stream, Target, XrdLink::timeCon(), XrdXrootdProtocol::totReadP, XrdSecEntity::vorg, XRD_ADMINUSER, and XrdSecPROTOIDSIZE.
Referenced by Xeq().
int XrdXrootdAdmin::do_Msg | ( | ) | [private] |
Definition at line 484 of file XrdXrootdAdmin.cc.
References getMsg(), getTarget(), kXR_asyncms, and sendResp().
Referenced by Xeq().
int XrdXrootdAdmin::do_Pause | ( | ) | [private] |
Definition at line 506 of file XrdXrootdAdmin.cc.
References getTarget(), XrdOucStream::GetToken(), kXR_asyncwt, sendErr(), sendResp(), Stream, and strtol().
Referenced by Xeq().
int XrdXrootdAdmin::do_Red | ( | ) | [private] |
Definition at line 531 of file XrdXrootdAdmin.cc.
References getTarget(), XrdOucStream::GetToken(), kXR_asyncrd, XrdMonCtrCollector::port, sendErr(), sendResp(), Stream, strlcpy(), and strtol().
Referenced by Xeq().
char * XrdXrootdAdmin::getMsg | ( | char * | msg, | |
int & | mlen | |||
) | [private] |
int XrdXrootdAdmin::getreqID | ( | ) | [private] |
Definition at line 588 of file XrdXrootdAdmin.cc.
References XrdOucStream::GetToken(), reqID, sendErr(), strcpy(), and Stream.
int XrdXrootdAdmin::getTarget | ( | const char * | act, | |
char ** | rest = 0 | |||
) | [private] |
Definition at line 611 of file XrdXrootdAdmin.cc.
References XrdOucStream::GetToken(), sendErr(), XrdLinkMatch::Set(), Stream, and Target.
Referenced by do_Abort(), do_Cont(), do_Disc(), do_Lsc(), do_Lsd(), do_Msg(), do_Pause(), and do_Red().
int XrdXrootdAdmin::sendErr | ( | int | rc, | |
const char * | act, | |||
const char * | msg | |||
) | [private] |
Definition at line 630 of file XrdXrootdAdmin.cc.
References XrdOucStream::Put(), reqID, snprintf, and Stream.
Referenced by do_Cj(), do_Disc(), do_Lsj(), do_Pause(), do_Red(), getreqID(), getTarget(), and Xeq().
int XrdXrootdAdmin::sendOK | ( | int | sent | ) | [private] |
Definition at line 646 of file XrdXrootdAdmin.cc.
References XrdOucStream::Put(), reqID, snprintf, and Stream.
Referenced by sendResp().
int XrdXrootdAdmin::sendResp | ( | const char * | act, | |
XActionCode | anum | |||
) | [private] |
Definition at line 662 of file XrdXrootdAdmin.cc.
References XrdXrootdAdmin::usr::act, XrdLink::Find(), XrdLink::ID, XrdXrootdAdmin::usr::len, XrdLink::Send(), sendOK(), Target, TRACE, and usResp.
Referenced by do_Abort(), do_Cont(), do_Disc(), do_Msg(), do_Pause(), and do_Red().
int XrdXrootdAdmin::sendResp | ( | const char * | act, | |
XActionCode | anum, | |||
const char * | msg, | |||
int | mlen | |||
) | [private] |
Definition at line 687 of file XrdXrootdAdmin.cc.
References XrdXrootdAdmin::usr::act, XrdLink::Find(), iovec::iov_base, iovec::iov_len, XrdXrootdAdmin::usr::len, sendOK(), Target, TRACE, and usResp.
void XrdXrootdAdmin::Xeq | ( | ) | [private] |
Definition at line 722 of file XrdXrootdAdmin.cc.
References DEBUG, do_Abort(), do_Cj(), do_Cont(), do_Disc(), do_Lsc(), do_Lsd(), do_Lsj(), do_Msg(), do_Pause(), do_Red(), eDest, XrdSysError::Emsg(), XrdOucStream::GetLine(), getreqID(), XrdOucStream::GetToken(), sendErr(), Stream, TRACE, and TraceID.
Referenced by Login().
XrdXrootdAdmin::JobTable * XrdXrootdAdmin::JobList [static, private] |
XrdSysError * XrdXrootdAdmin::eDest [static, private] |
Definition at line 70 of file XrdXrootdAdmin.hh.
Referenced by do_Login(), Init(), Login(), Start(), and Xeq().
XrdOucStream XrdXrootdAdmin::Stream [private] |
Definition at line 71 of file XrdXrootdAdmin.hh.
Referenced by do_Cj(), do_Disc(), do_Login(), do_Lsc(), do_Lsd(), do_Lsj(), do_Lsj_Xeq(), do_Pause(), do_Red(), getreqID(), getTarget(), Login(), sendErr(), sendOK(), and Xeq().
XrdLinkMatch XrdXrootdAdmin::Target [private] |
Definition at line 72 of file XrdXrootdAdmin.hh.
Referenced by do_Lsc(), do_Lsd(), getTarget(), and sendResp().
struct XrdXrootdAdmin::usr XrdXrootdAdmin::usResp [private] |
Referenced by sendResp().
char XrdXrootdAdmin::TraceID[24] [private] |
char XrdXrootdAdmin::reqID[16] [private] |
Definition at line 82 of file XrdXrootdAdmin.hh.
Referenced by do_Cj(), do_Login(), do_Lsc(), do_Lsd(), do_Lsj(), getreqID(), sendErr(), and sendOK().