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

Safe HaskellNone
LanguageHaskell2010

Network.IRC.DCC.Internal

Synopsis

Documentation

data DccChat Source #

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 Source #

Signal intent to close DCC chat connection

Constructors

Close
DCC CLOSE

data DccSend Source #

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 Source #

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 Source #

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 Source #

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 Source #

Constructors

Simple

A file path without spaces

Quoted

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

data Path Source #

Instances

Eq Path Source # 

Methods

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

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

Show Path Source # 

Methods

showsPrec :: Int -> Path -> ShowS #

show :: Path -> String #

showList :: [Path] -> ShowS #

newtype FileOffset Source #

Constructors

FileOffset 

Fields

Instances

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

newtype Token Source #

An identifier for knowing which negotiation a request belongs to

Constructors

Token ByteString 

Instances

Eq Token Source # 

Methods

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

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

Show Token Source # 

Methods

showsPrec :: Int -> Token -> ShowS #

show :: Token -> String #

showList :: [Token] -> ShowS #