XRootD
XrdVomsgsi.cc
Go to the documentation of this file.
1
/******************************************************************************/
2
/* */
3
/* X r d V o m s g s i . c c */
4
/* */
5
/* (c) 2020 by the Board of Trustees of the Leland Stanford, Jr., University */
6
/* Produced by Andrew Hanushevsky for Stanford University under contract */
7
/* DE-AC02-76-SFO0515 with the Deprtment of Energy */
8
/* */
9
/* This file is part of the XRootD software suite. */
10
/* */
11
/* XRootD is free software: you can redistribute it and/or modify it under */
12
/* the terms of the GNU Lesser General Public License as published by the */
13
/* Free Software Foundation, either version 3 of the License, or (at your */
14
/* option) any later version. */
15
/* */
16
/* XRootD is distributed in the hope that it will be useful, but WITHOUT */
17
/* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or */
18
/* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public */
19
/* License for more details. */
20
/* */
21
/* You should have received a copy of the GNU Lesser General Public License */
22
/* along with XRootD in a file called COPYING.LESSER (LGPL license) and file */
23
/* COPYING (GPL license). If not, see <http://www.gnu.org/licenses/>. */
24
/* */
25
/* The copyright holder's institutional names and contributor's names may not */
26
/* be used to endorse or promote products derived from this software without */
27
/* specific prior written permission of the institution or contributor. */
28
/******************************************************************************/
29
30
#include "
XrdSys/XrdSysError.hh
"
31
#include "
XrdSys/XrdSysLogger.hh
"
32
33
#include "
XrdVomsFun.hh
"
34
35
/******************************************************************************/
36
/* L o c a l S t a t i c s */
37
/******************************************************************************/
38
39
namespace
40
{
41
XrdVomsFun
*vomsFun = 0;
42
}
43
44
/******************************************************************************/
45
/* X R o o t D P l u g i n I n t e r f a c e */
46
/******************************************************************************/
47
/******************************************************************************/
48
/* X r d S e c g s i V O M S F u n */
49
/******************************************************************************/
50
51
// For historical reason this externally loadable function does not follow
52
// the normal naming convention to be backward compatible. We should fix it.
53
//
54
extern
"C"
55
{
56
int
XrdSecgsiVOMSFun
(
XrdSecEntity
&ent)
57
{
58
// Make sure we were initialized. If so, invoke the function and return result.
59
//
60
return
(vomsFun ? vomsFun->VOMSFun(ent) : -1);
61
}
62
}
63
64
/******************************************************************************/
65
/* X r d S e c g s i V O M S I n i t */
66
/******************************************************************************/
67
68
// Init the relevant parameters from a dedicated config parameter
69
//
70
extern
"C"
71
{
72
int
XrdSecgsiVOMSInit
(
const
char
*cfg)
73
{
74
static
XrdSysLogger
gLogger;
75
static
XrdSysError
gDest(&gLogger,
"XrdVoms"
);
76
77
// Allocate a new Voms object
78
//
79
vomsFun =
new
XrdVomsFun
(gDest);
80
81
// Initialize it. There is no error return to speak of.
82
//
83
return
vomsFun->VOMSInit(cfg);
84
}
85
}
XrdSysError.hh
XrdSysLogger.hh
XrdVomsFun.hh
XrdSecgsiVOMSInit
int XrdSecgsiVOMSInit(const char *cfg)
Definition:
XrdVomsgsi.cc:72
XrdSecgsiVOMSFun
int XrdSecgsiVOMSFun(XrdSecEntity &ent)
Definition:
XrdVomsgsi.cc:56
XrdSecEntity
Definition:
XrdSecEntity.hh:65
XrdSysError
Definition:
XrdSysError.hh:90
XrdSysLogger
Definition:
XrdSysLogger.hh:53
XrdVomsFun
Definition:
XrdVomsFun.hh:44
XrdVoms
XrdVomsgsi.cc
Generated by
1.9.1