OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::ExternalPKIECImpl Class Reference

#include <extpki.hpp>

Inheritance diagram for openvpn::ExternalPKIECImpl:
[legend]
Collaboration diagram for openvpn::ExternalPKIECImpl:
[legend]

Public Member Functions

 ExternalPKIECImpl (SSL_CTX *ssl_ctx, ::X509 *cert, ExternalPKIBase *external_pki_arg, const std::string &alias)
 
 ~ExternalPKIECImpl () override=default
 
- Public Member Functions inherited from openvpn::ExternalPKIImpl
virtual ~ExternalPKIImpl ()=default
 

Static Public Member Functions

static void init_static ()
 

Private Member Functions

void do_sign (const unsigned char *dgst, int dlen, unsigned char *sig, unsigned int &siglen)
 

Static Private Member Functions

static void ec_finish (EC_KEY *ec)
 
static int ecdsa_sign (int type, const unsigned char *dgst, int dlen, unsigned char *sig, unsigned int *siglen, const BIGNUM *kinv, const BIGNUM *r, EC_KEY *eckey)
 
static int ecdsa_sign_setup (EC_KEY *eckey, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp)
 
static ECDSA_SIG * ecdsa_sign_sig (const unsigned char *dgst, int dgstlen, const BIGNUM *kinvp, const BIGNUM *rp, EC_KEY *eckey)
 

Private Attributes

ExternalPKIBaseexternal_pki
 
std::string alias
 

Static Private Attributes

static int ec_self_data_index = -1
 

Detailed Description

Definition at line 211 of file extpki.hpp.

Constructor & Destructor Documentation

◆ ExternalPKIECImpl()

openvpn::ExternalPKIECImpl::ExternalPKIECImpl ( SSL_CTX *  ssl_ctx,
::X509 *  cert,
ExternalPKIBase external_pki_arg,
const std::string &  alias 
)
inline

Definition at line 215 of file extpki.hpp.

◆ ~ExternalPKIECImpl()

openvpn::ExternalPKIECImpl::~ExternalPKIECImpl ( )
overridedefault

Member Function Documentation

◆ do_sign()

void openvpn::ExternalPKIECImpl::do_sign ( const unsigned char *  dgst,
int  dlen,
unsigned char *  sig,
unsigned int &  siglen 
)
inlineprivate

Sign the input via external pki callback

Parameters
dgstdigest to be signed
dlenlength of the digest to be signed
sigbuffer backing the signature
siglenmaximum size for the signature, and length of the signature returned in sig

Definition at line 379 of file extpki.hpp.

Here is the caller graph for this function:

◆ ec_finish()

static void openvpn::ExternalPKIECImpl::ec_finish ( EC_KEY *  ec)
inlinestaticprivate

Definition at line 307 of file extpki.hpp.

Here is the caller graph for this function:

◆ ecdsa_sign()

static int openvpn::ExternalPKIECImpl::ecdsa_sign ( int  type,
const unsigned char *  dgst,
int  dlen,
unsigned char *  sig,
unsigned int *  siglen,
const BIGNUM *  kinv,
const BIGNUM *  r,
EC_KEY *  eckey 
)
inlinestaticprivate

Definition at line 313 of file extpki.hpp.

Here is the caller graph for this function:

◆ ecdsa_sign_setup()

static int openvpn::ExternalPKIECImpl::ecdsa_sign_setup ( EC_KEY *  eckey,
BN_CTX *  ctx_in,
BIGNUM **  kinvp,
BIGNUM **  rp 
)
inlinestaticprivate

Definition at line 338 of file extpki.hpp.

Here is the caller graph for this function:

◆ ecdsa_sign_sig()

static ECDSA_SIG * openvpn::ExternalPKIECImpl::ecdsa_sign_sig ( const unsigned char *  dgst,
int  dgstlen,
const BIGNUM *  kinvp,
const BIGNUM *  rp,
EC_KEY *  eckey 
)
inlinestaticprivate

Definition at line 345 of file extpki.hpp.

Here is the caller graph for this function:

◆ init_static()

static void openvpn::ExternalPKIECImpl::init_static ( )
inlinestatic

Definition at line 301 of file extpki.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ alias

std::string openvpn::ExternalPKIECImpl::alias
private

Definition at line 399 of file extpki.hpp.

◆ ec_self_data_index

int openvpn::ExternalPKIECImpl::ec_self_data_index = -1
inlinestaticprivate

Definition at line 400 of file extpki.hpp.

◆ external_pki

ExternalPKIBase* openvpn::ExternalPKIECImpl::external_pki
private

Definition at line 398 of file extpki.hpp.


The documentation for this class was generated from the following file: