Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Network.Diffusion.Types
Synopsis
- data DiffusionTracer ntnAddr ntcAddr
- = RunServer (NonEmpty ntnAddr)
- | RunLocalServer ntcAddr
- | UsingSystemdSocket ntcAddr
- | CreateSystemdSocketForSnocketPath ntcAddr
- | CreatedLocalSocket ntcAddr
- | ConfiguringLocalSocket ntcAddr FileDescriptor
- | ListeningLocalSocket ntcAddr FileDescriptor
- | LocalSocketUp ntcAddr FileDescriptor
- | CreatingServerSocket ntnAddr
- | ConfiguringServerSocket ntnAddr
- | ListeningServerSocket ntnAddr
- | ServerSocketUp ntnAddr
- | UnsupportedLocalSystemdSocket ntnAddr
- | UnsupportedReadySocketCase
- | DiffusionErrored SomeException
- | SystemdSocketConfiguration SystemdSocketTracer
- data Failure where
- UnsupportedReadySocket :: Failure
- UnexpectedIPv4Address :: forall ntnAddr. (Show ntnAddr, Typeable ntnAddr) => ntnAddr -> Failure
- UnexpectedIPv6Address :: forall ntnAddr. (Show ntnAddr, Typeable ntnAddr) => ntnAddr -> Failure
- NoSocket :: Failure
- DiffusionError :: SomeException -> Failure
- data Tracers ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters (m :: Type -> Type) = Tracers {
- dtMuxTracer :: Tracer m (WithBearer (ConnectionId ntnAddr) Trace)
- dtHandshakeTracer :: Tracer m (HandshakeTr ntnAddr ntnVersion)
- dtLocalMuxTracer :: Tracer m (WithBearer (ConnectionId ntcAddr) Trace)
- dtLocalHandshakeTracer :: Tracer m (HandshakeTr ntcAddr ntcVersion)
- dtDiffusionTracer :: Tracer m (DiffusionTracer ntnAddr ntcAddr)
- dtTraceLocalRootPeersTracer :: Tracer m (TraceLocalRootPeers extraFlags ntnAddr resolverError)
- dtTracePublicRootPeersTracer :: Tracer m TracePublicRootPeers
- dtTraceLedgerPeersTracer :: Tracer m TraceLedgerPeers
- dtTracePeerSelectionTracer :: Tracer m (TracePeerSelection extraDebugState extraFlags extraPeers ntnAddr)
- dtDebugPeerSelectionInitiatorTracer :: Tracer m (DebugPeerSelection extraState extraFlags extraPeers ntnAddr)
- dtDebugPeerSelectionInitiatorResponderTracer :: Tracer m (DebugPeerSelection extraState extraFlags extraPeers ntnAddr)
- dtTracePeerSelectionCounters :: Tracer m (PeerSelectionCounters extraCounters)
- dtTraceChurnCounters :: Tracer m ChurnCounters
- dtPeerSelectionActionsTracer :: Tracer m (PeerSelectionActionsTrace ntnAddr ntnVersion)
- dtConnectionManagerTracer :: Tracer m (Trace ntnAddr (ConnectionHandlerTrace ntnVersion ntnVersionData))
- dtConnectionManagerTransitionTracer :: Tracer m (AbstractTransitionTrace ConnStateId)
- dtServerTracer :: Tracer m (Trace ntnAddr)
- dtInboundGovernorTracer :: Tracer m (Trace ntnAddr)
- dtInboundGovernorTransitionTracer :: Tracer m (RemoteTransitionTrace ntnAddr)
- dtLocalConnectionManagerTracer :: Tracer m (Trace ntcAddr (ConnectionHandlerTrace ntcVersion ntcVersionData))
- dtLocalServerTracer :: Tracer m (Trace ntcAddr)
- dtLocalInboundGovernorTracer :: Tracer m (Trace ntcAddr)
- nullTracers :: forall (m :: Type -> Type) ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters. Applicative m => Tracers ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters m
- data Arguments extraState extraDebugState extraFlags extraPeers extraAPI extraChurnArgs extraCounters exception resolver resolverError (m :: Type -> Type) ntnFd ntnAddr ntcFd ntcAddr = Arguments {
- daIPv4Address :: Maybe (Either ntnFd ntnAddr)
- daIPv6Address :: Maybe (Either ntnFd ntnAddr)
- daLocalAddress :: Maybe (Either ntcFd ntcAddr)
- daAcceptedConnectionsLimit :: AcceptedConnectionsLimit
- daMode :: DiffusionMode
- daPublicPeerSelectionVar :: StrictTVar m (PublicPeerSelectionState ntnAddr)
- daPeerSelectionTargets :: PeerSelectionTargets
- daReadLocalRootPeers :: STM m (Config extraFlags RelayAccessPoint)
- daReadPublicRootPeers :: STM m (Map RelayAccessPoint PeerAdvertise)
- daReadLedgerPeerSnapshot :: STM m (Maybe LedgerPeerSnapshot)
- daOwnPeerSharing :: PeerSharing
- daReadUseLedgerPeers :: STM m UseLedgerPeers
- daProtocolIdleTimeout :: DiffTime
- daTimeWaitTimeout :: DiffTime
- daDeadlineChurnInterval :: DiffTime
- daBulkChurnInterval :: DiffTime
- daEmptyExtraState :: extraState
- daEmptyExtraCounters :: extraCounters
- daExtraPeersAPI :: PublicExtraPeersAPI extraPeers ntnAddr
- daPeerSelectionGovernorArgs :: forall (muxMode :: Mode) responderCtx ntnVersionData bytes a b. PeerSelectionGovernorArgs extraState extraDebugState extraFlags extraPeers extraAPI extraCounters ntnAddr (PeerConnectionHandle muxMode responderCtx ntnAddr ntnVersionData bytes m a b) exception m
- daPeerSelectionStateToExtraCounters :: forall (muxMode :: Mode) responderCtx ntnVersionData bytes a b. PeerSelectionState extraState extraFlags extraPeers ntnAddr (PeerConnectionHandle muxMode responderCtx ntnAddr ntnVersionData bytes m a b) -> extraCounters
- daToExtraPeers :: Map ntnAddr PeerAdvertise -> extraPeers
- daRequestPublicRootPeers :: Maybe (PeerActionsDNS ntnAddr resolver resolverError m -> DNSSemaphore m -> (Map ntnAddr PeerAdvertise -> extraPeers) -> (NumberOfPeers -> LedgerPeersKind -> m (Maybe (Set ntnAddr, DiffTime))) -> LedgerPeersKind -> Int -> m (PublicRootPeers extraPeers ntnAddr, DiffTime))
- daPeerChurnGovernor :: PeerChurnArgs m extraChurnArgs extraDebugState extraFlags extraPeers extraAPI extraCounters ntnAddr -> m Void
- daExtraChurnArgs :: extraChurnArgs
- daMuxForkPolicy :: ForkPolicy ntnAddr
- daLocalMuxForkPolicy :: ForkPolicy ntcAddr
- data Applications ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData extraAPI (m :: Type -> Type) a = Applications {
- daApplicationInitiatorMode :: Versions ntnVersion ntnVersionData (OuroborosBundleWithExpandedCtx 'InitiatorMode ntnAddr ByteString m a Void)
- daApplicationInitiatorResponderMode :: Versions ntnVersion ntnVersionData (OuroborosBundleWithExpandedCtx 'InitiatorResponderMode ntnAddr ByteString m a ())
- daLocalResponderApplication :: Versions ntcVersion ntcVersionData (OuroborosApplicationWithMinimalCtx 'ResponderMode ntcAddr ByteString m Void ())
- daLedgerPeersCtx :: LedgerPeersConsensusInterface extraAPI m
- daRethrowPolicy :: RethrowPolicy
- daReturnPolicy :: ReturnPolicy a
- daLocalRethrowPolicy :: RethrowPolicy
- daPeerMetrics :: PeerMetrics m ntnAddr
- daBlockFetchMode :: STM m FetchMode
- daPeerSharingRegistry :: PeerSharingRegistry ntnAddr m
- data Interfaces ntnFd ntnAddr ntnVersion ntnVersionData ntcFd ntcAddr ntcVersion ntcVersionData resolver resolverError extraState extraFlags extraPeers extraAPI (m :: Type -> Type) = Interfaces {
- diNtnSnocket :: Snocket m ntnFd ntnAddr
- diNtnBearer :: MakeBearer m ntnFd
- diNtnConfigureSocket :: ntnFd -> Maybe ntnAddr -> m ()
- diNtnConfigureSystemdSocket :: ntnFd -> ntnAddr -> m ()
- diNtnHandshakeArguments :: HandshakeArguments (ConnectionId ntnAddr) ntnVersion ntnVersionData m
- diNtnAddressType :: ntnAddr -> Maybe AddressType
- diNtnDataFlow :: ntnVersionData -> DataFlow
- diNtnPeerSharing :: ntnVersionData -> PeerSharing
- diNtnToPeerAddr :: IP -> PortNumber -> ntnAddr
- diNtcSnocket :: Snocket m ntcFd ntcAddr
- diNtcBearer :: MakeBearer m ntcFd
- diNtcHandshakeArguments :: HandshakeArguments (ConnectionId ntcAddr) ntcVersion ntcVersionData m
- diNtcGetFileDescriptor :: ntcFd -> m FileDescriptor
- diRng :: StdGen
- diInstallSigUSR1Handler :: forall (mode :: Mode) x y. NodeToNodeConnectionManager mode ntnFd ntnAddr ntnVersionData ntnVersion m x y -> StrictTVar m (PeerSelectionState extraState extraFlags extraPeers ntnAddr (NodeToNodePeerConnectionHandle mode ntnAddr ntnVersionData m x y)) -> PeerMetrics m ntnAddr -> m ()
- diDnsActions :: DNSLookupType -> DNSActions resolver resolverError m
- diUpdateVersionData :: ntnVersionData -> DiffusionMode -> ntnVersionData
- diConnStateIdSupply :: ConnStateIdSupply m
- data ForkPolicy peerAddr
- noBindForkPolicy :: ForkPolicy peerAddr
- responderForkPolicy :: Hashable peerAddr => Int -> Int -> ForkPolicy peerAddr
- type NodeToClientHandle ntcAddr versionData (m :: Type -> Type) = HandleWithMinimalCtx 'ResponderMode ntcAddr versionData ByteString m Void ()
- type NodeToClientHandleError ntcVersion = HandleError 'ResponderMode ntcVersion
- type NodeToClientConnectionHandler ntcFd ntcAddr ntcVersion ntcVersionData (m :: Type -> Type) = ConnectionHandler 'ResponderMode (ConnectionHandlerTrace ntcVersion ntcVersionData) ntcFd ntcAddr (NodeToClientHandle ntcAddr ntcVersionData m) (NodeToClientHandleError ntcVersion) ntcVersion ntcVersionData m
- type NodeToClientConnectionManagerArguments ntcFd ntcAddr ntcVersion ntcVersionData (m :: Type -> Type) = Arguments (ConnectionHandlerTrace ntcVersion ntcVersionData) ntcFd ntcAddr (NodeToClientHandle ntcAddr ntcVersionData m) (NodeToClientHandleError ntcVersion) ntcVersion ntcVersionData m
- type NodeToNodeHandle (mode :: Mode) ntnAddr ntnVersionData (m :: Type -> Type) a b = HandleWithExpandedCtx mode ntnAddr ntnVersionData ByteString m a b
- type NodeToNodeConnectionManager (mode :: Mode) ntnFd ntnAddr ntnVersionData ntnVersion (m :: Type -> Type) a b = ConnectionManager mode ntnFd ntnAddr (NodeToNodeHandle mode ntnAddr ntnVersionData m a b) (HandleError mode ntnVersion) m
- type NodeToNodePeerConnectionHandle (mode :: Mode) ntnAddr ntnVersionData (m :: Type -> Type) a b = PeerConnectionHandle mode (ResponderContext ntnAddr) ntnAddr ntnVersionData ByteString m a b
- type NodeToNodePeerSelectionActions extraState extraFlags extraPeers extraAPI extraCounters (mode :: Mode) ntnAddr ntnVersionData (m :: Type -> Type) a b = PeerSelectionActions extraState extraFlags extraPeers extraAPI extraCounters ntnAddr (NodeToNodePeerConnectionHandle mode ntnAddr ntnVersionData m a b) m
- type AbstractTransitionTrace peerAddr = TransitionTrace' peerAddr AbstractState
- type RemoteTransitionTrace peerAddr = TransitionTrace' peerAddr (Maybe RemoteSt)
Documentation
data DiffusionTracer ntnAddr ntcAddr Source #
The DiffusionTracer
logs
- diffusion initialisation messages
- terminal errors thrown by diffusion
Constructors
RunServer (NonEmpty ntnAddr) | |
RunLocalServer ntcAddr | |
UsingSystemdSocket ntcAddr | |
CreateSystemdSocketForSnocketPath ntcAddr | |
CreatedLocalSocket ntcAddr | |
ConfiguringLocalSocket ntcAddr FileDescriptor | |
ListeningLocalSocket ntcAddr FileDescriptor | |
LocalSocketUp ntcAddr FileDescriptor | |
CreatingServerSocket ntnAddr | |
ConfiguringServerSocket ntnAddr | |
ListeningServerSocket ntnAddr | |
ServerSocketUp ntnAddr | |
UnsupportedLocalSystemdSocket ntnAddr | |
UnsupportedReadySocketCase | |
DiffusionErrored SomeException | |
SystemdSocketConfiguration SystemdSocketTracer |
Instances
(Show ntcAddr, Show ntnAddr) => Show (DiffusionTracer ntnAddr ntcAddr) Source # | |
Defined in Ouroboros.Network.Diffusion.Types Methods showsPrec :: Int -> DiffusionTracer ntnAddr ntcAddr -> ShowS # show :: DiffusionTracer ntnAddr ntcAddr -> String # showList :: [DiffusionTracer ntnAddr ntcAddr] -> ShowS # |
Constructors
UnsupportedReadySocket :: Failure | |
UnexpectedIPv4Address :: forall ntnAddr. (Show ntnAddr, Typeable ntnAddr) => ntnAddr -> Failure | |
UnexpectedIPv6Address :: forall ntnAddr. (Show ntnAddr, Typeable ntnAddr) => ntnAddr -> Failure | |
NoSocket :: Failure | |
DiffusionError :: SomeException -> Failure |
Instances
Exception Failure Source # | |
Defined in Ouroboros.Network.Diffusion.Types Methods toException :: Failure -> SomeException # fromException :: SomeException -> Maybe Failure # displayException :: Failure -> String # backtraceDesired :: Failure -> Bool # | |
Show Failure Source # | |
data Tracers ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters (m :: Type -> Type) Source #
Common DiffusionTracers interface between P2P and NonP2P
Constructors
nullTracers :: forall (m :: Type -> Type) ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters. Applicative m => Tracers ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters m Source #
data Arguments extraState extraDebugState extraFlags extraPeers extraAPI extraChurnArgs extraCounters exception resolver resolverError (m :: Type -> Type) ntnFd ntnAddr ntcFd ntcAddr Source #
Common DiffusionArguments interface between P2P and NonP2P
Constructors
Arguments | |
Fields
|
data Applications ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData extraAPI (m :: Type -> Type) a Source #
Versioned mini-protocol bundles run on a negotiated connection.
Constructors
Applications | |
Fields
|
data Interfaces ntnFd ntnAddr ntnVersion ntnVersionData ntcFd ntcAddr ntcVersion ntcVersionData resolver resolverError extraState extraFlags extraPeers extraAPI (m :: Type -> Type) Source #
Constructors
Interfaces | |
Fields
|
ForkPolicy
data ForkPolicy peerAddr #
Extension of a ForkPolicyCb
used by `ouroboros-network-framework` outside
of this module.
noBindForkPolicy :: ForkPolicy peerAddr #
A ForkPolicy
which does not bind mini-protocol threads to a given capability.
Arguments
:: Hashable peerAddr | |
=> Int | salt |
-> Int | number of capabilities |
-> ForkPolicy peerAddr |
A ForkPolicy
which binds responders mini-protocols to lower capabilities.
NodeToClient type aliases
type NodeToClientHandle ntcAddr versionData (m :: Type -> Type) = HandleWithMinimalCtx 'ResponderMode ntcAddr versionData ByteString m Void () Source #
type NodeToClientHandleError ntcVersion = HandleError 'ResponderMode ntcVersion Source #
type NodeToClientConnectionHandler ntcFd ntcAddr ntcVersion ntcVersionData (m :: Type -> Type) = ConnectionHandler 'ResponderMode (ConnectionHandlerTrace ntcVersion ntcVersionData) ntcFd ntcAddr (NodeToClientHandle ntcAddr ntcVersionData m) (NodeToClientHandleError ntcVersion) ntcVersion ntcVersionData m Source #
type NodeToClientConnectionManagerArguments ntcFd ntcAddr ntcVersion ntcVersionData (m :: Type -> Type) = Arguments (ConnectionHandlerTrace ntcVersion ntcVersionData) ntcFd ntcAddr (NodeToClientHandle ntcAddr ntcVersionData m) (NodeToClientHandleError ntcVersion) ntcVersion ntcVersionData m Source #
NodeToNode type aliases
type NodeToNodeHandle (mode :: Mode) ntnAddr ntnVersionData (m :: Type -> Type) a b = HandleWithExpandedCtx mode ntnAddr ntnVersionData ByteString m a b Source #
type NodeToNodeConnectionManager (mode :: Mode) ntnFd ntnAddr ntnVersionData ntnVersion (m :: Type -> Type) a b = ConnectionManager mode ntnFd ntnAddr (NodeToNodeHandle mode ntnAddr ntnVersionData m a b) (HandleError mode ntnVersion) m Source #
type NodeToNodePeerConnectionHandle (mode :: Mode) ntnAddr ntnVersionData (m :: Type -> Type) a b = PeerConnectionHandle mode (ResponderContext ntnAddr) ntnAddr ntnVersionData ByteString m a b Source #
type NodeToNodePeerSelectionActions extraState extraFlags extraPeers extraAPI extraCounters (mode :: Mode) ntnAddr ntnVersionData (m :: Type -> Type) a b = PeerSelectionActions extraState extraFlags extraPeers extraAPI extraCounters ntnAddr (NodeToNodePeerConnectionHandle mode ntnAddr ntnVersionData m a b) m Source #
Re-exports
type AbstractTransitionTrace peerAddr = TransitionTrace' peerAddr AbstractState #
type RemoteTransitionTrace peerAddr = TransitionTrace' peerAddr (Maybe RemoteSt) #