libssh2\_version(3) libssh2 libssh2\_version(3)

# [NAME](#NAME)

libssh2\_version - return the libssh2 version number

# [SYNOPSIS](#SYNOPSIS)

```
#include <libssh2.h>
const char *
libssh2_version(int required_version);
```

# [DESCRIPTION](#DESCRIPTION)

If *required\_version* is lower than or equal to the version number of the libssh2 in use, the version number of libssh2 is returned as a pointer to a zero terminated string.

The *required\_version* should be the version number as constructed by the LIBSSH2\_VERSION\_NUM define in the libssh2.h public header file, which is a 24 bit number in the 0xMMmmpp format. MM for major, mm for minor and pp for patch number.

# [RETURN VALUE](#RETURN_VALUE)

The version number of libssh2 is returned as a pointer to a zero terminated string or NULL if the *required\_version* is not fulfilled.

# [EXAMPLE](#EXAMPLE)

To make sure you run with the correct libssh2 version:

```
if(!libssh2_version(LIBSSH2_VERSION_NUM)) {


  fprintf(stderr, "Runtime libssh2 version too old.");


  exit(1);
}
```

Unconditionally get the version number:

```
printf("libssh2 version: %s", libssh2_version(0));
```

# [AVAILABILITY](#AVAILABILITY)

This function was added in libssh2 1.1, in previous versions there way no way to extract this info in run-time.

23 Feb 2009 libssh2

---

Document: libssh2_version(3) from libssh2 1.11.1-r10 (Chainguard OS)
Source: https://github.com/libssh2/libssh2.git
