WvRSAKey Class Reference

#include <wvrsa.h>

Inheritance diagram for WvRSAKey:

[legend]
List of all members.

Detailed Description

An RSA public key or public/private key pair that can be used for encryption.

Knows how to encode/decode itself into a string of hex digits for easy transport.

See also:
WvRSAEncoder

Definition at line 25 of file wvrsa.h.

Public Member Functions

 WvRSAKey (const WvRSAKey &k)
 WvRSAKey (struct rsa_st *_rsa, bool priv)
 WvRSAKey (WvStringParm keystr, bool priv)
 Populate the RSA key with a hexified() key.
 WvRSAKey (int bits)
 Create a new RSA key of bits strength.
 ~WvRSAKey ()
virtual bool isok () const
 By default, returns true if geterr() == 0.
WvString private_str () const
 Retrieve the private key as a hexified string returns WvString::null if there is only a public key.
WvString public_str () const
 Retrieve the public key as a hexified string.
WvString getpem (bool privkey)
 Retrieve the public or private key in PEM encoded format.
virtual int geterr () const
 If isok() is false, return the system error number corresponding to the error, -1 for a special error string (which you can obtain with errstr()) or 0 on end of file.
virtual WvString errstr () const
virtual void seterr (int _errnum)
 Set the errnum variable -- we have an error.
void seterr (WvStringParm specialerr)
void seterr (WVSTRING_FORMAT_DECL)
void seterr (const WvErrorBase &err)
void seterr_both (int _errnum, WvStringParm specialerr)
void noerr ()
 Reset our error state - there's no error condition anymore.

Static Public Member Functions

static WvString strerror (int errnum)
 A replacement for the operating system strerror() function that can map more kinds of error strings (especially in win32).

Public Attributes

rsa_st * rsa

Protected Attributes

int errnum
WvString errstring


Member Function Documentation

bool WvRSAKey::isok (  )  const [virtual]

By default, returns true if geterr() == 0.

Might be overridden so that isok() == false even though no error code has been specified.

Reimplemented from WvErrorBase.

Definition at line 66 of file wvrsa.cc.

References WvErrorBase::errstring, and rsa.

Referenced by WvX509Mgr::certreq(), WvX509Mgr::create_selfsigned(), WvX509Mgr::decode(), WvRSAStream::WvRSAStream(), and WvX509Mgr::WvX509Mgr().

virtual int WvErrorBase::geterr (  )  const [inline, virtual, inherited]

If isok() is false, return the system error number corresponding to the error, -1 for a special error string (which you can obtain with errstr()) or 0 on end of file.

If isok() is true, returns an undefined number.

Reimplemented in WvHTTPStream, WvStreamClone, and WvX509Mgr.

Definition at line 48 of file wverror.h.

References WvErrorBase::errnum.

Referenced by UniIniGen::commit(), WvX509Mgr::errstr(), WvStreamClone::errstr(), WvErrorBase::errstr(), WvError::get(), UniFileSystemGen::get(), WvX509Mgr::geterr(), WvStreamClone::geterr(), WvEncoderStream::isok(), WvConf::load_file(), WvLockDev::lock(), WvHTTPStream::pre_select(), UniIniGen::refresh(), WvConf::save(), WvStream::seterr(), WvErrorBase::seterr(), WvMagicCircle::WvMagicCircle(), and WvHttpPool::~WvHttpPool().

void WvErrorBase::seterr ( int  _errnum  )  [virtual, inherited]

Set the errnum variable -- we have an error.

If called more than once, seterr() doesn't change the error code away from the previous one. That way, we remember the _original_ cause of our problems.

Subclasses may want to override seterr(int) to shut themselves down (eg. WvStream::close()) when an error condition is set.

Note that seterr(WvString) will call seterr(-1).

Reimplemented in WvStream.

Definition at line 144 of file wverror.cc.

References WvErrorBase::errstring.

Referenced by WvX509Mgr::certreq(), WvX509Mgr::create_selfsigned(), WvX509Mgr::decode(), WvCRLMgr::decode(), WvX509Mgr::encode(), WvCRLMgr::encode(), getpem(), WvDSAKey::getpem(), WvX509Mgr::read_p12(), WvGlob::set(), WvError::set(), WvX509Mgr::set_pubkey(), WvStream::seterr(), WvErrorBase::seterr(), WvErrorBase::seterr_both(), WvX509Mgr::sign(), WvX509Mgr::signedbyCAinfile(), WvX509Mgr::test(), WvX509Mgr::unhexify(), WvX509Mgr::validate(), WvX509Mgr::verify(), WvX509Mgr::write_p12(), WvCRLMgr::WvCRLMgr(), WvDSAKey::WvDSAKey(), WvMagicCircle::WvMagicCircle(), WvPam::WvPam(), WvRSAKey(), WvShmZone::WvShmZone(), and WvX509Mgr::WvX509Mgr().


The documentation for this class was generated from the following files:
Generated on Mon Feb 5 10:54:40 2007 for WvStreams by  doxygen 1.5.1