Loading...
Searching...
No Matches
XrdSecProtParm Class Reference
Collaboration diagram for XrdSecProtParm:

## Public Member Functions

| XrdSecProtParm (XrdSysError *erp, const char *cid)
| ~XrdSecProtParm ()
void | Add ()
int | Cat (char *token)
int | Insert (char oct)
int | isProto (char *proto)
char * | Result (int &size)
void | setProt (char *pid)

## Static Public Member Functions

static XrdSecProtParm * | Find (char *pid, int remove=0)

## Public Attributes

XrdSecProtParm * | Next
char | ProtoID [XrdSecPROTOIDSIZE+1]

## Static Public Attributes

static XrdSecProtParm * | First = 0

## Detailed Description

Definition at line 185 of file XrdSecServer.cc.

## Constructor & Destructor Documentation

## XrdSecProtParm()

XrdSecProtParm::XrdSecProtParm | ( | XrdSysError * | erp,
|  | const char * | cid )

inline

Definition at line 208 of file XrdSecServer.cc.

: who(cid)
{*ProtoID = '\0';
bsize = 4096;
buff = (char *)malloc(bsize);
*buff = '\0';
bp = buff;
eDest = erp;
Next = 0;
}
XrdSecProtParm::ProtoID
char ProtoID[XrdSecPROTOIDSIZE+1]
Definition XrdSecServer.cc:206
XrdSecProtParm::Next
XrdSecProtParm * Next
Definition XrdSecServer.cc:204

References Next, and ProtoID.

Referenced by Find().

Here is the caller graph for this function:

## ~XrdSecProtParm()

XrdSecProtParm::~XrdSecProtParm | ( |  | ) |

inline

Definition at line 217 of file XrdSecServer.cc.

{free(buff);}

## Member Function Documentation

## Add()

void XrdSecProtParm::Add | ( |  | ) |

inline

Definition at line 189 of file XrdSecServer.cc.

{Next = First; First = this;}
XrdSecProtParm::First
static XrdSecProtParm * First
Definition XrdSecServer.cc:203

References First, and Next.

## Cat()

int XrdSecProtParm::Cat | ( | char * | token | ) |

Definition at line 233 of file XrdSecServer.cc.

{
int alen;
alen = strlen(token);
if (alen+1 > bsize-(bp-buff))
{eDest->Emsg("Config",who,ProtoID,"argument string too long");
return 0;
}
*bp++ = ' ';
strcpy(bp, token);
bp += alen;
return 1;
}

References ProtoID.

## Find()

XrdSecProtParm * XrdSecProtParm::Find | ( | char * | pid,
|  | int | remove = 0 )

static

Definition at line 251 of file XrdSecServer.cc.

{
XrdSecProtParm *mp, *pp;
mp = 0; pp = First;
while(pp && !pp->isProto(pid)){mp = pp; pp = pp->Next;}
if (pp && remove)
{if (mp) mp->Next = pp->Next;
else First = pp->Next;
}
return pp;
}
XrdSecProtParm::XrdSecProtParm
XrdSecProtParm(XrdSysError *erp, const char *cid)
Definition XrdSecServer.cc:208
XrdSecProtParm::isProto
int isProto(char *proto)
Definition XrdSecServer.cc:197

References XrdSecProtParm(), First, isProto(), and Next.

Here is the call graph for this function:

## Insert()

int XrdSecProtParm::Insert | ( | char | oct | ) |

Definition at line 268 of file XrdSecServer.cc.

{
if (bsize-(bp-buff) < 1)
{eDest->Emsg("Config",who,ProtoID,"argument string too long");
return 0;
}
*bp++ = oct;
return 1;
}
Xrd::oct
@ oct
Definition XrdSysTrace.hh:42

References ProtoID.

## isProto()

int XrdSecProtParm::isProto | ( | char * | proto | ) |

inline

Definition at line 197 of file XrdSecServer.cc.

{return !strcmp(ProtoID, proto);}

References ProtoID.

Referenced by Find().

Here is the caller graph for this function:

## Result()

char * XrdSecProtParm::Result | ( | int & | size | ) |

inline

Definition at line 199 of file XrdSecServer.cc.

{size = bp-buff; return buff;}

## setProt()

void XrdSecProtParm::setProt | ( | char * | pid | ) |

inline

Definition at line 201 of file XrdSecServer.cc.

{strcpy(ProtoID, pid);}

References ProtoID.

## Member Data Documentation

## First

XrdSecProtParm * XrdSecProtParm::First = 0

static

Definition at line 203 of file XrdSecServer.cc.

Referenced by Add(), and Find().

## Next

XrdSecProtParm* XrdSecProtParm::Next

Definition at line 204 of file XrdSecServer.cc.

Referenced by XrdSecProtParm(), Add(), and Find().

## ProtoID

char XrdSecProtParm::ProtoID[XrdSecPROTOIDSIZE+1]

Definition at line 206 of file XrdSecServer.cc.

Referenced by XrdSecProtParm(), Cat(), Insert(), isProto(), and setProt().

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

- XrdSecServer.cc