
TODO:

- fix reported random crash
  . could not reproduce yet
  . maybe fixed in 0.16 SIGPIPE change?
  . some reports suggest this was fixed in 0.16 (not sure though)
- program reported to choke under load
  . could not reproduce yet
- improve bind-addr config syntax
- non-forking version with support to forwarding port ranges?
- save master-process PID to a file
- support for generic IP forwarding (IPfwd-style)
- close sockets before exiting on SIGTERM
- transparent proxy for linux kernel 2.4.x
- passive ftp support for linux kernel 2.4.x
- Marc Merlin suggestions:
  - Transparent proxy control per ruleset.
  - Issue fatal errors to stderr.
  - Try to bind to local address multiple times (specified by user).
- option to specify range for local source port of
  outgoing sockets; this is useful for services like
  lpd, which expects connections from ports within range 721-731


CHANGES:

----
0.29
----

+ Fix compilation on 64-bit linux, bug 1722252, patch by Jose - agatocles

----
0.28
----

+ Compilation fix for g++ 3.4.

----
0.27
----

+ 'fragile' keyword added by Eric Duda.
+ FD_SETSIZE used by default fd limit in 'fd_set.h'.

----
0.26
----

+ Portability fix for Solaris: replace AF_LOCAL by AF_UNIX.
+ Portability fix for FreeBSD: #include <sys/types.h>.
+ CONFIG_IP_TRANSPARENT_PROXY added to README.
+ Fixes for gcc 3.2: new c++ header standard and std:: namespace.
+ Portability fix for AIX, contributed by Jens Wolter.
+ Fix for undue shutdown on child-inherited socket descriptor.
+ setsid() fix for daemonize() reported by Eric Duda.
+ RPM spec file provided by Richard Zidlicky.

----
0.25
----

+ External destination selector.
  + First invokation is hanging.
  + Pass actual incoming source address to get_addr()

----
0.24
----

+ Check for failure on creation of tcp outgoing socket.
+ Features added to README.

----
0.23
----

+ Option -g prevents Portfwd from forking into background.
+ Compilation under systems lacking MSG_PROXY.
+ Allow multiple destination addresses for simple round-robin load balancing.
  (See cfg/load-balance.cfg)
  + for TCP
  + for UDP
+ Allow specification of local source address for outgoing connections.
  Note: this overrides the transparent proxying.
  + for TCP
  + for UDP

----
0.22
----

+ Patrik Radman fix for UDP transparent proxy.
+ Applied Patrick Tullmann's patch to compile on FreeBSD-5.0-CURRENT.
+ Applied Marc Merlin's patch.

----
0.21
----

+ Anonymous fixes for compilation under Mandrake 8.0 (gcc 2.96 20000731).

----
0.20
----

+ Zachary Frederick suggestion:
  + On-the-fly name resolution.
+ Marc Merlin suggestion:
  + Fix Debian init script to prevent it from killing itself.

----
0.19
----

+ Alexander Bartolich #include's patch for RedHat 7.0.
+ README, COPYING, CREDITS, TODO added to automake.
+ Automake documentation directory moved to $(prefix)/doc/portfwd.

----
0.18
----

+ Paul D. Smith patches for non-local builds.
+ FreeBSD port and automake/autoconf support (thanks to Matthew Danish).
+ Solaris port (thanks to Rachel Polanskis).
+ Small fix -- changed incorrect htons(0) to ntohs(0).
+ Minimal man page.

----
0.17
----

+ Transparent proxy support: command line switch: -t
  + for TCP
  + for UDP

----
0.16
----

+ Some code cleanup.
+ Switch -v now issues the Portfwd version. The debug behavior was replaced
  by -d.
+ The debug switch (now -d) doesn't prevent Portfwd from daemonizing.
+ Forwarders ignore SIGPIPE, maybe fixing the unreproduced, reported,
  random crash bug.
+ Added debug levels. More -d switches, more verbose the logging.

----
0.15 
----

+ Decrease counter (maxfd) if possible, after freeing file descriptors.

----
0.14 
----

+ File descriptors leakage for ftp forwarding fixed. 
  (Thanks to Peter Surda)
+ Added some directory structure for the distribution.

----
0.13 
----

+ Warning messages fixed. It should compile on newer gcc now.

----
0.12
----

+ FAQ

----
0.11
----

+ Fix daemonize(): warning only message on tty detaching.
+ Remove tools from Makefile.

----
?.??
----
