Name

SPVM::Net::SSLeay::X509_STORE - X509_STORE data structure in OpenSSL

Description

Net::SSLeay::X509_STORE in SPVM represetns X509_STORE data structure in OpenSSL

Usage

use Net::SSLeay::X509_STORE;

Fields

certs_list

has certs_list : List of Net::SSLeay::X509;

A list of Net::SSLeay::X509 objects.

crls_list

has crls_list : List of Net::SSLeay::X509_CRL;

A list of Net::SSLeay::X509_CRL objects.

Instance Methods

protected method init : void ($options : object[] = undef);

Initializes a Net::SSLeay::X509_STORE object.

And creates an empty list and it is sets to "certs_list" field.

And creates an empty list and it is sets to "crls_list" field.

set_flags

method set_flags : void ($flags : long);

Sets the flags to $flags by calling native X509_STORE_set_flags function.

Exceptions:

If X509_STORE_set_flags failed, an exception is thrown with eval_error_id set to the basic type ID of Net::SSLeay::Error class.

add_cert

method add_cert : int ($x : Net::SSLeay::X509);

Calls native X509_STORE_add_cert function given the pointer value of the Net::SSLeay::X509 object $x, creates a new Net::SSLeay::X509 object, and pushes it to the end of the elements of "certs_list" field.

Exceptions:

If X509_STORE_add_crl failed, an exception is thrown with eval_error_id set to the basic type ID of Net::SSLeay::Error class.

add_crl

method add_crl : void ($x : Net::SSLeay::X509_CRL);

Calls native X509_STORE_add_crl function given the pointer value of the Net::SSLeay::X509_CRL object $x, creates a new Net::SSLeay::X509_CRL object, and pushes it to the end of the elements of "crls_list" field.

Exceptions:

If X509_STORE_add_crl failed, an exception is thrown with eval_error_id set to the basic type ID of Net::SSLeay::Error class.

DESTROY

method DESTROY : void ();

Frees native X509_STORE object by calling native X509_STORE_free function if no_free flag of the instance is not a true value.

FAQ

How to get a new Net::SSLeay::X509_STORE object?

A way is using Net::SSLeay::SSL_CTX#get_cert_store method.

See Also

Copyright & License

Copyright (c) 2023 Yuki Kimoto

MIT License