9. エラーアラート
このドキュメントは、[RFC5246] に対する明確化として、ここで定義された拡張に関連して使用するための 1 つの追加アラートを定義します。このアラートは、クライアントまたはサーバーがハンドシェイクが失敗したと判断し、相手側に通知する必要がある場合に使用されます:
unrecognized_name(112)
このアラートは、クライアントが「server_name」拡張で提供した名前に対応するサーバーを見つけることができないサーバーによって送信されます。これは致命的なアラートです。(このアラートの送信はサーバーにとって必須のアクションではありません。サーバー実装は、クライアント hello からのサーバー名が認識されなかったことをクライアントに示さずにハンドシェイクを続行することを決定する場合があるためです。)
さらに、TLS は、[RFC5246] ですでに異なる目的で定義されている次のアラートを使用します。これらは、アラートを送信するエンティティが失敗条件を致命的と見なす場合に、このドキュメントで定義された拡張から発生するさまざまなエラー条件にも適しています:
unsupported_extension
certificate_unobtainable
unrecognized_name
bad_certificate_status_response
bad_certificate_hash_value
処理関数で複数のエラーが発生する可能性がある場合、アラートメッセージを生成するエンティティは、プロトコル処理で最も早く発生したエラーを報告すべきです (SHOULD)。これには、特にクライアント hello 拡張の評価中に発生した場合、ほぼ同時に発生した複数のエラーをエンティティがバッファリングする必要がある場合があります。
上記で定義されたすべてのアラートおよび [RFC5246] で定義された他のアラートについて、実装は、問題診断をサポートするためにアラートの具体的な原因を報告するログまたはデバッグ機能を提供すべきです (SHOULD)。