webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Functions
ssl_rsa.c File Reference
#include <openssl/ssl.h>
#include <limits.h>
#include <openssl/ec.h>
#include <openssl/ec_key.h>
#include <openssl/err.h>
#include <openssl/evp.h>
#include <openssl/mem.h>
#include <openssl/type_check.h>
#include <openssl/x509.h>
#include <openssl/x509v3.h>
#include "internal.h"

Functions

int SSL_use_certificate (SSL *ssl, X509 *x)
 
int SSL_use_certificate_ASN1 (SSL *ssl, const uint8_t *der, size_t der_len)
 
int SSL_use_RSAPrivateKey (SSL *ssl, RSA *rsa)
 
int SSL_use_RSAPrivateKey_ASN1 (SSL *ssl, const uint8_t *der, size_t der_len)
 
int SSL_use_PrivateKey (SSL *ssl, EVP_PKEY *pkey)
 
int SSL_use_PrivateKey_ASN1 (int type, SSL *ssl, const uint8_t *der, size_t der_len)
 
int SSL_CTX_use_certificate (SSL_CTX *ctx, X509 *x)
 
int SSL_CTX_use_certificate_ASN1 (SSL_CTX *ctx, size_t der_len, const uint8_t *der)
 
int SSL_CTX_use_RSAPrivateKey (SSL_CTX *ctx, RSA *rsa)
 
int SSL_CTX_use_RSAPrivateKey_ASN1 (SSL_CTX *ctx, const uint8_t *der, size_t der_len)
 
int SSL_CTX_use_PrivateKey (SSL_CTX *ctx, EVP_PKEY *pkey)
 
int SSL_CTX_use_PrivateKey_ASN1 (int type, SSL_CTX *ctx, const uint8_t *der, size_t der_len)
 
void SSL_set_private_key_method (SSL *ssl, const SSL_PRIVATE_KEY_METHOD *key_method)
 
void SSL_CTX_set_private_key_method (SSL_CTX *ctx, const SSL_PRIVATE_KEY_METHOD *key_method)
 
int SSL_CTX_set_signing_algorithm_prefs (SSL_CTX *ctx, const uint16_t *prefs, size_t num_prefs)
 
int SSL_set_signing_algorithm_prefs (SSL *ssl, const uint16_t *prefs, size_t num_prefs)
 
 OPENSSL_COMPILE_ASSERT (sizeof(int) >=2 *sizeof(uint16_t), digest_list_conversion_cannot_overflow)
 
int SSL_set_private_key_digest_prefs (SSL *ssl, const int *digest_nids, size_t num_digests)
 
int ssl_has_private_key (const SSL *ssl)
 
int ssl_is_ecdsa_key_type (int type)
 
int ssl_private_key_type (SSL *ssl)
 
size_t ssl_private_key_max_signature_len (SSL *ssl)
 
enum ssl_private_key_result_t ssl_private_key_sign (SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out, uint16_t signature_algorithm, const uint8_t *in, size_t in_len)
 
int ssl_public_key_verify (SSL *ssl, const uint8_t *signature, size_t signature_len, uint16_t signature_algorithm, EVP_PKEY *pkey, const uint8_t *in, size_t in_len)
 
enum ssl_private_key_result_t ssl_private_key_decrypt (SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out, const uint8_t *in, size_t in_len)
 
enum ssl_private_key_result_t ssl_private_key_complete (SSL *ssl, uint8_t *out, size_t *out_len, size_t max_out)
 
int ssl_private_key_supports_signature_algorithm (SSL *ssl, uint16_t signature_algorithm)
 

Function Documentation

◆ OPENSSL_COMPILE_ASSERT()

OPENSSL_COMPILE_ASSERT ( sizeof(int) >=2 *sizeof(uint16_t ,
digest_list_conversion_cannot_overflow   
)

◆ SSL_CTX_set_private_key_method()

void SSL_CTX_set_private_key_method ( SSL_CTX ctx,
const SSL_PRIVATE_KEY_METHOD key_method 
)

◆ SSL_CTX_set_signing_algorithm_prefs()

int SSL_CTX_set_signing_algorithm_prefs ( SSL_CTX ctx,
const uint16_t prefs,
size_t  num_prefs 
)

◆ SSL_CTX_use_certificate()

int SSL_CTX_use_certificate ( SSL_CTX ctx,
X509 x 
)

◆ SSL_CTX_use_certificate_ASN1()

int SSL_CTX_use_certificate_ASN1 ( SSL_CTX ctx,
size_t  der_len,
const uint8_t der 
)

◆ SSL_CTX_use_PrivateKey()

int SSL_CTX_use_PrivateKey ( SSL_CTX ctx,
EVP_PKEY pkey 
)

◆ SSL_CTX_use_PrivateKey_ASN1()

int SSL_CTX_use_PrivateKey_ASN1 ( int  type,
SSL_CTX ctx,
const uint8_t der,
size_t  der_len 
)

◆ SSL_CTX_use_RSAPrivateKey()

int SSL_CTX_use_RSAPrivateKey ( SSL_CTX ctx,
RSA rsa 
)

◆ SSL_CTX_use_RSAPrivateKey_ASN1()

int SSL_CTX_use_RSAPrivateKey_ASN1 ( SSL_CTX ctx,
const uint8_t der,
size_t  der_len 
)

◆ ssl_has_private_key()

int ssl_has_private_key ( const SSL ssl)

◆ ssl_is_ecdsa_key_type()

int ssl_is_ecdsa_key_type ( int  type)

◆ ssl_private_key_complete()

enum ssl_private_key_result_t ssl_private_key_complete ( SSL ssl,
uint8_t out,
size_t out_len,
size_t  max_out 
)

◆ ssl_private_key_decrypt()

enum ssl_private_key_result_t ssl_private_key_decrypt ( SSL ssl,
uint8_t out,
size_t out_len,
size_t  max_out,
const uint8_t in,
size_t  in_len 
)

◆ ssl_private_key_max_signature_len()

size_t ssl_private_key_max_signature_len ( SSL ssl)

◆ ssl_private_key_sign()

enum ssl_private_key_result_t ssl_private_key_sign ( SSL ssl,
uint8_t out,
size_t out_len,
size_t  max_out,
uint16_t  signature_algorithm,
const uint8_t in,
size_t  in_len 
)

◆ ssl_private_key_supports_signature_algorithm()

int ssl_private_key_supports_signature_algorithm ( SSL ssl,
uint16_t  signature_algorithm 
)

◆ ssl_private_key_type()

int ssl_private_key_type ( SSL ssl)

◆ ssl_public_key_verify()

int ssl_public_key_verify ( SSL ssl,
const uint8_t signature,
size_t  signature_len,
uint16_t  signature_algorithm,
EVP_PKEY pkey,
const uint8_t in,
size_t  in_len 
)

◆ SSL_set_private_key_digest_prefs()

int SSL_set_private_key_digest_prefs ( SSL ssl,
const int *  digest_nids,
size_t  num_digests 
)

◆ SSL_set_private_key_method()

void SSL_set_private_key_method ( SSL ssl,
const SSL_PRIVATE_KEY_METHOD key_method 
)

◆ SSL_set_signing_algorithm_prefs()

int SSL_set_signing_algorithm_prefs ( SSL ssl,
const uint16_t prefs,
size_t  num_prefs 
)

◆ SSL_use_certificate()

int SSL_use_certificate ( SSL ssl,
X509 x 
)

◆ SSL_use_certificate_ASN1()

int SSL_use_certificate_ASN1 ( SSL ssl,
const uint8_t der,
size_t  der_len 
)

◆ SSL_use_PrivateKey()

int SSL_use_PrivateKey ( SSL ssl,
EVP_PKEY pkey 
)

◆ SSL_use_PrivateKey_ASN1()

int SSL_use_PrivateKey_ASN1 ( int  type,
SSL ssl,
const uint8_t der,
size_t  der_len 
)

◆ SSL_use_RSAPrivateKey()

int SSL_use_RSAPrivateKey ( SSL ssl,
RSA rsa 
)

◆ SSL_use_RSAPrivateKey_ASN1()

int SSL_use_RSAPrivateKey_ASN1 ( SSL ssl,
const uint8_t der,
size_t  der_len 
)