|
xrootd
|
#include <XrdSecProtocolgsi.hh>


Public Member Functions | |
| int | Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0) |
| XrdSecCredentials * | getCredentials (XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0) |
| XrdSecProtocolgsi (int opts, const char *hname, XrdNetAddrInfo &endPoint, const char *parms=0) | |
| virtual | ~XrdSecProtocolgsi () |
| void | Delete () |
| Delete the protocol object. DO NOT use C++ delete() on this object. | |
| int | Encrypt (const char *inbuf, int inlen, XrdSecBuffer **outbuf) |
| int | Decrypt (const char *inbuf, int inlen, XrdSecBuffer **outbuf) |
| int | Sign (const char *inbuf, int inlen, XrdSecBuffer **outbuf) |
| int | Verify (const char *inbuf, int inlen, const char *sigbuf, int siglen) |
| int | getKey (char *kbuf=0, int klen=0) |
| int | setKey (char *kbuf, int klen) |
Public Member Functions inherited from XrdSecProtocol | |
| virtual int | Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0)=0 |
| virtual XrdSecCredentials * | getCredentials (XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0)=0 |
| virtual int | Encrypt (const char *inbuff, int inlen, XrdSecBuffer **outbuff) |
| virtual int | Decrypt (const char *inbuff, int inlen, XrdSecBuffer **outbuff) |
| virtual int | Sign (const char *inbuff, int inlen, XrdSecBuffer **outbuff) |
| virtual int | Verify (const char *inbuff, int inlen, const char *sigbuff, int siglen) |
| virtual int | getKey (char *buff=0, int size=0) |
| virtual int | setKey (char *buff, int size) |
| virtual bool | needTLS () |
| Check if this protocol requires TLS to properly function. | |
| virtual void | Delete ()=0 |
| Delete the protocol object. DO NOT use C++ delete() on this object. | |
| XrdSecProtocol (const char *pName) | |
| Constructor. | |
Static Public Member Functions | |
| static char * | Init (gsiOptions o, XrdOucErrInfo *erp) |
| static XrdOucTrace * | EnableTracing () |
Static Private Member Functions | |
| static int | GetCA (const char *cahash, XrdCryptoFactory *cryptof, gsiHSVars *hs=0) |
| static String | GetCApath (const char *cahash) |
| static bool | VerifyCA (int opt, X509Chain *cca, XrdCryptoFactory *cf) |
| static int | VerifyCRL (XrdCryptoX509Crl *crl, XrdCryptoX509 *xca, XrdOucString crldir, XrdCryptoFactory *CF, int hashalg) |
| static XrdSutCacheEntry * | GetSrvCertEnt (XrdSutCERef &gcref, XrdCryptoFactory *cf, time_t timestamp, String &cal) |
| static XrdCryptoX509Crl * | LoadCRL (XrdCryptoX509 *xca, const char *sjhash, XrdCryptoFactory *CF, int dwld, int &err) |
| static int | QueryProxy (bool checkcache, XrdSutCache *cache, const char *tag, XrdCryptoFactory *cf, time_t timestamp, ProxyIn_t *pi, ProxyOut_t *po) |
| static int | InitProxy (ProxyIn_t *pi, XrdCryptoFactory *cf, X509Chain *ch=0, XrdCryptoRSA **key=0) |
| static void | ErrF (XrdOucErrInfo *einfo, kXR_int32 ecode, const char *msg1, const char *msg2=0, const char *msg3=0) |
| static XrdSecgsiGMAP_t | LoadGMAPFun (const char *plugin, const char *parms) |
| static XrdSecgsiAuthz_t | LoadAuthzFun (const char *plugin, const char *parms, int &fmt) |
| static XrdSecgsiVOMS_t | LoadVOMSFun (const char *plugin, const char *parms, int &fmt) |
| static void | QueryGMAP (XrdCryptoX509Chain *chain, int now, String &name) |
Private Attributes | |
| XrdNetAddrInfo | epAddr |
| int | options |
| XrdCryptoFactory * | sessionCF |
| XrdCryptoCipher * | sessionKey |
| XrdSutBucket * | bucketKey |
| XrdCryptoMsgDigest * | sessionMD |
| XrdCryptoRSA * | sessionKsig |
| XrdCryptoRSA * | sessionKver |
| X509Chain * | proxyChain |
| bool | srvMode |
| char * | expectedHost |
| bool | useIV |
| gsiHSVars * | hs |
Friends | |
| class | gsiOptions |
| class | gsiHSVars |
Additional Inherited Members | |
Public Attributes inherited from XrdSecProtocol | |
| XrdSecEntity | Entity |
Protected Member Functions inherited from XrdSecProtocol | |
| virtual | ~XrdSecProtocol () |
| Destructor (prevents use of direct delete). | |
| XrdSecProtocolgsi::XrdSecProtocolgsi | ( | int | opts, |
| const char * | hname, | ||
| XrdNetAddrInfo & | endPoint, | ||
| const char * | parms = 0 |
||
| ) |
|
inlinevirtual |
|
private |
|
virtual |
Authenticate a client.
| cred | Credentials supplied by the client. |
| parms | Place where the address of additional authentication data is to be placed for another autrhentication handshake. |
| einfo | The error information object where error messages should be placed. The messages are returned to the client. Should einfo be null, messages should be written to stderr. |
Implements XrdSecProtocol.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
virtual |
Decrypt data in inbuff using the session key.
| inbuff | buffer holding data to be decrypted. |
| inlen | length of the data. |
| outbuff | place where a pointer to the decrypted data is placed. |
Reimplemented from XrdSecProtocol.
|
virtual |
Delete the protocol object. DO NOT use C++ delete() on this object.
Implements XrdSecProtocol.
|
static |
|
virtual |
Encrypt data in inbuff using the session key.
| inbuff | buffer holding data to be encrypted. |
| inlen | length of the data. |
| outbuff | place where a pointer to the encrypted data is placed. |
Reimplemented from XrdSecProtocol.
|
private |
|
staticprivate |
|
private |
|
private |
|
staticprivate |
|
staticprivate |
|
virtual |
Generate client credentials to be used in the authentication process.
| parm | Pointer to the information returned by the server either in the initial login response or the authmore response. |
| einfo | The error information object where error messages should be placed. The messages are returned to the client. Should einfo be null, messages should be written to stderr. |
Implements XrdSecProtocol.
|
virtual |
Get the current encryption key (i.e. session key)
| buff | buffer to hold the key, and may be null. |
| size | size of the buffer. |
Reimplemented from XrdSecProtocol.
|
staticprivate |
|
static |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |
|
staticprivate |
|
private |
|
private |
|
private |
|
private |
|
virtual |
Set the current encryption key
| buff | buffer that holds the key. |
| size | size of the key. |
Reimplemented from XrdSecProtocol.
|
virtual |
Sign data in inbuff using the session key.
| inbuff | buffer holding data to be signed. |
| inlen | length of the data. |
| outbuff | place where a pointer to the signature is placed. |
Reimplemented from XrdSecProtocol.
|
virtual |
Verify a signature using the session key.
| inbuff | buffer holding data to be verified. |
| inlen | length of the data. |
| sigbuff | pointer to the signature data. |
| siglen | length of the signature data. |
Reimplemented from XrdSecProtocol.
|
staticprivate |
|
staticprivate |
|
friend |
|
friend |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
private |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
private |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
private |
|
staticprivate |
|
staticprivate |
Referenced by gsiHSVars::~gsiHSVars().
|
staticprivate |
|
staticprivate |
|
private |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |