summaryrefslogtreecommitdiffstats
path: root/sys/netinet/libalias/alias_local.h
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2000-10-30 12:39:41 +0000
committerru <ru@FreeBSD.org>2000-10-30 12:39:41 +0000
commit390de194cd65ae4f4284ca22f4b0c0bf48c41b04 (patch)
treed2c51d699062565136879cc42dc72ff6ccab67a5 /sys/netinet/libalias/alias_local.h
parenta2cdf6684f245866048a91f755248dcaedc075bc (diff)
downloadFreeBSD-src-390de194cd65ae4f4284ca22f4b0c0bf48c41b04.zip
FreeBSD-src-390de194cd65ae4f4284ca22f4b0c0bf48c41b04.tar.gz
A significant rewrite of PPTP aliasing code.
PPTP links are no longer dropped by simple (and inappropriate in this case) "inactivity timeout" procedure, only when requested through the control connection. It is now possible to have multiple PPTP servers running behind NAT. Just redirect the incoming TCP traffic to port 1723, everything else is done transparently. Problems were reported and the fix was tested by: Michael Adler <Michael.Adler@compaq.com>, David Andersen <dga@lcs.mit.edu>
Diffstat (limited to 'sys/netinet/libalias/alias_local.h')
-rw-r--r--sys/netinet/libalias/alias_local.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/sys/netinet/libalias/alias_local.h b/sys/netinet/libalias/alias_local.h
index f916d21..bd2aa75 100644
--- a/sys/netinet/libalias/alias_local.h
+++ b/sys/netinet/libalias/alias_local.h
@@ -108,10 +108,19 @@ struct alias_link *
FindUdpTcpOut(struct in_addr, struct in_addr, u_short, u_short, u_char);
struct alias_link *
-FindPptpIn(struct in_addr, struct in_addr, u_short);
+AddPptp(struct in_addr, struct in_addr, struct in_addr, u_int16_t);
struct alias_link *
-FindPptpOut(struct in_addr, struct in_addr, u_short);
+FindPptpOutByCallId(struct in_addr, struct in_addr, u_int16_t);
+
+struct alias_link *
+FindPptpInByCallId(struct in_addr, struct in_addr, u_int16_t);
+
+struct alias_link *
+FindPptpOutByPeerCallId(struct in_addr, struct in_addr, u_int16_t);
+
+struct alias_link *
+FindPptpInByPeerCallId(struct in_addr, struct in_addr, u_int16_t);
struct alias_link *
QueryUdpTcpIn (struct in_addr, struct in_addr, u_short, u_short, u_char);
@@ -159,6 +168,7 @@ void SetExpire(struct alias_link *, int);
void ClearCheckNewLink(void);
void SetLastLineCrlfTermed(struct alias_link *, int);
int GetLastLineCrlfTermed(struct alias_link *);
+void SetDestCallId(struct alias_link *, u_int16_t);
#ifndef NO_FW_PUNCH
void PunchFWHole(struct alias_link *);
#endif
@@ -180,10 +190,10 @@ void AliasHandleIrcOut(struct ip *, struct alias_link *, int);
void AliasHandleRtspOut(struct ip *, struct alias_link *, int);
/* PPTP routines */
-int PptpGetCallID(struct ip *, u_short *);
-void PptpSetCallID(struct ip *, u_short);
void AliasHandlePptpOut(struct ip *, struct alias_link *);
void AliasHandlePptpIn(struct ip *, struct alias_link *);
+int AliasHandlePptpGreOut(struct ip *);
+int AliasHandlePptpGreIn(struct ip *);
/* NetBIOS routines */
int AliasHandleUdpNbt(struct ip *, struct alias_link *, struct in_addr *, u_short);
OpenPOWER on IntegriCloud