Difference between revisions of "Unit ICMPv6"

From Ultibo.org
Jump to: navigation, search
Line 56: Line 56:
 
----
 
----
  
''To be documented''
+
 
 +
'''ICMPv6 header'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PICMP6Header = ^TICMP6Header;</code>
 +
 
 +
<code>TICMP6Header = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Some ICMPv6 definitions are in the Protocol or IPv6 modules
 +
|-
 +
| <code>ICMP6Type:Byte;</code>
 +
| ICMP_UNREACH etc
 +
|-
 +
| <code>Code:Byte;</code>
 +
| ICMP_UNREACH_NET,ICMP_UNREACH_PORT etc
 +
|-
 +
| <code>Checksum:Word;</code>
 +
| 1s Compliment checksum of Structure
 +
|-
 +
| <code>CurrentHopLimit:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''ICMPv6 packet'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PICMP6Packet = ^TICMP6Packet;</code>
 +
 
 +
<code>TICMP6Packet = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: 8 Bytes (Used by ICMP6Buffer)
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| LongWord to keep size even
 +
|-
 +
| <code>Next:PICMP6Packet;</code>
 +
| Followed by RemoteAddress (4 or 16 Bytes)
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Class definitions ===
 
=== Class definitions ===

Revision as of 00:28, 20 January 2017

Return to Unit Reference


Description


Ultibo ICMPv6 (Internet Control Message Protocol version 6) unit

To be documented

Constants



[Expand]
ICMPv6 specific constants ICMP6_PROTOCOL_*


[Expand]
ICMPv6 constants ICMP6_*


Type definitions



ICMPv6 header

[Expand]

PICMP6Header = ^TICMP6Header;

TICMP6Header = packed record

ICMPv6 packet

[Expand]

PICMP6Packet = ^TICMP6Packet;

TICMP6Packet = record


Class definitions


To be documented

Public variables


None defined

Function declarations



Initialization functions

[Expand]
procedure ICMP6Init;
Description: To be documented


ICMPv6 functions

[Expand]
function CheckICMP6(AFamily:Word; ABuffer:Pointer):Boolean;
Description: Verify that the packet is a valid ICMP6 packet


[Expand]
function GetICMP6HeaderOffset(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented


[Expand]
function GetICMP6HeaderLength(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented


[Expand]
function GetICMP6DataOffset(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented


[Expand]
function GetICMP6DataLength(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented


[Expand]
function ChecksumICMP6(AFamily:Word; ABuffer:Pointer; AOffset,ALength:Word):Word;
Description: Checksum the ICMP6 Header on Send / Validate the Checksum on Receive


Return to Unit Reference