dns
Safe HaskellNone
LanguageHaskell2010

Network.DNS.Types

Description

Data types for DNS Query and Response. For more information, see http://www.ietf.org/rfc/rfc1035.

Synopsis

Resource Records

data ResourceRecord #

Constructors

ResourceRecord 

Fields

Instances

Instances details
Show ResourceRecord # 
Instance details

Defined in Network.DNS.Types.Internal

Eq ResourceRecord # 
Instance details

Defined in Network.DNS.Types.Internal

Types

type CLASS = Word16 #

type TTL = Word32 #

Resource Record Types

data TYPE where #

Bundled Patterns

pattern A :: TYPE 
pattern NS :: TYPE 
pattern CNAME :: TYPE 
pattern SOA :: TYPE 
pattern NULL :: TYPE 
pattern PTR :: TYPE 
pattern MX :: TYPE 
pattern TXT :: TYPE 
pattern AAAA :: TYPE 
pattern SRV :: TYPE 
pattern DNAME :: TYPE 
pattern OPT :: TYPE 
pattern DS :: TYPE 
pattern RRSIG :: TYPE 
pattern NSEC :: TYPE 
pattern DNSKEY :: TYPE 
pattern NSEC3 :: TYPE 
pattern NSEC3PARAM :: TYPE 
pattern TLSA :: TYPE 
pattern CDS :: TYPE 
pattern CDNSKEY :: TYPE 
pattern CSYNC :: TYPE 
pattern AXFR :: TYPE 
pattern ANY :: TYPE 
pattern CAA :: TYPE 

Instances

Instances details
Show TYPE # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

showsPrec :: Int -> TYPE -> ShowS #

show :: TYPE -> String #

showList :: [TYPE] -> ShowS #

Eq TYPE # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

Ord TYPE # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

compare :: TYPE -> TYPE -> Ordering #

(<) :: TYPE -> TYPE -> Bool #

(<=) :: TYPE -> TYPE -> Bool #

(>) :: TYPE -> TYPE -> Bool #

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

max :: TYPE -> TYPE -> TYPE #

min :: TYPE -> TYPE -> TYPE #

Resource Data

DNS Message

Query

Query Controls

Flag and OData control operations

data FlagOp #

Instances

Instances details
Monoid FlagOp # 
Instance details

Defined in Network.DNS.Types.Internal

Semigroup FlagOp # 
Instance details

Defined in Network.DNS.Types.Internal

Show FlagOp # 
Instance details

Defined in Network.DNS.Types.Internal

Eq FlagOp # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

data ODataOp #

Constructors

ODataAdd [OData] 
ODataSet [OData] 

Instances

Instances details
Monoid ODataOp # 
Instance details

Defined in Network.DNS.Types.Internal

Semigroup ODataOp # 
Instance details

Defined in Network.DNS.Types.Internal

Eq ODataOp # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

Response

DNS Header

data DNSHeader #

Constructors

DNSHeader 

Instances

Instances details
Show DNSHeader # 
Instance details

Defined in Network.DNS.Types.Internal

Eq DNSHeader # 
Instance details

Defined in Network.DNS.Types.Internal

DNS flags

data DNSFlags #

Constructors

DNSFlags 

Instances

Instances details
Show DNSFlags # 
Instance details

Defined in Network.DNS.Types.Internal

Eq DNSFlags # 
Instance details

Defined in Network.DNS.Types.Internal

data QorR #

Constructors

QR_Query 
QR_Response 

Instances

Instances details
Bounded QorR # 
Instance details

Defined in Network.DNS.Types.Internal

Enum QorR # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

succ :: QorR -> QorR #

pred :: QorR -> QorR #

toEnum :: Int -> QorR #

fromEnum :: QorR -> Int #

enumFrom :: QorR -> [QorR] #

enumFromThen :: QorR -> QorR -> [QorR] #

enumFromTo :: QorR -> QorR -> [QorR] #

enumFromThenTo :: QorR -> QorR -> QorR -> [QorR] #

Show QorR # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

showsPrec :: Int -> QorR -> ShowS #

show :: QorR -> String #

showList :: [QorR] -> ShowS #

Eq QorR # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

OPCODE and RCODE

data OPCODE #

Instances

Instances details
Bounded OPCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Enum OPCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Show OPCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Eq OPCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

data RCODE where #

Bundled Patterns

pattern NoErr :: RCODE 
pattern FormatErr :: RCODE 
pattern ServFail :: RCODE 
pattern NameErr :: RCODE 
pattern NotImpl :: RCODE 
pattern Refused :: RCODE 
pattern YXDomain :: RCODE 
pattern YXRRSet :: RCODE 
pattern NXRRSet :: RCODE 
pattern NotAuth :: RCODE 
pattern NotZone :: RCODE 
pattern BadVers :: RCODE 
pattern BadKey :: RCODE 
pattern BadTime :: RCODE 
pattern BadMode :: RCODE 
pattern BadName :: RCODE 
pattern BadAlg :: RCODE 
pattern BadTrunc :: RCODE 
pattern BadCookie :: RCODE 
pattern BadRCODE :: RCODE 

Instances

Instances details
Enum RCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Show RCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

showsPrec :: Int -> RCODE -> ShowS #

show :: RCODE -> String #

showList :: [RCODE] -> ShowS #

Eq RCODE # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

EDNS Pseudo-Header

data EDNSheader #

Instances

Instances details
Show EDNSheader # 
Instance details

Defined in Network.DNS.Types.Internal

Eq EDNSheader # 
Instance details

Defined in Network.DNS.Types.Internal

ifEDNS :: EDNSheader -> a -> a -> a #

mapEDNS :: EDNSheader -> (EDNS -> a) -> a -> a #

EDNS record

data EDNS #

Constructors

EDNS 

Instances

Instances details
Show EDNS # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

showsPrec :: Int -> EDNS -> ShowS #

show :: EDNS -> String #

showList :: [EDNS] -> ShowS #

Eq EDNS # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

EDNS options

data OData #

Instances

Instances details
Show OData # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

showsPrec :: Int -> OData -> ShowS #

show :: OData -> String #

showList :: [OData] -> ShowS #

Eq OData # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

Ord OData # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

compare :: OData -> OData -> Ordering #

(<) :: OData -> OData -> Bool #

(<=) :: OData -> OData -> Bool #

(>) :: OData -> OData -> Bool #

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

max :: OData -> OData -> OData #

min :: OData -> OData -> OData #

data OptCode where #

Bundled Patterns

pattern ClientSubnet :: OptCode 
pattern DAU :: OptCode 
pattern DHU :: OptCode 
pattern N3U :: OptCode 
pattern NSID :: OptCode 

Instances

Instances details
Show OptCode # 
Instance details

Defined in Network.DNS.Types.Internal

Eq OptCode # 
Instance details

Defined in Network.DNS.Types.Internal

Methods

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

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

Ord OptCode # 
Instance details

Defined in Network.DNS.Types.Internal

DNS Body

data Question #

Constructors

Question 

Fields

Instances

Instances details
Show Question # 
Instance details

Defined in Network.DNS.Types.Internal

Eq Question # 
Instance details

Defined in Network.DNS.Types.Internal

DNS Error

Other types