summaryrefslogtreecommitdiffstats
path: root/lib/libalias
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2001-08-21 16:25:38 +0000
committerru <ru@FreeBSD.org>2001-08-21 16:25:38 +0000
commitcf9d9a36e74eb84e3862d971d304377261516114 (patch)
treec7bcf1bb0db598182cb1be4634abe68e7f11a6fd /lib/libalias
parentac9087fba1aabd729d17c7c9da351344d985e072 (diff)
downloadFreeBSD-src-cf9d9a36e74eb84e3862d971d304377261516114.zip
FreeBSD-src-cf9d9a36e74eb84e3862d971d304377261516114.tar.gz
Added TFTP support.
Submitted by: Joe Clarke <marcus@marcuscom.com> MFC after: 2 weeks
Diffstat (limited to 'lib/libalias')
-rw-r--r--lib/libalias/alias.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/libalias/alias.c b/lib/libalias/alias.c
index c279a9e..575f369 100644
--- a/lib/libalias/alias.c
+++ b/lib/libalias/alias.c
@@ -134,6 +134,7 @@
#define CUSEEME_PORT_NUMBER 7648
#define RTSP_CONTROL_PORT_NUMBER_1 554
#define RTSP_CONTROL_PORT_NUMBER_2 7070
+#define TFTP_PORT_NUMBER 69
#define PPTP_CONTROL_PORT_NUMBER 1723
@@ -837,6 +838,14 @@ UdpAliasOut(struct ip *pip)
|| ntohs(ud->uh_sport) == NETBIOS_NS_PORT_NUMBER)
AliasHandleUdpNbtNS(pip, link, &pip->ip_src, &ud->uh_sport,
&alias_address, &alias_port);
+/*
+ * We don't know in advance what TID the TFTP server will choose,
+ * so we create a wilcard link (destination port is unspecified)
+ * that will match any TID from a given destination.
+ */
+ else if (ntohs(ud->uh_dport) == TFTP_PORT_NUMBER)
+ FindRtspOut(pip->ip_src, pip->ip_dst,
+ ud->uh_sport, alias_port, IPPROTO_UDP);
/* If UDP checksum is not zero, adjust since source port is */
/* being aliased and source address is being altered */
OpenPOWER on IntegriCloud