Difference between revisions of "Unit IGMP"

From Ultibo.org
Jump to: navigation, search
Line 10: Line 10:
 
----
 
----
  
''To be documented''
+
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''IGMP specific constants''' <code> IGMP_PROTOCOL_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Some IGMP definitions are in the Protocol or IP modules
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>IGMP_PROTOCOL_NAME = 'IGMP';</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br /> 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''IGMP constants''' <code> IGMP_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>IGMP_TIMEOUT = 0;</code>
 +
| Wait forever on a IGMP Read
 +
|-
 +
| <code>IGMP_BUFFER_SIZE = 65536;</code>
 +
| IGMP Receive Buffer Size
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>IGMP_HEADER_SIZE = 8;</code>
 +
| SizeOf(TIGMPHeader);
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>IGMP_PACKET_SIZE = 8;</code>
 +
| SizeOf(TIGMPPacket)
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>IGMP_QUERY_TIMEOUT = 5000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>IGMP_REPORT_TIMEOUT = 5000;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>IGMP_TRANSMIT_COUNT = 3;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Type definitions ===
 
=== Type definitions ===

Revision as of 03:06, 13 December 2016

Return to Unit Reference


Description


To be documented

Constants



IGMP specific constants IGMP_PROTOCOL_*
Note: Some IGMP definitions are in the Protocol or IP modules
 
IGMP_PROTOCOL_NAME = 'IGMP';  


IGMP constants IGMP_*
IGMP_TIMEOUT = 0; Wait forever on a IGMP Read
IGMP_BUFFER_SIZE = 65536; IGMP Receive Buffer Size
 
IGMP_HEADER_SIZE = 8; SizeOf(TIGMPHeader);
 
IGMP_PACKET_SIZE = 8; SizeOf(TIGMPPacket)
 
IGMP_QUERY_TIMEOUT = 5000;  
IGMP_REPORT_TIMEOUT = 5000;  
 
IGMP_TRANSMIT_COUNT = 3;  


Type definitions


To be documented

Public variables


To be documented

Function declarations



Initialization functions

procedure IGMPInit;
Description: To be documented
Note None documented


IGMP functions

function CheckIGMP(AFamily:Word; ABuffer:Pointer):Boolean;
Description: Verify that the packet is a valid IGMP packet
Buffer The complete packet including Transport header


function GetIGMPHeaderOffset(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented
Buffer The complete packet including Transport header


function GetIGMPHeaderLength(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented
Buffer The complete packet including Transport header


function GetIGMPDataOffset(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented
Buffer The complete packet including Transport header


function GetIGMPDataLength(AFamily:Word; ABuffer:Pointer):Word;
Description: To be documented
Buffer The complete packet including Transport header


function ChecksumIGMP(AFamily:Word; ABuffer:Pointer; AOffset,ALength:Word):Word;
Description: Checksum the IGMP Header on Send / Validate the Checksum on Receive
Note Checksum is calculated on the whole packet (Header and Data)


Return to Unit Reference