NAME¶
evs_join - Joins one or more groups in the EVS library
SYNOPSIS¶
#include <corosync/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)
evs_context_get(3)
evs_context_set(3)