diff --git a/network-attoparsec.cabal b/network-attoparsec.cabal
--- a/network-attoparsec.cabal
+++ b/network-attoparsec.cabal
@@ -1,6 +1,6 @@
 name: network-attoparsec
 category: Network, Parsing
-version: 0.10.1
+version: 0.11.0
 license: MIT
 license-file: LICENSE
 copyright: (c) 2015 Leon Mergen
@@ -32,6 +32,7 @@
 
                      , mtl
                      , network
+                     , network-simple
                      , attoparsec
                      , bytestring
 
diff --git a/src/Network/Attoparsec.hs b/src/Network/Attoparsec.hs
--- a/src/Network/Attoparsec.hs
+++ b/src/Network/Attoparsec.hs
@@ -22,6 +22,7 @@
 import qualified Data.ByteString            as BS
 import qualified Network.Socket             as NS
 import qualified Network.Socket.ByteString  as NSB
+import qualified Network.Simple.TCP         as Network
 import qualified Data.Attoparsec.ByteString as Atto
 
 -- | The parsing continuation form of a "Data.Attoparsec" parser. This is
@@ -127,11 +128,9 @@
                  , MonadMask m)
               => NS.Socket
               -> m BS.ByteString
-readAvailable s =
-  let doRead  = NSB.recv s 4096
-      tryRead = tryAny doRead
-
-  in do
-    conn <- liftIO $ NS.isConnected s
-    res <- liftIO tryRead
-    either throwM return res
+readAvailable s = do
+  buf <- liftIO $ Network.recv s 4096
+  liftIO $ putStrLn ("received buffer: " ++ show buf)
+  case buf of
+   Just d  -> return d
+   Nothing -> return BS.empty
