Skip to content
Pascal Bühler edited this page Feb 1, 2023 · 19 revisions

Welcome to the LibSrtp Project Wiki! This wiki aims at documenting and defining the development process and status of the LibSrtp Project

Up to date documentation for the libSRPT library is available either in README.md or a html version, including API documentation, can be generated in the doc/html folder with make libsrtp2doc.

Status

The current released version of libsrtp is 2.5.0 . The 1.6 version of libsrtp is effectively frozen with only major security fixes or bugs going in to the 1_5_x_throttle. The expectation is for users of libsrtp to move to the most recent 2.x release.

Releases

For details regarding what is included in each release see the CHANGES file in the libsrtp repo.
The following links can be used to download latest stable release.

Version 2.5

Version 1.6

Development

This provides a brief overview of the development process for the LibSrtp Project. There is only one active branch/version and that is the master branch. Code committed to the master branch will be used in the next major/minor release, at which point the focus of the will shift to the next release.

Mailing lists

There are two libSRTP mailing list.

Submitting Code

...

Merging Code

...

Release Process

Prepare release

  • Ensure that CHANGES file has been updated

Create release

  1. Edit CHANGES and configure.ac to contain the correct release number [2.1.3], ie remove the -pre.
  2. Generate configure script with new version: autoreconf -ivf
  3. Commit both modified files, this is now the release commit.
  4. Tag this commit with a release tag: git tag v2.1.3
  5. Increment the version number in CHNAGES and configure.ac, append -pre [2.1.4-pre]
  6. Generate configure script with new version: autoreconf -ivf
  7. Increment the version number in CMakeLists.txt
  8. Commit modified files.
  9. Push commits to branch.
  10. Push release tag git push origin tag v2.1.3
  11. Update release tags.
  12. Create new release in github https://github.com/cisco/libsrtp/releases/new .

Release Tags

The commit that is meant to be used for the release should be tag with vX.Y.Z, afterwards the major and minor release tags should be updated.
The major and minor release tags can be update from the command line with:

git tag v2 v2.1.3 -f
git push origin tag v2 -f
git tag v2.1 v2.1.3 -f
git push origin tag v2.1 -f

Active Branches

The Following branches are "actively" maintained by libsrtp project.

main

Main branch for all development and security/bug fixes.

1_6_x_throttle

Security and patch releases for version 1.6