Man Linux: Main Page and Category List

NAME

       evs_join - Joins one or more groups in the EVS library

SYNOPSIS

       #include <openais/evs.h>

       int    evs_join(evs_handle_t    handle,    evs_group_t   *groups,   int
       group_entries);

DESCRIPTION

       The evs_join function is used to join one or more groups.  When a group
       is joined, using the evs_mcast_joined(3) function will multicast to the
       groups joined in the argument handle.  Messages that are sent to any of
       the  groups  joined  to  the  parameter  handle  will  be  delivered by
       evs_dispatch(3).

       This call may be used more then once on a handle,  in  which  case  the
       joined  groups  will  be  all  of  the groups passed to the evs_join(3)
       function during the lifecycle of the parameter handle.

       The argument groups is used to specify the groups to join.  A group  is
       a  32 byte key.  The key is not a string, hence, the entire key is used
       when joining the channel.  For that reason the entire group  should  be
       initialized.

       The  argument  group_entries  specifies how many entries are located in
       the groups argument.

       The groups argument is of the type evs_group_t which is defined by  the
       structure:

              typedef struct {
                      char key[32];
              } evs_groups_t;

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_mcast_joined(3),
       evs_mcast_groups(3), evs_mmembership_get(3)