Difference between revisions of "Unit IGMP"

From Ultibo.org
Jump to: navigation, search
Line 208: Line 208:
 
|-
 
|-
 
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
|-
 
| <code>function AddTransport(ATransport:TNetworkTransport):Boolean; override;</code>
 
| &nbsp;
 
|-
 
| <code>function RemoveTransport(ATransport:TNetworkTransport):Boolean; override;</code>
 
| &nbsp;
 
|-
 
|colspan="2"|&nbsp;
 
|-
 
| <code>function FindSocket(AFamily,AStruct,AProtocol:Word; ALocalAddress,ARemoteAddress:Pointer; ALocalPort,ARemotePort:Word; ABroadcast,AListen,ALock:Boolean; AState:LongWord):TProtocolSocket; override;</code>
 
| &nbsp;
 
|-
 
| <code>procedure FlushSockets(All:Boolean); override;</code>
 
| &nbsp;
 
|-
 
|colspan="2"|&nbsp;
 
 
|-
 
|-
 
| <code>function SelectCheck(ASource,ADest:PFDSet; ACode:Integer):Integer; override;</code>
 
| <code>function SelectCheck(ASource,ADest:PFDSet; ACode:Integer):Integer; override;</code>
Line 287: Line 271:
 
|-
 
|-
 
| <code>function Socket(AFamily,AStruct,AProtocol:Integer):TProtocolSocket; override;</code>
 
| <code>function Socket(AFamily,AStruct,AProtocol:Integer):TProtocolSocket; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddTransport(ATransport:TNetworkTransport):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function RemoveTransport(ATransport:TNetworkTransport):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function FindSocket(AFamily,AStruct,AProtocol:Word; ALocalAddress,ARemoteAddress:Pointer; ALocalPort,ARemotePort:Word; ABroadcast,AListen,ALock:Boolean; AState:LongWord):TProtocolSocket; override;</code>
 +
| &nbsp;
 +
|-
 +
| <code>procedure FlushSockets(All:Boolean); override;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-

Revision as of 06:09, 27 July 2017

Return to Unit Reference


Description


Ultibo IGMP (Internet Group Management Protocol) unit

To be documented

Constants



[Expand]
IGMP protocol IGMP_PROTOCOL_*


[Expand]
IGMP specific constants IGMP_*


Type definitions



IGMP header

[Expand]

PIGMPHeader = ^TIGMPHeader;

TIGMPHeader = packed record

IGMP packet

[Expand]

PIGMPPacket = ^TIGMPPacket;

TIGMPPacket = record


Class definitions



IGMP protocol transport

[Expand]

TIGMPProtocolTransport = class(TProtocolTransport)

IGMP protocol

[Expand]

TIGMPProtocol = class(TNetworkProtocol)

IGMP group

[Expand]

TIGMPGroup = class(TListObject)

IGMP socket

[Expand]

TIGMPSocket = class(TProtocolSocket)

IGMP buffer

[Expand]

TIGMPBuffer = class(TSocketBuffer)


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