Jump to main content

##

# UDP_MULTICAST_FLAGS Enumeration

## C

    typedef enum {
        UDP_MCAST_FLAG_LOOSE_NET_SOURCE_PORT = 0x0001,
        UDP_MCAST_FLAG_IGNORE_SOURCE_ADD = 0x0002,
        UDP_MCAST_FLAG_IGNORE_SOURCE_PORT = 0x0004,
        UDP_MCAST_FLAG_IGNORE_UNICAST = 0x0008,
        UDP_MCAST_FLAG_LOOP = 0x0010,
        UDP_MCAST_FLAG_DISABLE_SOURCE_CHECK = 0x0020,
        UDP_MCAST_FLAG_DEFAULT = (UDP_MCAST_FLAG_LOOSE_NET_SOURCE_PORT |
            UDP_MCAST_FLAG_IGNORE_SOURCE_ADD |
            UDP_MCAST_FLAG_IGNORE_SOURCE_PORT |
            UDP_MCAST_FLAG_IGNORE_UNICAST)
    } UDP_MULTICAST_FLAGS;

## Members

Members | Description
--- | ---
UDP_MCAST_FLAG_LOOSE_NET_SOURCE_PORT = 0x0001 | Union of the !UDP_OPTION_STRICT_NET, !UDP_OPTION_STRICT_ADDRESS and !UDP_OPTION_STRICT_PORT This is the default behavior for a multicast socket. The same bahvior can be obtained by setting individual options. It is the default behavior of a newly created server socket but not for a client socket.
UDP_MCAST_FLAG_IGNORE_SOURCE_ADD = 0x0002 | Ignore the source address of a packet and reply to the currently set (multicast) destination address. Normally a socket would reply to the sender of the packet. But probably this is not what you want for multicast. This option allows the socket to reply to the multicast group instead, no matter from what source it received the multicast traffic. This option is disabled by default when a socket is created and should be enforced when needed.
UDP_MCAST_FLAG_IGNORE_SOURCE_PORT = 0x0004 | Ignore the source port of a packet and reply to the currently set destination port. Normally a socket would reply to the sender of the packet using the source port of the sender. This option allows the socket to reply using the current destination/remote port no matter the source port of the received multicast traffic - which would be the expected behavior from a multicast socket. This option is disabled by default when a socket is created and should be enforced when needed.
UDP_MCAST_FLAG_IGNORE_UNICAST = 0x0008 | Ignore a packet if its destination is not multicast
UDP_MCAST_FLAG_LOOP = 0x0010 | When set, the multicast packets sent by the UDP socket will be routed on the internal multicast interface as well. Default is cleared. Applies only to sockets sending multicast traffic
UDP_MCAST_FLAG_DISABLE_SOURCE_CHECK = 0x0020 | Disables/enables the checking of the source of multicast traffic that reaches a socket. The IGMPv3 mandates that the multicast traffic should be passed to a socket only if that socked subscribed for multicast from that source. However, for high rate data streams that may place an overhead and consume additional CPU power for doing this check for each and every incoming packet. This option allows the user to bypass this run time check. By default the source check is enabled -recommended setting! Applies only to sockets receiving multicast traffic

## Description

Enumeration: UDP_SOCKET_MULTICAST_FLAGS List of options to be set for a multicast socket

## Remarks

These options are meant for sockets carrying multicast traffic. Multiple flags can be set. 16 bits only supported.