Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::X509::StoreContextクラス > error=

instance method OpenSSL::X509::StoreContext#error=

error=(error)[permalink][rdoc]

エラーコードを設定します。

OpenSSL::X509::StoreContext#verify を呼びだし、証明書チェインの各証明書を検証したコールバック(OpenSSL::X509::Store#verify_callback=)が呼び出され、 StoreContext オブジェクトが渡されますが、このメソッドでエラーコードを設定し、コールバックの返り値を false にすると、最終的なエラーコードがここで設定したものになります。OpenSSL::X509::StoreContext#error_string もその値に応じた文字列が返るようになります。

例:

require 'openssl'

store = OpenSSL::X509::Store.new
store.set_default_paths
cert = OpenSSL::X509::Certificate.new(...)
store.verify(cert, chain){|ok,ctx|
  ctx.error = OpenSSL::X509::V_ERR_APPLICATION_VERIFICATION;
false}  # => false
p store.error # => OpenSSL::X509::V_ERR_APPLICATION_VERIFICATION
p store.error_string # => "application verification failure"
[PARAM] error:
エラーコードの整数値

[SEE_ALSO] OpenSSL::X509::StoreContext#error