diff --git a/Network/TLS.hs b/Network/TLS.hs
--- a/Network/TLS.hs
+++ b/Network/TLS.hs
@@ -42,6 +42,8 @@
     -- * Context object
     , Context
     , ctxConnection
+    , TLSParams
+    , HasBackend
 
     -- * Creating a context
     , contextNew
@@ -107,7 +109,7 @@
     , exceptionValidationCache
     ) where
 
-import Network.TLS.Backend (Backend(..))
+import Network.TLS.Backend (Backend(..), HasBackend)
 import Network.TLS.Struct ( TLSError(..), TLSException(..)
                           , HashAndSignatureAlgorithm, HashAlgorithm(..), SignatureAlgorithm(..)
                           , Header(..), ProtocolType(..), CertificateType(..)
diff --git a/Network/TLS/Receiving.hs b/Network/TLS/Receiving.hs
--- a/Network/TLS/Receiving.hs
+++ b/Network/TLS/Receiving.hs
@@ -8,6 +8,8 @@
 -- the Receiving module contains calls related to unmarshalling packets according
 -- to the TLS state
 --
+{-# LANGUAGE FlexibleContexts #-}
+
 module Network.TLS.Receiving
     ( processPacket
     ) where
diff --git a/Network/TLS/Record/Disengage.hs b/Network/TLS/Record/Disengage.hs
--- a/Network/TLS/Record/Disengage.hs
+++ b/Network/TLS/Record/Disengage.hs
@@ -8,6 +8,8 @@
 -- Disengage a record from the Record layer.
 -- The record is decrypted, checked for integrity and then decompressed.
 --
+{-# LANGUAGE FlexibleContexts #-}
+
 module Network.TLS.Record.Disengage
         ( disengageRecord
         ) where
diff --git a/tls.cabal b/tls.cabal
--- a/tls.cabal
+++ b/tls.cabal
@@ -1,5 +1,5 @@
 Name:                tls
-Version:             1.2.8
+Version:             1.2.9
 Description:
    Native Haskell TLS and SSL protocol implementation for server and client.
    .
