diff options
-rw-r--r-- | Presence/FGConsole.hs | 2 | ||||
-rw-r--r-- | Presence/XMPPServer.hs | 13 | ||||
-rw-r--r-- | Presence/monitortty.c | 4 |
3 files changed, 13 insertions, 6 deletions
diff --git a/Presence/FGConsole.hs b/Presence/FGConsole.hs index 93b9a590..c72addff 100644 --- a/Presence/FGConsole.hs +++ b/Presence/FGConsole.hs | |||
@@ -37,7 +37,7 @@ monitorTTY handler = do | |||
37 | (do | 37 | (do |
38 | threadWaitRead rfd | 38 | threadWaitRead rfd |
39 | (cs,cnt) <- fdRead rfd 1 | 39 | (cs,cnt) <- fdRead rfd 1 |
40 | forM_ cs (handler . unsafeCoerce . trace "read byte") | 40 | forM_ cs (handler . unsafeCoerce {- . trace "read byte" -}) |
41 | monitor) | 41 | monitor) |
42 | `E.catch` | 42 | `E.catch` |
43 | \(e :: IOException) -> do | 43 | \(e :: IOException) -> do |
diff --git a/Presence/XMPPServer.hs b/Presence/XMPPServer.hs index 05b12b73..5008213c 100644 --- a/Presence/XMPPServer.hs +++ b/Presence/XMPPServer.hs | |||
@@ -24,11 +24,14 @@ import AdaptServer | |||
24 | import Text.XML.HaXml.Lex (xmlLex) | 24 | import Text.XML.HaXml.Lex (xmlLex) |
25 | import Text.XML.HaXml.Parse (xmlParseWith,element,{-doctypedecl,-}processinginstruction,elemOpenTag,elemCloseTag) | 25 | import Text.XML.HaXml.Parse (xmlParseWith,element,{-doctypedecl,-}processinginstruction,elemOpenTag,elemCloseTag) |
26 | import Text.XML.HaXml.Types as Hax (ElemTag,QName(..),Namespace(..),Element(..),Content(..),AttValue(..)) | 26 | import Text.XML.HaXml.Types as Hax (ElemTag,QName(..),Namespace(..),Element(..),Content(..),AttValue(..)) |
27 | import qualified Text.XML.HaXml.Pretty as PP | ||
28 | import Text.PrettyPrint | ||
27 | import Data.Maybe | 29 | import Data.Maybe |
28 | import Debug.Trace | 30 | import Debug.Trace |
29 | import Control.Arrow | 31 | import Control.Arrow |
30 | import LocalPeerCred | 32 | import LocalPeerCred |
31 | import Network.Socket | 33 | import Network.Socket |
34 | import Data.String | ||
32 | 35 | ||
33 | 36 | ||
34 | 37 | ||
@@ -135,7 +138,7 @@ iqresponse host (Elem _ attrs content) = do | |||
135 | guard (hasElem "session" content) | 138 | guard (hasElem "session" content) |
136 | Just (iqresult host id Nothing)) | 139 | Just (iqresult host id Nothing)) |
137 | 140 | ||
138 | "get" -> trace ("iq-get "++show (attrs,content)) $ do | 141 | "get" -> {- trace ("iq-get "++show (attrs,content)) $ -} do |
139 | (tag,as) <- lookup (N "xmlns") (anytagattrs content) | 142 | (tag,as) <- lookup (N "xmlns") (anytagattrs content) |
140 | xmlns <- fmap pack $ listToMaybe . astring $ as | 143 | xmlns <- fmap pack $ listToMaybe . astring $ as |
141 | let servicekind = case tag of { (N s) -> pack s ; _ -> "query" } | 144 | let servicekind = case tag of { (N s) -> pack s ; _ -> "query" } |
@@ -173,8 +176,10 @@ doCon st elem cont = do | |||
173 | host = "localhost" | 176 | host = "localhost" |
174 | hsend r = do | 177 | hsend r = do |
175 | hPutStrLn h r | 178 | hPutStrLn h r |
176 | L.putStrLn $ "SENT:\n" <++> r | 179 | L.putStrLn $ "\nOUT:\n" <++> r |
177 | 180 | ||
181 | putStrLn $ (show $ hang (text "\nIN:") 2 $ pp elem) ++ "\n" | ||
182 | |||
178 | case elem of | 183 | case elem of |
179 | OpenTag _ -> | 184 | OpenTag _ -> |
180 | hsend (greet host) | 185 | hsend (greet host) |
@@ -189,7 +194,6 @@ doCon st elem cont = do | |||
189 | 194 | ||
190 | _ -> return () -- putStrLn $ "unhandled: "++show v | 195 | _ -> return () -- putStrLn $ "unhandled: "++show v |
191 | 196 | ||
192 | putStrLn (show elem) | ||
193 | cont () | 197 | cont () |
194 | 198 | ||
195 | instance Show Hax.ElemTag where | 199 | instance Show Hax.ElemTag where |
@@ -202,6 +206,9 @@ data XmppObject e i t c | |||
202 | | CloseTag c | 206 | | CloseTag c |
203 | deriving Show | 207 | deriving Show |
204 | 208 | ||
209 | pp (Element e) = PP.element e | ||
210 | pp o = fromString (show o) | ||
211 | |||
205 | streamName = QN (Namespace {nsPrefix= "stream" , nsURI="http://etherx.jabber.org/streams" }) "stream" | 212 | streamName = QN (Namespace {nsPrefix= "stream" , nsURI="http://etherx.jabber.org/streams" }) "stream" |
206 | 213 | ||
207 | xmppParse ls = | 214 | xmppParse ls = |
diff --git a/Presence/monitortty.c b/Presence/monitortty.c index 90e23464..7b5dc82c 100644 --- a/Presence/monitortty.c +++ b/Presence/monitortty.c | |||
@@ -76,7 +76,7 @@ void vt_wait(int tty_fd) { | |||
76 | memset(&vt,'\0',sizeof(vt)); | 76 | memset(&vt,'\0',sizeof(vt)); |
77 | vt.event = VT_EVENT_SWITCH; | 77 | vt.event = VT_EVENT_SWITCH; |
78 | int res; | 78 | int res; |
79 | printf("started wait\n"); | 79 | // printf("started wait\n"); |
80 | res = ioctl (tty_fd, VT_WAITEVENT, &vt); | 80 | res = ioctl (tty_fd, VT_WAITEVENT, &vt); |
81 | if (res==-1) { | 81 | if (res==-1) { |
82 | printf("vt_wait error fd=%i\n",tty_fd); | 82 | printf("vt_wait error fd=%i\n",tty_fd); |
@@ -84,7 +84,7 @@ void vt_wait(int tty_fd) { | |||
84 | // printf("vt_wait: %u - %s\n", errno, errmsg(errno)); | 84 | // printf("vt_wait: %u - %s\n", errno, errmsg(errno)); |
85 | sleep(1); | 85 | sleep(1); |
86 | } | 86 | } |
87 | printf("finished wait\n"); | 87 | // printf("finished wait\n"); |
88 | } | 88 | } |
89 | 89 | ||
90 | int8_t get_active(int tty_fd) { | 90 | int8_t get_active(int tty_fd) { |