XRootD
Loading...
Searching...
No Matches
XrdSciTokensAccess.cc File Reference
#include "XrdAcc/XrdAccAuthorize.hh"
#include "XrdOuc/XrdOucEnv.hh"
#include "XrdOuc/XrdOucGatherConf.hh"
#include "XrdOuc/XrdOucPrivateUtils.hh"
#include "XrdSec/XrdSecEntity.hh"
#include "XrdSec/XrdSecEntityAttr.hh"
#include "XrdSys/XrdSysLogger.hh"
#include "XrdTls/XrdTlsContext.hh"
#include "XrdVersion.hh"
#include <map>
#include <memory>
#include <mutex>
#include <string>
#include <vector>
#include <sstream>
#include <fstream>
#include <unordered_map>
#include <tuple>
#include "fcntl.h"
#include "INIReader.h"
#include "picojson.h"
#include "scitokens/scitokens.h"
#include "XrdSciTokens/XrdSciTokensHelper.hh"
#include "XrdSciTokens/XrdSciTokensMon.hh"
+ Include dependency graph for XrdSciTokensAccess.cc:

Go to the source code of this file.

Classes

class  OverrideINIReader
 
class  XrdAccRules
 
class  XrdAccSciTokens
 

Functions

void InitAccSciTokens (XrdSysLogger *lp, const char *cfn, const char *parm, XrdAccAuthorize *accP, XrdOucEnv *envP)
 
XrdAccAuthorizeXrdAccAuthorizeObjAdd (XrdSysLogger *lp, const char *cfn, const char *parm, XrdOucEnv *envP, XrdAccAuthorize *accP)
 
XrdAccAuthorizeXrdAccAuthorizeObject (XrdSysLogger *lp, const char *cfn, const char *parm)
 
XrdAccAuthorizeXrdAccAuthorizeObject2 (XrdSysLogger *lp, const char *cfn, const char *parm, XrdOucEnv *envP)
 
 XrdVERSIONINFO (XrdAccAuthorizeObjAdd, XrdAccSciTokens)
 
 XrdVERSIONINFO (XrdAccAuthorizeObject, XrdAccSciTokens)
 

Variables

XrdAccSciTokensaccSciTokens = nullptr
 
XrdSciTokensHelperSciTokensHelper = nullptr
 

Function Documentation

◆ InitAccSciTokens()

void InitAccSciTokens ( XrdSysLogger * lp,
const char * cfn,
const char * parm,
XrdAccAuthorize * accP,
XrdOucEnv * envP )

Definition at line 1365 of file XrdSciTokensAccess.cc.

1367{
1368 try {
1369 accSciTokens = new XrdAccSciTokens(lp, parm, accP, envP);
1371 } catch (std::exception &) {
1372 }
1373}
XrdAccSciTokens * accSciTokens
XrdSciTokensHelper * SciTokensHelper

References accSciTokens, and SciTokensHelper.

Referenced by XrdAccAuthorizeObjAdd(), XrdAccAuthorizeObject(), and XrdAccAuthorizeObject2().

+ Here is the caller graph for this function:

◆ XrdAccAuthorizeObjAdd()

XrdAccAuthorize * XrdAccAuthorizeObjAdd ( XrdSysLogger * lp,
const char * cfn,
const char * parm,
XrdOucEnv * envP,
XrdAccAuthorize * accP )

Definition at line 1377 of file XrdSciTokensAccess.cc.

1382{
1383 // Record the parent authorization plugin. There is no need to use
1384 // unique_ptr as all of this happens once in the main and only thread.
1385 //
1386
1387 // If we have been initialized by a previous load, them return that result.
1388 // Otherwise, it's the first time through, get a new SciTokens authorizer.
1389 //
1390 if (!accSciTokens) InitAccSciTokens(lp, cfn, parm, accP, envP);
1391 return accSciTokens;
1392}
void InitAccSciTokens(XrdSysLogger *lp, const char *cfn, const char *parm, XrdAccAuthorize *accP, XrdOucEnv *envP)

References accSciTokens, and InitAccSciTokens().

+ Here is the call graph for this function:

◆ XrdAccAuthorizeObject()

XrdAccAuthorize * XrdAccAuthorizeObject ( XrdSysLogger * lp,
const char * cfn,
const char * parm )

Definition at line 1394 of file XrdSciTokensAccess.cc.

1397{
1398 InitAccSciTokens(lp, cfn, parm, nullptr, nullptr);
1399 return accSciTokens;
1400}

References accSciTokens, and InitAccSciTokens().

+ Here is the call graph for this function:

◆ XrdAccAuthorizeObject2()

XrdAccAuthorize * XrdAccAuthorizeObject2 ( XrdSysLogger * lp,
const char * cfn,
const char * parm,
XrdOucEnv * envP )

Definition at line 1402 of file XrdSciTokensAccess.cc.

1406{
1407 InitAccSciTokens(lp, cfn, parm, nullptr, envP);
1408 return accSciTokens;
1409}

References accSciTokens, and InitAccSciTokens().

+ Here is the call graph for this function:

◆ XrdVERSIONINFO() [1/2]

XrdVERSIONINFO ( XrdAccAuthorizeObjAdd ,
XrdAccSciTokens  )

◆ XrdVERSIONINFO() [2/2]

XrdVERSIONINFO ( XrdAccAuthorizeObject ,
XrdAccSciTokens  )

Variable Documentation

◆ accSciTokens

◆ SciTokensHelper

XrdSciTokensHelper* SciTokensHelper = nullptr

Definition at line 456 of file XrdSciTokensAccess.cc.

Referenced by InitAccSciTokens().