debian/0000755000000000000000000000000012315716477007203 5ustar debian/rfc5766-turn-server.default0000644000000000000000000000017612141400220014116 0ustar # # Uncomment it if you want to have the turnserver running as # an automatic system service daemon # #TURNSERVER_ENABLED=1 debian/rfc5766-turn-server.docs0000644000000000000000000000017312273370154013441 0ustar README.turnadmin README.turnserver README.turnutils turndb/schema.sql turndb/schema.userdb.redis turndb/schema.stats.redis debian/control0000644000000000000000000000475212275622006010603 0ustar Source: rfc5766-turn-server Section: net Priority: extra Maintainer: Debian VoIP Team Uploaders: Daniel Pocock , Oleg Moskalenko Build-Depends: debhelper (>= 9.0.0), dpkg-dev (>= 1.16.1~), libssl-dev (>= 1.0.0~), libevent-dev (>= 2.0.1~), postgresql-client, libpq-dev, mysql-client, libmysqlclient-dev, libhiredis-dev Standards-Version: 3.9.5 Homepage: http://code.google.com/p/rfc5766-turn-server/ Vcs-Git: git://git.debian.org/pkg-voip/rfc5766-turn-server.git Vcs-Browser: http://git.debian.org/?p=pkg-voip/rfc5766-turn-server.git;a=summary Package: rfc5766-turn-server Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, telnet Conflicts: turnserver Suggests: sip-router, xmpp-server Provides: stun-server, turn-server Description: TURN and STUN server for VoIP STUN (Session Traversal Utilities for NAT) and TURN (Traversal Using Relays around NAT) are protocols that can be used to provide NAT traversal for VoIP and WebRTC. This package provides a VoIP media traffic NAT traversal server and gateway. . Supported RFCs: TURN specs: * RFC 5766 - base TURN specs; * RFC 6062 - TCP relaying TURN extension; * RFC 6156 - IPv6 extension for TURN; * DTLS support as client protocol http://tools.ietf.org/html/draft-petithuguenin-tram-turn-dtls-00; * Mobile ICE (MICE) support http://datatracker.ietf.org/doc/draft-wing-mmusic-ice-mobility. . STUN specs: * RFC 3489 - obsolete "classic" STUN specs; * RFC 5389 - base "new" STUN specs; * RFC 5769 - test vectors for STUN protocol testing; * RFC 5780 - NAT behavior discovery support. . The implementation fully supports UDP, TCP, TLS, and DTLS as protocols between the TURN client and the TURN server. Both UDP and TCP relaying are supported. . Flat files, MySQL, PostgreSQL, or Redis are all supported for the user repository (if authentication is required). Both short-term and long-term credentials mechanisms are supported. For WebRTC applications, the TURN server REST API for time-limited secret-based authentication is implemented. . Load balancing can be implemented either by DNS round-robin mechanism, or with the external networking tools, or by the built-in ALTERNATE-SERVER mechanism. . The implementation is intended to be simple to install and configure. The project focuses on performance, scalability, and simplicity. The aim is to provide an enterprise-grade TURN solution. debian/README.Debian0000644000000000000000000000500512152226715011232 0ustar rfc5766-turn-server for Debian ------------------------------ 1) The turnserver has reasonable default option values and can work in many simple environments without extra configuration. But more complex meaningful usage requires setting options specific to your particular environment. For example, WebRTC requires long-term credentials and some extra stuff. To set the turnserver parameters: a) Edit /etc/turnserver.conf file. b) For user accounts settings, if using the turnserver with authentication: edit /etc/turnuserdb.conf file, or set up PostgreSQL or MySQL or Redis database for user accounts. Use /usr/share/rfc5766-turn-server/schema.sql as SQL database schema, or use /usr/share/rfc5766-turn-server/schema.userdb.redis as Redis database schema explanation for the user authentication data, and (optionally) use /usr/share/rfc5766-turn-server/schema.stats.redis as Redis database schema explanation for status and statistics data. 2) You can start/stop the turnserver "manually", using the "/usr/bin/turnserver" executable with appropriate options (see the documentation). If you want the turnserver to be an automatically started system service, then you have to uncomment line "TURNSERVER_ENABLED=1" in the /etc/default/rfc5766-turn-server file. 3) To create database schema, use schema in file /usr/share/rfc5766-turn-server/schema.sql. 4) For additional information, run: $ man turnserver $ man turnadmin $ man turnutils 5) During installation, no TURN user accounts are created. rfc5766-turn-server does not recognise UNIX accounts and requires accounts to be defined in it's own config file. By default, TURN server uses anonymous access. Traditional STUN doesn't require an account. For TURN relay purposes, several accounting options are possible: - anonymous access (the default option); - traditional long-term credentials mechanism (see RFC5766); - TURN REST API shared-secret-based long-term credentials mechanism (see TURN REST API docs); - short-term authentication mechanism (see RFC5766); If you are installing the TURN server for WebRTC usage, then you must set the long term credentials mechanism option and add user accounts - either with the flat config userdb file, or with PostgreSQL database, or with MySQL database, or with Redis database. Optionally, you can add TURN REST API on top of long-term credentials mechanism. Please see the README.* files for details. -- Oleg Moskalenko Wed, 15 May 2013 11:58:45 -0700 debian/rfc5766-turn-server.lintian-overrides0000644000000000000000000000035012201762641016141 0ustar # # The project is covered by Citrix BSD open source license # rfc5766-turn-server: possible-gpl-code-linked-with-openssl # # The project is not using any large files: # rfc5766-turn-server: binary-file-built-without-LFS-support debian/rfc5766-turn-server.manpages0000644000000000000000000000026612157012361014301 0ustar man/man1/turnserver.1 man/man1/turnadmin.1 man/man1/turnutils.1 man/man1/turnutils_uclient.1 man/man1/turnutils_peer.1 man/man1/turnutils_stunclient.1 man/man1/rfc5766-turn-server.1 debian/rfc5766-turn-server.doc-base0000644000000000000000000000105612273370177014174 0ustar Document: rfc5766turnserver Title: RFC5766-TURN-Server documentation Author: Oleg Moskalenko, Citrix Abstract: This set of documents describe how the turn server programs can be used. Section: Network/Communication Format: Text Files: /usr/share/doc/rfc5766-turn-server/README.turnserver.gz /usr/share/doc/rfc5766-turn-server/README.turnadmin.gz /usr/share/doc/rfc5766-turn-server/README.turnutils.gz /usr/share/doc/rfc5766-turn-server/schema.sql /usr/share/doc/rfc5766-turn-server/schema.userdb.redis /usr/share/doc/rfc5766-turn-server/schema.stats.redis debian/rfc5766-turn-server.init0000644000000000000000000001032412157533062013453 0ustar #!/bin/sh ### BEGIN INIT INFO # Provides: rfc5766-turn-server # Required-Start: $network $local_fs $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: rfc5766-turn-server TURN Server # Description: STUN and TURN Relay Server for VoIP and WebRTC ### END INIT INFO # Author: Oleg Moskalenko # PATH should only include /usr/* if it runs after the mountnfs.sh script PATH=/usr/bin:/sbin:/usr/sbin:/bin DESC=rfc5766-turn-server # RFC5766-TURN-SERVER NAME=rfc5766-turn-server # TURN Server PROCNAME=turnserver # Binary name DAEMON=/usr/bin/turnserver DAEMON_ARGS="-c /etc/turnserver.conf -o -v" # Arguments to run the daemon with PIDFILE_DIR=/var/run PIDFILE=/var/run/$PROCNAME.pid SCRIPTNAME=/etc/init.d/$NAME USER=turnserver GROUP=turnserver # Exit if the package is not installed [ -x $DAEMON ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME if [ ! -d "$PIDFILE_DIR" ];then mkdir -p "$PIDFILE_DIR" chown $USER:$GROUP "$PIDFILE_DIR" fi # Define LSB log_* functions. # Depend on lsb-base (>= 3.0-6) to ensure that this file is present. . /lib/lsb/init-functions # # Function that starts the daemon/service # do_start() { # Return # 0 if daemon has been started # 1 if daemon was already running # 2 if daemon could not be started start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ $DAEMON_ARGS \ || return 2 # Add code here, if necessary, that waits for the process to be ready # to handle requests from services started subsequently which depend # on this one. As a last resort, sleep for some time. } # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name ${PROCNAME} RETVAL="$?" [ "$RETVAL" = 2 ] && return 2 # Wait for children to finish too if this is a daemon that forks # and if the daemon is only ever run from this initscript. # If the above conditions are not satisfied then add some other code # that waits for the process to drop all resources that could be # needed by services started subsequently. A last resort is to # sleep for some time. start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON [ "$?" = 2 ] && return 2 # Many daemons don't delete their pidfiles when they exit. rm -f $PIDFILE return "$RETVAL" } # # Function that sends a SIGHUP to the daemon/service # do_reload() { # # If the daemon can reload its configuration without # restarting (for example, when it is sent a SIGHUP), # then implement that here. # start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $PROCNAME return 0 } case "$1" in start) if test "$TURNSERVER_ENABLED" = 1; then log_daemon_msg "Starting $DESC " "$PROCNAME" do_start case "$?" in 0|1) log_end_msg 0 ;; 2) log_end_msg 1 ;; esac else log_daemon_msg "${NAME} disabled in /etc/default/${NAME}" "${PROCNAME}" log_end_msg 0 log_daemon_msg "See /etc/default/${NAME} for instructions on enabling" "${PROCNAME}" log_end_msg 0 exit 0 fi ;; stop) log_daemon_msg "Stopping $DESC" "$PROCNAME" do_stop case "$?" in 0|1) log_end_msg 0 ;; 2) log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$PROCNAME" && exit 0 || exit $? ;; restart|force-reload) log_daemon_msg "Restarting $DESC" "$PROCNAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1) log_end_msg 1 ;; # Old process is still running *) log_end_msg 1 ;; # Failed to start esac ;; *) # Failed to stop log_end_msg 1 ;; esac ;; *) #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac exit 0 debian/copyright0000644000000000000000000000705712273357467011152 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: rfc5766-turn-server Upstream-Contact: mom040267@gmail.com Source: http://code.google.com/p/rfc5766-turn-server/ Files: * Copyright: 2011, 2012, 2013, 2014 Citrix Systems License: BSD-RFC5766-TURN-SERVER-CITRIX Comment: This is a BSD license. Files: src/server/ns_turn_khash.h Copyright: 2008, by Attractive Chaos License: MIT-HASH Comment: This is an MIT license. Files: debian/* Copyright: 2012 Daniel Pocock 2013, 2014 Oleg Moskalenko License: GPL-3+ Comment: The GPL can be found in /usr/share/common-licenses/GPL-3 License: BSD-RFC5766-TURN-SERVER-CITRIX /* * Copyright (C) 2011, 2012, 2013, 2014 Citrix Systems * * All rights reserved. * * 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. * 3. Neither the name of the project nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE PROJECT 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 PROJECT 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. */ License: GPL-3+ The GPL can be found in /usr/share/common-licenses/GPL-3 License: MIT-HASH /* The MIT License * * Copyright (c) 2008, by Attractive Chaos * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the * "Software"), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ debian/compat0000644000000000000000000000000212137557247010401 0ustar 9 debian/changelog0000644000000000000000000001733512315716476011065 0ustar rfc5766-turn-server (3.2.3.1-1) unstable; urgency=low * Traffic congestion fixes and SHA256 experimental implementation improved -- Oleg Moskalenko Sat, 29 Mar 2014 21:27:34 -0700 rfc5766-turn-server (3.2.2.912-1) unstable; urgency=low * Congestion avoidance for TCP and UDP relay (sync to upstream 3.2.2.912) -- Oleg Moskalenko Fri, 21 Mar 2014 23:43:33 -0700 rfc5766-turn-server (3.2.2.911-1) unstable; urgency=low * Sync to upstream 3.2.2.911 version (memory leak fixed) -- Oleg Moskalenko Sat, 15 Mar 2014 23:30:10 -0700 rfc5766-turn-server (3.2.2.910-1) unstable; urgency=low * Sync to upstream 3.2.2.910 -- Oleg Moskalenko Sun, 09 Mar 2014 21:44:10 -0700 rfc5766-turn-server (3.2.2.9-1) unstable; urgency=low * Sync to 3.2.2.9 upstream -- Oleg Moskalenko Sun, 02 Mar 2014 11:30:49 -0800 rfc5766-turn-server (3.2.2.8-1) unstable; urgency=low * Sync to upstream 3.2.2.8: multiple bugs fixed. -- Oleg Moskalenko Sat, 22 Feb 2014 12:02:45 -0800 rfc5766-turn-server (3.2.2.7-1) unstable; urgency=low * Sync to upstream 3.2.2.7: Issues 99, 100 and 101 are fixed. -- Oleg Moskalenko Fri, 14 Feb 2014 13:21:29 -0800 rfc5766-turn-server (3.2.2.6-1) unstable; urgency=low * Closes: #737763 * Sync to upstream 3.2.2.6 -- Oleg Moskalenko Sat, 08 Feb 2014 22:20:34 -0800 rfc5766-turn-server (3.2.2.5-1) unstable; urgency=low * Optimization -- Oleg Moskalenko Sat, 01 Feb 2014 23:02:36 -0800 rfc5766-turn-server (3.2.2.4-2) unstable; urgency=low * new script added -- Oleg Moskalenko Sun, 26 Jan 2014 17:59:19 -0800 rfc5766-turn-server (3.2.2.4-1) unstable; urgency=low * Security problem fixed (Issue 96) -- Oleg Moskalenko Fri, 24 Jan 2014 23:25:43 -0800 rfc5766-turn-server (3.2.2.3-1) unstable; urgency=low * Security problem fixed (Issue 95) -- Oleg Moskalenko Fri, 24 Jan 2014 09:16:31 -0800 rfc5766-turn-server (3.2.2.1-1) unstable; urgency=low * CPU and memory performance improvements; * TLS enhacements. -- Oleg Moskalenko Mon, 20 Jan 2014 21:32:54 -0800 rfc5766-turn-server (3.2.1.4-1) unstable; urgency=low * TLS/DTLS fixes -- Oleg Moskalenko Tue, 07 Jan 2014 00:26:40 -0800 rfc5766-turn-server (3.2.1.1-1) unstable; urgency=low * TLS fixes. * Performance improvements for Linux kernel v3.9+. -- Oleg Moskalenko Sat, 04 Jan 2014 14:33:02 -0800 rfc5766-turn-server (3.1.5.1-1) unstable; urgency=low * CLI extended; * TLS fixes. -- Oleg Moskalenko Fri, 20 Dec 2013 23:44:59 -0800 rfc5766-turn-server (3.1.2.1-1) unstable; urgency=low * DH and EC ciphers implemented -- Oleg Moskalenko Tue, 10 Dec 2013 01:32:57 -0800 rfc5766-turn-server (3.1.1.0-1) unstable; urgency=low * CLI interface added -- Oleg Moskalenko Sun, 08 Dec 2013 18:21:59 -0800 rfc5766-turn-server (3.0.2.1-1) unstable; urgency=low * Multithreaded Mobile ICE and RFC 6062 fixes -- Oleg Moskalenko Sun, 01 Dec 2013 00:20:55 -0800 rfc5766-turn-server (3.0.1.2-1) unstable; urgency=low * Mobile ICE and some bugs fixed -- Oleg Moskalenko Tue, 26 Nov 2013 12:03:27 -0800 rfc5766-turn-server (3.0.0.0-1) unstable; urgency=low * New network engine for Linux kernel 3.9+ -- Oleg Moskalenko Sun, 10 Nov 2013 21:55:39 -0800 rfc5766-turn-server (2.6.7.1-1) unstable; urgency=low * Sync to upstream 2.6.7.1 -- Oleg Moskalenko Thu, 07 Nov 2013 22:54:50 -0800 rfc5766-turn-server (2.6.6.1-1) unstable; urgency=low * SHA256 support added (TURN extension) -- Oleg Moskalenko Wed, 30 Oct 2013 23:15:51 -0700 rfc5766-turn-server (2.6.6.0-1) unstable; urgency=low * CA file option added to TLS/DTLS functionality. -- Oleg Moskalenko Tue, 22 Oct 2013 23:03:03 -0700 rfc5766-turn-server (2.6.5.2-1) unstable; urgency=low * Redis memory leak fixed. -- Oleg Moskalenko Tue, 08 Oct 2013 22:56:59 -0700 rfc5766-turn-server (2.6.4.1-1) unstable; urgency=low * Secure STUN Binding request; * redis crash on empty database name fixed. -- Oleg Moskalenko Fri, 27 Sep 2013 23:05:55 -0700 rfc5766-turn-server (2.6.3.1-1) unstable; urgency=low * Dynamic white/black IP lists. * RFC 6062 fixes for pre-3.9 Linux kernel. -- Oleg Moskalenko Mon, 16 Sep 2013 23:03:43 -0700 rfc5766-turn-server (2.6.2.1-1) unstable; urgency=low * UDP optimization. * DTLS scalability. * Compatibility issues fixed. * --pidfile option. -- Oleg Moskalenko Wed, 04 Sep 2013 23:30:48 -0700 rfc5766-turn-server (2.6.1.4-1) unstable; urgency=low * Memory leak fixed (Issue 51) -- Oleg Moskalenko Sun, 11 Aug 2013 21:33:38 -0700 rfc5766-turn-server (2.6.1.3-1) unstable; urgency=low * Network optimization * Secirity protocols improvements (SSL23, TLS1.1, TLS1.2) * REST API update according to the new draft specs * "Classic" STUN fixes. -- Oleg Moskalenko Sun, 11 Aug 2013 12:17:07 -0700 rfc5766-turn-server (1.8.7.0-1) unstable; urgency=low * (closes: #710532) extra fixes; * Classic STUN RFC 3489 support; * Upstream Makefile fixed; * configure script fixed; * custom configure rule removed from the rules file; * manpage added; -- Oleg Moskalenko Sat, 22 Jun 2013 22:50:46 -0700 rfc5766-turn-server (1.8.6.3-2) unstable; urgency=low * (closes: #710532) * Standard bumped to 3.9.4 * init file fixed according to lintian * rfc5769check utility removed from install -- Oleg Moskalenko Wed, 19 Jun 2013 23:29:40 -0700 rfc5766-turn-server (1.8.6.3-1) unstable; urgency=low * DontFragment flag removed from the UDP client-side listening sockets -- Oleg Moskalenko Sat, 08 Jun 2013 23:41:33 -0700 rfc5766-turn-server (1.8.6.2-1) unstable; urgency=low * Tarball re-packaged. -- Oleg Moskalenko Thu, 06 Jun 2013 00:32:58 -0700 rfc5766-turn-server (1.8.6.1-1) unstable; urgency=low * Bug fix: permissions check fixed for packets coming from the TURN peers. -- Oleg Moskalenko Thu, 06 Jun 2013 00:19:14 -0700 rfc5766-turn-server (1.8.6.0-1) unstable; urgency=low * Channel packets padding fixed. Optimization. -- Oleg Moskalenko Wed, 05 Jun 2013 00:47:48 -0700 rfc5766-turn-server (1.8.5.3-2) unstable; urgency=low * debian control file fixed, fix provided by Justin B Rye -- Oleg Moskalenko Fri, 31 May 2013 16:24:00 -0700 rfc5766-turn-server (1.8.5.3-1) unstable; urgency=low * REST API information added -- Oleg Moskalenko Fri, 31 May 2013 01:52:04 -0700 rfc5766-turn-server (1.8.5.1-1) unstable; urgency=low * Issue 28 fixed: config file parsing. -- Oleg Moskalenko Mon, 27 May 2013 00:06:20 -0700 rfc5766-turn-server (1.8.5.0-1) unstable; urgency=low * Access control lists implemented -- Oleg Moskalenko Thu, 23 May 2013 14:42:42 -0700 rfc5766-turn-server (1.8.4.5-1) unstable; urgency=low * Sockets cleaning -- Oleg Moskalenko Sun, 19 May 2013 14:39:21 -0700 rfc5766-turn-server (1.8.4.2-1) unstable; urgency=low * Initial Debian release (Closes: #705064) -- Oleg Moskalenko Wed, 15 May 2013 12:58:45 -0700 debian/watch0000644000000000000000000000054712270664713010235 0ustar # Compulsory line, this is a version 3 file version=3 # Old project downloads: # http://code.google.com/p/rfc5766-turn-server/downloads/list?can=1 .*/turnserver-(\d[\d.]*)\.(?:zip|tgz|tbz2|txz|tar\.gz|tar\.bz2|tar\.xz) # New downloads: http://turnserver.open-sys.org/downloads/v(\d[\d.]*)/turnserver-(\d[\d.]*)\.(?:zip|tgz|tbz2|txz|tar\.gz|tar\.bz2|tar\.xz) debian/rfc5766-turn-server.postinst0000644000000000000000000000301712137407426014376 0ustar #!/bin/sh set -e # summary of how this script can be called: # * `configure' # * `abort-upgrade' # * `abort-remove' `in-favour' # # * `abort-remove' # * `abort-deconfigure' `in-favour' # `removing' # # for details, see http://www.debian.org/doc/debian-policy/ or # the debian-policy package # $1 = version of the package being upgraded. install() { TURNSERVER_GROUP=turnserver if ! getent group "$TURNSERVER_GROUP" >/dev/null; then addgroup --system "$TURNSERVER_GROUP" || exit 1 fi TURNSERVER_USER=turnserver if ! getent passwd "$TURNSERVER_USER" >/dev/null; then adduser --system \ --home / \ --shell /bin/false \ --no-create-home \ --ingroup "$TURNSERVER_GROUP" \ --disabled-password \ --disabled-login \ --gecos "turnserver daemon" \ "$TURNSERVER_USER" || exit 1 fi } case "$1" in configure) install "$2" ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/rules0000755000000000000000000000062312231665210010245 0ustar #!/usr/bin/make -f export DEB_BUILD_MAINT_OPTIONS = hardening=+all DPKG_EXPORT_BUILDFLAGS = 1 include /usr/share/dpkg/buildflags.mk # Uncomment this to turn on verbose mode. export DH_VERBOSE=1 # This has to be exported to make some magic below work. export DH_OPTIONS override_dh_auto_install: true override_dh_auto_configure: dh_auto_configure -- --disable-rpath %: dh $@ --builddirectory=. debian/source/0000755000000000000000000000000012145023574010471 5ustar debian/source/format0000644000000000000000000000001412137407426011702 0ustar 3.0 (quilt) debian/rfc5766-turn-server.install0000644000000000000000000001257112271336505014164 0ustar bin/turnserver usr/bin bin/turnadmin usr/bin bin/turnutils_peer usr/bin bin/turnutils_stunclient usr/bin bin/turnutils_uclient usr/bin lib/libturnclient.a usr/lib turndb/schema.sql usr/share/rfc5766-turn-server turndb/schema.sql usr/share/doc/rfc5766-turn-server turndb/testredisdbsetup.sh usr/share/rfc5766-turn-server turndb/schema.userdb.redis usr/share/rfc5766-turn-server turndb/schema.userdb.redis usr/share/doc/rfc5766-turn-server turndb/schema.stats.redis usr/share/rfc5766-turn-server turndb/schema.stats.redis usr/share/doc/rfc5766-turn-server examples/etc/turnserver.conf etc examples/etc/turnuserdb.conf etc examples/etc/turnserver.conf usr/share/rfc5766-turn-server/examples/etc examples/etc/turnuserdb.conf usr/share/rfc5766-turn-server/examples/etc examples/etc/turn_client_cert.pem usr/share/rfc5766-turn-server/examples/etc examples/etc/turn_client_pkey.pem usr/share/rfc5766-turn-server/examples/etc examples/etc/turn_server_cert.pem usr/share/rfc5766-turn-server/examples/etc examples/etc/turn_server_pkey.pem usr/share/rfc5766-turn-server/examples/etc examples/scripts/readme.txt usr/share/rfc5766-turn-server/examples/scripts examples/scripts/peer.sh usr/share/rfc5766-turn-server/examples/scripts examples/scripts/basic/relay.sh usr/share/rfc5766-turn-server/examples/scripts/basic examples/scripts/basic/tcp_client_c2c_tcp_relay.sh usr/share/rfc5766-turn-server/examples/scripts/basic examples/scripts/basic/udp_c2c_client.sh usr/share/rfc5766-turn-server/examples/scripts/basic examples/scripts/basic/udp_client.sh usr/share/rfc5766-turn-server/examples/scripts/basic examples/scripts/basic/tcp_client.sh usr/share/rfc5766-turn-server/examples/scripts/basic examples/scripts/loadbalance/master_relay.sh usr/share/rfc5766-turn-server/examples/scripts/loadbalance examples/scripts/loadbalance/slave_relay_1.sh usr/share/rfc5766-turn-server/examples/scripts/loadbalance examples/scripts/loadbalance/slave_relay_2.sh usr/share/rfc5766-turn-server/examples/scripts/loadbalance examples/scripts/loadbalance/udp_c2c.sh usr/share/rfc5766-turn-server/examples/scripts/loadbalance examples/scripts/loadbalance/tcp_c2c_tcp_relay.sh usr/share/rfc5766-turn-server/examples/scripts/loadbalance examples/scripts/longtermsecure/secure_dtls_client.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_dtls_client_cert.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_tls_client_cert.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_relay.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_relay_cert.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_tcp_client_c2c_tcp_relay.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_tcp_client.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_tls_client_c2c_tcp_relay.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_tls_client.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_udp_c2c.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecure/secure_udp_client.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecure examples/scripts/longtermsecuredb/secure_relay_with_db_psql.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecuredb examples/scripts/longtermsecuredb/secure_relay_with_db_mysql.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecuredb examples/scripts/longtermsecuredb/secure_relay_with_db_redis.sh usr/share/rfc5766-turn-server/examples/scripts/longtermsecuredb examples/scripts/selfloadbalance/secure_relay.sh usr/share/rfc5766-turn-server/examples/scripts/selfloadbalance examples/scripts/selfloadbalance/secure_dos_attack.sh usr/share/rfc5766-turn-server/examples/scripts/selfloadbalance examples/scripts/restapi/secure_relay_secret.sh usr/share/rfc5766-turn-server/examples/scripts/restapi examples/scripts/restapi/secure_relay_secret_with_db_mysql.sh usr/share/rfc5766-turn-server/examples/scripts/restapi examples/scripts/restapi/secure_relay_secret_with_db_psql.sh usr/share/rfc5766-turn-server/examples/scripts/restapi examples/scripts/restapi/secure_relay_secret_with_db_redis.sh usr/share/rfc5766-turn-server/examples/scripts/restapi examples/scripts/restapi/secure_udp_client_with_secret.sh usr/share/rfc5766-turn-server/examples/scripts/restapi examples/scripts/restapi/shared_secret_maintainer.pl usr/share/rfc5766-turn-server/examples/scripts/restapi examples/scripts/shorttermsecure/secure_tcp_client_c2c_tcp_relay_short_term.sh usr/share/rfc5766-turn-server/examples/scripts/shorttermsecure examples/scripts/shorttermsecure/secure_udp_client_short_term.sh usr/share/rfc5766-turn-server/examples/scripts/shorttermsecure examples/scripts/shorttermsecure/secure_relay_short_term_mech.sh usr/share/rfc5766-turn-server/examples/scripts/shorttermsecure include/turn/ns_turn_defs.h usr/include/turn include/turn/client/TurnMsgLib.h usr/include/turn include/turn/client/ns_turn_ioaddr.h usr/include/turn include/turn/client/ns_turn_msg.h usr/include/turn include/turn/client/ns_turn_msg_addr.h usr/include/turn include/turn/client/ns_turn_msg_defs.h usr/include/turn debian/rfc5766-turn-server.postrm0000644000000000000000000000071312137407426014037 0ustar #!/bin/sh set -e TURNSERVER_USER=turnserver TURNSERVER_GROUP=turnserver if [ "$1" = "purge" ] ; then if getent passwd $TURNSERVER_USER >/dev/null; then userdel $TURNSERVER_USER fi if getent group $TURNSERVER_GROUP >/dev/null; then groupdel $TURNSERVER_GROUP fi fi # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0