haal-models-0.1.3.0: src/Haal/Models/TLS/MiTLSV0V1V3ServerRegular.hs
-- Generated by haal-gen. Do not edit manually.
module Haal.Models.TLS.MiTLSV0V1V3ServerRegular
( MiTLSV0V1V3ServerRegularInput (..)
, MiTLSV0V1V3ServerRegularOutput (..)
, miTLSV0V1V3ServerRegular
) where
import Haal.Automaton.MealyAutomaton (MealyAutomaton, mkMealyAutomatonTable)
data MiTLSV0V1V3ServerRegularInput
= In_ApplicationData
| In_ApplicationDataEmpty
| In_ChangeCipherSpec
| In_ClientHelloRSA
| In_ClientKeyExchange
| In_EmptyCertificate
| In_Finished
| In_HeartbeatRequest
deriving (Show, Eq, Ord, Enum, Bounded)
data MiTLSV0V1V3ServerRegularOutput
= Out_ConnectionClosed
| Out_Alert_Fatal__Illegal_parameter____ConnectionClosed
| Out_ServerHello___Certificate___ServerHelloDone
| Out_Alert_Fatal__Unexpected_message____ConnectionClosed
| Out_ApplicationDataApplicationDataApplicationDataApplicationDataApplicationDataApplicationData___ConnectionClosed
| Out_Empty
| Out_Alert_Fatal__Handshake_failure____ConnectionClosed
| Out_ChangeCipherSpec___Finished
deriving (Show, Eq, Ord, Enum, Bounded)
{- Transitions (state input -> next state / output):
0 In_ApplicationData -> 1 / Out_ConnectionClosed
In_ApplicationDataEmpty -> 1 / Out_Alert_Fatal__Illegal_parameter____ConnectionClosed
In_ChangeCipherSpec -> 1 / Out_ConnectionClosed
In_ClientHelloRSA -> 2 / Out_ServerHello___Certificate___ServerHelloDone
In_ClientKeyExchange -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_EmptyCertificate -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_Finished -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_HeartbeatRequest -> 1 / Out_ConnectionClosed
1 In_ApplicationData -> 1 / Out_ConnectionClosed
In_ApplicationDataEmpty -> 1 / Out_ConnectionClosed
In_ChangeCipherSpec -> 1 / Out_ConnectionClosed
In_ClientHelloRSA -> 1 / Out_ConnectionClosed
In_ClientKeyExchange -> 1 / Out_ConnectionClosed
In_EmptyCertificate -> 1 / Out_ConnectionClosed
In_Finished -> 1 / Out_ConnectionClosed
In_HeartbeatRequest -> 1 / Out_ConnectionClosed
2 In_ApplicationData -> 1 / Out_ConnectionClosed
In_ApplicationDataEmpty -> 1 / Out_Alert_Fatal__Illegal_parameter____ConnectionClosed
In_ChangeCipherSpec -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_ClientHelloRSA -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_ClientKeyExchange -> 4 / Out_Empty
In_EmptyCertificate -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_Finished -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_HeartbeatRequest -> 1 / Out_ConnectionClosed
3 In_ApplicationData -> 1 / Out_ApplicationDataApplicationDataApplicationDataApplicationDataApplicationDataApplicationData___ConnectionClosed
In_ApplicationDataEmpty -> 3 / Out_Empty
In_ChangeCipherSpec -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_ClientHelloRSA -> 1 / Out_Alert_Fatal__Handshake_failure____ConnectionClosed
In_ClientKeyExchange -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_EmptyCertificate -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_Finished -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_HeartbeatRequest -> 1 / Out_ConnectionClosed
4 In_ApplicationData -> 1 / Out_ConnectionClosed
In_ApplicationDataEmpty -> 1 / Out_Alert_Fatal__Illegal_parameter____ConnectionClosed
In_ChangeCipherSpec -> 5 / Out_Empty
In_ClientHelloRSA -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_ClientKeyExchange -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_EmptyCertificate -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_Finished -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_HeartbeatRequest -> 1 / Out_ConnectionClosed
5 In_ApplicationData -> 1 / Out_ConnectionClosed
In_ApplicationDataEmpty -> 1 / Out_ConnectionClosed
In_ChangeCipherSpec -> 1 / Out_ConnectionClosed
In_ClientHelloRSA -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_ClientKeyExchange -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_EmptyCertificate -> 1 / Out_Alert_Fatal__Unexpected_message____ConnectionClosed
In_Finished -> 3 / Out_ChangeCipherSpec___Finished
In_HeartbeatRequest -> 1 / Out_ConnectionClosed
-}
miTLSV0V1V3ServerRegular :: MealyAutomaton Int MiTLSV0V1V3ServerRegularInput MiTLSV0V1V3ServerRegularOutput
miTLSV0V1V3ServerRegular =
case mkMealyAutomatonTable 6 0 deltaTable lambdaTable of
Right m -> m
Left err -> error ("haal-gen: invalid transition table: " ++ err)
where
deltaTable =
"\1\1\1\2\1\1\1\1\
\\1\1\1\1\1\1\1\1\
\\1\1\1\1\4\1\1\1\
\\1\3\1\1\1\1\1\1\
\\1\1\5\1\1\1\1\1\
\\1\1\1\1\1\1\3\1"
lambdaTable =
"\0\1\0\2\3\3\3\0\
\\0\0\0\0\0\0\0\0\
\\0\1\3\3\5\3\3\0\
\\4\5\3\6\3\3\3\0\
\\0\1\5\3\3\3\3\0\
\\0\0\0\3\3\3\7\0"