#include <XrdNetPMarkFF.hh>
Definition at line 38 of file XrdNetPMarkFF.hh.
◆ XrdNetPMarkFF()
◆ ~XrdNetPMarkFF()
XrdNetPMarkFF::~XrdNetPMarkFF |
( |
| ) |
|
|
virtual |
Definition at line 260 of file XrdNetPMarkFF.cc.
265 {
char utcBuff[40], endBuff[80];
266 snprintf(endBuff,
sizeof(endBuff), ffEnd,
267 getUTC(utcBuff,
sizeof(utcBuff)));
268 Emit(
"end", utcBuff, endBuff);
273 if (mySad)
delete(mySad);
274 if (oDest) free(oDest);
275 if (ffHdr) free(ffHdr);
276 if (ffTail) free(ffTail);
277 if (xtraFH)
delete xtraFH;
◆ addHandle()
◆ Start()
Definition at line 313 of file XrdNetPMarkFF.cc.
315 char appInfo[128], clIP[INET6_ADDRSTRLEN+2], svIP[INET6_ADDRSTRLEN+2];
318 bool fdok =
false, odok =
false;
323 else snprintf(appInfo,
sizeof(appInfo),ffApp,
sizeof(appInfo)-20,
appName);
336 {
eDest->
Emsg(
"PMarkFF", clPort,
"get peer information.");
342 {
eDest->
Emsg(
"PMarkFF", clPort,
"get self information.");
354 if (!urSad)
eDest->
Emsg(
"PMarkFF",
"unable to get origin address.");
355 else {
char buff[1024];
358 mySad->
v4.sin_port = htons(
static_cast<uint16_t
>(
ffPortO));
359 snprintf(buff,
sizeof(buff),
"%s:%d", clIP,
ffPortO);
360 oDest = strdup(buff);
367 if (!fdok && !odok)
return false;
372 char utcBuff[40], bseg0[512];
373 int len0 = snprintf(bseg0,
sizeof(bseg0), ffFmt0,
myHostName,
374 getUTC(utcBuff,
sizeof(utcBuff)));
375 if (len0 >= (
int)
sizeof(bseg0))
376 {
eDest->
Emsg(
"PMarkFF",
"invalid json; bseg0 truncated.");
380 ffHdr = strdup(bseg0);
383 int len1 = snprintf(bseg1,
sizeof(bseg1), ffFmt1,
eCode,
aCode, appInfo);
384 if (len1 >= (
int)
sizeof(bseg1))
385 {
eDest->
Emsg(
"PMarkFF",
"invalid json; bseg1 truncated.");
390 int len2 = snprintf(bseg2,
sizeof(bseg2), ffFmt2,
391 clType, svIP, clIP, svPort, clPort);
392 if (len2 >= (
int)
sizeof(bseg2))
393 {
eDest->
Emsg(
"PMarkFF",
"invalid json; cl bseg2 truncated.");
397 ffTailsz = len1 + len2;
398 ffTail = (
char *)malloc(ffTailsz + 1);
399 strcpy(ffTail, bseg1);
400 strcpy(ffTail+len1, bseg2);
406 return Emit(
"start", utcBuff,
"");
static XrdSysError eDest(0,"crypto_")
const XrdNetSockAddr * NetAddr()
static int GetSokInfo(int fd, char *theAddr, int theALen, char &theType)
int Emsg(const char *esfx, int ecode, const char *text1, const char *text2=0)
References XrdNetPMarkConfig::eDest, XrdSysError::Emsg(), XrdNetPMarkConfig::ffPortO, XrdNetUtils::GetSokInfo(), XrdNetPMarkConfig::myHostName, XrdNetAddrInfo::NetAddr(), XrdNetPMarkConfig::netMsg, XrdNetPMarkConfig::netOrg, and XrdNetAddrInfo::SockFD().
Referenced by XrdNetPMarkCfg::Begin().
The documentation for this class was generated from the following files: