1$FreeBSD$ 2 3Version 1.0: August 11, 1996 (cjm) 4 5Version 1.1: August 20, 1996 (cjm) 6 - Host accepts incoming connections for ports 0 to 1023. 7 8Version 1.2: September 7, 1996 (cjm) 9 - Fragment handling error in alias_db.c corrected. 10 11Version 1.3: September 15, 1996 (cjm) 12 - Generalized mechanism for handling incoming 13 connections (no more 0 to 1023 restriction). 14 15 - Increased ICMP support (will handle traceroute now). 16 17 - Improved TCP close connection logic. 18 19Version 1.4: September 16, 1996 (cjm) 20 21Version 1.5: September 17, 1996 (cjm) 22 - Corrected error in handling incoming UDP packets 23 with zero checksum. 24 25Version 1.6: September 18, 1996 26 - Simplified ICMP data storage. Will now handle 27 tracert from Win95 and NT as well as FreeBSD 28 traceroute, which uses UDP packets to non-existent 29 ports. 30 31Version 1.7: January 9, 1997 (cjm) 32 - Reduced malloc() activity for ICMP echo and 33 timestamp requests. 34 35 - Added handling for out-of-order IP fragments. 36 37 - Switched to differential checksum computation 38 for IP headers (TCP, UDP and ICMP checksums 39 were already differential). 40 41 - Accepts FTP data connections from other than 42 port 20. This allows one ftp connections 43 from two hosts which are both running packet 44 aliasing. 45 46 - Checksum error on FTP transfers. Problem 47 in code located by Martin Renters and 48 Brian Somers. 49 50Version 1.8: January 14, 1997 (cjm) 51 - Fixed data type error in function StartPoint() 52 in alias_db.c (this bug did not exist before v1.7) 53 Problem in code located by Ari Suutari. 54 55Version 1.9: February 1, 1997 (Eivind Eklund <perhaps@yes.no>) 56 - Added support for IRC DCC (ee) 57 58 - Changed the aliasing routines to use ANSI style 59 throughout (ee) 60 61 - Minor API changes for integration with other 62 programs than PPP (ee) 63 64 - Fixed minor security hole in alias_ftp.c for 65 other applications of the aliasing software. 66 Hole could _not_ manifest in ppp+pktAlias, but 67 could potentially manifest in other applications 68 of the aliasing. (ee) 69 70 - Connections initiated from packet aliasing 71 host machine will not have their port number 72 aliased unless it conflicts with an aliasing 73 port already being used. (There is an option 74 to disable this for debugging) (cjm) 75 76 - Sockets will be allocated in cases where 77 there might be port interference with the 78 host machine. This can be disabled in cases 79 where the ppp host will be acting purely as a 80 masquerading router and not generate any 81 traffic of its own. 82 (cjm) 83 84Version 2.0: March, 1997 (cjm) 85 - Aliasing links are cleared only when a host interface address 86 changes. 87 88 - PacketAliasPermanentLink() API added. 89 90 - Option for only aliasing private, unregistered 91 IP addresses added. 92 93 - Substantial rework to the aliasing lookup engine. 94 95Version 2.1: May, 1997 (cjm) 96 - Continuing rework to the aliasing lookup engine 97 to support multiple incoming addresses and static 98 NAT. PacketAliasRedirectPort() and 99 PacketAliasRedirectAddr() added to API. 100 101 - Now supports outgoing as well as incoming ICMP 102 error messages. 103 104Version 2.2: July, 1997 (cjm) 105 - Rationalized API function names to all begin with 106 "PacketAlias..." Old function names are retained 107 for backwards compatibility. 108 109 - Packet aliasing engine will now free memory of 110 fragments which are never resolved after a timeout 111 period. Once a fragment is resolved, it becomes 112 the users responsibility to free the memory. 113 114Version 2.3: August 11, 1997 (cjm) 115 - Problem associated with socket file descriptor 116 accumulation in alias_db.c corrected. The sockets 117 had to be closed when a binding failed. Problem 118 in code located by Gordon Burditt. 119 120Version 2.4: September 1, 1997 (cjm) 121 - PKT_ALIAS_UNREGISTERED_ONLY option repaired. 122 This part of the code was incorrectly re-implemented 123 in version 2.1. 124 125Version 2.5: December, 1997 (ee) 126 - Added PKT_ALIAS_PUNCH_FW mode for firewall 127 bypass of FTP/IRC DCC data connections. Also added 128 improved TCP connection monitoring. 129 130Version 2.6: May, 1998 (amurai) 131 - Added supporting routine for NetBios over TCP/IP. 132 133Version 3.0: January 1, 1999 134 - Transparent proxying support added. 135 - PPTP redirecting support added based on patches 136 contributed by Dru Nelson <dnelson@redwoodsoft.com>. 137 138Version 3.1: May, 2000 (Erik Salander, erik@whistle.com) 139 - Added support to alias 227 replies, allows aliasing for 140 FTP servers in passive mode. 141 - Added support for PPTP aliasing. 142 143Version 3.2: July, 2000 (Erik Salander, erik@whistle.com and 144 Junichi Satoh, junichi@junichi.org) 145 - Added support for streaming media (RTSP and PNA) aliasing. 146 147Version 3.3: May 2021 (donner) 148 - Dropped LibAliasCheckNewLink 149 - Refactor the database handling 150 - Switch to more effienct SPLAY trees 151