XRootD
Loading...
Searching...
No Matches
XrdSecProtocolgsi.hh File Reference
+ Include dependency graph for XrdSecProtocolgsi.hh:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  gsiHSVars
 
class  gsiOptions
 
class  GSIStack< T >
 
struct  ProxyIn_t
 
struct  ProxyOut_t
 
class  XrdSecProtocolgsi
 

Macros

#define kMAXBUFLEN   1024
 
#define REL1(x)
 
#define REL2(x, y)
 
#define REL3(x, y, z)
 
#define SafeDelArray(x)
 
#define SafeDelete(x)
 
#define SafeFree(x)
 
#define XrdCryptoMax   10
 
#define XrdSecDEBUG   0x1000
 
#define XrdSecgsiVersCertKey   10600
 
#define XrdSecgsiVersDHsigned   10400
 
#define XrdSecgsiVERSION   10700
 
#define XrdSecgsiVersRtagHash   10700
 
#define XrdSecNOIPCHK   0x0001
 
#define XrdSecPROTOIDENT   "gsi"
 
#define XrdSecPROTOIDLEN   sizeof(XrdSecPROTOIDENT)
 

Typedefs

typedef XrdOucString String
 
typedef XrdCryptogsiX509Chain X509Chain
 
typedef int(* XrdSecgsiAuthz_t) (XrdSecEntity &)
 
typedef int(* XrdSecgsiAuthzInit_t) (const char *)
 
typedef int(* XrdSecgsiAuthzKey_t) (XrdSecEntity &, char **)
 
typedef char *(* XrdSecgsiGMAP_t) (const char *, int)
 
typedef XrdSecgsiAuthz_t XrdSecgsiVOMS_t
 
typedef XrdSecgsiAuthzInit_t XrdSecgsiVOMSInit_t
 

Enumerations

enum  kgsiClientSteps {
  kXGC_none = 0 ,
  kXGC_certreq = 1000 ,
  kXGC_cert ,
  kXGC_sigpxy ,
  kXGC_reserved
}
 
enum  kgsiErrors {
  kGSErrParseBuffer = 10000 ,
  kGSErrDecodeBuffer ,
  kGSErrLoadCrypto ,
  kGSErrBadProtocol ,
  kGSErrCreateBucket ,
  kGSErrDuplicateBucket ,
  kGSErrCreateBuffer ,
  kGSErrSerialBuffer ,
  kGSErrGenCipher ,
  kGSErrExportPuK ,
  kGSErrEncRndmTag ,
  kGSErrBadRndmTag ,
  kGSErrNoRndmTag ,
  kGSErrNoCipher ,
  kGSErrNoCreds ,
  kGSErrBadOpt ,
  kGSErrMarshal ,
  kGSErrUnmarshal ,
  kGSErrSaveCreds ,
  kGSErrNoBuffer ,
  kGSErrRefCipher ,
  kGSErrNoPublic ,
  kGSErrAddBucket ,
  kGSErrFinCipher ,
  kGSErrInit ,
  kGSErrBadCreds ,
  kGSErrError
}
 
enum  kgsiHandshakeOpts {
  kOptsDlgPxy = 1 ,
  kOptsFwdPxy = 2 ,
  kOptsSigReq = 4 ,
  kOptsSrvReq = 8 ,
  kOptsPxFile = 16 ,
  kOptsDelChn = 32 ,
  kOptsPxCred = 64 ,
  kOptsCreatePxy = 128 ,
  kOptsDelPxy = 256
}
 
enum  kgsiServerSteps {
  kXGS_none = 0 ,
  kXGS_init = 2000 ,
  kXGS_cert ,
  kXGS_pxyreq ,
  kXGS_reserved
}
 
enum  kgsiStatus {
  kgST_error = -1 ,
  kgST_ok = 0 ,
  kgST_more = 1
}
 

Class Documentation

◆ ProxyIn_t

struct ProxyIn_t

Definition at line 249 of file XrdSecProtocolgsi.hh.

+ Collaboration diagram for ProxyIn_t:
Class Members
int bits
const char * cert
const char * certdir
bool createpxy
int deplen
const char * key
const char * out
const char * valid

◆ ProxyOut_t

struct ProxyOut_t

Definition at line 242 of file XrdSecProtocolgsi.hh.

+ Collaboration diagram for ProxyOut_t:
Class Members
XrdSutBucket * cbck
X509Chain * chain
XrdCryptoRSA * ksig

Macro Definition Documentation

◆ kMAXBUFLEN

#define kMAXBUFLEN   1024

Definition at line 74 of file XrdSecProtocolgsi.hh.

◆ REL1

#define REL1 ( x)
Value:
{ if (x) delete x; }

Definition at line 155 of file XrdSecProtocolgsi.hh.

◆ REL2

#define REL2 ( x,
y )
Value:
{ if (x) delete x; if (y) delete y; }

Definition at line 156 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolgsi::Authenticate(), and XrdSecProtocolgsi::getCredentials().

◆ REL3

#define REL3 ( x,
y,
z )
Value:
{ if (x) delete x; if (y) delete y; if (z) delete z; }

Definition at line 157 of file XrdSecProtocolgsi.hh.

◆ SafeDelArray

#define SafeDelArray ( x)
Value:
{ if (x) {delete [] x ; x = 0;} }

Definition at line 160 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolgsi::Authenticate().

◆ SafeDelete

#define SafeDelete ( x)
Value:
{ if (x) {delete x ; x = 0;} }

Definition at line 159 of file XrdSecProtocolgsi.hh.

Referenced by gsiHSVars::~gsiHSVars(), XrdSecProtocolgsi::Authenticate(), XrdSecProtocolgsi::Delete(), and XrdSecProtocolgsi::setKey().

◆ SafeFree

◆ XrdCryptoMax

#define XrdCryptoMax   10

Definition at line 72 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolgsi::Init().

◆ XrdSecDEBUG

#define XrdSecDEBUG   0x1000

Definition at line 71 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolkrb5Init().

◆ XrdSecgsiVersCertKey

#define XrdSecgsiVersCertKey   10600

Definition at line 79 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVersDHsigned

#define XrdSecgsiVersDHsigned   10400

◆ XrdSecgsiVERSION

#define XrdSecgsiVERSION   10700

Definition at line 69 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVersRtagHash

#define XrdSecgsiVersRtagHash   10700

Definition at line 81 of file XrdSecProtocolgsi.hh.

◆ XrdSecNOIPCHK

#define XrdSecNOIPCHK   0x0001

◆ XrdSecPROTOIDENT

#define XrdSecPROTOIDENT   "gsi"

◆ XrdSecPROTOIDLEN

#define XrdSecPROTOIDLEN   sizeof(XrdSecPROTOIDENT)

Typedef Documentation

◆ String

Definition at line 64 of file XrdSecProtocolgsi.hh.

◆ X509Chain

Definition at line 65 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiAuthz_t

typedef int(* XrdSecgsiAuthz_t) (XrdSecEntity &)

Definition at line 165 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiAuthzInit_t

typedef int(* XrdSecgsiAuthzInit_t) (const char *)

Definition at line 166 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiAuthzKey_t

typedef int(* XrdSecgsiAuthzKey_t) (XrdSecEntity &, char **)

Definition at line 167 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiGMAP_t

typedef char *(* XrdSecgsiGMAP_t) (const char *, int)

Definition at line 164 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVOMS_t

Definition at line 169 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVOMSInit_t

Enumeration Type Documentation

◆ kgsiClientSteps

Enumerator
kXGC_none 
kXGC_certreq 
kXGC_cert 
kXGC_sigpxy 
kXGC_reserved 

Definition at line 94 of file XrdSecProtocolgsi.hh.

94 {
95 kXGC_none = 0,
96 kXGC_certreq = 1000, // 1000: request server certificate
97 kXGC_cert, // 1001: packet with (proxy) certificate
98 kXGC_sigpxy, // 1002: packet with signed proxy certificate
100};
@ kXGC_sigpxy
@ kXGC_cert
@ kXGC_reserved
@ kXGC_none
@ kXGC_certreq

◆ kgsiErrors

enum kgsiErrors
Enumerator
kGSErrParseBuffer 
kGSErrDecodeBuffer 
kGSErrLoadCrypto 
kGSErrBadProtocol 
kGSErrCreateBucket 
kGSErrDuplicateBucket 
kGSErrCreateBuffer 
kGSErrSerialBuffer 
kGSErrGenCipher 
kGSErrExportPuK 
kGSErrEncRndmTag 
kGSErrBadRndmTag 
kGSErrNoRndmTag 
kGSErrNoCipher 
kGSErrNoCreds 
kGSErrBadOpt 
kGSErrMarshal 
kGSErrUnmarshal 
kGSErrSaveCreds 
kGSErrNoBuffer 
kGSErrRefCipher 
kGSErrNoPublic 
kGSErrAddBucket 
kGSErrFinCipher 
kGSErrInit 
kGSErrBadCreds 
kGSErrError 

Definition at line 125 of file XrdSecProtocolgsi.hh.

125 {
126 kGSErrParseBuffer = 10000, // 10000
127 kGSErrDecodeBuffer, // 10001
128 kGSErrLoadCrypto, // 10002
129 kGSErrBadProtocol, // 10003
130 kGSErrCreateBucket, // 10004
131 kGSErrDuplicateBucket, // 10005
132 kGSErrCreateBuffer, // 10006
133 kGSErrSerialBuffer, // 10007
134 kGSErrGenCipher, // 10008
135 kGSErrExportPuK, // 10009
136 kGSErrEncRndmTag, // 10010
137 kGSErrBadRndmTag, // 10011
138 kGSErrNoRndmTag, // 10012
139 kGSErrNoCipher, // 10013
140 kGSErrNoCreds, // 10014
141 kGSErrBadOpt, // 10015
142 kGSErrMarshal, // 10016
143 kGSErrUnmarshal, // 10017
144 kGSErrSaveCreds, // 10018
145 kGSErrNoBuffer, // 10019
146 kGSErrRefCipher, // 10020
147 kGSErrNoPublic, // 10021
148 kGSErrAddBucket, // 10022
149 kGSErrFinCipher, // 10023
150 kGSErrInit, // 10024
151 kGSErrBadCreds, // 10025
152 kGSErrError // 10026
153};
@ kGSErrExportPuK
@ kGSErrBadRndmTag
@ kGSErrCreateBuffer
@ kGSErrNoCipher
@ kGSErrInit
@ kGSErrFinCipher
@ kGSErrParseBuffer
@ kGSErrGenCipher
@ kGSErrBadCreds
@ kGSErrUnmarshal
@ kGSErrRefCipher
@ kGSErrBadProtocol
@ kGSErrMarshal
@ kGSErrNoPublic
@ kGSErrSaveCreds
@ kGSErrSerialBuffer
@ kGSErrNoCreds
@ kGSErrDecodeBuffer
@ kGSErrLoadCrypto
@ kGSErrEncRndmTag
@ kGSErrDuplicateBucket
@ kGSErrBadOpt
@ kGSErrNoRndmTag
@ kGSErrAddBucket
@ kGSErrError
@ kGSErrCreateBucket
@ kGSErrNoBuffer

◆ kgsiHandshakeOpts

Enumerator
kOptsDlgPxy 
kOptsFwdPxy 
kOptsSigReq 
kOptsSrvReq 
kOptsPxFile 
kOptsDelChn 
kOptsPxCred 
kOptsCreatePxy 
kOptsDelPxy 

Definition at line 112 of file XrdSecProtocolgsi.hh.

112 {
113 kOptsDlgPxy = 1, // 0x0001: Ask for a delegated proxy
114 kOptsFwdPxy = 2, // 0x0002: Forward local proxy
115 kOptsSigReq = 4, // 0x0004: Accept to sign delegated proxy
116 kOptsSrvReq = 8, // 0x0008: Server request for delegated proxy
117 kOptsPxFile = 16, // 0x0010: Save delegated proxies in file
118 kOptsDelChn = 32, // 0x0020: Delete chain
119 kOptsPxCred = 64, // 0x0040: Save delegated proxies as credentials
120 kOptsCreatePxy = 128, // 0x0080: Request a client proxy
121 kOptsDelPxy = 256 // 0x0100: Delete the proxy PxyChain
122};
@ kOptsDelChn
@ kOptsDelPxy
@ kOptsSigReq
@ kOptsFwdPxy
@ kOptsPxCred
@ kOptsSrvReq
@ kOptsDlgPxy
@ kOptsCreatePxy
@ kOptsPxFile

◆ kgsiServerSteps

Enumerator
kXGS_none 
kXGS_init 
kXGS_cert 
kXGS_pxyreq 
kXGS_reserved 

Definition at line 103 of file XrdSecProtocolgsi.hh.

103 {
104 kXGS_none = 0,
105 kXGS_init = 2000, // 2000: fake code used the first time
106 kXGS_cert, // 2001: packet with certificate
107 kXGS_pxyreq, // 2002: packet with proxy req to be signed
109};
@ kXGS_cert
@ kXGS_none
@ kXGS_pxyreq
@ kXGS_init
@ kXGS_reserved

◆ kgsiStatus

enum kgsiStatus
Enumerator
kgST_error 
kgST_ok 
kgST_more 

Definition at line 87 of file XrdSecProtocolgsi.hh.

87 {
88 kgST_error = -1, // error occurred
89 kgST_ok = 0, // ok
90 kgST_more = 1 // need more info
91};
@ kgST_ok
@ kgST_error
@ kgST_more