@@ -27,6 +27,7 @@ import Idris.CaseSplit
27import Paths_idris
27import Paths_idris
28import Util.System
28import Util.System
29import Util.DynamicLinker
29import Util.DynamicLinker
30+import Util.Net (listenOnLocalhost)
31import Core.Evaluate
32import Core.Evaluate
32import Core.Execute (execute)
33import Core.Execute (execute)
@@ -111,7 +112,7 @@ startServer orig stvar fn_in = do tid <- runIO $ forkOS serverLoop
111 where serverLoop :: IO ()
112 where serverLoop :: IO ()
112 -- TODO: option for port number
113 -- TODO: option for port number
113 serverLoop = withSocketsDo $
114 serverLoop = withSocketsDo $
114− do sock <- listenOn $ PortNumber 4294
115+ do sock <- listenOnLocalhost $ PortNumber 4294
115 i <- readMVar stvar
116 i <- readMVar stvar
116 loop fn i sock
117 loop fn i sock
@@ -121,7 +122,9 @@ startServer orig stvar fn_in = do tid <- runIO $ forkOS serverLoop
122 loop fn ist sock
123 loop fn ist sock
123 = do (h,host,_) <- accept sock
124 = do (h,host,_) <- accept sock
125+ -- just use the local part of the hostname
126+ -- for the "localhost.localdomain" case
124− if (host == "localhost" ||
127+ if ((takeWhile (/= '.') host) == "localhost" ||
125 host == "127.0.0.1")
128 host == "127.0.0.1")
127 cmd <- hGetLine h
130 cmd <- hGetLine h