debian/0000755000000000000000000000000011650322625007170 5ustar debian/changelog0000644000000000000000000000316011650275575011055 0ustar udptunnel (1.1-4) unstable; urgency=low * New maintainer (Closes: #590779) - Thanks to Chris Lamb * debian/control - New Vcs-* address - Standards-Version updated to 3.9.2 - No changes need * config.* is now updating with debhelper * Switch to dpkg-source 3.0 (quilt) format * DEP-3 in patches * DEP-5 in debian/copyright * debian/compat - Compatibility level to 8 -- Marcos Talau Fri, 21 Oct 2011 10:27:03 -0200 udptunnel (1.1-3) unstable; urgency=low * Update maintainer email address. * Update Git repository locations. * Use `dh_prep` over deprecated `dh_clean -k`. * Add patch description for 02-strlen-prototype.diff. -- Chris Lamb Mon, 16 Feb 2009 02:50:52 +0000 udptunnel (1.1-2) unstable; urgency=low * New maintainer (Closes: #472603) * Acknowledge NMU (Closes: #254834) * Rework packaging: - Move to debhelper 7. - Extract patches and adopt quilt patch system. - Move manpage to under debian/. - Add Build-Depends on autotools-dev. - Move to machine-parsable debian/copyright. - Add debian/watch file. * Add 02-strlen-prototype.diff to avoid implicit definition of strlen(). -- Chris Lamb Thu, 28 Aug 2008 07:42:58 +0100 udptunnel (1.1-1.1) unstable; urgency=low * NMU: Change htons()->htonl() to fix multicast (Closes: #254834). -- Paul Sladen Sun, 21 May 2006 15:00:02 +0100 udptunnel (1.1-1) unstable; urgency=low * Initial Release. -- Thomas Scheffczyk Wed, 2 Apr 2003 15:55:23 +0200 debian/compat0000644000000000000000000000000211650275575010401 0ustar 8 debian/control0000644000000000000000000000137311650275575010612 0ustar Source: udptunnel Section: net Priority: optional Maintainer: Marcos Talau Build-Depends: debhelper (>= 8), autotools-dev (>= 20100122.1) Standards-Version: 3.9.2 Homepage: http://www1.cs.columbia.edu/~lennox/udptunnel/ Vcs-Git: git://git.debian.org/git/collab-maint/udptunnel.git Vcs-Browser: http://git.debian.org/?p=collab-maint/udptunnel.git Package: udptunnel Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} Description: tunnel UDP packets over a TCP connection UDPTunnel is a small program which can tunnel UDP packets bi-directionally over a TCP connection. Its primary purpose (and original motivation) is to allow multi-media conferences to traverse a firewall which allows only outgoing TCP connections. debian/copyright0000644000000000000000000000376111650275575011145 0ustar Format: http://dep.debian.net/deps/dep5 Upstream-Name: UDPTunnel Upstream-Contact: Jonathan Lennox Source: http://www1.cs.columbia.edu/~lennox/udptunnel Files: * Copyright: Copyright © 1999, 2001 Columbia University. All rights reserved. License: BSD-3-clause 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 University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. Files: debian/* Copyright: 2011, Marcos Talau 2008-2009, Chris Lamb License: GPL-2+ 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 2 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, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . See /usr/share/common-licenses/GPL-2, or for the terms of the latest version of the GNU General Public License. debian/dirs0000644000000000000000000000001011650275575010056 0ustar usr/bin debian/docs0000644000000000000000000000000711650275575010053 0ustar README debian/manpages0000644000000000000000000000002311650275575010714 0ustar debian/udptunnel.1 debian/patches/0000755000000000000000000000000011650275575010632 5ustar debian/patches/01-multicast.diff0000644000000000000000000000116111650275575013706 0ustar Description: Fix issue where udptunnel was failing to receive packets sent to a multicast address. (See #254834). Author: singh_chinmay@extenprise.net --- udptunnel-1.1.orig/udptunnel.c +++ udptunnel-1.1/udptunnel.c @@ -217,7 +217,7 @@ (*relays)[i].udpaddr.sin_port = htons(udpport + i); (*relays)[i].udpaddr.sin_family = AF_INET; (*relays)[i].udp_ttl = udpttl; - (*relays)[i].multicast_udp = IN_MULTICAST(htons(udpaddr.s_addr)); + (*relays)[i].multicast_udp = IN_MULTICAST(htonl(udpaddr.s_addr)); (*relays)[i].tcpaddr.sin_addr = tcpaddr; (*relays)[i].tcpaddr.sin_port = htons(tcpport + i); debian/patches/02-strlen-prototype.diff0000644000000000000000000000112511650275575015254 0ustar Description: Include string.h header for strlen prototype for GCC 4.4. compatibility. Author: Chris Lamb diff -urNad /tmp/bp-build/udptunnel-1.1.orig.orig/host2ip.c /tmp/bp-build/udptunnel-1.1.orig/host2ip.c --- udptunnel-1.1.orig.orig/host2ip.c 2008-08-28 07:50:41.000000000 +0100 +++ udptunnel-1.1.orig/host2ip.c 2008-08-28 07:50:49.000000000 +0100 @@ -6,6 +6,7 @@ #include /* inet_addr() */ #include /* YP */ #include /* isspace() */ +#include /* strlen() */ #include "host2ip.h" debian/patches/series0000644000000000000000000000005311650275575012045 0ustar 01-multicast.diff 02-strlen-prototype.diff debian/rules0000755000000000000000000000006311650275575010262 0ustar #!/usr/bin/make -f %: dh $@ --with autotools_dev debian/source/0000755000000000000000000000000011650275575010503 5ustar debian/source/format0000644000000000000000000000001411650275575011711 0ustar 3.0 (quilt) debian/udptunnel.10000644000000000000000000001275711650275575011317 0ustar .TH "UDPTunnel" "1" "1.1" "Jonathan Lennox" "net" .SH "NAME" .LP udptunnel \- Tunnel UDP packets over a TCP connection .SH "SYNTAX" .LP udptunnel \-s TCP\-port [\-r] [\-v] UDP\-addr/UDP\-port[/ttl] .br udptunnel \-c TCP\-addr[/TCP\-port] [\-r] [\-v] UDP\-addr/UDP\-port[/ttl] .SH "DESCRIPTION" .LP UDPTunnel is a small program which can tunnel UDP packets bi\-directionally over a TCP connection. Its primary purpose (and original motivation) is to allow multi\-media conferences to traverse a firewall which allows only outgoing TCP connections. .SH "USAGE" UDPTunnel can be run in two modes: a client mode and a server mode. The client mode initiates the TCP connection before relaying UDP; the server waits for an incoming connection before doing so. After the TCP connection is established, the behavior of the two modes is identical. If you are using UDPTunnel to traverse a firewall as discussed above, the client would be run inside the firewall, and the server would be run outside it. .SH "OPTIONS" .IP "\fB\-s\fR TCP\-port" .I "\fBServer mode:\fR If udptunnel is invoked with the \-s option, it runs in server mode: the server will wait for an incoming connection on the specified TCP port, and then relay UDP to and from it." .IP "\fB\-c\fR TCP\-addr[/TCP\-port]" .I "\fBClient mode:\fR If udptunnel is invoked with the \-c option, it runs in client mode: it will open a TCP connection to the specified TCP host and port, and then relay UDP on it. The TCP port may be omitted in this case; it will default to the same port number as the UDP port." .IP "\fB\-r\fR" .I "\fBRTP mode:\fR In order to facilitate tunneling both RTP and RTCP traffic for a multi\-media conference, this sets up relays on two consecutive TCP and UDP ports. All specified port numbers in this case must be even. Note that both the client and the server must use the \-r flag for this to work; the server will not begin relaying packets until both its connections have been established." .IP "\fB\-v\fR" .I "\fBVerbose output:\fR This flag turns on verbose debugging output about UDPTunnel's actions. It may be given multiple times. With a single \-v, information about connection establishment is printed on UDPTunnel's standard error stream; with a second one, per\-packet information is also shown. Note that this latter case can produce a prodigious amount of information. If this flag is not given, UDPTunnel will remain silent unless an error occurs." .LP One of the two options \-c and \-s must be given; if not, it is an error. .LP In all cases, the UDP address and port to tunnel is given after all options. UDPTunnel will listen to this adddress for packets, and will send received packets on this address. The address may be a multicast address; in this case, a multicast TTL should be specified, and tunneled packets will be sent with this TTL. All addresses, TCP and UDP, may be specified either as an IPv4 dotted\-quad address (e.g. 224.2.0.1) or as a host name (e.g. conrail.cs.columbia.edu). Port numbers must be in the range of 1 to 65535; TTLs must be in the range 0 to 255. .SH "PACKET FORMAT" The packets are sent on TCP using the obvious, simple format: a sixteen\-bit length field, in network byte order, precedes each data packet. This format was proposed in early drafts of RTP for RTP\-over\-TCP, but was dropped from the final specification. .SH "KNOWN BUGS/ISSUES" UDPTunnel does not check incoming UDP packets to verify that they are indeed coming from the address which the user specified; it binds to INADDR_ANY, and accepts any UDP packet arriving on the specified port. This could potentially allow denial\-of\-service or spoofing attacks. If two or more \-v options are given, per\-packet identification will be printed of each packet's source address as it is received, allowing such a situation to be diagnosed. For multicast, UDPTunnel turns off packet loopback, as it has no way to distinguish its own packets it sent out from packets genuinely arriving on the multicast group. This means that if you are tunneling traffic from or to a multicast group, both ends of UDPTunnel must be run on different hosts than any member of the group. (In general, the only way to distinguish looped packets from packets genuinely received from other applications on the local host is with application\-layer labeling, as RTP does.) UDPTunnel is designed to tunnel RTP\-style traffic, in which applications send and receive UDP packets to and from the same port (or pair of ports). It does not support request/response\-style traffic, in which a client request is sent from a transient port X to a well\-known port Y, and the server's response is returned from port Y to port X. UDPTunnel deliberately ignores "Connection Refused" errors on the UDP port, clearing the socket error state, so that a tunnel may be set up before conferencing tools are started on both ends. This may mean that a mis\-typed UDP address or port is not recognized, as no error is printed. If two or more \-v options are given, a diagnostic will be printed whenever the error state is cleared from the socket. Once one endpoint of a tunnel is taken down, closing the socket, the other one exits as well; to re\-establish the tunnel, UDPTunnel must be restarted on both sides. IP version 6 is not supported. .SH "AUTHORS" .LP UDPTunnel was written by Jonathan Lennox . It incorporates code written by Henning Schulzrinne . .LP This manual page was written by Thomas Scheffczyk , for the Debian GNU/Linux system (but may be used by others). debian/watch0000644000000000000000000000011711650275575010233 0ustar version=3 http://www1.cs.columbia.edu/~lennox/udptunnel/ udptunnel-(.*).tar.gz