|
xrootd
|
#include <string.h>#include <sys/types.h>#include <sys/stat.h>#include <openssl/asn1.h>#include <openssl/asn1_mac.h>#include <openssl/err.h>#include <openssl/evp.h>#include <openssl/pem.h>#include <openssl/rsa.h>#include <openssl/x509v3.h>#include "XrdSut/XrdSutRndm.hh"#include "XrdCrypto/XrdCryptosslgsiAux.hh"#include "XrdCrypto/XrdCryptoTrace.hh"#include "XrdCrypto/XrdCryptosslAux.hh"#include "XrdCrypto/XrdCryptosslRSA.hh"#include "XrdCrypto/XrdCryptosslX509.hh"#include "XrdCrypto/XrdCryptosslX509Req.hh"
Classes | |
| struct | gsiProxyPolicy_t |
| struct | gsiProxyCertInfo_t |
Macros | |
| #define | XRDGSI_VOMS_ATCAP_OID "1.3.6.1.4.1.8005.100.100.4" |
| #define | XRDGSI_VOMS_ACSEQ_OID "1.3.6.1.4.1.8005.100.100.5" |
| #define | BIO_PRINT(b, c) |
| #define | BIO_GET_STRING(b, str) |
| #define | XRDGSI_CONST |
| #define | ASN1_F_GSIPROXYCERTINFO_NEW 500 |
| #define | ASN1_F_D2I_GSIPROXYCERTINFO 501 |
| #define | ASN1_F_GSIPROXYPOLICY_NEW 510 |
| #define | ASN1_F_D2I_GSIPROXYPOLICY 511 |
| #define ASN1_F_D2I_GSIPROXYCERTINFO 501 |
Referenced by d2i_gsiProxyCertInfo().
| #define ASN1_F_D2I_GSIPROXYPOLICY 511 |
Referenced by d2i_gsiProxyPolicy().
| #define ASN1_F_GSIPROXYCERTINFO_NEW 500 |
Referenced by gsiProxyCertInfo_new().
| #define ASN1_F_GSIPROXYPOLICY_NEW 510 |
Referenced by gsiProxyPolicy_new().
| #define BIO_GET_STRING | ( | b, | |
| str | |||
| ) |
Referenced by XrdSslgsiX509FillVOMS().
| #define BIO_PRINT | ( | b, | |
| c | |||
| ) |
Referenced by XrdSslgsiX509Asn1PrintInfo(), and XrdSslgsiX509FillUnknownExt().
| #define XRDGSI_CONST |
| #define XRDGSI_VOMS_ACSEQ_OID "1.3.6.1.4.1.8005.100.100.5" |
Referenced by XrdSslgsiX509GetVOMSAttr().
| #define XRDGSI_VOMS_ATCAP_OID "1.3.6.1.4.1.8005.100.100.4" |
Referenced by XrdSslgsiX509FillVOMS().
| gsiProxyCertInfo_t* d2i_gsiProxyCertInfo | ( | gsiProxyCertInfo_t ** | pci, |
| XRDGSI_CONST unsigned char ** | pp, | ||
| long | length | ||
| ) |
| gsiProxyPolicy_t* d2i_gsiProxyPolicy | ( | gsiProxyPolicy_t ** | pol, |
| XRDGSI_CONST unsigned char ** | pp, | ||
| long | length | ||
| ) |
References ASN1_F_D2I_GSIPROXYPOLICY, gsiProxyPolicy_free(), and gsiProxyPolicy_new().
Referenced by d2i_gsiProxyCertInfo().
| void gsiProxyCertInfo_free | ( | gsiProxyCertInfo_t * | pci | ) |
References gsiProxyCertInfo_t::proxyCertPathLengthConstraint.
Referenced by d2i_gsiProxyCertInfo().
| gsiProxyCertInfo_t* gsiProxyCertInfo_new | ( | ) |
| void gsiProxyPolicy_free | ( | gsiProxyPolicy_t * | pol | ) |
References gsiProxyPolicy_t::policy, and gsiProxyPolicy_t::policyLanguage.
Referenced by d2i_gsiProxyPolicy().
| gsiProxyPolicy_t* gsiProxyPolicy_new | ( | ) |
References ASN1_F_GSIPROXYPOLICY_NEW, OBJ_txt2obj_fix(), gsiProxyPolicy_t::policy, and gsiProxyPolicy_t::policyLanguage.
Referenced by d2i_gsiProxyPolicy(), and gsiProxyCertInfo_new().
| int i2d_gsiProxyCertInfo | ( | gsiProxyCertInfo_t * | pci, |
| unsigned char ** | pp | ||
| ) |
| int i2d_gsiProxyPolicy | ( | gsiProxyPolicy_t * | pol, |
| unsigned char ** | pp | ||
| ) |
References gsiProxyPolicy_t::policy, and gsiProxyPolicy_t::policyLanguage.
Referenced by i2d_gsiProxyCertInfo().
|
static |
References XRDGSI_CONST.
Referenced by gsiProxyPolicy_new(), XrdSslgsiX509CreateProxy(), XrdSslgsiX509CreateProxyReq(), and XrdSslgsiX509SignProxyReq().
| bool XrdSslgsiProxyCertInfo | ( | const void * | extdata, |
| int & | pathlen, | ||
| bool * | haspolicy | ||
| ) |
References d2i_gsiProxyCertInfo(), gsiProxyCertInfo_OID, gsiProxyCertInfo_t::proxyCertPathLengthConstraint, gsiProxyCertInfo_t::proxyPolicy, and XRDGSI_CONST.
Referenced by Display(), and XrdCryptosslgsiX509Chain::Verify().
| void XrdSslgsiSetPathLenConstraint | ( | void * | extdata, |
| int | pathlen | ||
| ) |
| int XrdSslgsiX509Asn1PrintInfo | ( | int | tag, |
| int | xclass, | ||
| int | constructed, | ||
| int | indent | ||
| ) |
References BIO_PRINT, and EPNAME.
Referenced by XrdSslgsiX509FillUnknownExt().
| int XrdSslgsiX509CreateProxy | ( | const char * | fnc, |
| const char * | fnk, | ||
| XrdProxyOpt_t * | pxopt, | ||
| XrdCryptosslgsiX509Chain * | xp, | ||
| XrdCryptoRSA ** | kp, | ||
| const char * | fnp | ||
| ) |
References XrdProxyOpt_t::bits, DEBUG, XrdProxyOpt_t::depthlen, EPNAME, fclose(), fopen, XrdSutRndm::GetUInt(), gsiProxyCertInfo_new(), gsiProxyCertInfo_OID, i2d_gsiProxyCertInfo(), kErrPX_BadEECfile, kErrPX_BadEECkey, kErrPX_Error, kErrPX_ExpiredEEC, kErrPX_GenerateKey, kErrPX_NoResources, kErrPX_ProxyFile, kErrPX_SetAttribute, kErrPX_SetPathDepth, kErrPX_Signing, OBJ_txt2obj_fix(), PRINT, gsiProxyCertInfo_t::proxyCertPathLengthConstraint, XrdCryptoX509Chain::PushBack(), XrdProxyOpt_t::valid, XrdCryptosslASN1toUTC(), and XrdCryptosslNameOneLine().
Referenced by XrdSecProtocolgsi::InitProxy(), and main().
| int XrdSslgsiX509CreateProxyReq | ( | XrdCryptoX509 * | xcpi, |
| XrdCryptoX509Req ** | xcro, | ||
| XrdCryptoRSA ** | kcro | ||
| ) |
References d2i_gsiProxyCertInfo(), DEBUG, EPNAME, XrdSutRndm::GetUInt(), gsiProxyCertInfo_new(), gsiProxyCertInfo_OID, i2d_gsiProxyCertInfo(), XrdCryptoX509::IsValid(), kErrPX_Error, kErrPX_ExpiredEEC, kErrPX_GenerateKey, kErrPX_NoResources, kErrPX_SetAttribute, kErrPX_SetPathDepth, kErrPX_Signing, OBJ_txt2obj_fix(), XrdCryptoX509::Opaque(), PRINT, gsiProxyCertInfo_t::proxyCertPathLengthConstraint, and XRDGSI_CONST.
Referenced by main(), and XrdSecProtocolgsi::ServerDoCert().
| int XrdSslgsiX509DumpExtensions | ( | XrdCryptoX509 * | xcpi | ) |
References EPNAME, XrdCryptoX509::Opaque(), PRINT, XRDGSI_CONST, and XrdSslgsiX509FillUnknownExt().
| int XrdSslgsiX509FillUnknownExt | ( | XRDGSI_CONST unsigned char ** | pp, |
| long | length | ||
| ) |
References BIO_PRINT, EPNAME, PRINT, XRDGSI_CONST, and XrdSslgsiX509Asn1PrintInfo().
Referenced by XrdSslgsiX509DumpExtensions().
| int XrdSslgsiX509FillVOMS | ( | XRDGSI_CONST unsigned char ** | pp, |
| long | length, | ||
| bool & | getvat, | ||
| XrdOucString & | vat | ||
| ) |
References BIO_GET_STRING, DEBUG, EPNAME, XrdOucString::length(), PRINT, XRDGSI_CONST, and XRDGSI_VOMS_ATCAP_OID.
Referenced by XrdSslgsiX509GetVOMSAttr().
| int XrdSslgsiX509GetVOMSAttr | ( | XrdCryptoX509 * | xcpi, |
| XrdOucString & | vat | ||
| ) |
References DEBUG, EPNAME, XrdCryptoX509::Opaque(), PRINT, XRDGSI_CONST, XRDGSI_VOMS_ACSEQ_OID, and XrdSslgsiX509FillVOMS().
Referenced by Display(), XrdSecProtocolgsi::ExtractVOMS(), and XrdSecgsiVOMSFun().
| int XrdSslgsiX509SignProxyReq | ( | XrdCryptoX509 * | xcpi, |
| XrdCryptoRSA * | kcpi, | ||
| XrdCryptoX509Req * | xcri, | ||
| XrdCryptoX509 ** | xcpo | ||
| ) |
References d2i_gsiProxyCertInfo(), DEBUG, EPNAME, XrdOucString::erase(), gsiProxyCertInfo_new(), gsiProxyCertInfo_OID, i2d_gsiProxyCertInfo(), XrdCryptoRSA::kComplete, kErrPX_BadEECkey, kErrPX_BadExtension, kErrPX_BadNames, kErrPX_Error, kErrPX_ExpiredEEC, kErrPX_NoResources, kErrPX_SetAttribute, kErrPX_SetPathDepth, kErrPX_Signing, XrdOucString::length(), XrdCryptoX509::NotAfter(), OBJ_txt2obj_fix(), XrdCryptoX509Req::Opaque(), XrdCryptoRSA::Opaque(), XrdCryptoX509::Opaque(), PRINT, gsiProxyCertInfo_t::proxyCertPathLengthConstraint, XrdOucString::rfind(), XrdCryptoRSA::status, XrdCryptoX509Req::Version(), XrdCryptosslNameOneLine(), and XRDGSI_CONST.
Referenced by XrdSecProtocolgsi::ClientDoPxyreq(), and main().
1.8.3.1