diff --git a/Network/HTTP2/Client/Run.hs b/Network/HTTP2/Client/Run.hs
--- a/Network/HTTP2/Client/Run.hs
+++ b/Network/HTTP2/Client/Run.hs
@@ -8,19 +8,19 @@
 import Control.Concurrent.STM (check)
 import Control.Exception
 import Data.ByteString.Builder (Builder)
+import qualified Data.ByteString.UTF8 as UTF8
 import Data.IORef
 import Network.Control (RxFlow (..), defaultMaxData)
 import Network.Socket (SockAddr)
 import UnliftIO.Async
 import UnliftIO.Concurrent
 import UnliftIO.STM
-import qualified Data.ByteString.UTF8 as UTF8
 
 import Imports
+import Network.HTTP.Types (Header)
 import Network.HTTP2.Client.Types
 import Network.HTTP2.Frame
 import Network.HTTP2.H2
-import Network.HTTP.Types (Header)
 
 -- | Client configuration
 data ClientConfig = ClientConfig
@@ -225,7 +225,7 @@
 
 exchangeSettings :: Context -> IO ()
 exchangeSettings Context{..} = do
-    connRxWS <- rxfWindow <$> readIORef rxFlow
+    connRxWS <- rxfBufSize <$> readIORef rxFlow
     let frames = makeNegotiationFrames mySettings connRxWS
         setframe = CFrames Nothing (connectionPreface : frames)
     writeIORef myFirstSettings True
diff --git a/Network/HTTP2/H2/Receiver.hs b/Network/HTTP2/H2/Receiver.hs
--- a/Network/HTTP2/H2/Receiver.hs
+++ b/Network/HTTP2/H2/Receiver.hs
@@ -10,12 +10,12 @@
 import qualified Data.ByteString as BS
 import qualified Data.ByteString.Char8 as C8
 import qualified Data.ByteString.Short as Short
+import qualified Data.ByteString.UTF8 as UTF8
 import Data.IORef
 import Network.Control
 import UnliftIO.Concurrent
 import qualified UnliftIO.Exception as E
 import UnliftIO.STM
-import qualified Data.ByteString.UTF8 as UTF8
 
 import Imports hiding (delete, insert)
 import Network.HPACK
@@ -320,7 +320,7 @@
                     enqueueControl controlQ setframe
                 else do
                     -- Server side only
-                    connRxWS <- rxfWindow <$> readIORef rxFlow
+                    connRxWS <- rxfBufSize <$> readIORef rxFlow
                     let frames = makeNegotiationFrames mySettings connRxWS
                         setframe = CFrames (Just peerAlist) (frames ++ [ack])
                     writeIORef myFirstSettings True
@@ -445,7 +445,6 @@
             atomically $ writeTQueue q $ Right ""
             return HalfClosedRemote
         else -- we don't support continuation here.
-
             E.throwIO $
                 ConnectionErrorIsSent
                     ProtocolError
@@ -574,7 +573,8 @@
     -- below. (Section 8.1 of the spec is also relevant, but it is less explicit
     -- about the /either endpoint/ part.)
     case (s, err) of
-        (Open (Just _) _, NoError) ->  -- HalfClosedLocal
+        (Open (Just _) _, NoError) ->
+            -- HalfClosedLocal
             return (Closed cc)
         (HalfClosedRemote, NoError) ->
             return (Closed cc)
diff --git a/http2.cabal b/http2.cabal
--- a/http2.cabal
+++ b/http2.cabal
@@ -1,6 +1,6 @@
 cabal-version:      >=1.10
 name:               http2
-version:            5.1.3
+version:            5.1.4
 license:            BSD3
 license-file:       LICENSE
 maintainer:         Kazu Yamamoto <kazu@iij.ad.jp>
@@ -124,7 +124,7 @@
         http-types >= 0.12 && < 0.13,
         network >= 3.1,
         network-byte-order >= 0.1.7 && < 0.2,
-        network-control >= 0.0.2 && < 0.1,
+        network-control >= 0.1 && < 0.2,
         unix-time >= 0.4.11 && < 0.5,
         time-manager >= 0.0.1 && < 0.1,
         unliftio >= 0.2 && < 0.3,
