diff --git a/examples/EchoClient.hs b/examples/EchoClient.hs index 0b1c14d..d60ebba 100644 --- a/examples/EchoClient.hs +++ b/examples/EchoClient.hs @@ -48,7 +48,7 @@ main = do return () return () --- Pull message stanzas, verify that they originate from a `full' Xmpp +-- Pull message stanzas, verify that they originate from a `full' XMPP -- address, and, if so, `echo' the message back. echo :: Xmpp () echo = forever $ do diff --git a/source/Network/Xmpp.hs b/source/Network/Xmpp.hs index d3924ac..8b55f2d 100644 --- a/source/Network/Xmpp.hs +++ b/source/Network/Xmpp.hs @@ -189,7 +189,7 @@ connect address hostname = do XmppStreamError StreamInvalidNamespace Nothing Nothing toError (StreamInvalidStreamPrefix _prefix) = XmppStreamError StreamBadNamespacePrefix Nothing Nothing - -- TO: Catch remaining xmppStartStream errors. + -- TODO: Catch remaining xmppStartStream errors. toError (StreamWrongVersion _ver) = XmppStreamError StreamUnsupportedVersion Nothing Nothing toError (StreamWrongLangTag _) = diff --git a/source/Network/Xmpp/Concurrent/Threads.hs b/source/Network/Xmpp/Concurrent/Threads.hs index aa1a47a..e67d3d2 100644 --- a/source/Network/Xmpp/Concurrent/Threads.hs +++ b/source/Network/Xmpp/Concurrent/Threads.hs @@ -199,7 +199,7 @@ startThreads = do { connectionClosedHandler = \_ -> return () } --- | Creates and initializes a new Xmpp session. +-- | Creates and initializes a new concurrent session. newSession :: IO Session newSession = do (mC, pC, sC, hand, outC, stopThreads', writeR, conS, rdr, eh) <- startThreads diff --git a/source/Network/Xmpp/Concurrent/Types.hs b/source/Network/Xmpp/Concurrent/Types.hs index 6772df1..b9acb65 100644 --- a/source/Network/Xmpp/Concurrent/Types.hs +++ b/source/Network/Xmpp/Concurrent/Types.hs @@ -18,7 +18,7 @@ import Network.Xmpp.Types -- Map between the IQ request type and the "query" namespace pair, and the TChan -- for the IQ request and "sent" boolean pair. -type IQHandlers = (Map.Map (IQRequestType, Text) (TChan IQRequestTicket) +type IQHandlers = ( Map.Map (IQRequestType, Text) (TChan IQRequestTicket) , Map.Map StanzaId (TMVar IQResponse) ) @@ -65,7 +65,9 @@ instance Show Interrupt where show _ = "" instance Ex.Exception Interrupt +-- | Contains whether or not a reply has been sent, and the IQ request body to +-- reply to. data IQRequestTicket = IQRequestTicket - { sentRef :: (TVar Bool) - , iqRequestBody :: IQRequest - } + { sentRef :: (TVar Bool) + , iqRequestBody :: IQRequest + } \ No newline at end of file diff --git a/source/Network/Xmpp/Sasl/StringPrep.hs b/source/Network/Xmpp/Sasl/StringPrep.hs index 0f20298..07442aa 100644 --- a/source/Network/Xmpp/Sasl/StringPrep.hs +++ b/source/Network/Xmpp/Sasl/StringPrep.hs @@ -5,44 +5,24 @@ import Text.StringPrep import qualified Data.Set as Set import Data.Text(singleton) -nonAsciiSpaces = Set.fromList [ '\x00A0','\x1680','\x2000','\x2001','\x2002' - , '\x2003', '\x2004','\x2005','\x2006','\x2007' - , '\x2008','\x2009', '\x200A','\x200B' ,'\x202F' - , '\x205F','\x3000'] +nonAsciiSpaces = Set.fromList [ '\x00A0', '\x1680', '\x2000', '\x2001', '\x2002' + , '\x2003', '\x2004', '\x2005', '\x2006', '\x2007' + , '\x2008', '\x2009', '\x200A', '\x200B', '\x202F' + , '\x205F', '\x3000' + ] toSpace x = if x `Set.member` nonAsciiSpaces then " " else singleton x saslPrepQuery = Profile [b1, toSpace] True - [ c12 - , c21 - , c22 - , c3 - , c4 - , c5 - , c6 - , c7 - , c8 - , c9 - ] + [c12, c21, c22, c3, c4, c5, c6, c7, c8, c9] True saslPrepStore = Profile [b1, toSpace] True - [ a1 - , c12 - , c21 - , c22 - , c3 - , c4 - , c5 - , c6 - , c7 - , c8 - , c9 - ] + [a1, c12, c21, c22, c3, c4, c5, c6, c7, c8, c9] True normalizePassword = runStringPrep saslPrepStore