Multipoint Socket Attributes
A version of this page is also available for
4/8/2010
In some instances sockets joined to a multipoint session may have some behavioral differences from point-to-point sockets. For example, a d_leaf socket in a rooted data plane scheme can only send information to the d_root participant. This creates a need for the client to be able to indicate the intended use of a socket coincident with its creation. This is done through the following four multipoint attribute flags that can be set through the dwFlags parameter in WSPSocket:
- WSA_FLAG_MULTIPOINT_C_ROOT, for the creation of a socket acting as a c_root, and only allowed if a rooted control plane is indicated in the corresponding WSAPROTOCOL_INFOW entry.
- WSA_FLAG_MULTIPOINT_C_LEAF, for the creation of a socket acting as a c_leaf, and only allowed if XP1_SUPPORT_MULTIPOINT is indicated in the corresponding WSAPROTOCOL_INFOW entry.
- WSA_FLAG_MULTIPOINT_D_ROOT, for the creation of a socket acting as a d_root, and only allowed if a rooted data plane is indicated in the corresponding WSAPROTOCOL_INFOW entry.
- WSA_FLAG_MULTIPOINT_D_LEAF, for the creation of a socket acting as a d_leaf, and only allowed if XP1_SUPPORT_MULTIPOINT is indicated in the corresponding WSAPROTOCOL_INFOW entry.
When creating a multipoint socket, exactly one of the two control plane flags, and one of the two data plane flags must be set in the WSPSocket dwFlags parameter. Thus, the following four possibilities for creating multipoint sockets are: "c_root/d_root", "c_root/d_leaf", "c_leaf/d_root", or "c_leaf /d_leaf".