EVS_MCAST_JOINED(3)
NAME
evs_join - Multicasts to all groups joined to an handle
SYNOPSIS
#include <sys/uio.h> #include <corosync/evs.h> int evs_mcast_joined(evs_handle_t handle, evs_guraantee_t guarantee, struct iovec *iovec, int iov_len);
DESCRIPTION
The evs_mcast_joined function is multicast a message to all the groups that have been joined with the evs_join(3) function for the argument handle. Messages that are sent to any of the groups joined to the parameter handle will be delivered to all processors in the system.
- The argument guarantee requests a delivery guarantee for the message to
be sent. The evs_guarantee_t type is defined by:
- typedef enum {
EVS_TYPE_UNORDERED, /* not implemented */
EVS_TYPE_FIFO, /* same as agreed */
EVS_TYPE_AGREED, /* implemented */
EVS_TYPE_SAFE /* not implemented */ - } evs_guarantee_t;
- The meanings of the evs_guarantee_t typedef are:
- EVS_GUARANTEE_UNORDERED
- Messages are guaranteed to be delivered, but with no particular order. This mode is unimplemented in the EVS library.
- EVS_GUARANTEE_FIFO
- Messages are guaranteed to be delivered in first sent first delivery order from one one. In fact, this guarantee is actually the AGREED guarantee.
- EVS_GUARANTEE_AGREED
- All processors must agree on the order of delivery. If a message is sent from two or more processors at about the same time, the delivery will occur in the same order to all processors.
- EVS_GUARANTEE_SAFE
- All processors must agree on the order of delivery. Further all processors must have a copy of the message before any delivery takes place. This mode is unimplemented in the EVS library.
- The iovec argument describes the scatter/gather list which is used to transmit a message. This is a standard socket structure described by:
struct iovec
{void *iov_base; /* Pointer to data. */
unsigned int iov_len; /* Length of data. */- };
- The iovlen argument describes the number of entires in the iovec argument.
RETURN VALUE
This call returns the EVS_OK value if successful, otherwise an error is
returned.
ERRORS
The errors are undocumented.