diff --git a/dbus.cabal b/dbus.cabal
--- a/dbus.cabal
+++ b/dbus.cabal
@@ -1,6 +1,6 @@
 cabal-version:      >=1.10
 name:               dbus
-version:            1.2.17
+version:            1.2.18
 license:            Apache-2.0
 license-file:       license.txt
 maintainer:         Andrey Sverdlichenko <blaze@ruddy.ru>
@@ -103,7 +103,7 @@
         exceptions <0.11,
         filepath <1.5,
         lens <4.20,
-        network >=3.0.1.0 && <3.2,
+        network >=3.1.2.1 && <3.2,
         parsec <3.2,
         random <1.3,
         split <0.3,
@@ -152,7 +152,7 @@
         directory <1.4,
         extra <1.8,
         filepath <1.5,
-        network >=3.0.1.0 && <3.2,
+        network >=3.1.2.1 && <3.2,
         parsec <3.2,
         process <1.7,
         QuickCheck <2.15,
diff --git a/lib/DBus/Internal/Address.hs b/lib/DBus/Internal/Address.hs
--- a/lib/DBus/Internal/Address.hs
+++ b/lib/DBus/Internal/Address.hs
@@ -148,7 +148,7 @@
 -- @DBUS_SESSION_BUS_ADDRESS@, which must be set.
 --
 -- Returns 'Nothing' if @DBUS_SYSTEM_BUS_ADDRESS@ contains an invalid address
--- or @DBUS_SYSTEM_BUS_ADDRESS@ is unset @XDG_RUNTIME_DIR@ doesn't have @/bus@.
+-- or @DBUS_SESSION_BUS_ADDRESS@ is unset @XDG_RUNTIME_DIR@ doesn't have @/bus@.
 getSessionAddress :: IO (Maybe Address)
 getSessionAddress = lookupEnv "DBUS_SESSION_BUS_ADDRESS" >>= \case
     Just addrs -> pure (parseAddresses addrs >>= listToMaybe)
diff --git a/lib/DBus/Transport.hs b/lib/DBus/Transport.hs
--- a/lib/DBus/Transport.hs
+++ b/lib/DBus/Transport.hs
@@ -261,10 +261,10 @@
         , addrSocketType = Stream
         })) (Just hostname) Nothing
 
-    openSocket [] = throwIO (transportError "openTcp: no addresses")
+    openOneSocket [] = throwIO (transportError "openTcp: no addresses")
         { transportErrorAddress = Just transportAddr
         }
-    openSocket (addr:addrs) = do
+    openOneSocket (addr:addrs) = do
         tried <- Control.Exception.try $ bracketOnError
             (socket (addrFamily addr) (addrSocketType addr) (addrProtocol addr))
             close
@@ -276,7 +276,7 @@
                 [] -> throwIO (transportError (show (err :: IOException)))
                     { transportErrorAddress = Just transportAddr
                     }
-                _ -> openSocket addrs
+                _ -> openOneSocket addrs
             Right sock -> return sock
 
     go = case getPort of
@@ -289,7 +289,7 @@
                 }
             Right family_ -> catchIOException (Just transportAddr) $ do
                 addrs <- getAddresses family_
-                sock <- openSocket (map (setPort port) addrs)
+                sock <- openOneSocket (map (setPort port) addrs)
                 return (SocketTransport (Just transportAddr) sock)
 
 listenUnix :: UUID -> Address -> TransportOptions SocketTransport -> IO (Address, Socket)
diff --git a/tests/DBusTests/Transport.hs b/tests/DBusTests/Transport.hs
--- a/tests/DBusTests/Transport.hs
+++ b/tests/DBusTests/Transport.hs
@@ -418,7 +418,7 @@
             ])
     assertThrows
         (\err -> and
-            [ "Address already in use" `isInfixOf` transportErrorMessage err
+            [ "Permission denied" `isInfixOf` transportErrorMessage err
             , transportErrorAddress err == Just addr
             ])
         (transportListen socketTransportOptions addr)
