---
name: "evs_join"
section: "3"
platform: "linux"
package: "corosync-dev"
version: "1.4.6-1.1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/evs_join"
---

# evs\_join(3)

Joins one or more groups in the EVS library

## 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)](/evs_mcast_joined/3.md)** 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)](/evs_dispatch/3.md).**

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)](/evs_join/3.md)** 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_overview/8.md), [**evs\_initialize**(3)](/evs_initialize/3.md), [**evs\_finalize**(3)](/evs_finalize/3.md), [**evs\_fd\_get**(3)](/evs_fd_get/3.md), [**evs\_dispatch**(3)](/evs_dispatch/3.md), [**evs\_leave**(3)](/evs_leave/3.md), [**evs\_mcast\_joined**(3)](/evs_mcast_joined/3.md), [**evs\_mcast\_groups**(3)](/evs_mcast_groups/3.md), [**evs\_membership\_get**(3)](/evs_membership_get/3.md) [**evs\_context\_get**(3)](/evs_context_get/3.md) [**evs\_context\_set**(3)](/evs_context_set/3.md)
