wolfSSL Error Handling and Reporting
Functions
Name | |
---|---|
int | wolfSSL_Debugging_ON(void ) ビルド時にロギングが有効になっている場合、この関数は実行時にロギングをオンにします。ビルド時にログ記録を有効にするには–enable-debugまたはdebug_wolfsslを定義します。 |
void | wolfSSL_Debugging_OFF(void ) この関数はランタイムロギングメッセージをオフにします。彼らがすでに消えている場合は、行動はとられません。 |
int | wolfSSL_get_error(WOLFSSL * ssl, int ret) この関数は、直前のAPI関数呼び出し(wolfssl_connect、wolfssl_accept、wolfssl_read、wolfssl_writeなど)がエラーコード(SSL_FAILURE)を呼び出した理由を表す一意のエラーコードを返します。 直前の関数の戻り値は、retを介してwolfSSL_get_errorに渡されます。wolfSSL_get_errorは一意のエラーコードを返します。 wolfSSL_err_error_string()を呼び出して人間が読めるエラー文字列を取得することができます。 詳細については、wolfSSL_err_error_string()を参照してください。 |
void | wolfSSL_load_error_strings(void ) この機能はOpenSSL API(SSL_load_error_string)との互換性の目的みで提供してあり処理は行いません。 |
char * | wolfSSL_ERR_error_string(unsigned long errNumber, char * data) この関数は、wolfSSL_get_error()によって返されたエラーコードをより人間が読めるエラー文字列に変換します。 引数errNumberは、wolfSSL_get_error()によって返され、引数dataはエラー文字列が配置されるバッファへのポインタです。 MAX_ERROR_SZで定義されているように、データの最大長はデフォルトで80文字です。 これはwolfssl/wolfcrypt/error.hで定義されています。 |
void | wolfSSL_ERR_error_string_n(unsigned long e, char * buf, unsigned long sz) この関数は、wolfssl_err_error_string()のバッファのサイズを指定するバージョンです。 ここで、引数lenは引数bufに書き込まれ得る最大文字数を指定します。 wolfSSL_err_error_string()と同様に、この関数はwolfSSL_get_error()から返されたエラーコードをより人間が読めるエラー文字列に変換します。 人間が読める文字列はbufに置かれます。 |
void | wolfSSL_ERR_print_errors_fp(XFILE fp, int err) この関数は、wolfSSL_get_error()によって返されたエラーコードをより多くの人間が読めるエラー文字列に変換し、その文字列を出力ファイルに印刷します。ERRは、WOLFSSL_GET_ERROR()によって返され、FPがエラー文字列が配置されるファイルであるエラーコードです。 |
void | wolfSSL_ERR_print_errors_cb(int()(const char str, size_t len, void *u) cb, void * u) この関数は提供されたコールバックを使用してエラー報告を処理します。コールバック関数はエラー回線ごとに実行されます。文字列、長さ、およびuserdataはコールバックパラメータに渡されます。 |
int | wolfSSL_want_read(WOLFSSL * ) この関数は、wolfSSL_get_error()を呼び出してssl_error_want_readを取得するのと似ています。基礎となるエラー状態がSSL_ERROR_WANT_READの場合、この関数は1を返しますが、それ以外の場合は0です。 |
int | wolfSSL_want_write(WOLFSSL * ) この関数は、wolfSSL_get_error()を呼び出し、RETURSのSSL_ERROR_WANT_WRITEを取得するのと同じです。基礎となるエラー状態がSSL_ERROR_WANT_WRITEの場合、この関数は1を返しますが、それ以外の場合は0です。 |
unsigned long | wolfSSL_ERR_peek_last_error(void ) この関数は、wolfssl_Errorに遭遇した最後のエラーの絶対値を返します。 |
Functions Documentation
function wolfSSL_Debugging_ON
int wolfSSL_Debugging_ON(
void
)
ビルド時にロギングが有効になっている場合、この関数は実行時にロギングをオンにします。ビルド時にログ記録を有効にするには–enable-debugまたはdebug_wolfsslを定義します。
See:
Return:
- 0 成功すると。
- NOT_COMPILED_IN このビルドに対してロギングが有効になっていない場合は返されるエラーです。 Example
wolfSSL_Debugging_ON();
function wolfSSL_Debugging_OFF
void wolfSSL_Debugging_OFF(
void
)
この関数はランタイムロギングメッセージをオフにします。彼らがすでに消えている場合は、行動はとられません。
See:
Return: none いいえ返します。 Example
wolfSSL_Debugging_OFF();
function wolfSSL_get_error
int wolfSSL_get_error(
WOLFSSL * ssl,
int ret
)
この関数は、直前のAPI関数呼び出し(wolfssl_connect、wolfssl_accept、wolfssl_read、wolfssl_writeなど)がエラーコード(SSL_FAILURE)を呼び出した理由を表す一意のエラーコードを返します。 直前の関数の戻り値は、retを介してwolfSSL_get_errorに渡されます。wolfSSL_get_errorは一意のエラーコードを返します。 wolfSSL_err_error_string()を呼び出して人間が読めるエラー文字列を取得することができます。 詳細については、wolfSSL_err_error_string()を参照してください。
Parameters:
- ssl wolfSSL_new()を使用して作成されたWOLFSSL構造体へのポインタ
See:
- wolfSSL_ERR_error_string
- wolfSSL_ERR_error_string_n
- wolfSSL_ERR_print_errors_fp
- wolfSSL_load_error_strings
Return:
- 呼び出し成功時、この関数は、直前の関数が失敗した理由を説明する固有のエラーコードを返します。
- SSL_ERROR_NONE 引数retが0より大きい場合に返されます。retが0以下の場合、直前のAPIがエラーコードを返すが実際に発生しなかった場合にこの値を返す場合があります。 例としては、引数szに0を渡してwolfSSL_read()を呼び出す場合に発生します。 wolfssl_read()が0を戻した場合は通常エラーを示しますが、この場合はエラーは発生していません。 従って、wolfSSL_get_error()がその後呼び出された場合、ssl_error_noneが返されます。
Example
int err = 0;
WOLFSSL* ssl;
char buffer[80];
...
err = wolfSSL_get_error(ssl, 0);
wolfSSL_ERR_error_string(err, buffer);
printf(“err = %d, %s\n”, err, buffer);
function wolfSSL_load_error_strings
void wolfSSL_load_error_strings(
void
)
この機能はOpenSSL API(SSL_load_error_string)との互換性の目的みで提供してあり処理は行いません。
Parameters:
- なし Example
wolfSSL_load_error_strings();
See:
- wolfSSL_get_error
- wolfSSL_ERR_error_string
- wolfSSL_ERR_error_string_n
- wolfSSL_ERR_print_errors_fp
- wolfSSL_load_error_strings
Return: なし
function wolfSSL_ERR_error_string
char * wolfSSL_ERR_error_string(
unsigned long errNumber,
char * data
)
この関数は、wolfSSL_get_error()によって返されたエラーコードをより人間が読めるエラー文字列に変換します。 引数errNumberは、wolfSSL_get_error()によって返され、引数dataはエラー文字列が配置されるバッファへのポインタです。 MAX_ERROR_SZで定義されているように、データの最大長はデフォルトで80文字です。 これはwolfssl/wolfcrypt/error.hで定義されています。
Parameters:
- errNumber wolfSSL_get_error()によって返されたエラーコード。
- data 人間が読めるエラー文字列を格納したバッファへのポインタ
See:
Return:
- success 正常に完了すると、この関数はdataに返されるのと同じ文字列を返します。
- failure 失敗すると、この関数は適切な障害理由、MSGを持つ文字列を返します。
Example
int err = 0;
WOLFSSL* ssl;
char buffer[80];
...
err = wolfSSL_get_error(ssl, 0);
wolfSSL_ERR_error_string(err, buffer);
printf(“err = %d, %s\n”, err, buffer);
function wolfSSL_ERR_error_string_n
void wolfSSL_ERR_error_string_n(
unsigned long e,
char * buf,
unsigned long sz
)
この関数は、wolfssl_err_error_string()のバッファのサイズを指定するバージョンです。 ここで、引数lenは引数bufに書き込まれ得る最大文字数を指定します。 wolfSSL_err_error_string()と同様に、この関数はwolfSSL_get_error()から返されたエラーコードをより人間が読めるエラー文字列に変換します。 人間が読める文字列はbufに置かれます。
Parameters:
- e wolfSSL_get_error()によって返されたエラーコード。
- buff eと一致する人間が読めるエラー文字列を含む出力バッファ。
- len 出力バッファのサイズ
See:
Return: なし
Example
int err = 0;
WOLFSSL* ssl;
char buffer[80];
...
err = wolfSSL_get_error(ssl, 0);
wolfSSL_ERR_error_string_n(err, buffer, 80);
printf(“err = %d, %s\n”, err, buffer);
function wolfSSL_ERR_print_errors_fp
void wolfSSL_ERR_print_errors_fp(
XFILE fp,
int err
)
この関数は、wolfSSL_get_error()によって返されたエラーコードをより多くの人間が読めるエラー文字列に変換し、その文字列を出力ファイルに印刷します。ERRは、WOLFSSL_GET_ERROR()によって返され、FPがエラー文字列が配置されるファイルであるエラーコードです。
Parameters:
- fp に書き込まれる人間が読めるエラー文字列の出力ファイル。
- err wolfSSL_get_error()で返されるエラーコード。
See:
Return: なし
Example
int err = 0;
WOLFSSL* ssl;
FILE* fp = ...
...
err = wolfSSL_get_error(ssl, 0);
wolfSSL_ERR_print_errors_fp(fp, err);
function wolfSSL_ERR_print_errors_cb
void wolfSSL_ERR_print_errors_cb(
int(*)(const char *str, size_t len, void *u) cb,
void * u
)
この関数は提供されたコールバックを使用してエラー報告を処理します。コールバック関数はエラー回線ごとに実行されます。文字列、長さ、およびuserdataはコールバックパラメータに渡されます。
Parameters:
- cb コールバック関数
- u コールバック関数に渡されるuserdata
See:
Return: なし
Example
int error_cb(const char *str, size_t len, void *u)
{ fprintf((FILE*)u, "%-*.*s\n", (int)len, (int)len, str); return 0; }
...
FILE* fp = ...
wolfSSL_ERR_print_errors_cb(error_cb, fp);
function wolfSSL_want_read
int wolfSSL_want_read(
WOLFSSL *
)
この関数は、wolfSSL_get_error()を呼び出してssl_error_want_readを取得するのと似ています。基礎となるエラー状態がSSL_ERROR_WANT_READの場合、この関数は1を返しますが、それ以外の場合は0です。
See:
Return:
- 1 WOLFSSL_GET_ERROR()はSSL_ERROR_WANT_READを返し、基礎となるI / Oには読み取り可能なデータがあります。
- 0 SSL_ERROR_WANT_READエラー状態はありません。
Example
int ret;
WOLFSSL* ssl = 0;
...
ret = wolfSSL_want_read(ssl);
if (ret == 1) {
// underlying I/O has data available for reading (SSL_ERROR_WANT_READ)
}
function wolfSSL_want_write
int wolfSSL_want_write(
WOLFSSL *
)
この関数は、wolfSSL_get_error()を呼び出し、RETURSのSSL_ERROR_WANT_WRITEを取得するのと同じです。基礎となるエラー状態がSSL_ERROR_WANT_WRITEの場合、この関数は1を返しますが、それ以外の場合は0です。
See:
Return:
- 1 WOLFSSL_GET_ERROR()はSSL_ERROR_WANT_WRITEを返します。基礎となるI / Oは、基礎となるSSL接続で進行状況を行うために書き込まれるデータを必要とします。
- 0 ssl_error_want_writeエラー状態はありません。
Example
int ret;
WOLFSSL* ssl = 0;
...
ret = wolfSSL_want_write(ssl);
if (ret == 1) {
// underlying I/O needs data to be written (SSL_ERROR_WANT_WRITE)
}
function wolfSSL_ERR_peek_last_error
unsigned long wolfSSL_ERR_peek_last_error(
void
)
この関数は、wolfssl_Errorに遭遇した最後のエラーの絶対値を返します。
See: wolfSSL_ERR_print_errors_fp
Return: error 最後のエラーの絶対値を返します。
Example
unsigned long err;
...
err = wolfSSL_ERR_peek_last_error();
// inspect err value
Updated on 2024-10-02 at 02:34:59 +0000