Provided by: corosync-dev_1.4.2-2_amd64 bug

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.

SEE ALSO

       evs_overview(8),   evs_initialize(3),   evs_finalize(3),  evs_fd_get(3),  evs_dispatch(3),
       evs_leave(3), evs_join(3), evs_mcast_groups(3), evs_mmembership_get(3)  evs_context_get(3)
       evs_context_set(3)