Copyright | (c) 2020 Adam Flott |
---|---|
License | BSD-3-Clause |
Maintainer | adam@adamflott.com |
Stability | experimental |
Portability | POSIX |
Safe Haskell | Safe |
Language | Haskell2010 |
Data types and conversions for ICMPv6 automatically built from the specification at https://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xml
Specification date: ?
Synopsis
- data ICMPv6Type
- = ICMPv6TypeUnknown
- | ICMPv6Type0Reserved
- | ICMPv6Type1DestinationUnreachable
- | ICMPv6Type2PacketTooBig
- | ICMPv6Type3TimeExceeded
- | ICMPv6Type4ParameterProblem
- | ICMPv6Type100PrivateExperimentation
- | ICMPv6Type101PrivateExperimentation
- | ICMPv6Type127ReservedForExpansionOfIcmpv6ErrorMessages
- | ICMPv6Type128EchoRequest
- | ICMPv6Type129EchoReply
- | ICMPv6Type130MulticastListenerQuery
- | ICMPv6Type131MulticastListenerReport
- | ICMPv6Type132MulticastListenerDone
- | ICMPv6Type133RouterSolicitation
- | ICMPv6Type134RouterAdvertisement
- | ICMPv6Type135NeighborSolicitation
- | ICMPv6Type136NeighborAdvertisement
- | ICMPv6Type137RedirectMessage
- | ICMPv6Type138RouterRenumbering
- | ICMPv6Type139IcmpNodeInformationQuery
- | ICMPv6Type140IcmpNodeInformationResponse
- | ICMPv6Type141InverseNeighborDiscoverySolicitationMessage
- | ICMPv6Type142InverseNeighborDiscoveryAdvertisementMessage
- | ICMPv6Type143Version2MulticastListenerReport
- | ICMPv6Type144HomeAgentAddressDiscoveryRequestMessage
- | ICMPv6Type145HomeAgentAddressDiscoveryReplyMessage
- | ICMPv6Type146MobilePrefixSolicitation
- | ICMPv6Type147MobilePrefixAdvertisement
- | ICMPv6Type148CertificationPathSolicitationMessage
- | ICMPv6Type149CertificationPathAdvertisementMessage
- | ICMPv6Type150IcmpMessagesUtilizedByExperimentalMobilityProtocolsSuchAsSeamoby
- | ICMPv6Type151MulticastRouterAdvertisement
- | ICMPv6Type152MulticastRouterSolicitation
- | ICMPv6Type153MulticastRouterTermination
- | ICMPv6Type154Fmipv6Messages
- | ICMPv6Type155RplControlMessage
- | ICMPv6Type156Ilnpv6LocatorUpdateMessage
- | ICMPv6Type157DuplicateAddressRequest
- | ICMPv6Type158DuplicateAddressConfirmation
- | ICMPv6Type159MplControlMessage
- | ICMPv6Type160ExtendedEchoRequest
- | ICMPv6Type161ExtendedEchoReply
- | ICMPv6Type200PrivateExperimentation
- | ICMPv6Type201PrivateExperimentation
- | ICMPv6Type255ReservedForExpansionOfIcmpv6InformationalMessages
- newtype ICMPv6CodeNum = ICMPv6CodeNum Word8
- data ICMPv6Code
- = ICMPv6CodeUnknown
- | ICMPv6Type1Code0
- | ICMPv6Type1Code1
- | ICMPv6Type1Code2
- | ICMPv6Type1Code3
- | ICMPv6Type1Code4
- | ICMPv6Type1Code5
- | ICMPv6Type1Code6
- | ICMPv6Type1Code7
- | ICMPv6Type1Code8
- | ICMPv6Type2Code0
- | ICMPv6Type3Code0
- | ICMPv6Type3Code1
- | ICMPv6Type4Code0
- | ICMPv6Type4Code1
- | ICMPv6Type4Code2
- | ICMPv6Type4Code3
- | ICMPv6Type4Code4
- | ICMPv6Type4Code5
- | ICMPv6Type4Code6
- | ICMPv6Type4Code7
- | ICMPv6Type4Code8
- | ICMPv6Type4Code9
- | ICMPv6Type4Code10
- | ICMPv6Type128Code0
- | ICMPv6Type129Code0
- | ICMPv6Type130Code0
- | ICMPv6Type131Code0
- | ICMPv6Type132Code0
- | ICMPv6Type133Code0
- | ICMPv6Type134Code0
- | ICMPv6Type135Code0
- | ICMPv6Type136Code0
- | ICMPv6Type137Code0
- | ICMPv6Type138Code0
- | ICMPv6Type138Code1
- | ICMPv6Type138Code255
- | ICMPv6Type139Code0
- | ICMPv6Type139Code1
- | ICMPv6Type139Code2
- | ICMPv6Type140Code0
- | ICMPv6Type140Code1
- | ICMPv6Type140Code2
- | ICMPv6Type141Code0
- | ICMPv6Type142Code0
- | ICMPv6Type144Code0
- | ICMPv6Type145Code0
- | ICMPv6Type146Code0
- | ICMPv6Type147Code0
- | ICMPv6Type157Code0
- | ICMPv6Type157Code1
- | ICMPv6Type157Code2
- | ICMPv6Type157Code3
- | ICMPv6Type157Code4
- | ICMPv6Type158Code0
- | ICMPv6Type158Code1
- | ICMPv6Type158Code2
- | ICMPv6Type158Code3
- | ICMPv6Type158Code4
- | ICMPv6Type160Code0
- | ICMPv6Type161Code0
- | ICMPv6Type161Code1
- | ICMPv6Type161Code2
- | ICMPv6Type161Code3
- | ICMPv6Type161Code4
- icmpv6CodesForType :: ICMPv6Type -> [ICMPv6Code]
- icmpv6TypeToStringNum :: IsString a => ICMPv6Type -> a
- icmpv6TypeFromStringNum :: (Eq a, IsString a) => a -> ICMPv6Type
- icmpv6TypeToNum :: ICMPv6Type -> ICMPv6TypeNum
- isICMPv6TypeDeprecated :: ICMPv6Type -> Bool
Types
data ICMPv6Type Source #
ICMPv6 type.
Since: 1.0.0.0
Instances
Codes
data ICMPv6Code Source #
ICMPv6 code.
Since: 1.0.0.0
ICMPv6CodeUnknown | Unknown code |
ICMPv6Type1Code0 | Type 1 code 0 - no route to destination |
ICMPv6Type1Code1 | Type 1 code 1 - communication with destination administratively prohibited |
ICMPv6Type1Code2 | Type 1 code 2 - beyond scope of source address |
ICMPv6Type1Code3 | Type 1 code 3 - address unreachable |
ICMPv6Type1Code4 | Type 1 code 4 - port unreachable |
ICMPv6Type1Code5 | Type 1 code 5 - source address failed ingress/egress policy |
ICMPv6Type1Code6 | Type 1 code 6 - reject route to destination |
ICMPv6Type1Code7 | Type 1 code 7 - Error in Source Routing Header |
ICMPv6Type1Code8 | Type 1 code 8 - Headers too long |
ICMPv6Type2Code0 | Type 2 code 0 - N/A - No description in spec |
ICMPv6Type3Code0 | Type 3 code 0 - hop limit exceeded in transit |
ICMPv6Type3Code1 | Type 3 code 1 - fragment reassembly time exceeded |
ICMPv6Type4Code0 | Type 4 code 0 - erroneous header field encountered |
ICMPv6Type4Code1 | Type 4 code 1 - unrecognized Next Header type encountered |
ICMPv6Type4Code2 | Type 4 code 2 - unrecognized IPv6 option encountered |
ICMPv6Type4Code3 | Type 4 code 3 - IPv6 First Fragment has incomplete IPv6 Header Chain |
ICMPv6Type4Code4 | Type 4 code 4 - SR Upper-layer Header Error |
ICMPv6Type4Code5 | Type 4 code 5 - Unrecognized Next Header type encountered by intermediate node |
ICMPv6Type4Code6 | Type 4 code 6 - Extension header too big |
ICMPv6Type4Code7 | Type 4 code 7 - Extension header chain too long |
ICMPv6Type4Code8 | Type 4 code 8 - Too many extension headers |
ICMPv6Type4Code9 | Type 4 code 9 - Too many options in extension header |
ICMPv6Type4Code10 | Type 4 code 10 - Option too big |
ICMPv6Type128Code0 | Type 128 code 0 - N/A - No description in spec |
ICMPv6Type129Code0 | Type 129 code 0 - N/A - No description in spec |
ICMPv6Type130Code0 | Type 130 code 0 - N/A - No description in spec |
ICMPv6Type131Code0 | Type 131 code 0 - N/A - No description in spec |
ICMPv6Type132Code0 | Type 132 code 0 - N/A - No description in spec |
ICMPv6Type133Code0 | Type 133 code 0 - N/A - No description in spec |
ICMPv6Type134Code0 | Type 134 code 0 - N/A - No description in spec |
ICMPv6Type135Code0 | Type 135 code 0 - N/A - No description in spec |
ICMPv6Type136Code0 | Type 136 code 0 - N/A - No description in spec |
ICMPv6Type137Code0 | Type 137 code 0 - N/A - No description in spec |
ICMPv6Type138Code0 | Type 138 code 0 - Router Renumbering Command |
ICMPv6Type138Code1 | Type 138 code 1 - Router Renumbering Result |
ICMPv6Type138Code255 | Type 138 code 255 - Sequence Number Reset |
ICMPv6Type139Code0 | Type 139 code 0 - The Data field contains an IPv6 address which is the Subject of this Query. |
ICMPv6Type139Code1 | Type 139 code 1 - The Data field contains a name which is the Subject of this Query, or is empty, as in the case of a NOOP. |
ICMPv6Type139Code2 | Type 139 code 2 - The Data field contains an IPv4 address which is the Subject of this Query. |
ICMPv6Type140Code0 | Type 140 code 0 - A successful reply. The Reply Data field may or may not be empty. |
ICMPv6Type140Code1 | Type 140 code 1 - The Responder refuses to supply the answer. The Reply Data field will be empty. |
ICMPv6Type140Code2 | Type 140 code 2 - The Qtype of the Query is unknown to the Responder. The Reply Data field will be empty. |
ICMPv6Type141Code0 | Type 141 code 0 - N/A - No description in spec |
ICMPv6Type142Code0 | Type 142 code 0 - N/A - No description in spec |
ICMPv6Type144Code0 | Type 144 code 0 - N/A - No description in spec |
ICMPv6Type145Code0 | Type 145 code 0 - N/A - No description in spec |
ICMPv6Type146Code0 | Type 146 code 0 - N/A - No description in spec |
ICMPv6Type147Code0 | Type 147 code 0 - N/A - No description in spec |
ICMPv6Type157Code0 | Type 157 code 0 - DAR message |
ICMPv6Type157Code1 | Type 157 code 1 - EDAR message with 64-bit ROVR field |
ICMPv6Type157Code2 | Type 157 code 2 - EDAR message with 128-bit ROVR field |
ICMPv6Type157Code3 | Type 157 code 3 - EDAR message with 192-bit ROVR field |
ICMPv6Type157Code4 | Type 157 code 4 - EDAR message with 256-bit ROVR field |
ICMPv6Type158Code0 | Type 158 code 0 - DAC message |
ICMPv6Type158Code1 | Type 158 code 1 - EDAC message with 64-bit ROVR field |
ICMPv6Type158Code2 | Type 158 code 2 - EDAC message with 128-bit ROVR field |
ICMPv6Type158Code3 | Type 158 code 3 - EDAC message with 192-bit ROVR field |
ICMPv6Type158Code4 | Type 158 code 4 - EDAC message with 256-bit ROVR field |
ICMPv6Type160Code0 | Type 160 code 0 - No Error |
ICMPv6Type161Code0 | Type 161 code 0 - No Error |
ICMPv6Type161Code1 | Type 161 code 1 - Malformed Query |
ICMPv6Type161Code2 | Type 161 code 2 - No Such Interface |
ICMPv6Type161Code3 | Type 161 code 3 - No Such Table Entry |
ICMPv6Type161Code4 | Type 161 code 4 - Multiple Interfaces Satisfy Query |
Codes from Type
icmpv6CodesForType :: ICMPv6Type -> [ICMPv6Code] Source #
Get a list of ICMPv6Code
for a given ICMPv6Type
.
Since: 1.0.0.0
Conversions
icmpv6TypeToStringNum :: IsString a => ICMPv6Type -> a Source #
Convert a ICMPv6Type
into a string.
Since: 1.0.0.0
icmpv6TypeFromStringNum :: (Eq a, IsString a) => a -> ICMPv6Type Source #
Convert a string into a ICMPv6Type
.
Since: 1.0.0.0
icmpv6TypeToNum :: ICMPv6Type -> ICMPv6TypeNum Source #
Turn an ICMPv6Type
into a ICMPv6TypeNum
.
Since: 1.0.0.0
Deprecated testing
isICMPv6TypeDeprecated :: ICMPv6Type -> Bool Source #
Test if an ICMPv6Type
has been deprecated.
Since: 1.0.0.0