2011-08-12 17:41:49 +00:00
|
|
|
-- |
|
|
|
|
-- Module : Network.TLS.Record
|
|
|
|
-- License : BSD-style
|
|
|
|
-- Maintainer : Vincent Hanquez <vincent@snarc.org>
|
|
|
|
-- Stability : experimental
|
|
|
|
-- Portability : unknown
|
|
|
|
--
|
|
|
|
-- The Record Protocol takes messages to be transmitted, fragments the
|
|
|
|
-- data into manageable blocks, optionally compresses the data, applies
|
|
|
|
-- a MAC, encrypts, and transmits the result. Received data is
|
|
|
|
-- decrypted, verified, decompressed, reassembled, and then delivered to
|
|
|
|
-- higher-level clients.
|
|
|
|
--
|
|
|
|
module Network.TLS.Record
|
2011-11-30 21:51:22 +00:00
|
|
|
( Record(..)
|
2011-08-12 17:41:49 +00:00
|
|
|
, Fragment
|
2011-11-30 21:51:22 +00:00
|
|
|
, fragmentGetBytes
|
2011-08-12 17:41:49 +00:00
|
|
|
, fragmentPlaintext
|
|
|
|
, fragmentCiphertext
|
2011-11-30 21:51:22 +00:00
|
|
|
, recordToRaw
|
|
|
|
, rawToRecord
|
|
|
|
, recordToHeader
|
2011-08-12 17:41:49 +00:00
|
|
|
, Plaintext
|
|
|
|
, Compressed
|
|
|
|
, Ciphertext
|
2011-11-30 21:51:22 +00:00
|
|
|
, engageRecord
|
|
|
|
, disengageRecord
|
2011-08-12 17:41:49 +00:00
|
|
|
) where
|
|
|
|
|
2011-11-30 21:51:22 +00:00
|
|
|
import Network.TLS.Record.Types
|
|
|
|
import Network.TLS.Record.Engage
|
|
|
|
import Network.TLS.Record.Disengage
|