XrdCryptosslCipher Class Reference

#include <XrdCryptosslCipher.hh>

Inheritance diagram for XrdCryptosslCipher:

XrdCryptoCipher XrdCryptoBasic List of all members.

Public Member Functions

 XrdCryptosslCipher (const char *t, int l=0)
 XrdCryptosslCipher (const char *t, int l, const char *k, int liv, const char *iv)
 XrdCryptosslCipher (XrdSutBucket *b)
 XrdCryptosslCipher (int len, char *pub, int lpub, const char *t)
 XrdCryptosslCipher (const XrdCryptosslCipher &c)
virtual ~XrdCryptosslCipher ()
bool Finalize (char *pub, int lpub, const char *t)
void Cleanup ()
bool IsValid ()
int EncOutLength (int l)
int DecOutLength (int l)
char * Public (int &lpub)
XrdSutBucketAsBucket ()
char * IV (int &l) const
bool IsDefaultLength () const
void SetIV (int l, const char *iv)
int Encrypt (const char *bin, int lin, char *out)
int Decrypt (const char *bin, int lin, char *out)
char * RefreshIV (int &l)

Static Public Member Functions

static bool IsSupported (const char *cip)

Private Member Functions

void GenerateIV ()
int EncDec (int encdec, const char *bin, int lin, char *out)
void PrintPublic (BIGNUM *pub)
int Publen ()

Private Attributes

char * fIV
int lIV
const EVP_CIPHER * cipher
EVP_CIPHER_CTX ctx
DH * fDH
bool deflength
bool valid

Detailed Description

Definition at line 32 of file XrdCryptosslCipher.hh.


Constructor & Destructor Documentation

XrdCryptosslCipher::XrdCryptosslCipher ( const char *  t,
int  l = 0 
)

Definition at line 44 of file XrdCryptosslCipher.cc.

References cipher, ctx, deflength, fDH, fIV, GenerateIV(), XrdSutRndm::GetBuffer(), XrdCryptoBasic::Length(), lIV, XrdCryptoBasic::SetBuffer(), XrdCryptoBasic::SetType(), strcpy(), and valid.

XrdCryptosslCipher::XrdCryptosslCipher ( const char *  t,
int  l,
const char *  k,
int  liv,
const char *  iv 
)

Definition at line 105 of file XrdCryptosslCipher.cc.

References XrdCryptoBasic::Buffer(), cipher, ctx, deflength, fDH, fIV, XrdCryptoBasic::Length(), lIV, XrdCryptoBasic::SetBuffer(), SetIV(), XrdCryptoBasic::SetType(), strcpy(), and valid.

XrdCryptosslCipher::XrdCryptosslCipher ( XrdSutBucket b  ) 

Definition at line 157 of file XrdCryptosslCipher.cc.

References buf, XrdCryptoBasic::Buffer(), XrdSutBucket::buffer, cipher, ctx, deflength, fDH, fIV, XrdCryptoBasic::Length(), lIV, SetIV(), XrdCryptoBasic::SetType(), XrdSutBucket::size, XrdCryptoBasic::UseBuffer(), and valid.

XrdCryptosslCipher::XrdCryptosslCipher ( int  len,
char *  pub,
int  lpub,
const char *  t 
)

Definition at line 319 of file XrdCryptosslCipher.cc.

References cipher, Cleanup(), ctx, DEBUG, deflength, EPNAME, fDH, fIV, int, kDHMINBITS, XrdCryptoBasic::Length(), lIV, XrdCryptoBasic::SetBuffer(), XrdCryptoBasic::SetType(), strcpy(), and valid.

XrdCryptosslCipher::XrdCryptosslCipher ( const XrdCryptosslCipher c  ) 

Definition at line 455 of file XrdCryptosslCipher.cc.

References c, cipher, ctx, deflength, fDH, fIV, lIV, XrdCryptoBasic::SetBuffer(), SetIV(), XrdCryptoBasic::SetType(), and valid.

XrdCryptosslCipher::~XrdCryptosslCipher (  )  [virtual]

Definition at line 492 of file XrdCryptosslCipher.cc.

References Cleanup(), ctx, fIV, and valid.


Member Function Documentation

void XrdCryptosslCipher::GenerateIV (  )  [private]

Definition at line 826 of file XrdCryptosslCipher.cc.

References fIV, XrdSutRndm::GetBuffer(), and lIV.

Referenced by RefreshIV(), and XrdCryptosslCipher().

int XrdCryptosslCipher::EncDec ( int  encdec,
const char *  bin,
int  lin,
char *  out 
) [private]

Definition at line 866 of file XrdCryptosslCipher.cc.

References XrdCryptoBasic::Buffer(), cipher, ctx, DEBUG, deflength, EPNAME, fIV, and XrdCryptoBasic::Length().

Referenced by Decrypt(), and Encrypt().

void XrdCryptosslCipher::PrintPublic ( BIGNUM *  pub  )  [private]

Definition at line 682 of file XrdCryptosslCipher.cc.

References Publen().

int XrdCryptosslCipher::Publen (  )  [private]

Definition at line 606 of file XrdCryptosslCipher.cc.

References fDH, and l.

Referenced by PrintPublic(), and Public().

bool XrdCryptosslCipher::Finalize ( char *  pub,
int  lpub,
const char *  t 
) [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 519 of file XrdCryptosslCipher.cc.

References cipher, Cleanup(), ctx, DEBUG, deflength, EPNAME, fDH, int, XrdCryptoBasic::Length(), XrdCryptoBasic::SetBuffer(), XrdCryptoBasic::SetType(), strcpy(), and valid.

void XrdCryptosslCipher::Cleanup (  ) 

Definition at line 507 of file XrdCryptosslCipher.cc.

References fDH.

Referenced by Finalize(), XrdCryptosslCipher(), and ~XrdCryptosslCipher().

bool XrdCryptosslCipher::IsValid (  )  [inline, virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 62 of file XrdCryptosslCipher.hh.

References valid.

bool XrdCryptosslCipher::IsSupported ( const char *  cip  )  [static]

Definition at line 36 of file XrdCryptosslCipher.cc.

Referenced by XrdCryptosslFactory::SupportedCipher().

int XrdCryptosslCipher::EncOutLength ( int  l  )  [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 935 of file XrdCryptosslCipher.cc.

References ctx.

int XrdCryptosslCipher::DecOutLength ( int  l  )  [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 943 of file XrdCryptosslCipher.cc.

References ctx.

char * XrdCryptosslCipher::Public ( int &  lpub  )  [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 624 of file XrdCryptosslCipher.cc.

References fDH, int, p, and Publen().

XrdSutBucket * XrdCryptosslCipher::AsBucket (  )  [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 711 of file XrdCryptosslCipher.cc.

References XrdCryptoBasic::Buffer(), fDH, fIV, kXRS_cipher, XrdCryptoBasic::Length(), lIV, XrdCryptoBasic::Type(), and valid.

char* XrdCryptosslCipher::IV ( int &  l  )  const [inline, virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 74 of file XrdCryptosslCipher.hh.

References fIV, and lIV.

bool XrdCryptosslCipher::IsDefaultLength (  )  const [inline, virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 75 of file XrdCryptosslCipher.hh.

References deflength.

void XrdCryptosslCipher::SetIV ( int  l,
const char *  iv 
) [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 793 of file XrdCryptosslCipher.cc.

References fIV, and lIV.

Referenced by XrdCryptosslCipher().

int XrdCryptosslCipher::Encrypt ( const char *  bin,
int  lin,
char *  out 
) [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 844 of file XrdCryptosslCipher.cc.

References EncDec().

int XrdCryptosslCipher::Decrypt ( const char *  bin,
int  lin,
char *  out 
) [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 855 of file XrdCryptosslCipher.cc.

References EncDec().

char * XrdCryptosslCipher::RefreshIV ( int &  l  )  [virtual]

Reimplemented from XrdCryptoCipher.

Definition at line 813 of file XrdCryptosslCipher.cc.

References fIV, GenerateIV(), and lIV.


Member Data Documentation

char* XrdCryptosslCipher::fIV [private]

Definition at line 35 of file XrdCryptosslCipher.hh.

Referenced by AsBucket(), EncDec(), GenerateIV(), IV(), RefreshIV(), SetIV(), XrdCryptosslCipher(), and ~XrdCryptosslCipher().

int XrdCryptosslCipher::lIV [private]

Definition at line 36 of file XrdCryptosslCipher.hh.

Referenced by AsBucket(), GenerateIV(), IV(), RefreshIV(), SetIV(), and XrdCryptosslCipher().

const EVP_CIPHER* XrdCryptosslCipher::cipher [private]

Definition at line 37 of file XrdCryptosslCipher.hh.

Referenced by EncDec(), Finalize(), and XrdCryptosslCipher().

EVP_CIPHER_CTX XrdCryptosslCipher::ctx [private]

Definition at line 38 of file XrdCryptosslCipher.hh.

Referenced by DecOutLength(), EncDec(), EncOutLength(), Finalize(), XrdCryptosslCipher(), and ~XrdCryptosslCipher().

DH* XrdCryptosslCipher::fDH [private]

Definition at line 39 of file XrdCryptosslCipher.hh.

Referenced by AsBucket(), Cleanup(), Finalize(), Publen(), Public(), and XrdCryptosslCipher().

bool XrdCryptosslCipher::deflength [private]

Definition at line 40 of file XrdCryptosslCipher.hh.

Referenced by EncDec(), Finalize(), IsDefaultLength(), and XrdCryptosslCipher().

bool XrdCryptosslCipher::valid [private]

Definition at line 41 of file XrdCryptosslCipher.hh.

Referenced by AsBucket(), Finalize(), IsValid(), XrdCryptosslCipher(), and ~XrdCryptosslCipher().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:30 2011 for ROOT_528-00b_version by  doxygen 1.5.1