.TH "KOpenSSLProxy" kde3 "11 Jun 2005" "Version Version 3.4.1" "kio Library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
KOpenSSLProxy \- Dynamically load and wrap OpenSSL. \fBKDE\fP OpenSSL Wrapper.  

.PP
.SH SYNOPSIS
.br
.PP
\fC#include <kopenssl.h>\fP
.PP
.SS "Public Member Functions"

.in +1c
.ti -1c
.RI "bool \fBhasLibCrypto\fP () const "
.br
.ti -1c
.RI "bool \fBhasLibSSL\fP () const "
.br
.ti -1c
.RI "void \fBdestroy\fP ()"
.br
.ti -1c
.RI "int \fBSSL_connect\fP (SSL *ssl)"
.br
.ti -1c
.RI "int \fBSSL_accept\fP (SSL *ssl)"
.br
.ti -1c
.RI "int \fBSSL_get_error\fP (SSL *ssl, int rc)"
.br
.ti -1c
.RI "int \fBSSL_read\fP (SSL *ssl, void *buf, int num)"
.br
.ti -1c
.RI "int \fBSSL_write\fP (SSL *ssl, const void *buf, int num)"
.br
.ti -1c
.RI "SSL * \fBSSL_new\fP (SSL_CTX *ctx)"
.br
.ti -1c
.RI "void \fBSSL_free\fP (SSL *ssl)"
.br
.ti -1c
.RI "int \fBSSL_shutdown\fP (SSL *ssl)"
.br
.ti -1c
.RI "SSL_CTX * \fBSSL_CTX_new\fP (SSL_METHOD *method)"
.br
.ti -1c
.RI "void \fBSSL_CTX_free\fP (SSL_CTX *ctx)"
.br
.ti -1c
.RI "int \fBSSL_set_fd\fP (SSL *ssl, int fd)"
.br
.ti -1c
.RI "int \fBSSL_pending\fP (SSL *ssl)"
.br
.ti -1c
.RI "int \fBSSL_peek\fP (SSL *ssl, void *buf, int num)"
.br
.ti -1c
.RI "int \fBSSL_CTX_set_cipher_list\fP (SSL_CTX *ctx, const char *str)"
.br
.ti -1c
.RI "void \fBSSL_CTX_set_verify\fP (SSL_CTX *ctx, int mode, int(*verify_callback)(int, X509_STORE_CTX *))"
.br
.ti -1c
.RI "int \fBSSL_use_certificate\fP (SSL *ssl, X509 *x)"
.br
.ti -1c
.RI "SSL_CIPHER * \fBSSL_get_current_cipher\fP (SSL *ssl)"
.br
.ti -1c
.RI "long \fBSSL_ctrl\fP (SSL *ssl, int cmd, long larg, char *parg)"
.br
.ti -1c
.RI "int \fBRAND_egd\fP (const char *path)"
.br
.ti -1c
.RI "const char * \fBRAND_file_name\fP (char *buf, size_t num)"
.br
.ti -1c
.RI "int \fBRAND_load_file\fP (const char *filename, long max_bytes)"
.br
.ti -1c
.RI "int \fBRAND_write_file\fP (const char *filename)"
.br
.ti -1c
.RI "SSL_METHOD * \fBTLSv1_client_method\fP ()"
.br
.ti -1c
.RI "SSL_METHOD * \fBSSLv2_client_method\fP ()"
.br
.ti -1c
.RI "SSL_METHOD * \fBSSLv3_client_method\fP ()"
.br
.ti -1c
.RI "SSL_METHOD * \fBSSLv23_client_method\fP ()"
.br
.ti -1c
.RI "X509 * \fBSSL_get_peer_certificate\fP (SSL *s)"
.br
.ti -1c
.RI "\fBSTACK_OF\fP (X509)*SSL_get_peer_cert_chain(SSL *s)"
.br
.ti -1c
.RI "int \fBSSL_CIPHER_get_bits\fP (SSL_CIPHER *c, int *alg_bits)"
.br
.ti -1c
.RI "char * \fBSSL_CIPHER_get_version\fP (SSL_CIPHER *c)"
.br
.ti -1c
.RI "const char * \fBSSL_CIPHER_get_name\fP (SSL_CIPHER *c)"
.br
.ti -1c
.RI "char * \fBSSL_CIPHER_description\fP (SSL_CIPHER *, char *buf, int size)"
.br
.ti -1c
.RI "int \fBSSL_CTX_use_PrivateKey\fP (SSL_CTX *ctx, EVP_PKEY *pkey)"
.br
.ti -1c
.RI "int \fBSSL_CTX_use_certificate\fP (SSL_CTX *ctx, X509 *x)"
.br
.ti -1c
.RI "X509 * \fBd2i_X509\fP (X509 **a, unsigned char **pp, long length)"
.br
.ti -1c
.RI "int \fBi2d_X509\fP (X509 *a, unsigned char **pp)"
.br
.ti -1c
.RI "int \fBX509_cmp\fP (X509 *a, X509 *b)"
.br
.ti -1c
.RI "X509 * \fBX509_dup\fP (X509 *x509)"
.br
.ti -1c
.RI "X509_STORE_CTX * \fBX509_STORE_CTX_new\fP (void)"
.br
.ti -1c
.RI "void \fBX509_STORE_CTX_free\fP (X509_STORE_CTX *v)"
.br
.ti -1c
.RI "void \fBX509_STORE_CTX_set_chain\fP (X509_STORE_CTX *v, STACK_OF(X509)*x)"
.br
.ti -1c
.RI "void \fBX509_STORE_CTX_set_purpose\fP (X509_STORE_CTX *v, int purpose)"
.br
.ti -1c
.RI "int \fBX509_verify_cert\fP (X509_STORE_CTX *v)"
.br
.ti -1c
.RI "X509_STORE * \fBX509_STORE_new\fP (void)"
.br
.ti -1c
.RI "void \fBX509_STORE_free\fP (X509_STORE *v)"
.br
.ti -1c
.RI "void \fBX509_free\fP (X509 *v)"
.br
.ti -1c
.RI "char * \fBX509_NAME_oneline\fP (X509_NAME *a, char *buf, int size)"
.br
.ti -1c
.RI "X509_NAME * \fBX509_get_subject_name\fP (X509 *a)"
.br
.ti -1c
.RI "X509_NAME * \fBX509_get_issuer_name\fP (X509 *a)"
.br
.ti -1c
.RI "X509_LOOKUP * \fBX509_STORE_add_lookup\fP (X509_STORE *v, X509_LOOKUP_METHOD *m)"
.br
.ti -1c
.RI "X509_LOOKUP_METHOD * \fBX509_LOOKUP_file\fP (void)"
.br
.ti -1c
.RI "void \fBX509_LOOKUP_free\fP (X509_LOOKUP *x)"
.br
.ti -1c
.RI "int \fBX509_LOOKUP_ctrl\fP (X509_LOOKUP *ctx, int cmd, const char *argc, long argl, char **ret)"
.br
.ti -1c
.RI "void \fBX509_STORE_CTX_init\fP (X509_STORE_CTX *ctx, X509_STORE *store, X509 *x509, STACK_OF(X509)*chain)"
.br
.ti -1c
.RI "void \fBCRYPTO_free\fP (void *x)"
.br
.ti -1c
.RI "BIO * \fBBIO_new\fP (BIO_METHOD *type)"
.br
.ti -1c
.RI "BIO_METHOD * \fBBIO_s_mem\fP (void)"
.br
.ti -1c
.RI "BIO * \fBBIO_new_fp\fP (FILE *stream, int close_flag)"
.br
.ti -1c
.RI "BIO * \fBBIO_new_mem_buf\fP (void *buf, int len)"
.br
.ti -1c
.RI "int \fBBIO_free\fP (BIO *a)"
.br
.ti -1c
.RI "long \fBBIO_ctrl\fP (BIO *bp, int cmd, long larg, void *parg)"
.br
.ti -1c
.RI "int \fBBIO_write\fP (BIO *b, const void *data, int len)"
.br
.ti -1c
.RI "int \fBPEM_write_bio_X509\fP (BIO *bp, X509 *x)"
.br
.ti -1c
.RI "ASN1_METHOD * \fBX509_asn1_meth\fP ()"
.br
.ti -1c
.RI "int \fBASN1_i2d_fp\fP (FILE *out, unsigned char *x)"
.br
.ti -1c
.RI "X509 * \fBX509_d2i_fp\fP (FILE *out, X509 **buf)"
.br
.ti -1c
.RI "int \fBX509_print\fP (FILE *fp, X509 *x)"
.br
.ti -1c
.RI "PKCS12 * \fBd2i_PKCS12_fp\fP (FILE *fp, PKCS12 **p12)"
.br
.ti -1c
.RI "int \fBPKCS12_newpass\fP (PKCS12 *p12, char *oldpass, char *newpass)"
.br
.ti -1c
.RI "int \fBi2d_PKCS12\fP (PKCS12 *p12, unsigned char **p)"
.br
.ti -1c
.RI "int \fBi2d_PKCS12_fp\fP (FILE *fp, PKCS12 *p12)"
.br
.ti -1c
.RI "PKCS12 * \fBPKCS12_new\fP (void)"
.br
.ti -1c
.RI "void \fBPKCS12_free\fP (PKCS12 *a)"
.br
.ti -1c
.RI "int \fBPKCS12_parse\fP (PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509)**ca)"
.br
.ti -1c
.RI "void \fBEVP_PKEY_free\fP (EVP_PKEY *x)"
.br
.ti -1c
.RI "char * \fBsk_pop\fP (STACK *s)"
.br
.ti -1c
.RI "void \fBsk_free\fP (STACK *s)"
.br
.ti -1c
.RI "int \fBsk_num\fP (STACK *s)"
.br
.ti -1c
.RI "char * \fBsk_value\fP (STACK *s, int n)"
.br
.ti -1c
.RI "STACK * \fBsk_new\fP (int(*cmp)())"
.br
.ti -1c
.RI "int \fBsk_push\fP (STACK *s, char *d)"
.br
.ti -1c
.RI "STACK * \fBsk_dup\fP (STACK *s)"
.br
.ti -1c
.RI "char * \fBi2s_ASN1_INTEGER\fP (X509V3_EXT_METHOD *meth, ASN1_INTEGER *aint)"
.br
.ti -1c
.RI "ASN1_INTEGER * \fBX509_get_serialNumber\fP (X509 *x)"
.br
.ti -1c
.RI "EVP_PKEY * \fBX509_get_pubkey\fP (X509 *x)"
.br
.ti -1c
.RI "int \fBi2d_PublicKey\fP (EVP_PKEY *a, unsigned char **pp)"
.br
.ti -1c
.RI "int \fBX509_check_private_key\fP (X509 *x, EVP_PKEY *p)"
.br
.ti -1c
.RI "char * \fBBN_bn2hex\fP (const BIGNUM *a)"
.br
.ti -1c
.RI "int \fBX509_digest\fP (const X509 *x, const EVP_MD *t, unsigned char *md, unsigned int *len)"
.br
.ti -1c
.RI "EVP_MD * \fBEVP_md5\fP ()"
.br
.ti -1c
.RI "void \fBASN1_INTEGER_free\fP (ASN1_INTEGER *x)"
.br
.ti -1c
.RI "unsigned char * \fBASN1_STRING_data\fP (ASN1_STRING *x)"
.br
.ti -1c
.RI "int \fBOBJ_obj2nid\fP (ASN1_OBJECT *o)"
.br
.ti -1c
.RI "const char * \fBOBJ_nid2ln\fP (int n)"
.br
.ti -1c
.RI "int \fBX509_get_ext_count\fP (X509 *x)"
.br
.ti -1c
.RI "int \fBX509_get_ext_by_NID\fP (X509 *x, int nid, int lastpos)"
.br
.ti -1c
.RI "int \fBX509_get_ext_by_OBJ\fP (X509 *x, ASN1_OBJECT *obj, int lastpos)"
.br
.ti -1c
.RI "X509_EXTENSION * \fBX509_get_ext\fP (X509 *x, int loc)"
.br
.ti -1c
.RI "X509_EXTENSION * \fBX509_delete_ext\fP (X509 *x, int loc)"
.br
.ti -1c
.RI "int \fBX509_add_ext\fP (X509 *x, X509_EXTENSION *ex, int loc)"
.br
.ti -1c
.RI "void * \fBX509_get_ext_d2i\fP (X509 *x, int nid, int *crit, int *idx)"
.br
.ti -1c
.RI "char * \fBi2s_ASN1_OCTET_STRING\fP (X509V3_EXT_METHOD *method, ASN1_OCTET_STRING *ia5)"
.br
.ti -1c
.RI "int \fBASN1_BIT_STRING_get_bit\fP (ASN1_BIT_STRING *a, int n)"
.br
.ti -1c
.RI "PKCS7 * \fBPKCS7_new\fP (void)"
.br
.ti -1c
.RI "void \fBPKCS7_free\fP (PKCS7 *a)"
.br
.ti -1c
.RI "void \fBPKCS7_content_free\fP (PKCS7 *a)"
.br
.ti -1c
.RI "int \fBi2d_PKCS7\fP (PKCS7 *a, unsigned char **pp)"
.br
.ti -1c
.RI "PKCS7 * \fBd2i_PKCS7\fP (PKCS7 **a, unsigned char **pp, long length)"
.br
.ti -1c
.RI "int \fBi2d_PKCS7_fp\fP (FILE *fp, PKCS7 *p7)"
.br
.ti -1c
.RI "PKCS7 * \fBd2i_PKCS7_fp\fP (FILE *fp, PKCS7 **p7)"
.br
.ti -1c
.RI "int \fBi2d_PKCS7_bio\fP (BIO *bp, PKCS7 *p7)"
.br
.ti -1c
.RI "PKCS7 * \fBd2i_PKCS7_bio\fP (BIO *bp, PKCS7 **p7)"
.br
.ti -1c
.RI "PKCS7 * \fBPKCS7_dup\fP (PKCS7 *p7)"
.br
.ti -1c
.RI "PKCS7 * \fBPKCS7_sign\fP (X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509)*certs, BIO *data, int flags)"
.br
.ti -1c
.RI "int \fBPKCS7_verify\fP (PKCS7 *p7, STACK_OF(X509)*certs, X509_STORE *store, BIO *indata, BIO *out, int flags)"
.br
.ti -1c
.RI "\fBSTACK_OF\fP (X509)*PKCS7_get0_signers(PKCS7 *p7"
.br
.ti -1c
.RI "\fBSTACK_OF\fP (X509)*certs"
.br
.ti -1c
.RI "PKCS7 * \fBPKCS7_encrypt\fP (STACK_OF(X509)*certs, BIO *in, EVP_CIPHER *cipher, int flags)"
.br
.ti -1c
.RI "int \fBPKCS7_decrypt\fP (PKCS7 *p7, EVP_PKEY *pkey, X509 *cert, BIO *data, int flags)"
.br
.ti -1c
.RI "\fBSTACK_OF\fP (X509_NAME)*SSL_load_client_CA_file(const char *file)"
.br
.ti -1c
.RI "\fBSTACK_OF\fP (X509_INFO)*PEM_X509_INFO_read(FILE *fp"
.br
.ti -1c
.RI "\fBSTACK_OF\fP (X509_INFO)*sk"
.br
.ti -1c
.RI "int \fBX509_PURPOSE_get_count\fP ()"
.br
.ti -1c
.RI "int \fBX509_PURPOSE_get_id\fP (X509_PURPOSE *)"
.br
.ti -1c
.RI "int \fBX509_check_purpose\fP (X509 *x, int id, int ca)"
.br
.ti -1c
.RI "X509_PURPOSE * \fBX509_PURPOSE_get0\fP (int idx)"
.br
.ti -1c
.RI "EVP_PKEY * \fBEVP_PKEY_new\fP ()"
.br
.ti -1c
.RI "int \fBEVP_PKEY_assign\fP (EVP_PKEY *pkey, int type, char *key)"
.br
.ti -1c
.RI "RSA * \fBRSA_generate_key\fP (int bits, unsigned long e, void(*callback)(int, int, void *), void *cb_arg)"
.br
.ti -1c
.RI "X509_REQ * \fBX509_REQ_new\fP ()"
.br
.ti -1c
.RI "void \fBX509_REQ_free\fP (X509_REQ *a)"
.br
.ti -1c
.RI "int \fBX509_REQ_set_pubkey\fP (X509_REQ *x, EVP_PKEY *pkey)"
.br
.ti -1c
.RI "int \fBi2d_X509_REQ_fp\fP (FILE *fp, X509_REQ *x)"
.br
.ti -1c
.RI "STACK * \fBX509_get1_email\fP (X509 *x)"
.br
.ti -1c
.RI "void \fBX509_email_free\fP (STACK *sk)"
.br
.ti -1c
.RI "EVP_CIPHER * \fBEVP_des_ede3_cbc\fP ()"
.br
.ti -1c
.RI "EVP_CIPHER * \fBEVP_des_cbc\fP ()"
.br
.ti -1c
.RI "EVP_CIPHER * \fBEVP_rc2_cbc\fP ()"
.br
.ti -1c
.RI "EVP_CIPHER * \fBEVP_rc2_64_cbc\fP ()"
.br
.ti -1c
.RI "EVP_CIPHER * \fBEVP_rc2_40_cbc\fP ()"
.br
.ti -1c
.RI "void \fBERR_clear_error\fP ()"
.br
.ti -1c
.RI "unsigned long \fBERR_get_error\fP ()"
.br
.ti -1c
.RI "void \fBERR_print_errors_fp\fP (FILE *fp)"
.br
.ti -1c
.RI "SSL_SESSION * \fBSSL_get1_session\fP (SSL *ssl)"
.br
.ti -1c
.RI "void \fBSSL_SESSION_free\fP (SSL_SESSION *session)"
.br
.ti -1c
.RI "int \fBSSL_set_session\fP (SSL *ssl, SSL_SESSION *session)"
.br
.ti -1c
.RI "SSL_SESSION * \fBd2i_SSL_SESSION\fP (SSL_SESSION **a, unsigned char **pp, long length)"
.br
.ti -1c
.RI "int \fBi2d_SSL_SESSION\fP (SSL_SESSION *in, unsigned char **pp)"
.br
.ti -1c
.RI "int \fBi2d_PrivateKey_fp\fP (FILE *, EVP_PKEY *)"
.br
.ti -1c
.RI "int \fBi2d_PKCS8PrivateKey_fp\fP (FILE *, EVP_PKEY *, const EVP_CIPHER *, char *, int, pem_password_cb *, void *)"
.br
.ti -1c
.RI "void \fBRSA_free\fP (RSA *)"
.br
.ti -1c
.RI "EVP_CIPHER * \fBEVP_bf_cbc\fP ()"
.br
.ti -1c
.RI "int \fBX509_REQ_sign\fP (X509_REQ *, EVP_PKEY *, const EVP_MD *)"
.br
.ti -1c
.RI "int \fBX509_NAME_add_entry_by_txt\fP (X509_NAME *, char *, int, unsigned char *, int, int, int)"
.br
.ti -1c
.RI "X509_NAME * \fBX509_NAME_new\fP ()"
.br
.ti -1c
.RI "int \fBX509_REQ_set_subject_name\fP (X509_REQ *, X509_NAME *)"
.br
.in -1c
.SS "Static Public Member Functions"

.in +1c
.ti -1c
.RI "static \fBKOpenSSLProxy\fP * \fBself\fP ()"
.br
.in -1c
.SS "Public Attributes"

.in +1c
.ti -1c
.RI "int \fBflags\fP"
.br
.ti -1c
.RI "pem_password_cb * \fBcb\fP"
.br
.ti -1c
.RI "pem_password_cb void * \fBu\fP"
.br
.in -1c
.SS "Friends"

.in +1c
.ti -1c
.RI "class \fBKStaticDeleter<KOpenSSLProxy>\fP"
.br
.in -1c
.SH "Detailed Description"
.PP 
Dynamically load and wrap OpenSSL. \fBKDE\fP OpenSSL Wrapper. 

\fBAuthor:\fP
.RS 4
George Staikos <staikos@kde.org> 
.RE
.PP
\fBSee also:\fP
.RS 4
\fBKSSL\fP 
.RE
.PP

.PP
Definition at line 63 of file kopenssl.h.
.SH "Member Function Documentation"
.PP 
.SS "\fBKOpenSSLProxy\fP * KOpenSSLProxy::self ()\fC [static]\fP"
.PP
Return an instance of class KOpenSSLProxy * You cannot delete this object. 
.PP
It is a singleton class. 
.PP
Definition at line 603 of file kopenssl.cc.
.PP
References KStaticDeleter< type >::setObject().
.PP
Referenced by KSSLSession::toString(), and KSSLSession::~KSSLSession().
.SS "bool KOpenSSLProxy::hasLibCrypto () const"
.PP
Return true of libcrypto was found and loaded. 
.PP
Definition at line 209 of file kopenssl.cc.
.SS "bool KOpenSSLProxy::hasLibSSL () const"
.PP
Return true of libssl was found and loaded. 
.PP
Definition at line 204 of file kopenssl.cc.
.SS "void KOpenSSLProxy::destroy ()"
.PP
Destroy the class and start over - don't use this unless you know what you are doing. 
.PP
Definition at line 214 of file kopenssl.cc.

.SH "Author"
.PP 
Generated automatically by Doxygen for kio Library from the source code.
