コンテンツにスキップ

CertManager API

Functions

Name
WOLFSSL_CERT_MANAGER * wolfSSL_CertManagerNew_ex(void * heap)
新しい証明書マネージャコンテキストを割り当てて初期化します。このコンテキストは、SSLのニーズとは無関係に使用できます。証明書をロードしたり、証明書を確認したり、失効状況を確認したりするために使用することができます。
WOLFSSL_CERT_MANAGER * wolfSSL_CertManagerNew(void )
新しい証明書マネージャコンテキストを割り当てて初期化します。このコンテキストは、SSLのニーズとは無関係に使用できます。証明書をロードしたり、証明書を確認したり、失効状況を確認したりするために使用することができます。
void wolfSSL_CertManagerFree(WOLFSSL_CERT_MANAGER * )
証明書マネージャのコンテキストに関連付けられているすべてのリソースを解放します。証明書マネージャを使用する必要がなくなるときにこれを呼び出します。
int wolfSSL_CertManagerLoadCA(WOLFSSL_CERT_MANAGER * cm, const char * f, const char * d)
ManagerコンテキストへのCA証明書のロードの場所を指定します。PEM証明書カフェイルには、複数の信頼できるCA証明書が含まれている可能性があります。capathがnullでない場合、PEM形式のCA証明書を含むディレクトリを指定します。
int wolfSSL_CertManagerLoadCABuffer(WOLFSSL_CERT_MANAGER * cm, const unsigned char * in, long sz, int format)
wolfssl_ctx_load_verify_bufferを呼び出して、関数に渡されたCM内の情報を失うことなく一時的なCMを使用してその結果を返すことによってCAバッファをロードします。
int wolfSSL_CertManagerUnloadCAs(WOLFSSL_CERT_MANAGER * cm)
この関数はCA署名者リストをアンロードします。
int wolfSSL_CertManagerUnload_trust_peers(WOLFSSL_CERT_MANAGER * cm)
関数は信頼できるピアリンクリストを解放し、信頼できるピアリストのロックを解除します。
int wolfSSL_CertManagerVerify(WOLFSSL_CERT_MANAGER * cm, const char * f, int format)
証明書マネージャのコンテキストで確認する証明書を指定します。フォーマットはSSL_FILETYPE_PEMまたはSSL_FILETYPE_ASN1にすることができます。
int wolfSSL_CertManagerVerifyBuffer(WOLFSSL_CERT_MANAGER * cm, const unsigned char * buff, long sz, int format)
証明書マネージャのコンテキストを使用して確認する証明書バッファを指定します。フォーマットはSSL_FILETYPE_PEMまたはSSL_FILETYPE_ASN1にすることができます。
void wolfSSL_CertManagerSetVerify(WOLFSSL_CERT_MANAGER * cm, VerifyCallback vc)
この関数は、証明書マネージャーのverifyCallback関数を設定します。存在する場合、それはロードされた各CERTに対して呼び出されます。検証エラーがある場合は、検証コールバックを使用してエラーを過度に乗り越えます。
int wolfSSL_CertManagerEnableCRL(WOLFSSL_CERT_MANAGER * cm, int options)
証明書マネージャを使用して証明書を検証するときに証明書失効リストの確認をオンにします。デフォルトでは、CRLチェックはオフです。オプションには、wolfssl_crl_checkallが含まれます。これは、チェーン内の各証明書に対してCRL検査を実行します。これはデフォルトであるリーフ証明書のみです。
int wolfSSL_CertManagerDisableCRL(WOLFSSL_CERT_MANAGER * )
証明書マネージャを使用して証明書を検証するときに証明書失効リストの確認をオフにします。デフォルトでは、CRLチェックはオフです。この関数を使用して、このCertificate Managerコンテキストを使用してCRL検査を一時的または恒久的に無効にして、以前はCRL検査が有効になっていました。
int wolfSSL_CertManagerLoadCRL(WOLFSSL_CERT_MANAGER * cm, const char * path, int type, int monitor)
証明書の失効確認のために証明書をCRLにロードする際にエラーチェックを行い、その後証明書をLoadCRL()へ渡します。
int wolfSSL_CertManagerLoadCRLBuffer(WOLFSSL_CERT_MANAGER * cm, const unsigned char * buff, long sz, int type)
この関数は、BufferLoadCRLを呼び出すことによってCRLファイルをロードします。
int wolfSSL_CertManagerSetCRL_Cb(WOLFSSL_CERT_MANAGER * cm, CbMissingCRL cb)
この関数はCRL証明書マネージャコールバックを設定します。LABE_CRLが定義されていて一致するCRLレコードが見つからない場合、CBMissingCRLは呼び出されます(WolfSSL_CertManagerSetCRL_CBを介して設定)。これにより、CRLを外部に検索してロードすることができます。
int wolfSSL_CertManagerFreeCRL(WOLFSSL_CERT_MANAGER * cm)
この関数は証明書マネジャーに保持されているCRLを解放します。 アプリケーションはCRLをwolfSSL_CertManagerFreeCRLを呼び出して解放した後に、新しいCRLをロードすることができます。
int wolfSSL_CertManagerCheckOCSP(WOLFSSL_CERT_MANAGER * cm, unsigned char * der, int sz)
この機能により、OCSPENABLED OCSPENABLEDがOCSPチェックオプションが有効になっていることを意味します。
int wolfSSL_CertManagerEnableOCSP(WOLFSSL_CERT_MANAGER * cm, int options)
OCSPがオフになっている場合はOCSPをオンにし、[設定]オプションを使用可能になっている場合。
int wolfSSL_CertManagerDisableOCSP(WOLFSSL_CERT_MANAGER * )
OCSP証明書の失効を無効にします。
int wolfSSL_CertManagerSetOCSPOverrideURL(WOLFSSL_CERT_MANAGER * cm, const char * url)
この関数は、URLをwolfssl_cert_manager構造体のOCSpoverrideURLメンバーにコピーします。
int wolfSSL_CertManagerSetOCSP_Cb(WOLFSSL_CERT_MANAGER * cm, CbOCSPIO ioCb, CbOCSPRespFree respFreeCb, void * ioCbCtx)
この関数は、wolfssl_cert_managerのOCSPコールバックを設定します。
int wolfSSL_CertManagerEnableOCSPStapling(WOLFSSL_CERT_MANAGER * cm)
この関数は、オプションをオンにしないとOCSPステープルをオンにします。オプションを設定します。

Functions Documentation

function wolfSSL_CertManagerNew_ex

WOLFSSL_CERT_MANAGER * wolfSSL_CertManagerNew_ex(
    void * heap
)

新しい証明書マネージャコンテキストを割り当てて初期化します。このコンテキストは、SSLのニーズとは無関係に使用できます。証明書をロードしたり、証明書を確認したり、失効状況を確認したりするために使用することができます。

See: wolfSSL_CertManagerFree

Return:

  • WOLFSSL_CERT_MANAGER 正常にコールが有効なwolfssl_cert_managerポインタを返します。
  • NULL エラー状態に戻ります。

function wolfSSL_CertManagerNew

WOLFSSL_CERT_MANAGER * wolfSSL_CertManagerNew(
    void 
)

新しい証明書マネージャコンテキストを割り当てて初期化します。このコンテキストは、SSLのニーズとは無関係に使用できます。証明書をロードしたり、証明書を確認したり、失効状況を確認したりするために使用することができます。

See: wolfSSL_CertManagerFree

Return:

  • WOLFSSL_CERT_MANAGER 正常にコールが有効なwolfssl_cert_managerポインタを返します。
  • NULL エラー状態に戻ります。

Example

#import <wolfssl/ssl.h>

WOLFSSL_CERT_MANAGER* cm;
cm = wolfSSL_CertManagerNew();
if (cm == NULL) {
// error creating new cert manager
}

function wolfSSL_CertManagerFree

void wolfSSL_CertManagerFree(
    WOLFSSL_CERT_MANAGER * 
)

証明書マネージャのコンテキストに関連付けられているすべてのリソースを解放します。証明書マネージャを使用する必要がなくなるときにこれを呼び出します。

See: wolfSSL_CertManagerNew

Return: none

Example

#include <wolfssl/ssl.h>

WOLFSSL_CERT_MANAGER* cm;
...
wolfSSL_CertManagerFree(cm);

function wolfSSL_CertManagerLoadCA

int wolfSSL_CertManagerLoadCA(
    WOLFSSL_CERT_MANAGER * cm,
    const char * f,
    const char * d
)

ManagerコンテキストへのCA証明書のロードの場所を指定します。PEM証明書カフェイルには、複数の信頼できるCA証明書が含まれている可能性があります。capathがnullでない場合、PEM形式のCA証明書を含むディレクトリを指定します。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。
  • file ロードするCA証明書を含むファイルの名前へのポインタ。

See: wolfSSL_CertManagerVerify

Return:

  • SSL_SUCCESS 成功した場合に返されます。、通話が戻ります。
  • SSL_BAD_FILETYPE ファイルが間違った形式である場合に返されます。
  • SSL_BAD_FILE ファイルが存在しない場合に返されます。読み込め、または破損していません。
  • MEMORY_E メモリ不足状態が発生した場合に返されます。
  • ASN_INPUT_E base16デコードがファイルに対して失敗した場合に返されます。
  • BAD_FUNC_ARG ポインタが提供されていない場合に返されるエラーです。
  • SSL_FATAL_ERROR - 失敗時に返されます。

Example

#include <wolfssl/ssl.h>

int ret = 0;
WOLFSSL_CERT_MANAGER* cm;
...
ret = wolfSSL_CertManagerLoadCA(cm, “path/to/cert-file.pem”, 0);
if (ret != SSL_SUCCESS) {
// error loading CA certs into cert manager
}

function wolfSSL_CertManagerLoadCABuffer

int wolfSSL_CertManagerLoadCABuffer(
    WOLFSSL_CERT_MANAGER * cm,
    const unsigned char * in,
    long sz,
    int format
)

wolfssl_ctx_load_verify_bufferを呼び出して、関数に渡されたCM内の情報を失うことなく一時的なCMを使用してその結果を返すことによってCAバッファをロードします。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。
  • in CERT情報用のバッファー。
  • sz バッファの長さ。

See:

Return:

  • SSL_FATAL_ERROR wolfssl_cert_manager構造体がNULLの場合、またはwolfSSL_CTX_new()がNULLを返す場合に返されます。
  • SSL_SUCCESS 実行が成功するために返されます。

Example

WOLFSSL_CERT_MANAGER* cm = (WOLFSSL_CERT_MANAGER*)vp;
…
const unsigned char* in;
long sz;
int format;
…
if(wolfSSL_CertManagerLoadCABuffer(vp, sz, format) != SSL_SUCCESS){
    Error returned. Failure case code block.
}

function wolfSSL_CertManagerUnloadCAs

int wolfSSL_CertManagerUnloadCAs(
    WOLFSSL_CERT_MANAGER * cm
)

この関数はCA署名者リストをアンロードします。

See:

  • FreeSignerTable
  • UnlockMutex

Return:

  • SSL_SUCCESS 機能の実行に成功したことに戻ります。
  • BAD_FUNC_ARG wolfssl_cert_managerがnullの場合に返されます。
  • BAD_MUTEX_E ミューテックスエラーが発生した場合に返されます。

Example

#include <wolfssl/ssl.h>

WOLFSSL_CTX* ctx = wolfSSL_CTX_new(protocol method);
WOLFSSL_CERT_MANAGER* cm = wolfSSL_CertManagerNew();
...
if(wolfSSL_CertManagerUnloadCAs(ctx->cm) != SSL_SUCCESS){
    Failure case.
}

function wolfSSL_CertManagerUnload_trust_peers

int wolfSSL_CertManagerUnload_trust_peers(
    WOLFSSL_CERT_MANAGER * cm
)

関数は信頼できるピアリンクリストを解放し、信頼できるピアリストのロックを解除します。

See: UnLockMutex

Return:

  • SSL_SUCCESS 関数が正常に完了した場合
  • BAD_FUNC_ARG wolfssl_cert_managerがnullの場合
  • BAD_MUTEX_E ミューテックスエラーTPLOCKでは、WOLFSSL_CERT_MANAGER構造体のメンバーは0(ニル)です。

Example

#include <wolfssl/ssl.h>

WOLFSSL_CTX* ctx = wolfSSL_CTX_new(Protocol define);
WOLFSSL_CERT_MANAGER* cm = wolfSSL_CertManagerNew();
...
if(wolfSSL_CertManagerUnload_trust_peers(cm) != SSL_SUCCESS){
    The function did not execute successfully.
}

function wolfSSL_CertManagerVerify

int wolfSSL_CertManagerVerify(
    WOLFSSL_CERT_MANAGER * cm,
    const char * f,
    int format
)

証明書マネージャのコンテキストで確認する証明書を指定します。フォーマットはSSL_FILETYPE_PEMまたはSSL_FILETYPE_ASN1にすることができます。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。
  • fname 検証する証明書を含むファイルの名前へのポインタ。

See:

Return:

  • SSL_SUCCESS 成功した場合に返されます。
  • ASN_SIG_CONFIRM_E 署名が検証できなかった場合に返されます。
  • ASN_SIG_OID_E 署名の種類がサポートされていない場合に返されます。
  • CRL_CERT_REVOKED この証明書が取り消された場合に返されるエラーです。
  • CRL_MISSING 現在の発行者CRLが利用できない場合に返されるエラーです。
  • ASN_BEFORE_DATE_E 現在の日付が前日の前にある場合に返されます。
  • ASN_AFTER_DATE_E 現在の日付が後の日付の後の場合に返されます。
  • SSL_BAD_FILETYPE ファイルが間違った形式である場合に返されます。
  • SSL_BAD_FILE ファイルが存在しない場合に返されます。読み込め、または破損していません。
  • MEMORY_E メモリ不足状態が発生した場合に返されます。
  • ASN_INPUT_E base16デコードがファイルに対して失敗した場合に返されます。
  • BAD_FUNC_ARG ポインタが提供されていない場合に返されるエラーです。

Example

int ret = 0;
WOLFSSL_CERT_MANAGER* cm;
...

ret = wolfSSL_CertManagerVerify(cm, “path/to/cert-file.pem”,
SSL_FILETYPE_PEM);
if (ret != SSL_SUCCESS) {
    error verifying certificate
}

function wolfSSL_CertManagerVerifyBuffer

int wolfSSL_CertManagerVerifyBuffer(
    WOLFSSL_CERT_MANAGER * cm,
    const unsigned char * buff,
    long sz,
    int format
)

証明書マネージャのコンテキストを使用して確認する証明書バッファを指定します。フォーマットはSSL_FILETYPE_PEMまたはSSL_FILETYPE_ASN1にすることができます。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。
  • buff 検証する証明書を含むバッファ。
  • sz バッファのサイズ、BUF。

See:

Return:

  • SSL_SUCCESS 成功した場合に返されます。
  • ASN_SIG_CONFIRM_E 署名が検証できなかった場合に返されます。
  • ASN_SIG_OID_E 署名の種類がサポートされていない場合に返されます。
  • CRL_CERT_REVOKED この証明書が取り消された場合に返されるエラーです。
  • CRL_MISSING 現在の発行者CRLが利用できない場合に返されるエラーです。
  • ASN_BEFORE_DATE_E 現在の日付が前日の前にある場合に返されます。
  • ASN_AFTER_DATE_E 現在の日付が後の日付の後の場合に返されます。
  • SSL_BAD_FILETYPE ファイルが間違った形式である場合に返されます。
  • SSL_BAD_FILE ファイルが存在しない場合に返されます。読み込め、または破損していません。
  • MEMORY_E メモリ不足状態が発生した場合に返されます。
  • ASN_INPUT_E base16デコードがファイルに対して失敗した場合に返されます。
  • BAD_FUNC_ARG ポインタが提供されていない場合に返されるエラーです。

Example

#include <wolfssl/ssl.h>

int ret = 0;
int sz = 0;
WOLFSSL_CERT_MANAGER* cm;
byte certBuff[...];
...

ret = wolfSSL_CertManagerVerifyBuffer(cm, certBuff, sz, SSL_FILETYPE_PEM);
if (ret != SSL_SUCCESS) {
    error verifying certificate
}

function wolfSSL_CertManagerSetVerify

void wolfSSL_CertManagerSetVerify(
    WOLFSSL_CERT_MANAGER * cm,
    VerifyCallback vc
)

この関数は、証明書マネージャーのverifyCallback関数を設定します。存在する場合、それはロードされた各CERTに対して呼び出されます。検証エラーがある場合は、検証コールバックを使用してエラーを過度に乗り越えます。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。

See: wolfSSL_CertManagerVerify

Return: none 返品不可。

Example

#include <wolfssl/ssl.h>

int myVerify(int preverify, WOLFSSL_X509_STORE_CTX* store)
{ // do custom verification of certificate }

WOLFSSL_CTX* ctx = wolfSSL_CTX_new(Protocol define);
WOLFSSL_CERT_MANAGER* cm = wolfSSL_CertManagerNew();
...
wolfSSL_CertManagerSetVerify(cm, myVerify);

function wolfSSL_CertManagerEnableCRL

int wolfSSL_CertManagerEnableCRL(
    WOLFSSL_CERT_MANAGER * cm,
    int options
)

証明書マネージャを使用して証明書を検証するときに証明書失効リストの確認をオンにします。デフォルトでは、CRLチェックはオフです。オプションには、wolfssl_crl_checkallが含まれます。これは、チェーン内の各証明書に対してCRL検査を実行します。これはデフォルトであるリーフ証明書のみです。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。

See: wolfSSL_CertManagerDisableCRL

Return:

  • SSL_SUCCESS 成功した場合に返されます。、通話が戻ります。
  • NOT_COMPILED_IN WolfSSLがCRLを有効にして構築されていない場合に返されます。
  • MEMORY_E メモリ不足状態が発生した場合に返されます。
  • BAD_FUNC_ARG ポインタが提供されていない場合に返されるエラーです。
  • SSL_FAILURE CRLコンテキストを正しく初期化できない場合に返されます。

Example

#include <wolfssl/ssl.h>

int ret = 0;
WOLFSSL_CERT_MANAGER* cm;
...

ret = wolfSSL_CertManagerEnableCRL(cm, 0);
if (ret != SSL_SUCCESS) {
    error enabling cert manager
}

...

function wolfSSL_CertManagerDisableCRL

int wolfSSL_CertManagerDisableCRL(
    WOLFSSL_CERT_MANAGER * 
)

証明書マネージャを使用して証明書を検証するときに証明書失効リストの確認をオフにします。デフォルトでは、CRLチェックはオフです。この関数を使用して、このCertificate Managerコンテキストを使用してCRL検査を一時的または恒久的に無効にして、以前はCRL検査が有効になっていました。

See: wolfSSL_CertManagerEnableCRL

Return:

  • SSL_SUCCESS 成功した場合に返されます。、通話が戻ります。
  • BAD_FUNC_ARG 関数ポインタが提供されていない場合に返されるエラーです。

Example

#include <wolfssl/ssl.h>

int ret = 0;
WOLFSSL_CERT_MANAGER* cm;
...
ret = wolfSSL_CertManagerDisableCRL(cm);
if (ret != SSL_SUCCESS) {
    error disabling cert manager
}
...

function wolfSSL_CertManagerLoadCRL

int wolfSSL_CertManagerLoadCRL(
    WOLFSSL_CERT_MANAGER * cm,
    const char * path,
    int type,
    int monitor
)

証明書の失効確認のために証明書をCRLにロードする際にエラーチェックを行い、その後証明書をLoadCRL()へ渡します。

Parameters:

  • cm wolfSSL_CertManagerNew()を使用して作成されたWOLFSSL_CERT_MANAGER構造体へのポインタ。
  • path CRLへのパスを保持しているバッファーへのポインタ。
  • type ロードする証明書の種類。

See:

Return:

  • SSL_SUCCESS wolfSSL_CertManagerLoadCRLでエラーが発生せず、loadCRLが成功で戻る場合に返されます。
  • BAD_FUNC_ARG WOLFSSL_CERT_MANAGER構造体がNULLの場合
  • SSL_FATAL_ERROR wolfSSL_CertManagerEnableCRLがSSL_SUCCESS以外のを返す場合。
  • BAD_PATH_ERROR pathがNULLの場合
  • MEMORY_E LOADCRLがヒープメモリの割り当てに失敗した場合。

Example

#include <wolfssl/ssl.h>

int wolfSSL_LoadCRL(WOLFSSL* ssl, const char* path, int type,
int monitor);
…
wolfSSL_CertManagerLoadCRL(SSL_CM(ssl), path, type, monitor);

function wolfSSL_CertManagerLoadCRLBuffer

int wolfSSL_CertManagerLoadCRLBuffer(
    WOLFSSL_CERT_MANAGER * cm,
    const unsigned char * buff,
    long sz,
    int type
)

この関数は、BufferLoadCRLを呼び出すことによってCRLファイルをロードします。

Parameters:

  • cm wolfssl_cert_manager構造体へのポインタ。
  • buff 定数バイトタイプとバッファです。
  • sz バッファのサイズを表す長いint。

See:

Return:

  • SSL_SUCCESS 関数がエラーなしで完了した場合に返されます。
  • BAD_FUNC_ARG wolfssl_cert_managerがnullの場合に返されます。
  • SSL_FATAL_ERROR wolfssl_cert_managerに関連付けられているエラーがある場合に返されます。

Example

#include <wolfssl/ssl.h>

WOLFSSL_CERT_MANAGER* cm;
const unsigned char* buff;
long sz; size of buffer
int type;  cert type
...
int ret = wolfSSL_CertManagerLoadCRLBuffer(cm, buff, sz, type);
if(ret == SSL_SUCCESS){
return ret;
} else {
    Failure case.
}

function wolfSSL_CertManagerSetCRL_Cb

int wolfSSL_CertManagerSetCRL_Cb(
    WOLFSSL_CERT_MANAGER * cm,
    CbMissingCRL cb
)

この関数はCRL証明書マネージャコールバックを設定します。LABE_CRLが定義されていて一致するCRLレコードが見つからない場合、CBMissingCRLは呼び出されます(WolfSSL_CertManagerSetCRL_CBを介して設定)。これにより、CRLを外部に検索してロードすることができます。

Parameters:

  • cm 証明書の情報を保持しているWOLFSSL_CERT_MANAGER構造。

See:

Return:

  • SSL_SUCCESS 関数とサブルーチンの実行が成功したら返されます。
  • BAD_FUNC_ARG wolfssl_cert_manager構造体がNULLの場合に返されます。

Example

#include <wolfssl/ssl.h>

WOLFSSL_CTX* ctx = wolfSSL_CTX_new(protocol method);
WOLFSSL* ssl = wolfSSL_new(ctx);
…
void cb(const char* url){
    Function body.
}
…
CbMissingCRL cb = CbMissingCRL;
…
if(ctx){
    return wolfSSL_CertManagerSetCRL_Cb(SSL_CM(ssl), cb);
}

function wolfSSL_CertManagerFreeCRL

int wolfSSL_CertManagerFreeCRL(
    WOLFSSL_CERT_MANAGER * cm
)

この関数は証明書マネジャーに保持されているCRLを解放します。 アプリケーションはCRLをwolfSSL_CertManagerFreeCRLを呼び出して解放した後に、新しいCRLをロードすることができます。

Parameters:

See: wolfSSL_CertManagerLoadCRL

Return:

  • SSL_SUCCESS 関数の実行に成功した場合に返されます。
  • BAD_FUNC_ARG WOLFSSL_CERT_MANAGER構造体へのポインターがNULLで渡された場合に返されます。

Example

#include <wolfssl/ssl.h>

const char* crl1     = "./certs/crl/crl.pem";
WOLFSSL_CERT_MANAGER* cm = NULL;

cm = wolfSSL_CertManagerNew();
wolfSSL_CertManagerLoadCRL(cm, crl1, WOLFSSL_FILETYPE_PEM, 0);
…
wolfSSL_CertManagerFreeCRL(cm);

function wolfSSL_CertManagerCheckOCSP

int wolfSSL_CertManagerCheckOCSP(
    WOLFSSL_CERT_MANAGER * cm,
    unsigned char * der,
    int sz
)

この機能により、OCSPENABLED OCSPENABLEDがOCSPチェックオプションが有効になっていることを意味します。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。
  • der 証明書へのバイトポインタ。

See:

  • ParseCertRelative
  • CheckCertOCSP

Return:

  • SSL_SUCCESS 機能の実行に成功したことに戻ります。wolfssl_cert_managerのOCSPENABLEDメンバーが有効になっています。
  • BAD_FUNC_ARG wolfssl_cert_manager構造体がnullの場合、または許可されていない引数値がサブルーチンに渡された場合に返されます。
  • MEMORY_E この関数内にメモリを割り当てるエラーまたはサブルーチンがある場合に返されます。

Example

#import <wolfssl/ssl.h>

WOLFSSL* ssl = wolfSSL_new(ctx);
byte* der;
int sz; size of der
...
if(wolfSSL_CertManagerCheckOCSP(cm, der, sz) != SSL_SUCCESS){
 Failure case.
}

function wolfSSL_CertManagerEnableOCSP

int wolfSSL_CertManagerEnableOCSP(
    WOLFSSL_CERT_MANAGER * cm,
    int options
)

OCSPがオフになっている場合はOCSPをオンにし、[設定]オプションを使用可能になっている場合。

Parameters:

  • cm wolfssl_certmanagernew()を使用して作成されたwolfssl_cert_manager構造体へのポインタ。

See: wolfSSL_CertManagerNew

Return:

  • SSL_SUCCESS 関数呼び出しが成功した場合に返されます。
  • BAD_FUNC_ARG cm構造体がnullの場合
  • MEMORY_E wolfssl_ocsp struct値がnullの場合
  • SSL_FAILURE WOLFSSL_OCSP構造体の初期化は初期化に失敗します。
  • NOT_COMPILED_IN 正しい機能を有効にしてコンパイルされていないビルド。

Example

#include <wolfssl/ssl.h>

WOLFSSL_CTX* ctx = wolfSSL_CTX_new(protocol method);
WOLFSSL* ssl = wolfSSL_new(ctx);
WOLFSSL_CERT_MANAGER* cm = wolfSSL_CertManagerNew();
int options;
…
if(wolfSSL_CertManagerEnableOCSP(SSL_CM(ssl), options) != SSL_SUCCESS){
    Failure case.
}

function wolfSSL_CertManagerDisableOCSP

int wolfSSL_CertManagerDisableOCSP(
    WOLFSSL_CERT_MANAGER * 
)

OCSP証明書の失効を無効にします。

See: wolfSSL_DisableCRL

Return:

  • SSL_SUCCESS WolfSSL_CertMangerDisableCRLは、WolfSSL_CERT_MANAGER構造体のCRLEnabledメンバを無効にしました。
  • BAD_FUNC_ARG WOLFSSL構造はヌルでした。

Example

#include <wolfssl/ssl.h>

WOLFSSL_CTX* ctx = wolfSSL_CTX_new(method);
WOLFSSL* ssl = wolfSSL_new(ctx);
...
if(wolfSSL_CertManagerDisableOCSP(ssl) != SSL_SUCCESS){
    Fail case.
}

function wolfSSL_CertManagerSetOCSPOverrideURL

int wolfSSL_CertManagerSetOCSPOverrideURL(
    WOLFSSL_CERT_MANAGER * cm,
    const char * url
)

この関数は、URLをwolfssl_cert_manager構造体のOCSpoverrideURLメンバーにコピーします。

See:

Return:

  • SSL_SUCCESS この機能は期待どおりに実行できました。
  • BAD_FUNC_ARG wolfssl_cert_manager構造体はnullです。
  • MEMEORY_E 証明書マネージャのOCSPoverRideURLメンバーにメモリを割り当てることができませんでした。

Example

#include <wolfssl/ssl.h>
WOLFSSL_CERT_MANAGER* cm = wolfSSL_CertManagerNew();
const char* url;
…
int wolfSSL_SetOCSP_OverrideURL(WOLFSSL* ssl, const char* url)
…
if(wolfSSL_CertManagerSetOCSPOverrideURL(SSL_CM(ssl), url) != SSL_SUCCESS){
    Failure case.
}

function wolfSSL_CertManagerSetOCSP_Cb

int wolfSSL_CertManagerSetOCSP_Cb(
    WOLFSSL_CERT_MANAGER * cm,
    CbOCSPIO ioCb,
    CbOCSPRespFree respFreeCb,
    void * ioCbCtx
)

この関数は、wolfssl_cert_managerのOCSPコールバックを設定します。

Parameters:

  • cm wolfssl_cert_manager構造体へのポインタ。
  • ioCb CBocSpio型の関数ポインタ。
  • respFreeCb - CBOCSPRESPFREAS型の関数ポインタ。

See:

Return:

  • SSL_SUCCESS 実行に成功したことに戻ります。引数はwolfssl_cert_manager構造体に保存されます。
  • BAD_FUNC_ARG wolfssl_cert_managerがnullの場合に返されます。

Example

#include <wolfssl/ssl.h>

wolfSSL_SetOCSP_Cb(WOLFSSL* ssl, CbOCSPIO ioCb,
CbOCSPRespFree respFreeCb, void* ioCbCtx){
…
return wolfSSL_CertManagerSetOCSP_Cb(SSL_CM(ssl), ioCb, respFreeCb, ioCbCtx);

function wolfSSL_CertManagerEnableOCSPStapling

int wolfSSL_CertManagerEnableOCSPStapling(
    WOLFSSL_CERT_MANAGER * cm
)

この関数は、オプションをオンにしないとOCSPステープルをオンにします。オプションを設定します。

See: wolfSSL_CTX_EnableOCSPStapling

Return:

  • SSL_SUCCESS エラーがなく、関数が正常に実行された場合に返されます。
  • BAD_FUNC_ARG wolfssl_cert_manager構造体がNULLまたはそうでない場合は、サブルーチンに渡された未解決の引数値があった場合に返されます。
  • MEMORY_E メモリ割り当てがある問題が発生した場合に返されます。
  • SSL_FAILURE OCSP構造体の初期化が失敗した場合に返されます。
  • NOT_COMPILED_IN wolfsslがhaber_certificate_status_requestオプションでコンパイルされていない場合に返されます。

Example

int wolfSSL_CTX_EnableOCSPStapling(WOLFSSL_CTX* ctx){
…
return wolfSSL_CertManagerEnableOCSPStapling(ctx->cm);

Updated on 2024-06-18 at 02:56:43 +0000