summaryrefslogtreecommitdiffstats
path: root/lib/libalias
diff options
context:
space:
mode:
authormarcus <marcus@FreeBSD.org>2004-08-04 15:17:08 +0000
committermarcus <marcus@FreeBSD.org>2004-08-04 15:17:08 +0000
commitc8262f39d15a635a4b08d58069e1fc39b958d25a (patch)
treeacf27073ad2428784b15d876e0aee0257e0f253b /lib/libalias
parent32267598119fd3565044cbc4165754ad0d333180 (diff)
downloadFreeBSD-src-c8262f39d15a635a4b08d58069e1fc39b958d25a.zip
FreeBSD-src-c8262f39d15a635a4b08d58069e1fc39b958d25a.tar.gz
Fix Skinny and PPTP NAT'ing after the introduction of the {ip,tcp,udp}_next
functions. Basically, the ip_next() function was used to get the PPTP and Skinny headers when tcp_next() should have been used instead. Symptoms of this included a segfault in natd when trying to process a PPTP or Skinny packet. Approved by: des
Diffstat (limited to 'lib/libalias')
-rw-r--r--lib/libalias/alias_pptp.c2
-rw-r--r--lib/libalias/alias_skinny.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/libalias/alias_pptp.c b/lib/libalias/alias_pptp.c
index 174780f..05722b1 100644
--- a/lib/libalias/alias_pptp.c
+++ b/lib/libalias/alias_pptp.c
@@ -300,7 +300,7 @@ AliasVerifyPptp(struct ip *pip, u_int16_t * ptype)
return (NULL);
/* Move up to PPTP message header */
- hptr = (PptpMsgHead) ip_next(pip);
+ hptr = (PptpMsgHead) tcp_next(tc);
/* Return the control message type */
*ptype = ntohs(hptr->type);
diff --git a/lib/libalias/alias_skinny.c b/lib/libalias/alias_skinny.c
index fccecc6..74c283c 100644
--- a/lib/libalias/alias_skinny.c
+++ b/lib/libalias/alias_skinny.c
@@ -228,7 +228,7 @@ AliasHandleSkinny(struct libalias *la, struct ip *pip, struct alias_link *lnk)
tlen = ntohs(pip->ip_len);
dlen = tlen - hlen;
- sd = (struct skinny_header *)ip_next(pip);
+ sd = (struct skinny_header *)tcp_next(tc);
/*
* XXX This direction is reserved for future use. I still need to
OpenPOWER on IntegriCloud