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   10600
#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 244 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 237 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 72 of file XrdSecProtocolgsi.hh.

◆ REL1

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

Definition at line 150 of file XrdSecProtocolgsi.hh.

◆ REL2

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

Definition at line 151 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 152 of file XrdSecProtocolgsi.hh.

◆ SafeDelArray

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

Definition at line 155 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolgsi::Authenticate().

◆ SafeDelete

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

Definition at line 154 of file XrdSecProtocolgsi.hh.

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

◆ SafeFree

◆ XrdCryptoMax

#define XrdCryptoMax   10

Definition at line 70 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolgsi::Init().

◆ XrdSecDEBUG

#define XrdSecDEBUG   0x1000

Definition at line 69 of file XrdSecProtocolgsi.hh.

Referenced by XrdSecProtocolkrb5Init().

◆ XrdSecgsiVersCertKey

#define XrdSecgsiVersCertKey   10600

Definition at line 77 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVersDHsigned

#define XrdSecgsiVersDHsigned   10400

◆ XrdSecgsiVERSION

#define XrdSecgsiVERSION   10600

Definition at line 67 of file XrdSecProtocolgsi.hh.

◆ XrdSecNOIPCHK

#define XrdSecNOIPCHK   0x0001

◆ XrdSecPROTOIDENT

#define XrdSecPROTOIDENT   "gsi"

◆ XrdSecPROTOIDLEN

#define XrdSecPROTOIDLEN   sizeof(XrdSecPROTOIDENT)

Typedef Documentation

◆ String

Definition at line 62 of file XrdSecProtocolgsi.hh.

◆ X509Chain

Definition at line 63 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiAuthz_t

typedef int(* XrdSecgsiAuthz_t) (XrdSecEntity &)

Definition at line 160 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiAuthzInit_t

typedef int(* XrdSecgsiAuthzInit_t) (const char *)

Definition at line 161 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiAuthzKey_t

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

Definition at line 162 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiGMAP_t

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

Definition at line 159 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVOMS_t

Definition at line 164 of file XrdSecProtocolgsi.hh.

◆ XrdSecgsiVOMSInit_t

Enumeration Type Documentation

◆ kgsiClientSteps

Enumerator
kXGC_none 
kXGC_certreq 
kXGC_cert 
kXGC_sigpxy 
kXGC_reserved 

Definition at line 89 of file XrdSecProtocolgsi.hh.

89 {
90 kXGC_none = 0,
91 kXGC_certreq = 1000, // 1000: request server certificate
92 kXGC_cert, // 1001: packet with (proxy) certificate
93 kXGC_sigpxy, // 1002: packet with signed proxy certificate
95};
@ 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 120 of file XrdSecProtocolgsi.hh.

120 {
121 kGSErrParseBuffer = 10000, // 10000
122 kGSErrDecodeBuffer, // 10001
123 kGSErrLoadCrypto, // 10002
124 kGSErrBadProtocol, // 10003
125 kGSErrCreateBucket, // 10004
126 kGSErrDuplicateBucket, // 10005
127 kGSErrCreateBuffer, // 10006
128 kGSErrSerialBuffer, // 10007
129 kGSErrGenCipher, // 10008
130 kGSErrExportPuK, // 10009
131 kGSErrEncRndmTag, // 10010
132 kGSErrBadRndmTag, // 10011
133 kGSErrNoRndmTag, // 10012
134 kGSErrNoCipher, // 10013
135 kGSErrNoCreds, // 10014
136 kGSErrBadOpt, // 10015
137 kGSErrMarshal, // 10016
138 kGSErrUnmarshal, // 10017
139 kGSErrSaveCreds, // 10018
140 kGSErrNoBuffer, // 10019
141 kGSErrRefCipher, // 10020
142 kGSErrNoPublic, // 10021
143 kGSErrAddBucket, // 10022
144 kGSErrFinCipher, // 10023
145 kGSErrInit, // 10024
146 kGSErrBadCreds, // 10025
147 kGSErrError // 10026
148};
@ 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 107 of file XrdSecProtocolgsi.hh.

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

◆ kgsiServerSteps

Enumerator
kXGS_none 
kXGS_init 
kXGS_cert 
kXGS_pxyreq 
kXGS_reserved 

Definition at line 98 of file XrdSecProtocolgsi.hh.

98 {
99 kXGS_none = 0,
100 kXGS_init = 2000, // 2000: fake code used the first time
101 kXGS_cert, // 2001: packet with certificate
102 kXGS_pxyreq, // 2002: packet with proxy req to be signed
104};
@ kXGS_cert
@ kXGS_none
@ kXGS_pxyreq
@ kXGS_init
@ kXGS_reserved

◆ kgsiStatus

enum kgsiStatus
Enumerator
kgST_error 
kgST_ok 
kgST_more 

Definition at line 82 of file XrdSecProtocolgsi.hh.

82 {
83 kgST_error = -1, // error occurred
84 kgST_ok = 0, // ok
85 kgST_more = 1 // need more info
86};
@ kgST_ok
@ kgST_error
@ kgST_more