2011-03-02 08:43:05 +00:00
|
|
|
{-# OPTIONS_HADDOCK hide #-}
|
2010-09-09 21:47:19 +00:00
|
|
|
-- |
|
|
|
|
-- Module : Network.TLS.Compression
|
|
|
|
-- License : BSD-style
|
|
|
|
-- Maintainer : Vincent Hanquez <vincent@snarc.org>
|
|
|
|
-- Stability : experimental
|
|
|
|
-- Portability : unknown
|
|
|
|
--
|
|
|
|
module Network.TLS.Compression
|
|
|
|
( Compression(..)
|
2011-03-01 20:01:40 +00:00
|
|
|
, nullCompression
|
2010-09-09 21:47:19 +00:00
|
|
|
) where
|
|
|
|
|
|
|
|
import Data.Word
|
|
|
|
import Data.ByteString (ByteString)
|
|
|
|
|
2011-03-02 08:43:05 +00:00
|
|
|
-- | Compression algorithm
|
2010-09-09 21:47:19 +00:00
|
|
|
data Compression = Compression
|
|
|
|
{ compressionID :: Word8
|
|
|
|
, compressionFct :: (ByteString -> ByteString)
|
|
|
|
}
|
2011-03-01 20:01:40 +00:00
|
|
|
|
|
|
|
instance Show Compression where
|
|
|
|
show = show . compressionID
|
|
|
|
|
2011-03-02 08:43:05 +00:00
|
|
|
-- | default null compression
|
2011-03-01 20:01:40 +00:00
|
|
|
nullCompression :: Compression
|
|
|
|
nullCompression = Compression { compressionID = 0, compressionFct = id }
|