Jump to main content

##

# TCPIP_IGMP_SubscribeGet Function

## C

    TCPIP_IGMP_RESULT TCPIP_IGMP_SubscribeGet(
        UDP_SOCKET socket,
        TCPIP_NET_HANDLE hNet,
        IPV4_ADDR mcastAddress,
        TCPIP_IGMP_FILTER_TYPE* filterMode,
        IPV4_ADDR* sourceList,
        size_t* listSize
    );

## Description

This function returns the subscription of a UDP socket to a multicast group.

## Preconditions

The IGMP module must be initialized.

## Parameters

Parameters | Description
--- | ---
socket | The UDP multicast socket.
hNet | Interface handle. if hNet == 0, then the default interface will be used.
mcastAddress | The multicast group address.
filterMode | Address to store the filter type associated with this (Group, interface) tuple.
sourceList | Pointer to an array of destination sources that will be updated with the socket source subscriptions.
listSize | Pointer to the number of sources that could be written in the sourceList array. Could point to 0 if nothing is to be written to sourceList but only the number of sources is to be retrieved. On output, listSize will contain the number of sources that exist for this socket. If sourceList != 0,, it will contain the sources existent for this socket.

## Returns

- TCPIP_IGMP_OK - if operation succeeded. An error code otherwise.

## Remarks

The function supports both SSM and ASM functionality. listSize == 0 or (*listSize != 0 and sourceList == 0) is invalid.