[Fencommits] fenserve: Allow localhost only for now.

Benja Fallenstein benja.fallenstein at gmail.com
Thu Mar 22 19:49:14 EET 2007


Wed Mar 21 19:13:49 EET 2007  Benja Fallenstein <benja.fallenstein at gmail.com>
  * Allow localhost only for now.
diff -rN -u old-fenserve/FenServe.hs new-fenserve/FenServe.hs
--- old-fenserve/FenServe.hs	2007-03-22 19:49:13.000000000 +0200
+++ new-fenserve/FenServe.hs	2007-03-22 19:49:13.000000000 +0200
@@ -144,9 +144,15 @@
 asURI :: SURI -> Maybe SURI
 asURI = Just
 
+localhostOnlyFilter = Handle $ \req -> do
+    if fst (rqPeer req) == "localhost" then request req else respond $ return $
+        Result { rsCode=403, rsHeaders=Headers Map.empty, rsFlags=nullRsFlags,
+                 rsBody=[toUTF "403 Forbidden: Try from localhost."] }
+
 main :: IO ()
 main = stdHTTP
-  [ debugFilter
+  [ localhostOnlyFilter
+  , debugFilter
   , h asURI GET $ ok $ \uri () -> do
       let pa = splitPath (path uri)
       (b,p) <- get; return $ Right $ fst $ runStormIO (getURI (show uri) pa b) p




More information about the Fencommits mailing list