The SIPp testing tool
C++ C M4 Shell Makefile
Latest commit 91e3dd4 Feb 15, 2017 @wdoekes wdoekes committed on GitHub Merge pull request #289 from linuxmaniac/vseva/remove_datetime
Remove hardcoded build datetime from binary. Begin supporting reproducible builds.

Closes #286.

Thanks @linuxmaniac.
Permalink
Failed to load latest commit information.
gmock @ c7ee6b5 Provide our own entry point for the unit tests Jul 16, 2015
gtest @ 935f126 Provide our own entry point for the unit tests Jul 16, 2015
include Merge pull request #267 from SIPp/tls_fixes Oct 20, 2016
m4 travis: Improve g++ build in travis. Mar 28, 2016
pcap Adding DTMF 0 pcap file (contributed by Ken Crowell) Dec 22, 2012
regress Added the rtp_echo scenario action Oct 5, 2016
src Merge pull request #289 from linuxmaniac/vseva/remove_datetime Feb 15, 2017
.gitignore Add compile_commands.json to .gitignore Apr 5, 2016
.gitmodules Add gmock into the unit tester Jun 24, 2015
.travis.yml build: Fix travis OSX build; changes in OpenSSL headers/libs location. Oct 5, 2016
CHANGES.md Added the rtp_echo scenario action Oct 5, 2016
FAQ.md Add FAQ and regression test to show how to insert a literal `[`. Jan 21, 2016
LICENSE.txt Removed dependency on OpenSSL for auth. Dec 22, 2012
Makefile.am Compile with _DEFAULT_SOURCE for newer Linux Apr 29, 2016
README.md travis: Add build status badge to readme. Mar 1, 2016
THANKS build: Bump version to 3.5.0-rc4. Feb 8, 2016
build.sh travis: Improve g++ build in travis. Mar 28, 2016
configure.ac build: We don't use openssl/md5.h. Don't check for it either. Oct 5, 2016
cpplint.py tools: Have cpplint accept *.hpp files as well. Jan 21, 2016
sipp.dtd Improved RTP playback system for SIPp Apr 27, 2013
validate-src.sh cleanup: Also check include dir for improper indentation. Mar 30, 2016

README.md

Travis Build Status Coverity Scan Build Status

SIPp - a SIP protocol test tool Copyright (C) 2003-2016 - The Authors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Building

This is the SIPp package. Please refer to the webpage for details and documentation.

Normally, you should be able to build SIPp by using the provided build script: build.sh. This:

  • checks out the gtest submodule
  • generates autotools files
  • runs configure
  • builds and runs the test suite
  • builds SIPp

build.sh passes its arguments through to the configure script, so you can enable SSL, PCAP and SCTP support by calling ./build.sh --with-pcap --with-sctp --with-openssl or ./build.sh --full to enable all optional features.

Support

I try and be responsive to issues raised on Github, and there's a reasonably active mailing list.

Making a release

  • Update CHANGES.md. Tag release.
  • Download zip, autoreconf -vif, copy sipp.1, copy include/version.h.
  • Create tgz. Upload to github as "binary".

Contributing

SIPp is free software, under the terms of the GPL licence (see the LICENCE.txt file for details). You can contribute to the development of SIPp and use the standard Github fork/pull request method to integrate your changes integrate your changes. If you make changes in SIPp, PLEASE follow a few coding rules:

  • SIPp uses GNU autotools, so changes to the build process should be done by editing configure.ac and Makefile.am. Then regenerate the files with autoreconf -ivf. (You will need your distribution's autotools and autoconf-archive packages installed for this.)

  • Please stay conformant with the current indentation style (4 spaces indent, standard Emacs-like indentation). Examples:

if (condition) {        /* "{" even if only one instruction */
    f();                /* 4 space indents */
} else {
    char* p = ptr;      /* C++-style pointer declaration placement */
    g(p);
}
  • If possible, check your changes can be compiled on:
    • Linux,
    • Cygwin,
    • Mac OS X,
    • FreeBSD.

Thanks,

Rob Day rkd@rkd.me.uk