irc-dcc-2.0.1: A DCC message parsing and helper library for IRC clients

Safe HaskellNone
LanguageHaskell2010

Network.IRC.DCC.Internal

Synopsis

Documentation

data DccChat #

Offer DCC chat session

Constructors

Chat !IPv4 !PortNumber

Text messages exchange

DCC CHAT chat <ip> <port>
ChatWhiteboard !IPv4 !PortNumber

Drawing commands exchange

DCC CHAT wboard <ip> <port>

data DccClose #

Signal intent to close DCC chat connection

Constructors

Close
DCC CLOSE

data DccSend #

Offer DCC file transfer

Constructors

Send !Path !IPv4 !PortNumber !(Maybe FileOffset)

As part of the standard DCC protocol, sent by the server

DCC SEND <path> <ip> <port> (<fileSize>)
SendReverseServer !Path !IPv4 !FileOffset !Token

As part of the Reverse DCC protocol, sent by the server

DCC SEND <path> <ip> 0 <fileSize> <token>

data DccResume #

Signal intent to resume DCC file transfer at specific position

Constructors

Resume !Path !PortNumber !FileOffset

As part of the standard DCC protocol, sent by the client

DCC RESUME <path> <port> <position>
ResumeReverse !Path !FileOffset !Token

As part of the Reverse DCC protocol, sent by the client

DCC RESUME <path> 0 <position> <token>

data DccAccept #

Signal acceptance to resume DCC file transfer at specific position

Constructors

Accept !Path !PortNumber !FileOffset

As part of the standard DCC protocol, sent by the server

DCC ACCEPT <path> <port> <position>
AcceptReverse !Path !FileOffset !Token

As part of the Reverse DCC protocol, sent by the server

DCC ACCEPT <path> 0 <position> <token>

data DccSendReverseClient #

Tell the server to start a DCC file transfer and where it should send the data to.

Constructors

SendReverseClient !Path !IPv4 !PortNumber !FileOffset !Token

As part of the Reverse DCC protocol, sent by the client

DCC SEND <path> <ip> <port> <fileSize> <token>

data PathType #

Constructors

Simple

A file path without spaces

Quoted

A file path that can include spaces and will be quoted when serialized

data Path #

Instances

Eq Path # 

Methods

(==) :: Path -> Path -> Bool #

(/=) :: Path -> Path -> Bool #

Show Path # 

Methods

showsPrec :: Int -> Path -> ShowS #

show :: Path -> String #

showList :: [Path] -> ShowS #

newtype FileOffset #

Constructors

FileOffset 

Fields

Instances

Bounded FileOffset # 
Enum FileOffset # 
Eq FileOffset # 
Integral FileOffset # 
Num FileOffset # 
Ord FileOffset # 
Real FileOffset # 
Show FileOffset # 

newtype Token #

An identifier for knowing which negotiation a request belongs to

Constructors

Token ByteString 

Instances

Eq Token # 

Methods

(==) :: Token -> Token -> Bool #

(/=) :: Token -> Token -> Bool #

Show Token # 

Methods

showsPrec :: Int -> Token -> ShowS #

show :: Token -> String #

showList :: [Token] -> ShowS #

spaced :: Parser a -> Parser a #