diff options
author | ru <ru@FreeBSD.org> | 2000-06-20 11:41:48 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2000-06-20 11:41:48 +0000 |
commit | ee3c5d1c8dc4929f4d288d49eb0c5287d0b708a8 (patch) | |
tree | 5525c52e21d276f4675eafeacd5e7052d15107a6 /sys/netinet/libalias/alias_local.h | |
parent | d1a81625c5e5750b451ef7f8915b95f74f98dabf (diff) | |
download | FreeBSD-src-ee3c5d1c8dc4929f4d288d49eb0c5287d0b708a8.zip FreeBSD-src-ee3c5d1c8dc4929f4d288d49eb0c5287d0b708a8.tar.gz |
Added true support for PPTP aliasing. Some nice features include:
- Multiple PPTP clients behind NAT to the same or different servers.
- Single PPTP server behind NAT -- you just need to redirect TCP
port 1723 to a local machine. Multiple servers behind NAT is
possible but would require a simple API change.
- No API changes!
For more information on how this works see comments at the start of
the alias_pptp.c.
PacketAliasPptp() is no longer necessary and will be removed soon.
Submitted by: Erik Salander <erik@whistle.com>
Reviewed by: ru
Rewritten by: ru
Reviewed by: Erik Salander <erik@whistle.com>
Diffstat (limited to 'sys/netinet/libalias/alias_local.h')
-rw-r--r-- | sys/netinet/libalias/alias_local.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/netinet/libalias/alias_local.h b/sys/netinet/libalias/alias_local.h index 783f6b2..439c9ea 100644 --- a/sys/netinet/libalias/alias_local.h +++ b/sys/netinet/libalias/alias_local.h @@ -107,6 +107,12 @@ FindUdpTcpIn (struct in_addr, struct in_addr, u_short, u_short, u_char); 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); + +struct alias_link * +FindPptpOut(struct in_addr, struct in_addr, u_short); + struct in_addr FindOriginalAddress(struct in_addr); @@ -159,6 +165,12 @@ void AliasHandleFtpOut(struct ip *, struct alias_link *, int); /* IRC routines */ void AliasHandleIrcOut(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 *); + /* NetBIOS routines */ int AliasHandleUdpNbt(struct ip *, struct alias_link *, struct in_addr *, u_short); int AliasHandleUdpNbtNS(struct ip *, struct alias_link *, struct in_addr *, u_short *, struct in_addr *, u_short *); |