From 18395df2e1007d872cf63d895fe6343e7e4dd473 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 6 Mar 2018 15:14:53 -0400 Subject: refactor --- Command/EnableTor.hs | 1 + P2P/Annex.hs | 20 +------------------- RemoteDaemon/Transport/Tor.hs | 19 ++++++++++++++++++- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/Command/EnableTor.hs b/Command/EnableTor.hs index b73d00277..6ddf3e136 100644 --- a/Command/EnableTor.hs +++ b/Command/EnableTor.hs @@ -21,6 +21,7 @@ import Config.Files import P2P.IO import qualified P2P.Protocol as P2P import Utility.ThreadScheduler +import RemoteDaemon.Transport.Tor import Control.Concurrent.Async import qualified Network.Socket as S diff --git a/P2P/Annex.hs b/P2P/Annex.hs index 82f669eaf..9971762f5 100644 --- a/P2P/Annex.hs +++ b/P2P/Annex.hs @@ -5,32 +5,25 @@ - Licensed under the GNU GPL version 3 or higher. -} -{-# LANGUAGE RankNTypes, FlexibleContexts, CPP #-} +{-# LANGUAGE RankNTypes, FlexibleContexts #-} module P2P.Annex ( RunMode(..) , P2PConnection(..) , runFullProto - , torSocketFile ) where import Annex.Common import Annex.Content import Annex.Transfer import Annex.ChangedRefs -import P2P.Address import P2P.Protocol import P2P.IO import Logs.Location import Types.NumCopies import Utility.Metered -import Utility.Tor -import Annex.UUID import Control.Monad.Free -#ifndef mingw32_HOST_OS -import System.Posix.User -#endif data RunMode = Serving UUID (Maybe ChangedRefsHandle) @@ -159,14 +152,3 @@ runLocal runmode runner a = case a of liftIO $ hSeek h AbsoluteSeek o b <- liftIO $ hGetContentsMetered h p' runner (sender b) - -torSocketFile :: Annex (Maybe FilePath) -torSocketFile = do - u <- getUUID - let ident = fromUUID u -#ifndef mingw32_HOST_OS - uid <- liftIO getRealUserID -#else - let uid = 0 -#endif - liftIO $ getHiddenServiceSocketFile torAppName uid ident diff --git a/RemoteDaemon/Transport/Tor.hs b/RemoteDaemon/Transport/Tor.hs index b0fa3c189..623ff03e3 100644 --- a/RemoteDaemon/Transport/Tor.hs +++ b/RemoteDaemon/Transport/Tor.hs @@ -5,7 +5,9 @@ - Licensed under the GNU GPL version 3 or higher. -} -module RemoteDaemon.Transport.Tor (server, transport) where +{-# LANGUAGE CPP #-} + +module RemoteDaemon.Transport.Tor (server, transport, torSocketFile) where import Common import qualified Annex @@ -14,6 +16,7 @@ import Annex.ChangedRefs import RemoteDaemon.Types import RemoteDaemon.Common import Utility.AuthToken +import Utility.Tor import P2P.Protocol as P2P import P2P.IO import P2P.Annex @@ -30,6 +33,9 @@ import System.Log.Logger (debugM) import Control.Concurrent.STM import Control.Concurrent.STM.TBMQueue import Control.Concurrent.Async +#ifndef mingw32_HOST_OS +import System.Posix.User +#endif -- Run tor hidden service. server :: Server @@ -178,3 +184,14 @@ transport (RemoteRepo r gc) url@(RemoteURI uri) th ichan ochan = ok <- inLocalRepo th $ runBool [Param "fetch", Param $ Git.repoDescribe r] send (DONESYNCING url ok) + +torSocketFile :: Annex.Annex (Maybe FilePath) +torSocketFile = do + u <- getUUID + let ident = fromUUID u +#ifndef mingw32_HOST_OS + uid <- liftIO getRealUserID +#else + let uid = 0 +#endif + liftIO $ getHiddenServiceSocketFile torAppName uid ident -- cgit v1.2.3