--- rtpproxy-1.1.orig/debian/rtpproxy.default +++ rtpproxy-1.1/debian/rtpproxy.default @@ -0,0 +1,10 @@ +# Defaults for rtpproxy initscript +# sourced by /etc/init.d/rtpproxy +# installed at /etc/default/rtpproxy by the maintainer scripts + +# +# This is a POSIX shell fragment +# + +# Additional options that are passed to the Daemon. +DAEMON_OPTS="-l 0.0.0.0 -s udp:127.0.0.1:22222" --- rtpproxy-1.1.orig/debian/watch +++ rtpproxy-1.1/debian/watch @@ -0,0 +1,4 @@ +# Compulsory line, this is a version 2 file +version=3 + +http://www.rtpproxy.org http://b2bua.org/chrome/site/rtpproxy-(.*)\.tar\.gz debian svn-upgrade --- rtpproxy-1.1.orig/debian/rules +++ rtpproxy-1.1/debian/rules @@ -0,0 +1,108 @@ +#!/usr/bin/make -f + +export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + CONFFLAGS += --build $(DEB_HOST_GNU_TYPE) +else + CONFFLAGS += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +endif + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +PKGNAME := rtpproxy +DEBVERSION:=$(shell head -n 1 debian/changelog \ + | sed -e 's/^[^(]*(\([^)]*\)).*/\1/') +UPVERSION:=$(shell echo $(DEBVERSION) | sed -e 's/^.*://' -e 's/-[0-9.]*$$//' -e 's/.dfsg$$//') + +FILENAME := $(PKGNAME)_$(UPVERSION).orig.tar.gz +URL := http://b2bua.org/chrome/site/rtpproxy-$(UPVERSION).tar.gz + +MANPAGE := debian/$(PKGNAME).8 + +configure: + autoreconf --force --install + +configure-stamp: configure + dh_testdir + rm -f config.sub config.guess + ln -sf /usr/share/misc/config.sub . + ln -sf /usr/share/misc/config.guess . + rm -f config.cache + ./configure CFLAGS="$(CFLAGS)" --prefix=/usr --sysconfdir=/etc + touch configure-stamp + +$(MANPAGE): debian/manpage.xml + xsltproc -nonet -o $@ /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl $< + +build: build-stamp +build-stamp: configure-stamp $(MANPAGE) + dh_testdir + $(MAKE) + touch build-stamp + +clean: + dh_testdir + dh_testroot + -rm -f build-stamp configure-stamp + -rm -f debian/rtpproxy.8 + [ ! -f Makefile ] || $(MAKE) distclean + -rm -f Makefile.in aclocal.m4 config.sub config.guess config.h.in \ + configure depcomp install-sh ltmain.sh missing mkinstalldirs + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp + +binary-indep: build install + +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_install + dh_installinit + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +print-version: + @@echo "Debian version: $(DEBVERSION)" + @@echo "Upstream version: $(UPVERSION)" + +get-orig-source: + @@dh_testdir + @@[ -d ../tarballs/. ]||mkdir -p ../tarballs + @@echo Downloading $(FILENAME) from $(URL) ... + @@wget -N -nv -T10 -t3 -O ../tarballs/$(FILENAME) $(URL) + @@echo Repacking without upstream debian/... + @@mkdir -p ../tarballs/rtpproxy-$(UPVERSION).tmp/ + @@cd ../tarballs/rtpproxy-$(UPVERSION).tmp ; \ + tar xfz ../$(FILENAME) + @@rm -fR ../tarballs/rtpproxy-$(UPVERSION).tmp/rtpproxy-$(UPVERSION)/debian + @@cd ../tarballs/rtpproxy-$(UPVERSION).tmp ; \ + tar cfz ../$(FILENAME) * + @@echo Cleaning up... + @@rm -rf ../tarballs/rtpproxy-$(UPVERSION).tmp/ + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install print-version get-orig-source --- rtpproxy-1.1.orig/debian/compat +++ rtpproxy-1.1/debian/compat @@ -0,0 +1 @@ +5 --- rtpproxy-1.1.orig/debian/docs +++ rtpproxy-1.1/debian/docs @@ -0,0 +1 @@ +README --- rtpproxy-1.1.orig/debian/control +++ rtpproxy-1.1/debian/control @@ -0,0 +1,33 @@ +Source: rtpproxy +Section: net +Priority: optional +Maintainer: Debian VoIP Team +Uploaders: Mark Purcell , Kilian Krause , Marcus Better +Build-Depends: debhelper (>= 5), autotools-dev, autoconf, automake1.10, xsltproc, docbook-xsl, docbook-xml +Build-Conflicts: autoconf2.13, automake1.4 +Standards-Version: 3.7.3 +Homepage: http://www.rtpproxy.org +Vcs-Svn: svn://svn.debian.org/pkg-voip/rtpproxy/trunk/ +Vcs-Browser: http://svn.debian.org/wsvn/pkg-voip/rtpproxy/?op=log + +Package: rtpproxy +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Suggests: ser | openser +Description: Relay for Real-time Transport Protocol (RTP) media streams + A high-performance media relay for RTP streams that can work together + with SIP Express Router, OpenSER or Sippy B2BUA. Its main use is to + support SIP user agents behind NAT, but it can also act as a generic media + relay. + . + The main purpose of RTPproxy is to make the communication between SIP + user agents behind NAT(s) (Network Address Translator) possible. Several + cases exists when direct end-to-end communication is not possible and + RTP streams have to be relayed through another host. The RTPproxy can + be used to setup such a relaying host. + . + Originally created for handling NAT scenarious it can also act as a + generic media relay as well as gateway RTP sessions between IPv4 and + IPv6 networks. It can also perform number of additional functions, + including call recording, playing pre-encoded announcements, real-time + stream copying and RTP payload reframing. --- rtpproxy-1.1.orig/debian/manpage.xml +++ rtpproxy-1.1/debian/manpage.xml @@ -0,0 +1,337 @@ + +Maxim"> + Sobolev"> + + Feb 20, 2006"> + + 8"> + sobomax@PBXpress.com"> + + rtpproxy"> + + + Debian"> + GNU"> + GPL"> +]> + + + +
+ &dhemail; +
+ + &dhfirstname; + &dhsurname; + + + 2006 + &dhusername; + + &dhdate; +
+ + &dhucpackage; + + &dhsection; + + + &dhpackage; + RTP (Real-time Transport Protocol) Proxy Server + + + + &dhpackage; + + + + + + + addr1/addr2 + addr1/addr2 + ctrl_socket + tos + pidfile + max_ttl + + rdir + sdir + + + + + DESCRIPTION + + &dhpackage; is a symmetric RTP proxy designed to + be used in conjunction with the SIP Express Router (SER) or any + other SIP proxy capable of rewriting SDP bodies in SIP messages + that it processes. + + + The main purpose of rtpproxy is to make the communication between + SIP user agents behind NAT(s) (Network Address Translator) + possible. Several cases exists when direct end-to-end communication + is not possible and RTP streams have to be relayed through another + host. Rtpproxy can be used to setup such a relaying host. + + + When two listen interfaces have been specified using the command + line parameters described below then rtpproxy will enter so called + bridging mode. In briding mode rtpproxy forwards RTP packets + received on one interface to the other interface and vice + versa. This mode can be used to forward RTP packets between + networks without direct network level connectivy (provided that the + host running rtpproxy has one interface in both of them). One + particular application of bridging mode is IPv4/IPv6 traversal of + RTP packets. + + + When instructured by SER rtpproxy can also record the entire RTP + session in a file on a local harddisk or play a pre-recorded file + to the user agent (so called Music-on-Hold). + + + + OPTIONS + + + + + Show summary of options. + + + + + + + Send every RTP packet twice in sessions that use + low-bitrate codecs. Only packets that are smaller than + 128 bytes will be sent twice. This option can improve + audio quality on lossy links. + + + + + + + + Rtpproxy will stay in foreground mode if this option is + set. + + + + + + + Show version of program. + + + + addr1/addr2 + + + IPv4 listen IP address(es). You can specify either + one or two addresses. If two addresses have been + specified then rtpproxy will work in bridging mode. + + + + + addr1/addr2 + + + IPv6 listen IP address(es). You can specify either one + or two addresses. If two addresses have been specified + then rtpproxy will work in bridging mode. + + + + + ctrl_socket + + + This parameter configures rtpproxy control socket. The + control socket is used by nathelper module of SER to + create/modify/delete RTP sessions to be relayed. + Format of ctrl_socket is + <type>:<socket>. Following types are + supported: + + + + udp: Create UDP + control socket. In this mode RTPProxy will + listen on UDP for control messages from + SER/nathelper. + + + Example: -s udp:127.0.0.1:9000 + + + IP address can be '*' in which case + rtpproxy will listen on all local + interfaces. If omitted port 22222 is used. + + + + RTPProxy control protocol has no + built-in security mechanisms. Make sure + that you protect the listening IP and + port properly when using RTPProxy with + UDP control socket. + + + + + + udp6: Create IPv6 UDP + control socket. In this mode RTPProxy will + listen on UDP/IPv6 for control messages + from SER/nathelper. + + + Example: -s udp6:::1:9000 + + + + + unix: Create UNIX + domain socket for control interface. In + this mode SER/nathelper and RTPProxy must + be running on the same host. This is the + default setting for both SER/nathelper and + rtpproxy. + + Example: -s unix:/var/run/rtpproxy.sock + Default value is /var/run/rtpproxy.sock. + + + + + + + tos + + + Set this ToS (Type of Service) in outgoing + packets. Default value is 0xB8. + + + + + rec_dir + + Directory where recorded RTP sessions will be stored. + + + + spool_dir + + + Spool directory for RTP sessions being recorded. The + file will be moved to directory configured in + option after the session finishes. + + + + + + + + Do not record RTCP when recording an RTP session. This + option is disabled (rtpproxy will record RTCP) by default. + + + + + pid_file + + + This parameter configures the name of the file where + PID of running rtpproxy will be stored. Default is + /var/run/rtpproxy.pid. + + + + + max_ttl + + + Limit the maximum TTL (Time To Live) of outgoing IP packets to + the value of max_ttl. + + + + + + + + HowItWorks + + When SER receives an INVITE request, it extracts Call-ID from it + and communicates it to rtpproxy via Unix domain socket or + UDP. Rtproxy looks for an existing session with such Call-ID. If + the session exists it returns UDP port for that session, if not, + then it creates a new session, binds to a first empty UDP port from + the range specified at the compile time and returns number of that + port to a SER. After receiving reply from the proxy, SER replaces + media ip:port in the SDP to point to the proxy and forwards request + as usually. + + + When SER receives a non-negative SIP reply with SDP it again extracts + Call-ID from it and communicates it to the proxy. In this case the proxy + does not allocate a new session if it doesn't exist, but simply performs a + lookup among existing sessions and returns either a port number if the + session is found, or error code indicating that there is no session with + such id. After receiving positive reply from the proxy, SER replaces media + ip:port in the SIP reply to point to the proxy and forwards reply as + usually. + + + After the session has been created, the proxy listens on the port + it has allocated for that session and waits for receiving at least + one UDP packet from each of two parties participating in the + call. Once such packet is received, the proxy fills one of two + ip:port structures associated with each call with source ip:port of + that packet. When both structures are filled in, the proxy starts + relaying UDP packets between parties. + + + The proxy tracks idle time for each of existing sessions (i.e. the time + within which there were no packets relayed), and automatically cleans + up a sessions whose idle times exceed the value specified at compile + time (60 seconds by default). + + + + FILES + + /usr/sbin/rtpproxy + + + + LICENSE + + This program is licensed under the BSD license. See + COPYING file in the rtpproxy sources for details. + + + + + AVAILABILITY + + The latest version of this program can be found at + http://ftp.iptel.org/pub/rtpproxy. + + + + + SEEALSO + ser(8). + +
--- rtpproxy-1.1.orig/debian/rtpproxy.init +++ rtpproxy-1.1/debian/rtpproxy.init @@ -0,0 +1,73 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: rtpproxy +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: RTP Proxy +# Description: Relay for VoIP media streams +### END INIT INFO + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/rtpproxy +NAME=rtpproxy +DESC=rtpproxy + +test -x $DAEMON || exit 0 + +# Include rtpproxy defaults if available +if [ -f /etc/default/rtpproxy ] ; then + . /etc/default/rtpproxy +fi + +set -e + +case "$1" in + start) + echo -n "Starting $DESC: " + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON + echo "$NAME." + ;; + #reload) + # + # If the daemon can reload its config files on the fly + # for example by sending it SIGHUP, do it here. + # + # If the daemon responds to changes in its config file + # directly anyway, make this a do-nothing entry. + # + # echo "Reloading $DESC configuration files." + # start-stop-daemon --stop --signal 1 --quiet --pidfile \ + # /var/run/$NAME.pid --exec $DAEMON + #;; + restart|force-reload) + # + # If the "reload" option is implemented, move the "force-reload" + # option to the "reload" entry above. If not, "force-reload" is + # just the same as "restart". + # + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON + sleep 1 + start-stop-daemon --start --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + *) + N=/etc/init.d/$NAME + # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $N {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 --- rtpproxy-1.1.orig/debian/rtpproxy.manpages +++ rtpproxy-1.1/debian/rtpproxy.manpages @@ -0,0 +1 @@ +debian/rtpproxy.8 --- rtpproxy-1.1.orig/debian/copyright +++ rtpproxy-1.1/debian/copyright @@ -0,0 +1,33 @@ +This package was debianized by Jan Janak on +Tue, 31 May 2005 10:55:30 +0100. + +It was downloaded from . + +It is currently maintained by the Debian VoIP Team +. + +Copyright (C) 2004-2006 Maxim Sobolev +Copyright (C) 2006-2007 Sippy Software, Inc., http://www.sippysoft.com +Copyright (C) 2008 Marcus Better (Debian packaging) + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. --- rtpproxy-1.1.orig/debian/changelog +++ rtpproxy-1.1/debian/changelog @@ -0,0 +1,78 @@ +rtpproxy (1.1-1) unstable; urgency=low + + * New upstream release + - performance enhancements and several new features + * Update debian/watch + * Modify get-orig-source target to remove upstream debian/ + * debian/control updated Description: + + -- Mark Purcell Sat, 21 Jun 2008 16:34:24 +1000 + +rtpproxy (1.0.2-1) unstable; urgency=low + + [ Marcus Better ] + * New upstream release. + * Updated LSB headers. (Closes: #469111) + * Do not install emtpy change log and superfluous README.Debian. + (Closes: #470768) + * debian/control: Do not build-depend on dpatch, there were no patches. + * debian/control: Bump Standards-Version to 3.7.3 and compat version to 5. + * debian/control: Build-depend on docbook-xml, needed for man page + generation. + * debian/rules: Clean up. + * debian/watch: Removed outdated file. + * Run autotools during build. + * debian/copyright: Updated copyright info. + * debian/control: Removed Jan Janak from Uploaders field on own request. + + [ Kilian Krause ] + * Don't ignore make clean error. + * Add LSB section to init. + + [ Faidon Liambotis ] + * Suggest ser | openser. + + -- Marcus Better Tue, 25 Mar 2008 11:52:57 +0000 + +rtpproxy (0.3-2) unstable; urgency=low + + * Updated Short Description + - Fixes: Description improvement (Closes: #359626) + + -- Mark Purcell Sat, 9 Dec 2006 13:25:29 +0000 + +rtpproxy (0.3-1) unstable; urgency=low + + [ Jan Janak ] + * Moved to pkg-voip-maintainers svn repository + * Added print-version and get-orig-source targets + * Support for dpatch + + [ Kilian Krause ] + * Add dpatch to Build-Depends + + [ Mark Purcell ] + * Initial release. (Closes: #356721: ITP: rtpproxy -- RTP proxy for + SER - Debian Bug report logs) + * Update debian/watch to use svn-upgrade + * Upstream NEWS is empty, dont ship debian/docs + + -- Mark Purcell Tue, 14 Mar 2006 22:50:39 +0000 + +rtpproxy (0.3-0.1) unstable; urgency=low + + * New upstream release + * Man page is stored in XML docbook, added xsltproc and docbook-xml + to build dependencies + * Use UDP on localhost for control socket (does not block SER) + * specify the pid file explicitly + * build manpage in debian/rules + + -- Jan Janak Mon, 20 Feb 2006 11:15:20 +0100 + +rtpproxy (0.2-0.1) unstable; urgency=low + + * Initial Release. + + -- Jan Janak Tue, 31 May 2005 10:55:30 +0200 + --- rtpproxy-1.1.orig/debian/rtpproxy.install +++ rtpproxy-1.1/debian/rtpproxy.install @@ -0,0 +1,2 @@ +debian/tmp/usr/bin/rtpproxy usr/sbin +