2014-06-20 20:00:00 +01:00
|
|
|
// Copyright 2009 The Go Authors. All rights reserved.
|
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
2015-09-29 23:21:04 +01:00
|
|
|
package runner
|
2014-06-20 20:00:00 +01:00
|
|
|
|
|
|
|
import "strconv"
|
|
|
|
|
|
|
|
type alert uint8
|
|
|
|
|
|
|
|
const (
|
|
|
|
// alert level
|
|
|
|
alertLevelWarning = 1
|
|
|
|
alertLevelError = 2
|
|
|
|
)
|
|
|
|
|
|
|
|
const (
|
|
|
|
alertCloseNotify alert = 0
|
2016-06-30 23:55:18 +01:00
|
|
|
alertEndOfEarlyData alert = 1
|
2014-06-20 20:00:00 +01:00
|
|
|
alertUnexpectedMessage alert = 10
|
|
|
|
alertBadRecordMAC alert = 20
|
|
|
|
alertDecryptionFailed alert = 21
|
|
|
|
alertRecordOverflow alert = 22
|
|
|
|
alertDecompressionFailure alert = 30
|
|
|
|
alertHandshakeFailure alert = 40
|
2016-03-10 20:44:22 +00:00
|
|
|
alertNoCertficate alert = 41
|
2014-06-20 20:00:00 +01:00
|
|
|
alertBadCertificate alert = 42
|
|
|
|
alertUnsupportedCertificate alert = 43
|
|
|
|
alertCertificateRevoked alert = 44
|
|
|
|
alertCertificateExpired alert = 45
|
|
|
|
alertCertificateUnknown alert = 46
|
|
|
|
alertIllegalParameter alert = 47
|
|
|
|
alertUnknownCA alert = 48
|
|
|
|
alertAccessDenied alert = 49
|
|
|
|
alertDecodeError alert = 50
|
|
|
|
alertDecryptError alert = 51
|
|
|
|
alertProtocolVersion alert = 70
|
|
|
|
alertInsufficientSecurity alert = 71
|
|
|
|
alertInternalError alert = 80
|
|
|
|
alertUserCanceled alert = 90
|
|
|
|
alertNoRenegotiation alert = 100
|
2016-06-30 23:55:18 +01:00
|
|
|
alertMissingExtension alert = 109
|
2014-06-20 20:00:00 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
var alertText = map[alert]string{
|
|
|
|
alertCloseNotify: "close notify",
|
2016-06-30 23:55:18 +01:00
|
|
|
alertEndOfEarlyData: "end of early data",
|
2014-06-20 20:00:00 +01:00
|
|
|
alertUnexpectedMessage: "unexpected message",
|
|
|
|
alertBadRecordMAC: "bad record MAC",
|
|
|
|
alertDecryptionFailed: "decryption failed",
|
|
|
|
alertRecordOverflow: "record overflow",
|
|
|
|
alertDecompressionFailure: "decompression failure",
|
|
|
|
alertHandshakeFailure: "handshake failure",
|
|
|
|
alertBadCertificate: "bad certificate",
|
|
|
|
alertUnsupportedCertificate: "unsupported certificate",
|
|
|
|
alertCertificateRevoked: "revoked certificate",
|
|
|
|
alertCertificateExpired: "expired certificate",
|
|
|
|
alertCertificateUnknown: "unknown certificate",
|
|
|
|
alertIllegalParameter: "illegal parameter",
|
|
|
|
alertUnknownCA: "unknown certificate authority",
|
|
|
|
alertAccessDenied: "access denied",
|
|
|
|
alertDecodeError: "error decoding message",
|
|
|
|
alertDecryptError: "error decrypting message",
|
|
|
|
alertProtocolVersion: "protocol version not supported",
|
|
|
|
alertInsufficientSecurity: "insufficient security level",
|
|
|
|
alertInternalError: "internal error",
|
|
|
|
alertUserCanceled: "user canceled",
|
|
|
|
alertNoRenegotiation: "no renegotiation",
|
2016-06-30 23:55:18 +01:00
|
|
|
alertMissingExtension: "missing extension",
|
2014-06-20 20:00:00 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
func (e alert) String() string {
|
|
|
|
s, ok := alertText[e]
|
|
|
|
if ok {
|
|
|
|
return s
|
|
|
|
}
|
|
|
|
return "alert(" + strconv.Itoa(int(e)) + ")"
|
|
|
|
}
|
|
|
|
|
|
|
|
func (e alert) Error() string {
|
|
|
|
return e.String()
|
|
|
|
}
|