KOpenSSLProxy Class Reference

#include <kopenssl.h>

List of all members.


Detailed Description

Dynamically load and wrap OpenSSL.KDE OpenSSL Wrapper.

Author:
George Staikos <staikos@kde.org>
See also:
KSSL

Definition at line 63 of file kopenssl.h.


Public Member Functions

bool hasLibCrypto () const
bool hasLibSSL () const
void destroy ()
int SSL_connect (SSL *ssl)
int SSL_accept (SSL *ssl)
int SSL_get_error (SSL *ssl, int rc)
int SSL_read (SSL *ssl, void *buf, int num)
int SSL_write (SSL *ssl, const void *buf, int num)
SSL * SSL_new (SSL_CTX *ctx)
void SSL_free (SSL *ssl)
int SSL_shutdown (SSL *ssl)
SSL_CTX * SSL_CTX_new (SSL_METHOD *method)
void SSL_CTX_free (SSL_CTX *ctx)
int SSL_set_fd (SSL *ssl, int fd)
int SSL_pending (SSL *ssl)
int SSL_peek (SSL *ssl, void *buf, int num)
int SSL_CTX_set_cipher_list (SSL_CTX *ctx, const char *str)
void SSL_CTX_set_verify (SSL_CTX *ctx, int mode, int(*verify_callback)(int, X509_STORE_CTX *))
int SSL_use_certificate (SSL *ssl, X509 *x)
SSL_CIPHER * SSL_get_current_cipher (SSL *ssl)
long SSL_ctrl (SSL *ssl, int cmd, long larg, char *parg)
int RAND_egd (const char *path)
const char * RAND_file_name (char *buf, size_t num)
int RAND_load_file (const char *filename, long max_bytes)
int RAND_write_file (const char *filename)
SSL_METHOD * TLSv1_client_method ()
SSL_METHOD * SSLv2_client_method ()
SSL_METHOD * SSLv3_client_method ()
SSL_METHOD * SSLv23_client_method ()
X509 * SSL_get_peer_certificate (SSL *s)
 STACK_OF (X509)*SSL_get_peer_cert_chain(SSL *s)
int SSL_CIPHER_get_bits (SSL_CIPHER *c, int *alg_bits)
char * SSL_CIPHER_get_version (SSL_CIPHER *c)
const char * SSL_CIPHER_get_name (SSL_CIPHER *c)
char * SSL_CIPHER_description (SSL_CIPHER *, char *buf, int size)
int SSL_CTX_use_PrivateKey (SSL_CTX *ctx, EVP_PKEY *pkey)
int SSL_CTX_use_certificate (SSL_CTX *ctx, X509 *x)
X509 * d2i_X509 (X509 **a, unsigned char **pp, long length)
int i2d_X509 (X509 *a, unsigned char **pp)
int X509_cmp (X509 *a, X509 *b)
X509 * X509_dup (X509 *x509)
X509_STORE_CTX * X509_STORE_CTX_new (void)
void X509_STORE_CTX_free (X509_STORE_CTX *v)
void X509_STORE_CTX_set_chain (X509_STORE_CTX *v, STACK_OF(X509)*x)
void X509_STORE_CTX_set_purpose (X509_STORE_CTX *v, int purpose)
int X509_verify_cert (X509_STORE_CTX *v)
X509_STORE * X509_STORE_new (void)
void X509_STORE_free (X509_STORE *v)
void X509_free (X509 *v)
char * X509_NAME_oneline (X509_NAME *a, char *buf, int size)
X509_NAME * X509_get_subject_name (X509 *a)
X509_NAME * X509_get_issuer_name (X509 *a)
X509_LOOKUP * X509_STORE_add_lookup (X509_STORE *v, X509_LOOKUP_METHOD *m)
X509_LOOKUP_METHOD * X509_LOOKUP_file (void)
void X509_LOOKUP_free (X509_LOOKUP *x)
int X509_LOOKUP_ctrl (X509_LOOKUP *ctx, int cmd, const char *argc, long argl, char **ret)
void X509_STORE_CTX_init (X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509, STACK_OF(X509)*chain)
void CRYPTO_free (void *x)
BIO * BIO_new (BIO_METHOD *type)
BIO_METHOD * BIO_s_mem (void)
BIO * BIO_new_fp (FILE *stream, int close_flag)
BIO * BIO_new_mem_buf (void *buf, int len)
int BIO_free (BIO *a)
long BIO_ctrl (BIO *bp, int cmd, long larg, void *parg)
int BIO_write (BIO *b, const void *data, int len)
int PEM_write_bio_X509 (BIO *bp, X509 *x)
ASN1_METHOD * X509_asn1_meth ()
int ASN1_i2d_fp (FILE *out, unsigned char *x)
X509 * X509_d2i_fp (FILE *out, X509 **buf)
int X509_print (FILE *fp, X509 *x)
PKCS12 * d2i_PKCS12_fp (FILE *fp, PKCS12 **p12)
int PKCS12_newpass (PKCS12 *p12, char *oldpass, char *newpass)
int i2d_PKCS12 (PKCS12 *p12, unsigned char **p)
int i2d_PKCS12_fp (FILE *fp, PKCS12 *p12)
PKCS12 * PKCS12_new (void)
void PKCS12_free (PKCS12 *a)
int PKCS12_parse (PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509)**ca)
void EVP_PKEY_free (EVP_PKEY *x)
char * sk_pop (STACK *s)
void sk_free (STACK *s)
int sk_num (STACK *s)
char * sk_value (STACK *s, int n)
STACK * sk_new (int(*cmp)())
int sk_push (STACK *s, char *d)
STACK * sk_dup (STACK *s)
char * i2s_ASN1_INTEGER (X509V3_EXT_METHOD *meth, ASN1_INTEGER *aint)
ASN1_INTEGER * X509_get_serialNumber (X509 *x)
EVP_PKEY * X509_get_pubkey (X509 *x)
int i2d_PublicKey (EVP_PKEY *a, unsigned char **pp)
int X509_check_private_key (X509 *x, EVP_PKEY *p)
char * BN_bn2hex (const BIGNUM *a)
int X509_digest (const X509 *x, const EVP_MD *t, unsigned char *md, unsigned int *len)
EVP_MD * EVP_md5 ()
void ASN1_INTEGER_free (ASN1_INTEGER *x)
unsigned char * ASN1_STRING_data (ASN1_STRING *x)
int OBJ_obj2nid (ASN1_OBJECT *o)
const char * OBJ_nid2ln (int n)
int X509_get_ext_count (X509 *x)
int X509_get_ext_by_NID (X509 *x, int nid, int lastpos)
int X509_get_ext_by_OBJ (X509 *x, ASN1_OBJECT *obj, int lastpos)
X509_EXTENSION * X509_get_ext (X509 *x, int loc)
X509_EXTENSION * X509_delete_ext (X509 *x, int loc)
int X509_add_ext (X509 *x, X509_EXTENSION *ex, int loc)
void * X509_get_ext_d2i (X509 *x, int nid, int *crit, int *idx)
char * i2s_ASN1_OCTET_STRING (X509V3_EXT_METHOD *method, ASN1_OCTET_STRING *ia5)
int ASN1_BIT_STRING_get_bit (ASN1_BIT_STRING *a, int n)
PKCS7 * PKCS7_new (void)
void PKCS7_free (PKCS7 *a)
void PKCS7_content_free (PKCS7 *a)
int i2d_PKCS7 (PKCS7 *a, unsigned char **pp)
PKCS7 * d2i_PKCS7 (PKCS7 **a, unsigned char **pp, long length)
int i2d_PKCS7_fp (FILE *fp, PKCS7 *p7)
PKCS7 * d2i_PKCS7_fp (FILE *fp, PKCS7 **p7)
int i2d_PKCS7_bio (BIO *bp, PKCS7 *p7)
PKCS7 * d2i_PKCS7_bio (BIO *bp, PKCS7 **p7)
PKCS7 * PKCS7_dup (PKCS7 *p7)
PKCS7 * PKCS7_sign (X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509)*certs, BIO *data, int flags)
int PKCS7_verify (PKCS7 *p7, STACK_OF(X509)*certs, X509_STORE *store, BIO *indata, BIO *out, int flags)
 STACK_OF (X509)*PKCS7_get0_signers(PKCS7 *p7
 STACK_OF (X509)*certs
PKCS7 * PKCS7_encrypt (STACK_OF(X509)*certs, BIO *in, EVP_CIPHER *cipher, int flags)
int PKCS7_decrypt (PKCS7 *p7, EVP_PKEY *pkey, X509 *cert, BIO *data, int flags)
 STACK_OF (X509_NAME)*SSL_load_client_CA_file(const char *file)
 STACK_OF (X509_INFO)*PEM_X509_INFO_read(FILE *fp
 STACK_OF (X509_INFO)*sk
int X509_PURPOSE_get_count ()
int X509_PURPOSE_get_id (X509_PURPOSE *)
int X509_check_purpose (X509 *x, int id, int ca)
X509_PURPOSE * X509_PURPOSE_get0 (int idx)
EVP_PKEY * EVP_PKEY_new ()
int EVP_PKEY_assign (EVP_PKEY *pkey, int type, char *key)
RSA * RSA_generate_key (int bits, unsigned long e, void(*callback)(int, int, void *), void *cb_arg)
X509_REQ * X509_REQ_new ()
void X509_REQ_free (X509_REQ *a)
int X509_REQ_set_pubkey (X509_REQ *x, EVP_PKEY *pkey)
int i2d_X509_REQ_fp (FILE *fp, X509_REQ *x)
STACK * X509_get1_email (X509 *x)
void X509_email_free (STACK *sk)
EVP_CIPHER * EVP_des_ede3_cbc ()
EVP_CIPHER * EVP_des_cbc ()
EVP_CIPHER * EVP_rc2_cbc ()
EVP_CIPHER * EVP_rc2_64_cbc ()
EVP_CIPHER * EVP_rc2_40_cbc ()
void ERR_clear_error ()
unsigned long ERR_get_error ()
void ERR_print_errors_fp (FILE *fp)
SSL_SESSION * SSL_get1_session (SSL *ssl)
void SSL_SESSION_free (SSL_SESSION *session)
int SSL_set_session (SSL *ssl, SSL_SESSION *session)
SSL_SESSION * d2i_SSL_SESSION (SSL_SESSION **a, unsigned char **pp, long length)
int i2d_SSL_SESSION (SSL_SESSION *in, unsigned char **pp)
int i2d_PrivateKey_fp (FILE *, EVP_PKEY *)
int i2d_PKCS8PrivateKey_fp (FILE *, EVP_PKEY *, const EVP_CIPHER *, char *, int, pem_password_cb *, void *)
void RSA_free (RSA *)
EVP_CIPHER * EVP_bf_cbc ()
int X509_REQ_sign (X509_REQ *, EVP_PKEY *, const EVP_MD *)
int X509_NAME_add_entry_by_txt (X509_NAME *, char *, int, unsigned char *, int, int, int)
X509_NAME * X509_NAME_new ()
int X509_REQ_set_subject_name (X509_REQ *, X509_NAME *)
 STACK_OF (SSL_CIPHER)*SSL_get_ciphers(const SSL *ssl)

Static Public Member Functions

static KOpenSSLProxyself ()

Public Attributes

int flags
pem_password_cb * cb
pem_password_cb void * u

Friends

class KStaticDeleter< KOpenSSLProxy >

Member Function Documentation

KOpenSSLProxy * KOpenSSLProxy::self (  )  [static]

Return an instance of class KOpenSSLProxy * You cannot delete this object.

It is a singleton class.

Definition at line 636 of file kopenssl.cc.

bool KOpenSSLProxy::hasLibCrypto (  )  const

Return true of libcrypto was found and loaded.

Definition at line 210 of file kopenssl.cc.

bool KOpenSSLProxy::hasLibSSL (  )  const

Return true of libssl was found and loaded.

Definition at line 205 of file kopenssl.cc.

void KOpenSSLProxy::destroy (  ) 

Destroy the class and start over - don't use this unless you know what you are doing.

Definition at line 215 of file kopenssl.cc.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys