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

#include <awspc.hpp>

Inheritance diagram for openvpn::AWS::PCQuery:
[legend]
Collaboration diagram for openvpn::AWS::PCQuery:
[legend]

Classes

struct  Info
 

Public Types

typedef RCPtr< PCQueryPtr
 
- Public Types inherited from openvpn::RC< thread_unsafe_refcount >
typedef RCPtr< RCPtr
 

Public Member Functions

 OPENVPN_EXCEPTION (awspc_query_error)
 
 PCQuery (WS::ClientSet::Ptr cs_arg, const bool lookup_product_code_arg, const int debug_level_arg)
 
 PCQuery (WS::ClientSet::Ptr cs_arg, const std::string &role_for_credentials_arg, const std::string &certs_dir_arg)
 
WS::ClientSet::TransactionSet::Ptr prepare_transaction_set ()
 
void start (std::function< void(Info info)> completion_arg)
 
void stop ()
 
- Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount >
 RC () noexcept=default
 
 RC (const RC &)=delete
 
virtual ~RC ()=default
 
RCoperator= (const RC &)=delete
 
olong use_count () const noexcept
 Delegates call to RCImpl and returns the result.
 

Private Member Functions

void done (std::string error)
 
void local_query_complete (WS::ClientSet::TransactionSet &lts)
 
void token_query_complete (WS::ClientSet::TransactionSet &lts)
 
void queue_pc_validation (const std::string &pc)
 
void awspc_query_complete (WS::ClientSet::TransactionSet &ats)
 
bool awspc_req_verify_consistency (const Json::Value &reply, const std::string &key) const
 
bool awspc_req_verify_consistency (const Json::Value &reply) const
 
std::string nonce () const
 

Static Private Member Functions

static std::string to_string_sig (const Json::Value &reply)
 
static std::string awscert ()
 
static std::string awspc_web_cert ()
 
static std::string awspc_signing_cert ()
 

Private Attributes

WS::ClientSet::Ptr cs
 
StrongRandomAPI::Ptr rng
 
Frame::Ptr frame
 
const bool lookup_product_code
 
const int debug_level
 
std::string role_for_credentials
 
std::string certs_dir
 
std::function< void(Info info)> completion
 
Info info
 
Json::Value awspc_req
 
bool pending = false
 

Additional Inherited Members

- Static Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount >
static constexpr bool is_thread_safe ()
 Delegates call to RCImpl and returns the result.
 

Detailed Description

Definition at line 35 of file awspc.hpp.

Member Typedef Documentation

◆ Ptr

Definition at line 38 of file awspc.hpp.

Constructor & Destructor Documentation

◆ PCQuery() [1/2]

openvpn::AWS::PCQuery::PCQuery ( WS::ClientSet::Ptr  cs_arg,
const bool  lookup_product_code_arg,
const int  debug_level_arg 
)
inline

Definition at line 79 of file awspc.hpp.

◆ PCQuery() [2/2]

openvpn::AWS::PCQuery::PCQuery ( WS::ClientSet::Ptr  cs_arg,
const std::string &  role_for_credentials_arg,
const std::string &  certs_dir_arg 
)
inline

Definition at line 90 of file awspc.hpp.

Member Function Documentation

◆ awscert()

static std::string openvpn::AWS::PCQuery::awscert ( )
inlinestaticprivate

Definition at line 513 of file awspc.hpp.

Here is the caller graph for this function:

◆ awspc_query_complete()

void openvpn::AWS::PCQuery::awspc_query_complete ( WS::ClientSet::TransactionSet ats)
inlineprivate

Definition at line 417 of file awspc.hpp.

◆ awspc_req_verify_consistency() [1/2]

bool openvpn::AWS::PCQuery::awspc_req_verify_consistency ( const Json::Value &  reply) const
inlineprivate

Definition at line 487 of file awspc.hpp.

◆ awspc_req_verify_consistency() [2/2]

bool openvpn::AWS::PCQuery::awspc_req_verify_consistency ( const Json::Value &  reply,
const std::string &  key 
) const
inlineprivate

Definition at line 481 of file awspc.hpp.

Here is the caller graph for this function:

◆ awspc_signing_cert()

static std::string openvpn::AWS::PCQuery::awspc_signing_cert ( )
inlinestaticprivate

Definition at line 563 of file awspc.hpp.

Here is the caller graph for this function:

◆ awspc_web_cert()

static std::string openvpn::AWS::PCQuery::awspc_web_cert ( )
inlinestaticprivate

Definition at line 537 of file awspc.hpp.

Here is the caller graph for this function:

◆ done()

void openvpn::AWS::PCQuery::done ( std::string  error)
inlineprivate

Definition at line 169 of file awspc.hpp.

Here is the caller graph for this function:

◆ local_query_complete()

void openvpn::AWS::PCQuery::local_query_complete ( WS::ClientSet::TransactionSet lts)
inlineprivate

Definition at line 177 of file awspc.hpp.

◆ nonce()

std::string openvpn::AWS::PCQuery::nonce ( ) const
inlineprivate

Definition at line 505 of file awspc.hpp.

Here is the caller graph for this function:

◆ OPENVPN_EXCEPTION()

openvpn::AWS::PCQuery::OPENVPN_EXCEPTION ( awspc_query_error  )

◆ prepare_transaction_set()

WS::ClientSet::TransactionSet::Ptr openvpn::AWS::PCQuery::prepare_transaction_set ( )
inline

Definition at line 103 of file awspc.hpp.

Here is the caller graph for this function:

◆ queue_pc_validation()

void openvpn::AWS::PCQuery::queue_pc_validation ( const std::string &  pc)
inlineprivate

Definition at line 337 of file awspc.hpp.

Here is the caller graph for this function:

◆ start()

void openvpn::AWS::PCQuery::start ( std::function< void(Info info)>  completion_arg)
inline

Definition at line 122 of file awspc.hpp.

◆ stop()

void openvpn::AWS::PCQuery::stop ( )
inline

Definition at line 162 of file awspc.hpp.

◆ to_string_sig()

static std::string openvpn::AWS::PCQuery::to_string_sig ( const Json::Value &  reply)
inlinestaticprivate

Definition at line 495 of file awspc.hpp.

Here is the caller graph for this function:

◆ token_query_complete()

void openvpn::AWS::PCQuery::token_query_complete ( WS::ClientSet::TransactionSet lts)
inlineprivate

Definition at line 269 of file awspc.hpp.

Member Data Documentation

◆ awspc_req

Json::Value openvpn::AWS::PCQuery::awspc_req
private

Definition at line 598 of file awspc.hpp.

◆ certs_dir

std::string openvpn::AWS::PCQuery::certs_dir
private

Definition at line 594 of file awspc.hpp.

◆ completion

std::function<void(Info info)> openvpn::AWS::PCQuery::completion
private

Definition at line 596 of file awspc.hpp.

◆ cs

WS::ClientSet::Ptr openvpn::AWS::PCQuery::cs
private

Definition at line 588 of file awspc.hpp.

◆ debug_level

const int openvpn::AWS::PCQuery::debug_level
private

Definition at line 592 of file awspc.hpp.

◆ frame

Frame::Ptr openvpn::AWS::PCQuery::frame
private

Definition at line 590 of file awspc.hpp.

◆ info

Info openvpn::AWS::PCQuery::info
private

Definition at line 597 of file awspc.hpp.

◆ lookup_product_code

const bool openvpn::AWS::PCQuery::lookup_product_code
private

Definition at line 591 of file awspc.hpp.

◆ pending

bool openvpn::AWS::PCQuery::pending = false
private

Definition at line 599 of file awspc.hpp.

◆ rng

StrongRandomAPI::Ptr openvpn::AWS::PCQuery::rng
private

Definition at line 589 of file awspc.hpp.

◆ role_for_credentials

std::string openvpn::AWS::PCQuery::role_for_credentials
private

Definition at line 593 of file awspc.hpp.


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