コンテンツにスキップ

移植性

wolfProviderは、関連するwolfCryptおよびOpenSSLライブラリの移植性を活用するように設計しています。

スレッド対応

wolfProviderはスレッドセーフであり、必要に応じてwolfCryptのミューテックスロックメカニズムwc_LockMutex()wc_UnLockMutex()を使用します。 wolfCryptには、サポートしているプラットフォーム用に抽象化されたミューテックス操作があります。

動的メモリ使用

wolfProviderはOpenSSLのメモリ割り当て関数を使用して、OpenSSLの動作との一貫性を維持します。 wolfProviderの内部で使用される割り当て関数には、OPENSSL_malloc()OPENSSL_free()OPENSSL_zalloc()OPENSSL_realloc()があります。

ログ出力

wolfProviderはデフォルトでfprintf()によりstderrにログを出力します。 アプリケーションは、カスタムロギング関数を登録することでこれをオーバーライドできます。 詳しくは5章をご覧ください。

wolfProviderをコンパイルする際、以下のマクロを追加することでログの動作を調整できます。

WOLFPROVIDER_USER_LOG - ログ出力の関数名を定義するマクロ。お客様はこれをfprintfの代わりに使用するカスタムログ関数として定義できます。

WOLFPROVIDER_LOG_PRINTF - fprintf(stderr)ではなく、代わりにprintf(stdout)を使用するように定義します。WOLFPROVIDER_USER_LOGまたはカスタムロギングコールバックを使用している場合は適用されません。