Man Linux: Main Page and Category List

NAME

       cpg_mcast_joined - Multicasts to all groups joined to a handle

SYNOPSIS

       #include <sys/uio.h> #include <openais/cpg.h>

       int  cpg_mcast_joined(cpg_handle_t  handle,  cpg_gurantee_t  guarantee,
       struct iovec *iovec, int iov_len);

DESCRIPTION

       The cpg_mcast_joined function will  multicast  a  message  to  all  the
       processes  that  have  been joined with the cpg_join(3) funtion for the
       same group name.  Messages that are sent to any of the groups joined to
       the  parameter  handle will be delivered to all subscribed processes in
       the system.

       The argument guarantee requests a delivery guarantee for the message to
       be sent.  The cpg_guarantee_t type is defined by:

              typedef enum {
                      CPG_TYPE_UNORDERED,     /* not implemented */
                      CPG_TYPE_FIFO,          /* same as agreed */
                      CPG_TYPE_AGREED,        /* implemented */
                      CPG_TYPE_SAFE           /* not implemented */
              } cpg_guarantee_t;

       The meanings of the cpg_gaurantee_t typedef are:

       CPG_TYPE_UNORDERED
              Messages  are guaranteed to be delivered, but with no particular
              order.  This mode is unimplemented in the CPG library.

       CPG_TYPE_FIFO
              Messages are guaranteed to be  delivered  in  first  sent  first
              delivery  order.   In  fact, this guarantee is equivalent to the
              CPG_TYPE_AGREED guarantee.

       CPG_TYPE_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.

       CPG_TYPE_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 CPG 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.  */
                      size_t iov_len;     /* Length of data.  */
              };

       The iov_len argument describes the  number  of  entires  in  the  iovec
       argument.

RETURN VALUE

       This call returns the CPG_OK value if successful, otherwise an error is
       returned.

ERRORS

       The errors are undocumented.

SEE ALSO

       cpg_overview(8),  cpg_initialize(3),  cpg_finalize(3),   cpg_fd_get(3),
       cpg_dispatch(3), cpg_leave(3), cpg_join(3), cpg_membership_get(3)