X-Git-Url: https://git.rkrishnan.org/?a=blobdiff_plain;f=src%2FFuncTorrent%2FNetwork.hs;h=99243f64ecb67099291d68bbb60fe1b46302853c;hb=08f3238a8162039a1b77f4fb8825a56a34203c02;hp=1a569a5737038bfa9437f711d61d51f90de8e290;hpb=cfd13b8f2f31f0273331c8209d410748cfb39dc8;p=functorrent.git diff --git a/src/FuncTorrent/Network.hs b/src/FuncTorrent/Network.hs index 1a569a5..99243f6 100644 --- a/src/FuncTorrent/Network.hs +++ b/src/FuncTorrent/Network.hs @@ -1,8 +1,27 @@ +{- + - Copyright (C) 2015-2016 Ramakrishnan Muthukrishnan + - + - This file is part of FuncTorrent. + - + - FuncTorrent is free software; you can redistribute it and/or modify + - it under the terms of the GNU General Public License as published by + - the Free Software Foundation; either version 3 of the License, or + - (at your option) any later version. + - + - FuncTorrent is distributed in the hope that it will be useful, + - but WITHOUT ANY WARRANTY; without even the implied warranty of + - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + - GNU General Public License for more details. + - + - You should have received a copy of the GNU General Public License + - along with FuncTorrent; if not, see + -} + {-# LANGUAGE OverloadedStrings #-} + module FuncTorrent.Network - ( - httpget, - mkParams + (sendGetRequest + , mkParams ) where import Prelude hiding (concat) @@ -17,9 +36,10 @@ import Network.URI (parseURI) mkParams :: [(String, ByteString)] -> ByteString mkParams params = BC.intercalate "&" [concat [pack f, "=", s] | (f,s) <- params] -httpget :: String -> [(String, ByteString)] -> IO ByteString -httpget url args = simpleHTTP (defaultGETRequest_ url') >>= getResponseBody - where url' = case parseURI $ unpack $ concat [pack url, "?", qstr] of +sendGetRequest :: String -> [(String, ByteString)] -> IO ByteString +sendGetRequest url args = simpleHTTP (defaultGETRequest_ url') >>= getResponseBody + where url' = case parseURI url'' of Just x -> x - _ -> error "Bad tracker URL" + _ -> error $ "Bad tracker URL: " ++ show url'' qstr = mkParams args + url'' = unpack $ concat [pack url, "?", qstr]