45 int XrdSsiAlert::fNum = 0;
46 int XrdSsiAlert::fMax = XrdSsiAlert::fmaxDflt;
63 else {free = aP->
next; fNum--;}
108 if (fNum >= fMax)
delete this;
109 else {
next = free; free =
this; fNum++;}
119 static const int aIovSz = 3;
133 alrtResp = (AlrtResp *)mBuff;
134 memset(alrtResp, 0,
sizeof(AlrtResp));
140 alrtResp->ioV[1].iov_base = mBuff+offsetof(
struct AlrtResp, aHdr);
145 aData = theMsg->
GetMsg(n);
146 alrtResp->ioV[2].iov_base = aData;
147 alrtResp->ioV[2].iov_len = n;
148 alrtResp->aHdr.mdLen = htonl(n);
153 if (aMsg) memcpy(aMsg, aData, (n < (
int)
sizeof(aMsg) ? n : 8));
char * getMsgBuff(int &mblen)
void Done(int &Result, XrdOucErrInfo *cbInfo, const char *path=0)
static XrdSsiAlert * Alloc(XrdSsiRespInfoMsg &aMsg)
int SetInfo(XrdOucErrInfo &eInfo, char *aMsg, int aLen)
virtual void RecycleMsg(bool sent=true)=0
static const int alrtResp