Class AlertDescription

java.lang.Object
org.bouncycastle.tls.AlertDescription

public class AlertDescription extends Object
RFC 5246 7.2.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final short
    A valid certificate was received, but when access control was applied, the sender decided not to proceed with negotiation.
    static final short
    A certificate was corrupt, contained signatures that did not verify correctly, etc.
    static final short
    This alert is sent by servers when a certificate hash does not match a client provided certificate_hash.
    static final short
    This alert is sent by clients that receive an invalid certificate status response (see Section 3.6).
    static final short
    This alert is returned if a record is received with an incorrect MAC.
    static final short
    A certificate has expired or is not currently valid.
    static final short
    Sent by servers when a client certificate is desired but none was provided by the client.
    static final short
    A certificate was revoked by its signer.
    static final short
    Some other (unspecified) issue arose in processing the certificate, rendering it unacceptable.
    static final short
    This alert is sent by servers who are unable to retrieve a certificate chain from the URL supplied by the client (see Section 3.3).
    static final short
    This message notifies the recipient that the sender will not send any more messages on this connection.
    static final short
    A message could not be decoded because some field was out of the specified range or the length of the message was incorrect.
    static final short
    The decompression function received improper input (e.g., data that would expand to excessive length).
    static final short
    A handshake cryptographic operation failed, including being unable to correctly verify a signature or validate a Finished message.
    static final short
    This alert was used in some earlier versions of TLS, and may have permitted certain attacks against the CBC mode [CBCATT].
    static final short
    This alert was used in some earlier versions of TLS.
    static final short
    Reception of a handshake_failure alert message indicates that the sender was unable to negotiate an acceptable set of security parameters given the options available.
    static final short
    A field in the handshake was out of range or inconsistent with other fields.
    static final short
    If TLS_FALLBACK_SCSV appears in ClientHello.cipher_suites and the highest protocol version supported by the server is higher than the version indicated in ClientHello.client_version, the server MUST respond with a fatal inappropriate_fallback alert [..].
    static final short
    Returned instead of handshake_failure when a negotiation has failed specifically because the server requires ciphers more secure than those supported by the client.
    static final short
    An internal error unrelated to the peer or the correctness of the protocol (such as a memory allocation failure) makes it impossible to continue.
    static final short
    Sent by endpoints that receive a handshake message not containing an extension that is mandatory to send for the offered TLS version or other negotiated parameters.
    static final short
    In the event that the server supports no protocols that the client advertises, then the server SHALL respond with a fatal "no_application_protocol" alert.
    static final short
    This alert was used in SSLv3 but not any version of TLS.
    static final short
    Sent by the client in response to a hello request or by the server in response to a client hello after initial handshaking.
    static final short
    The protocol version the client has attempted to negotiate is recognized but not supported.
    static final short
    A TLSCiphertext record was received that had a length more than 2^14+2048 bytes, or a record decrypted to a TLSCompressed record with more than 2^14+1024 bytes.
    static final short
    An inappropriate message was received.
    static final short
    A valid certificate chain or partial chain was received, but the certificate was not accepted because the CA certificate could not be located or couldn't be matched with a known, trusted CA.
    static final short
    If the server does not recognize the PSK identity, it MAY respond with an "unknown_psk_identity" alert message.
    static final short
    This alert is sent by servers that receive a server_name extension request, but do not recognize the server name.
    static final short
    A certificate was of an unsupported type.
    static final short
    Sent by clients that receive an extended server hello containing an extension that they did not put in the corresponding client hello.
    static final short
    This handshake is being canceled for some reason unrelated to a protocol failure.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static String
    getName(short alertDescription)
     
    static String
    getText(short alertDescription)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • close_notify

      public static final short close_notify
      This message notifies the recipient that the sender will not send any more messages on this connection. Note that as of TLS 1.1, failure to properly close a connection no longer requires that a session not be resumed. This is a change from TLS 1.0 ("The session becomes unresumable if any connection is terminated without proper close_notify messages with level equal to warning.") to conform with widespread implementation practice.
      See Also:
    • unexpected_message

      public static final short unexpected_message
      An inappropriate message was received. This alert is always fatal and should never be observed in communication between proper implementations.
      See Also:
    • bad_record_mac

      public static final short bad_record_mac
      This alert is returned if a record is received with an incorrect MAC. This alert also MUST be returned if an alert is sent because a TLSCiphertext decrypted in an invalid way: either it wasn't an even multiple of the block length, or its padding values, when checked, weren't correct. This message is always fatal and should never be observed in communication between proper implementations (except when messages were corrupted in the network).
      See Also:
    • decryption_failed

      public static final short decryption_failed
      This alert was used in some earlier versions of TLS, and may have permitted certain attacks against the CBC mode [CBCATT]. It MUST NOT be sent by compliant implementations.
      See Also:
    • record_overflow

      public static final short record_overflow
      A TLSCiphertext record was received that had a length more than 2^14+2048 bytes, or a record decrypted to a TLSCompressed record with more than 2^14+1024 bytes. This message is always fatal and should never be observed in communication between proper implementations (except when messages were corrupted in the network).
      See Also:
    • decompression_failure

      public static final short decompression_failure
      The decompression function received improper input (e.g., data that would expand to excessive length). This message is always fatal and should never be observed in communication between proper implementations.
      See Also:
    • handshake_failure

      public static final short handshake_failure
      Reception of a handshake_failure alert message indicates that the sender was unable to negotiate an acceptable set of security parameters given the options available. This is a fatal error.
      See Also:
    • no_certificate

      public static final short no_certificate
      This alert was used in SSLv3 but not any version of TLS. It MUST NOT be sent by compliant implementations.
      See Also:
    • bad_certificate

      public static final short bad_certificate
      A certificate was corrupt, contained signatures that did not verify correctly, etc.
      See Also:
    • unsupported_certificate

      public static final short unsupported_certificate
      A certificate was of an unsupported type.
      See Also:
    • certificate_revoked

      public static final short certificate_revoked
      A certificate was revoked by its signer.
      See Also:
    • certificate_expired

      public static final short certificate_expired
      A certificate has expired or is not currently valid.
      See Also:
    • certificate_unknown

      public static final short certificate_unknown
      Some other (unspecified) issue arose in processing the certificate, rendering it unacceptable.
      See Also:
    • illegal_parameter

      public static final short illegal_parameter
      A field in the handshake was out of range or inconsistent with other fields. This message is always fatal.
      See Also:
    • unknown_ca

      public static final short unknown_ca
      A valid certificate chain or partial chain was received, but the certificate was not accepted because the CA certificate could not be located or couldn't be matched with a known, trusted CA. This message is always fatal.
      See Also:
    • access_denied

      public static final short access_denied
      A valid certificate was received, but when access control was applied, the sender decided not to proceed with negotiation. This message is always fatal.
      See Also:
    • decode_error

      public static final short decode_error
      A message could not be decoded because some field was out of the specified range or the length of the message was incorrect. This message is always fatal and should never be observed in communication between proper implementations (except when messages were corrupted in the network).
      See Also:
    • decrypt_error

      public static final short decrypt_error
      A handshake cryptographic operation failed, including being unable to correctly verify a signature or validate a Finished message. This message is always fatal.
      See Also:
    • export_restriction

      public static final short export_restriction
      This alert was used in some earlier versions of TLS. It MUST NOT be sent by compliant implementations.
      See Also:
    • protocol_version

      public static final short protocol_version
      The protocol version the client has attempted to negotiate is recognized but not supported. (For example, old protocol versions might be avoided for security reasons.) This message is always fatal.
      See Also:
    • insufficient_security

      public static final short insufficient_security
      Returned instead of handshake_failure when a negotiation has failed specifically because the server requires ciphers more secure than those supported by the client. This message is always fatal.
      See Also:
    • internal_error

      public static final short internal_error
      An internal error unrelated to the peer or the correctness of the protocol (such as a memory allocation failure) makes it impossible to continue. This message is always fatal.
      See Also:
    • user_canceled

      public static final short user_canceled
      This handshake is being canceled for some reason unrelated to a protocol failure. If the user cancels an operation after the handshake is complete, just closing the connection by sending a close_notify is more appropriate. This alert should be followed by a close_notify. This message is generally a warning.
      See Also:
    • no_renegotiation

      public static final short no_renegotiation
      Sent by the client in response to a hello request or by the server in response to a client hello after initial handshaking. Either of these would normally lead to renegotiation; when that is not appropriate, the recipient should respond with this alert. At that point, the original requester can decide whether to proceed with the connection. One case where this would be appropriate is where a server has spawned a process to satisfy a request; the process might receive security parameters (key length, authentication, etc.) at startup, and it might be difficult to communicate changes to these parameters after that point. This message is always a warning.
      See Also:
    • unsupported_extension

      public static final short unsupported_extension
      Sent by clients that receive an extended server hello containing an extension that they did not put in the corresponding client hello. This message is always fatal.
      See Also:
    • certificate_unobtainable

      public static final short certificate_unobtainable
      This alert is sent by servers who are unable to retrieve a certificate chain from the URL supplied by the client (see Section 3.3). This message MAY be fatal - for example if client authentication is required by the server for the handshake to continue and the server is unable to retrieve the certificate chain, it may send a fatal alert.
      See Also:
    • unrecognized_name

      public static final short unrecognized_name
      This alert is sent by servers that receive a server_name extension request, but do not recognize the server name. This message MAY be fatal.
      See Also:
    • bad_certificate_status_response

      public static final short bad_certificate_status_response
      This alert is sent by clients that receive an invalid certificate status response (see Section 3.6). This message is always fatal.
      See Also:
    • bad_certificate_hash_value

      public static final short bad_certificate_hash_value
      This alert is sent by servers when a certificate hash does not match a client provided certificate_hash. This message is always fatal.
      See Also:
    • unknown_psk_identity

      public static final short unknown_psk_identity
      If the server does not recognize the PSK identity, it MAY respond with an "unknown_psk_identity" alert message.
      See Also:
    • no_application_protocol

      public static final short no_application_protocol
      In the event that the server supports no protocols that the client advertises, then the server SHALL respond with a fatal "no_application_protocol" alert.
      See Also:
    • inappropriate_fallback

      public static final short inappropriate_fallback
      If TLS_FALLBACK_SCSV appears in ClientHello.cipher_suites and the highest protocol version supported by the server is higher than the version indicated in ClientHello.client_version, the server MUST respond with a fatal inappropriate_fallback alert [..].
      See Also:
    • missing_extension

      public static final short missing_extension
      Sent by endpoints that receive a handshake message not containing an extension that is mandatory to send for the offered TLS version or other negotiated parameters.
      See Also:
    • certificate_required

      public static final short certificate_required
      Sent by servers when a client certificate is desired but none was provided by the client.
      See Also:
  • Constructor Details

    • AlertDescription

      public AlertDescription()
  • Method Details

    • getName

      public static String getName(short alertDescription)
    • getText

      public static String getText(short alertDescription)