X-Git-Url: http://www.average.org/gitweb/?p=pdns-pipe-nmc.git;a=blobdiff_plain;f=pdns-pipe-nmc.hs;h=4d47e5045bcc10c70b5d8c3bfcd56d99f432a669;hp=82c320d63936a94883b7a776d24e76d66f4e695f;hb=35cea210f8d3a22afd24848441b5d34702d83239;hpb=8c8cc995d35f462dbfdb7279f7e6da9bf27b670b diff --git a/pdns-pipe-nmc.hs b/pdns-pipe-nmc.hs index 82c320d..4d47e50 100644 --- a/pdns-pipe-nmc.hs +++ b/pdns-pipe-nmc.hs @@ -2,6 +2,7 @@ module Main where +import System.IO import Control.Monad import qualified Data.ByteString.Char8 as C (pack, unpack) import qualified Data.ByteString.Lazy.Char8 as L (pack, unpack) @@ -15,7 +16,8 @@ import Network.HTTP.Conduit import JsonRpcClient import Config import PowerDns -import NmcJson +import NmcRpc +import NmcDom confFile = "/etc/namecoin.conf" @@ -55,8 +57,6 @@ qRsp rsp = -- NMC interface -descend subdom dom = dom --FIXME - queryNmc :: Manager -> Config -> String -> String -> IO (Either String NmcDom) queryNmc mgr cfg fqdn qid = do @@ -66,7 +66,7 @@ queryNmc mgr cfg fqdn qid = do httpLbs (qReq cfg (L.pack ("d/" ++ dn)) (L.pack qid)) mgr return $ case qRsp rsp of Left err -> Left err - Right dom -> Right $ descend xs dom + Right dom -> Right $ descendNmc xs dom _ -> return $ Left "Only \".bit\" domain is supported" @@ -76,6 +76,8 @@ main = do cfg <- readConfig confFile + hSetBuffering stdin LineBuffering + hSetBuffering stdout LineBuffering ver <- do let loopErr e = forever $ do