summaryrefslogtreecommitdiff
path: root/dht/Presence
diff options
context:
space:
mode:
authorJames Crayne <jim.crayne@gmail.com>2019-10-16 07:58:55 +0000
committerJoe Crayne <joe@jerkface.net>2020-01-01 19:40:59 -0500
commit6894ac341a4e5691c72346bde9a26457d4e70460 (patch)
tree7ee2bf4b55b053bdbadfe65ad419e5f3199b4a76 /dht/Presence
parentc4dcf8374e218e741f4c3120d889c420d8ca2edb (diff)
Successful builds against newer network package
Built against both network-3.0.1.0 and network-3.1.0.0 Note, due to upstream issue, getting network-bsd-2.8.1.0 to cooperate with network-3.0.1.0 requires a little finessing. The network-bsd package expects a header(HsNetConfig.h) that network fails to provide. A simple work around is to copy the header after running a newer version of the network configure script from github. Similar for network-3.1.0.0, but this time the header is HsNetworkConfig.h.
Diffstat (limited to 'dht/Presence')
-rw-r--r--dht/Presence/LocalPeerCred.hs2
-rw-r--r--dht/Presence/XMPPServer.hs2
2 files changed, 3 insertions, 1 deletions
diff --git a/dht/Presence/LocalPeerCred.hs b/dht/Presence/LocalPeerCred.hs
index f68557e8..a7344434 100644
--- a/dht/Presence/LocalPeerCred.hs
+++ b/dht/Presence/LocalPeerCred.hs
@@ -62,6 +62,7 @@ getLocalPeerCred' (unmap6mapped4 -> addr@(SockAddrUnix _)) =
62 -- see also: Network.Socket.getPeerCred 62 -- see also: Network.Socket.getPeerCred
63 return Nothing 63 return Nothing
64 64
65{- // Removed due to no call-sites
65getLocalPeerCred :: SocketLike sock => sock -> IO (Maybe UserID) 66getLocalPeerCred :: SocketLike sock => sock -> IO (Maybe UserID)
66getLocalPeerCred sock = do 67getLocalPeerCred sock = do
67 addr <- getPeerName sock 68 addr <- getPeerName sock
@@ -72,6 +73,7 @@ getLocalPeerCred sock = do
72 where sndOf3 (pid,uid,gid) = uid 73 where sndOf3 (pid,uid,gid) = uid
73 where 74 where
74 validate uid = Just uid -- TODO 75 validate uid = Just uid -- TODO
76-}
75 77
76from16 :: Word16 -> Int 78from16 :: Word16 -> Int
77from16 = fromEnum 79from16 = fromEnum
diff --git a/dht/Presence/XMPPServer.hs b/dht/Presence/XMPPServer.hs
index fe099fb8..e98b9a2e 100644
--- a/dht/Presence/XMPPServer.hs
+++ b/dht/Presence/XMPPServer.hs
@@ -1101,7 +1101,7 @@ peerKey :: SocketLike sock => Maybe SockAddr -> sock -> IO (PeerAddress,Connecti
1101peerKey bind_addr sock = do 1101peerKey bind_addr sock = do
1102 laddr <- getSocketName sock 1102 laddr <- getSocketName sock
1103 raddr <- 1103 raddr <-
1104 sIsConnected sock >>= \c -> 1104 isValidSocket sock >>= \(sock,c) ->
1105 if c then getPeerName sock -- addr is normally socketName 1105 if c then getPeerName sock -- addr is normally socketName
1106 else return laddr -- Weird hack: addr is would-be peer name 1106 else return laddr -- Weird hack: addr is would-be peer name
1107 -- Assume remote peers are listening on the same port that we do. 1107 -- Assume remote peers are listening on the same port that we do.