ech-config
Safe HaskellNone
LanguageHaskell2010

Network.TLS.ECH.Config

Description

Types for Configuration of Encrypted Client Hello.

Synopsis

Types

data ECHConfig Source #

Type for configuration of encrypted client hello.

Constructors

ECHConfig 

Instances

Instances details
Show ECHConfig Source # 
Instance details

Defined in Network.TLS.ECH.Config

Methods

showsPrec :: Int -> ECHConfig -> ShowS

show :: ECHConfig -> String

showList :: [ECHConfig] -> ShowS

Eq ECHConfig Source # 
Instance details

Defined in Network.TLS.ECH.Config

Methods

(==) :: ECHConfig -> ECHConfig -> Bool

(/=) :: ECHConfig -> ECHConfig -> Bool

Ord ECHConfig Source # 
Instance details

Defined in Network.TLS.ECH.Config

Methods

compare :: ECHConfig -> ECHConfig -> Ordering

(<) :: ECHConfig -> ECHConfig -> Bool

(<=) :: ECHConfig -> ECHConfig -> Bool

(>) :: ECHConfig -> ECHConfig -> Bool

(>=) :: ECHConfig -> ECHConfig -> Bool

max :: ECHConfig -> ECHConfig -> ECHConfig

min :: ECHConfig -> ECHConfig -> ECHConfig

data HpkeKeyConfig Source #

Key configuration.

Instances

Instances details
Show HpkeKeyConfig Source # 
Instance details

Defined in Network.TLS.ECH.Config

Methods

showsPrec :: Int -> HpkeKeyConfig -> ShowS

show :: HpkeKeyConfig -> String

showList :: [HpkeKeyConfig] -> ShowS

Eq HpkeKeyConfig Source # 
Instance details

Defined in Network.TLS.ECH.Config

Ord HpkeKeyConfig Source # 
Instance details

Defined in Network.TLS.ECH.Config

type ConfigId = Word8 Source #

Configuration identifier.

type ECHConfigExtensionType = Word16 Source #

Extension type.

ECH configuration list

decodeECHConfigList :: ByteString -> Maybe [ECHConfig] Source #

Decoder for ECHConfigList.

encodeECHConfigList :: [ECHConfig] -> ByteString Source #

Encoder for ECHConfigList.

loadECHConfigList :: FilePath -> IO [ECHConfig] Source #

Loading the wire format of ECHConfigList and decode it into ECHConfigList.

loadECHSecretKeys :: [FilePath] -> IO [(ConfigId, ByteString)] Source #

Loading secret keys stored in files whose names are "<num>.key".

loadECHSecretKeys ["0.key", "1.key"]

ECH configuration

decodeECHConfig :: ByteString -> Maybe ECHConfig Source #

Decoder for ECHConfig.

encodeECHConfig :: ECHConfig -> ByteString Source #

Encoder for ECHConfig.

Low level

getECHConfigList :: ReadBuffer -> IO [ECHConfig] Source #

putECHConfigList :: WriteBuffer -> [ECHConfig] -> IO () Source #

getECHConfig :: ReadBuffer -> IO ECHConfig Source #

putECHConfig :: WriteBuffer -> ECHConfig -> IO () Source #