Definition at line 54 of file XrdProofdProtocol.h.
Public Member Functions | |
XrdProofdProtocol (XrdProtocol_Config *pi=0) | |
Protocol constructor. | |
virtual | ~XrdProofdProtocol () |
XrdBuffer * | Argp () const |
XrdSecProtocol * | AuthProt () const |
kXR_int32 | CID () const |
XrdProofdClient * | Client () const |
int | ConnType () const |
void | DoIt () |
int | GetData (const char *dtype, char *buff, int blen) |
Get data from the open link. | |
const char * | GroupIn () const |
bool | Internal () |
bool | IsCtrlC () |
XrdLink * | Link () const |
XrdProtocol * | Match (XrdLink *lp) |
Check whether the request matches this protocol. | |
int | Pid () const |
int | Process (XrdLink *lp) |
Process the information received on the active link. | |
short int | ProofProtocol () const |
void | Recycle (XrdLink *lp, int x, const char *y) |
Recycle call. Release the instance and give it back to the stack. | |
XPClientRequest * | Request () const |
void | ResetCtrlC () |
XrdProofdResponse * | Response (kXR_unt16 rid) |
Get response instance corresponding to stream ID 'sid'. | |
void | SetAdminPath (const char *p) |
void | SetAuthEntity (XrdSecEntity *se=0) |
void | SetAuthProt (XrdSecProtocol *p) |
void | SetCID (kXR_int32 cid) |
void | SetClient (XrdProofdClient *c) |
void | SetClntCapVer (unsigned char c) |
void | SetConnType (int ct) |
void | SetGroupIn (const char *gin) |
void | SetPid (int pid) |
void | SetProofProtocol (short int pp) |
void | SetStatus (char s) |
void | SetSuperUser (bool su=1) |
void | SetTraceID () |
void | SetUserIn (const char *uin) |
int | Stats (char *buff, int blen, int do_sync) |
Return statistics info about the protocol. | |
char | Status () const |
bool | SuperUser () const |
const char * | TraceID () const |
const char * | UserIn () const |
Static Public Member Functions | |
static int | Configure (char *parms, XrdProtocol_Config *pi) |
Protocol configuration tool Function: Establish configuration at load time. | |
static int | EUidAtStartup () |
static XrdBuffer * | GetBuff (int quantum, XrdBuffer *argp=0) |
Allocate a buffer to handle quantum bytes; if argp points to an existing buffer, its size is checked and re-allocated if needed. | |
static int | MaxBuffsz () |
static XrdProofdManager * | Mgr () |
static void | ReleaseBuff (XrdBuffer *argp) |
Release a buffer previously allocated via GetBuff. | |
Private Member Functions | |
int | CtrlC () |
Set and propagate a Ctrl-C request. | |
XrdProofdResponse * | GetNewResponse (kXR_unt16 rid) |
Create new response instance for stream ID 'sid'. | |
int | Interrupt () |
Handle an interrupt request. | |
int | Ping () |
Handle a ping request. | |
int | Process2 () |
Local processing method: here the request is dispatched to the appropriate method. | |
void | Reset () |
Reset static and local vars. | |
int | SendData (XrdProofdProofServ *xps, kXR_int32 sid=-1, XrdSrvBuffer **buf=0, bool sb=0) |
Send data over the open link. Segmentation is done here, if required. | |
int | SendDataN (XrdProofdProofServ *xps, XrdSrvBuffer **buf=0, bool sb=0) |
Send data over the open client links of session 'xps'. | |
int | SendMsg () |
Handle a request to forward a message to another process. | |
void | TouchAdminPath () |
Recording time of the last request on this instance. | |
int | Urgent () |
Handle generic request of a urgent message to be forwarded to the server. | |
Static Private Member Functions | |
static void | PostSession (int on, const char *u, const char *g, XrdProofdProofServ *xps) |
Post change of session status. | |
Private Attributes | |
XrdOucString | fAdminPath |
XrdBuffer * | fArgp |
XrdSecProtocol * | fAuthProt |
kXR_int32 | fCID |
unsigned char | fClntCapVer |
kXR_int32 | fConnType |
XrdSysRecMutex | fCtrlcMutex |
XrdOucString | fGroupIn |
bool | fIsCtrlC |
XrdLink * | fLink |
XrdSysRecMutex | fMutex |
XrdProofdClient * | fPClient |
int | fPid |
short int | fProofProtocol |
XpdObject | fProtLink |
XPClientRequest | fRequest |
std::vector< XrdProofdResponse * > | fResponses |
XrdSecEntity * | fSecClient |
XrdSecEntity | fSecEntity |
char | fStatus |
int | fStdErrFD |
bool | fSuperUser |
XrdOucString | fTraceID |
XrdOucString | fUserIn |
Static Private Attributes | |
static XrdSysRecMutex | fgBMutex |
static XrdBuffManager * | fgBPool = 0 |
static bool | fgConfigDone = 0 |
static int | fgCount = 0 |
static XrdSysError | fgEDest |
static int | fgEUidAtStartup = -1 |
static XrdSysLogger * | fgLogger = 0 |
static int | fgMaxBuffsz = 0 |
static XrdProofdManager * | fgMgr = 0 |
static XpdObjectQ | fgProtStack |
static int | fgReadWait = 0 |
#include <XrdProofdProtocol.h>
XrdProofdProtocol::XrdProofdProtocol | ( | XrdProtocol_Config * | pi = 0 | ) |
Protocol constructor.
Definition at line 218 of file XrdProofdProtocol.cxx.
|
inlinevirtual |
Definition at line 58 of file XrdProofdProtocol.h.
|
inline |
Definition at line 92 of file XrdProofdProtocol.h.
|
inline |
Definition at line 94 of file XrdProofdProtocol.h.
|
inline |
Definition at line 75 of file XrdProofdProtocol.h.
|
inline |
Definition at line 76 of file XrdProofdProtocol.h.
|
static |
Protocol configuration tool Function: Establish configuration at load time.
Output: 1 upon success or 0 otherwise.
Definition at line 429 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 79 of file XrdProofdProtocol.h.
|
private |
Set and propagate a Ctrl-C request.
Definition at line 1382 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 60 of file XrdProofdProtocol.h.
Definition at line 114 of file XrdProofdProtocol.h.
Allocate a buffer to handle quantum bytes; if argp points to an existing buffer, its size is checked and re-allocated if needed.
Definition at line 721 of file XrdProofdProtocol.cxx.
Get data from the open link.
Definition at line 764 of file XrdProofdProtocol.cxx.
|
private |
Create new response instance for stream ID 'sid'.
Definition at line 253 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 77 of file XrdProofdProtocol.h.
|
inline |
Definition at line 81 of file XrdProofdProtocol.h.
|
private |
Handle an interrupt request.
Definition at line 1118 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 82 of file XrdProofdProtocol.h.
|
inline |
Definition at line 93 of file XrdProofdProtocol.h.
XrdProtocol * XrdProofdProtocol::Match | ( | XrdLink * | lp | ) |
Check whether the request matches this protocol.
Definition at line 291 of file XrdProofdProtocol.cxx.
Definition at line 72 of file XrdProofdProtocol.h.
|
inlinestatic |
Definition at line 113 of file XrdProofdProtocol.h.
|
inline |
Definition at line 84 of file XrdProofdProtocol.h.
|
private |
Handle a ping request.
For internal connections, ping is done asynchronously to avoid locking problems; the session checker verifies that the admin file has been touched recently enough; touching is done in Process2, so we have nothing to do here
Definition at line 1174 of file XrdProofdProtocol.cxx.
|
staticprivate |
Post change of session status.
Definition at line 1308 of file XrdProofdProtocol.cxx.
Process the information received on the active link.
(We ignore the argument here)
Definition at line 496 of file XrdProofdProtocol.cxx.
|
private |
Local processing method: here the request is dispatched to the appropriate method.
Definition at line 558 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 87 of file XrdProofdProtocol.h.
Recycle call. Release the instance and give it back to the stack.
Definition at line 627 of file XrdProofdProtocol.cxx.
|
static |
Release a buffer previously allocated via GetBuff.
Definition at line 755 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 91 of file XrdProofdProtocol.h.
|
private |
Reset static and local vars.
Definition at line 395 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 85 of file XrdProofdProtocol.h.
XrdProofdResponse * XrdProofdProtocol::Response | ( | kXR_unt16 | rid | ) |
Get response instance corresponding to stream ID 'sid'.
Definition at line 237 of file XrdProofdProtocol.cxx.
|
private |
Send data over the open link. Segmentation is done here, if required.
Definition at line 799 of file XrdProofdProtocol.cxx.
|
private |
Send data over the open client links of session 'xps'.
Used when all the connected clients are eligible to receive the message. Segmentation is done here, if required.
Definition at line 875 of file XrdProofdProtocol.cxx.
|
private |
Handle a request to forward a message to another process.
Definition at line 925 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 97 of file XrdProofdProtocol.h.
|
inline |
Definition at line 98 of file XrdProofdProtocol.h.
|
inline |
Definition at line 100 of file XrdProofdProtocol.h.
|
inline |
Definition at line 103 of file XrdProofdProtocol.h.
|
inline |
Definition at line 101 of file XrdProofdProtocol.h.
|
inline |
Definition at line 102 of file XrdProofdProtocol.h.
|
inline |
Definition at line 104 of file XrdProofdProtocol.h.
|
inline |
Definition at line 105 of file XrdProofdProtocol.h.
|
inline |
Definition at line 107 of file XrdProofdProtocol.h.
|
inline |
Definition at line 108 of file XrdProofdProtocol.h.
|
inline |
Definition at line 109 of file XrdProofdProtocol.h.
|
inline |
Definition at line 110 of file XrdProofdProtocol.h.
|
inline |
Definition at line 106 of file XrdProofdProtocol.h.
|
inline |
Definition at line 111 of file XrdProofdProtocol.h.
Return statistics info about the protocol.
Not really implemented yet: this is a reduced XrdXrootd version.
Definition at line 380 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 86 of file XrdProofdProtocol.h.
|
inline |
Definition at line 88 of file XrdProofdProtocol.h.
|
private |
Recording time of the last request on this instance.
Definition at line 1350 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 80 of file XrdProofdProtocol.h.
|
private |
Handle generic request of a urgent message to be forwarded to the server.
Definition at line 1050 of file XrdProofdProtocol.cxx.
|
inline |
Definition at line 78 of file XrdProofdProtocol.h.
|
private |
Definition at line 149 of file XrdProofdProtocol.h.
|
private |
Definition at line 134 of file XrdProofdProtocol.h.
|
private |
Definition at line 154 of file XrdProofdProtocol.h.
|
private |
Definition at line 159 of file XrdProofdProtocol.h.
|
private |
Definition at line 141 of file XrdProofdProtocol.h.
|
private |
Definition at line 157 of file XrdProofdProtocol.h.
|
private |
Definition at line 162 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 181 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 179 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 176 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 177 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 183 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 186 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 184 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 180 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 191 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 178 of file XrdProofdProtocol.h.
|
staticprivate |
Definition at line 190 of file XrdProofdProtocol.h.
|
private |
Definition at line 147 of file XrdProofdProtocol.h.
|
private |
Definition at line 164 of file XrdProofdProtocol.h.
|
private |
Definition at line 136 of file XrdProofdProtocol.h.
|
private |
Definition at line 161 of file XrdProofdProtocol.h.
|
private |
Definition at line 148 of file XrdProofdProtocol.h.
|
private |
Definition at line 137 of file XrdProofdProtocol.h.
|
private |
Definition at line 142 of file XrdProofdProtocol.h.
|
private |
Definition at line 133 of file XrdProofdProtocol.h.
|
private |
Definition at line 170 of file XrdProofdProtocol.h.
|
private |
Definition at line 171 of file XrdProofdProtocol.h.
|
private |
Definition at line 153 of file XrdProofdProtocol.h.
|
private |
Definition at line 155 of file XrdProofdProtocol.h.
|
private |
Definition at line 139 of file XrdProofdProtocol.h.
|
private |
Definition at line 166 of file XrdProofdProtocol.h.
|
private |
Definition at line 144 of file XrdProofdProtocol.h.
|
private |
Definition at line 151 of file XrdProofdProtocol.h.
|
private |
Definition at line 146 of file XrdProofdProtocol.h.