Difference between revisions of "Unit IGMP"

From Ultibo.org
Jump to: navigation, search
Line 69: Line 69:
 
----
 
----
  
''To be documented''
+
 
 +
'''IGMP header'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIGMPHeader = ^TIGMPHeader;</code>
 +
 
 +
<code>TIGMPHeader = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
Note: Some IGMP definitions are in the Protocol or IP modules
 +
|-
 +
| <code>IGMPType:Byte;</code>
 +
| type of IGMP message
 +
|-
 +
| <code>RespTime:Byte;</code>
 +
| Query only otherwise 0 (Always zero in Version 1 (Assume 100))
 +
|-
 +
| <code>Checksum:Word;</code>
 +
| 1s Compliment IP-style checksum
 +
|-
 +
| <code>Address:TInAddr;</code>
 +
| group address being reported or queried (zero for "General" queries)
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''IGMP packet''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIGMPPacket = ^TIGMPPacket;</code>
 +
 
 +
<code>TIGMPPacket = 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 IGMPBuffer)
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| LongWord to keep size even
 +
|-
 +
| <code>Next:PIGMPPacket;</code>
 +
| Followed by RemoteAddress (4 or 16 Bytes)
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Class definitions ===
 
=== Class definitions ===

Revision as of 00:38, 20 January 2017

Return to Unit Reference


Description


Ultibo IGMP (Internet Group Management Protocol) unit

To be documented

Constants



[Expand]
IGMP specific constants IGMP_PROTOCOL_*


[Expand]
IGMP constants IGMP_*


Type definitions



IGMP header

[Expand]

PIGMPHeader = ^TIGMPHeader;

TIGMPHeader = packed record

IGMP packet

[Expand]

PIGMPPacket = ^TIGMPPacket;

TIGMPPacket = record


Class definitions


To be documented

Public variables


None defined

Function declarations



Initialization functions

[Expand]
procedure IGMPInit;
Description: To be documented


IGMP functions

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


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


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


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


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


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


Return to Unit Reference