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

## Public Member Functions

| XrdOfsTPCAllow (char *vDN, char *vGN, char *vHN, char *vVO, XrdOfsTPCAllow *Prev)
| ~XrdOfsTPCAllow ()
int | Match (const XrdSecEntity *Who, const char *Host)

## Public Attributes

XrdOfsTPCAllow * | Next
char * | theDN
char * | theGN
XrdOucNList * | theHN
char * | theVO

## Detailed Description

Definition at line 97 of file XrdOfsTPC.cc.

## Constructor & Destructor Documentation

## XrdOfsTPCAllow()

XrdOfsTPCAllow::XrdOfsTPCAllow | ( | char * | vDN,
|  | char * | vGN,
|  | char * | vHN,
|  | char * | vVO,
|  | XrdOfsTPCAllow * | Prev )

inline

Definition at line 109 of file XrdOfsTPC.cc.

: Next(Prev), theDN(vDN), theGN(vGN), theVO(vVO)
{if (vHN) theHN = new XrdOucNList(vHN);
else theHN = 0;
}
XrdOfsTPCAllow::theVO
char * theVO
Definition XrdOfsTPC.cc:105
XrdOfsTPCAllow::theHN
XrdOucNList * theHN
Definition XrdOfsTPC.cc:104
XrdOfsTPCAllow::Next
XrdOfsTPCAllow * Next
Definition XrdOfsTPC.cc:101
XrdOfsTPCAllow::theDN
char * theDN
Definition XrdOfsTPC.cc:102
XrdOfsTPCAllow::theGN
char * theGN
Definition XrdOfsTPC.cc:103

References XrdOfsTPCAllow(), Next, theDN, theGN, theHN, and theVO.

Referenced by XrdOfsTPCAllow().

Here is the call graph for this function:
Here is the caller graph for this function:

## ~XrdOfsTPCAllow()

XrdOfsTPCAllow::~XrdOfsTPCAllow | ( |  | ) |

inline

Definition at line 115 of file XrdOfsTPC.cc.

{if (theHN) delete theHN;}

References theHN.

## Member Function Documentation

## Match()

int XrdOfsTPCAllow::Match | ( | const XrdSecEntity * | Who,
|  | const char * | Host )

Definition at line 122 of file XrdOfsTPC.cc.

{
// Host name comparisons should be case insensitive. However, DN's and VO's
// do take case into account.
//
if (theHN && (!Host || !(theHN->NameKO(Host )))) return 0;
if (theDN && (!(Who->name) || strcmp(theDN, Who->name))) return 0;
if (theVO && (!(Who->vorg) || strcmp(theDN, Who->vorg))) return 0;
if (!theGN) return 1;
if (Who->grps)
{char gBuff[1028], Group[64];
strlcpy(gBuff+1, Who->grps, sizeof(gBuff)-1); *gBuff = ' ';
strlcpy(Group+1, theGN, sizeof(Group)-1); *Group = ' ';
return strstr(gBuff, Group) != 0;
} else return 0;
return 1;
}
strlcpy
size_t strlcpy(char *dst, const char *src, size_t sz)
Definition XrdSysPlatform.cc:60
XrdSecEntity::vorg
char * vorg
Entity's virtual organization(s).
Definition XrdSecEntity.hh:71
XrdSecEntity::grps
char * grps
Entity's group name(s).
Definition XrdSecEntity.hh:73
XrdSecEntity::name
char * name
Entity's name.
Definition XrdSecEntity.hh:69

References XrdSecEntity::grps, XrdSecEntity::name, strlcpy(), theDN, theGN, theHN, theVO, and XrdSecEntity::vorg.

Referenced by XrdOfsTPC::Authorize().

Here is the call graph for this function:
Here is the caller graph for this function:

## Member Data Documentation

## Next

XrdOfsTPCAllow* XrdOfsTPCAllow::Next

Definition at line 101 of file XrdOfsTPC.cc.

Referenced by XrdOfsTPCAllow(), and XrdOfsTPC::Authorize().

## theDN

char* XrdOfsTPCAllow::theDN

Definition at line 102 of file XrdOfsTPC.cc.

Referenced by XrdOfsTPCAllow(), and Match().

## theGN

char* XrdOfsTPCAllow::theGN

Definition at line 103 of file XrdOfsTPC.cc.

Referenced by XrdOfsTPCAllow(), and Match().

## theHN

XrdOucNList* XrdOfsTPCAllow::theHN

Definition at line 104 of file XrdOfsTPC.cc.

Referenced by XrdOfsTPCAllow(), ~XrdOfsTPCAllow(), and Match().

## theVO

char* XrdOfsTPCAllow::theVO

Definition at line 105 of file XrdOfsTPC.cc.

Referenced by XrdOfsTPCAllow(), and Match().

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

- XrdOfsTPC.cc