diff options
Diffstat (limited to 'ghc/misc/examples/net003/Main.hs')
-rw-r--r-- | ghc/misc/examples/net003/Main.hs | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/ghc/misc/examples/net003/Main.hs b/ghc/misc/examples/net003/Main.hs deleted file mode 100644 index 85c00e4eba..0000000000 --- a/ghc/misc/examples/net003/Main.hs +++ /dev/null @@ -1,43 +0,0 @@ -{- server - -As for net001 but gets the system to allocate the next free port -number. It also prints out the IP number of the peer. - -TESTS: - getSocketName - inet_ntoa - --} - -module Main where - -import SocketPrim - - -main = - socket AF_INET Stream 6 >>= \ s -> - bindSocket s (SockAddrInet aNY_PORT iNADDR_ANY) >> - getSocketName s >>= \ (SockAddrInet port _) -> - putStr ("Allocated Port Number: " ++ show port ++ "\n") >> - listen s 5 >> - - - let - loop = - accept s >>= \ (s',(SockAddrInet _ haddr)) -> - putStr ("*** Start of Transfer from: " ++ - (inet_ntoa haddr) ++ "***\n") >> - let - read_all = - readSocket s' 4 >>= \ (str, nbytes) -> - if nbytes /= 0 then - putStr str >> - read_all - else - putStr "\n*** End of Transfer ***\n" >> - sClose s' - in - read_all - in - loop - |