* Added a few extra files that exist in the svn repo but were
not being copied into the tarball by make dist.
* Fixup null interface on close, don't use ip addr flush (Alon Bar-Lev).
* Fixed options checking bug introduced in rc5 where legitimate configuration
files might elicit the error: "Options error: Parameter pkcs11_private_mode
can only be specified in TLS-mode, i.e. where --tls-server or --tls-client
is also specified."
* Added "forget-passwords" command to the management interface
(Alon Bar-Lev).
* Added --management-signal option to signal SIGUSR1 when the
management interface disconnects (Alon Bar-Lev).
* Modified command line and config file parser to allow
quoted strings using single quotes ('') (Alon Bar-Lev).
* Use pkcs11-helper as external library, can be downloaded from
https://www.opensc-project.org/pkcs11-helper (Alon Bar-Lev).
* Fixed interim memory growth issue in TCP connect loop where
"TCP: connect to %s failed, will try again in %d seconds: %s"
is output.
* Fixed bug in epoll driver in event.c, where the lack of a
handler for EPOLLHUP could cause 99% CPU usage.
* Defined ALLOW_NON_CBC_CIPHERS for people who don't
want to use a CBC cipher for OpenVPN's data channel.
* Added PLUGIN_LIBDIR preprocessor string to prepend a default
plugin directory to the dlopen search list when the user
specifies the basename of the plugin only (Marius Tomaschewski).
* Rewrote extract_x509_field and modified COMMON_NAME_CHAR_CLASS
to allow forward slash characters ("/") in the X509 common name
(Pavel Shramov).
* Allow OpenVPN to run completely unprivileged under Linux
by allowing openvpn --mktun to be used with --user and --group
to set the UID/GID of the tun device node. Also added --iproute
option to allow an alternative command to be executed in place
of the default iproute2 command (Alon Bar-Lev).
* Fixed --disable-iproute2 in ./configure to actually disable
iproute2 usage (Alon Bar-Lev).
* Added --management-forget-disconnect option -- forget
passwords when management session disconnects (Alon Bar-Lev).
* Fixed 64-bit portability bug in time_string function
(Thomas Habets).
* Clean up configure on FreeBSD for recent autotool versions
that require that all .h files have to be compiled.
Also, FreeBSD install does not support GNU long options
which the Makefile in easy-rsa/2.0 uses (not checked the
others as we don't install those on Gentoo) (Roy Marples).
Added optional minimum-number-of-bytes parameter to --inactive directive.
Added --route-metric option to set a default route metric for --route
Added --lladdr option to specify the link layer (MAC) address
for the tap interface on non-Windows platforms
Security Vulnerability CVE-2006-1629
Extended tun device configure code to support ethernet bridging on NetBSD
Added --port-share option for allowing OpenVPN and HTTPS
server to share the same port number.
Added --management-client option to connect as a client to management GUI app
rather than be connected to as a server.
Added "bytecount" command to management interface.
Added --connect-timeout option to control the timeout on TCP client
connection attempts (doesn't work on all OSes). This patch also
makes OpenVPN signalable during TCP connection attempts.
Allow ca, cert, key, and dh files to be specified inline via XML-like syntax
without needing to reference an explicit file.
Allow plugin and push directives to have multi-line parameter lists
Added connect-retry-max option
Added a backtrack-hardened system time algorithm.
Added --remote-cert-ku, --remote-cert-eku, and
--remote-cert-tls options for verifying certificate attributes
Added PKCS#11 support
Added --bind option for TCP client connections
Made LZO setting pushable
Plus numerous bug fixes.
include:
Adding a highly scalable server for handling multiple TCP/UDP
clients over point-to-point TUN interfaces, all using a single
port number. The server has been designed so that it can run with
reduced privilege.
On the client side, "pull" has been added, which basically says
"accept certain config file options which the server pushes back
to you." The major win of the push/pull capability is that the
same client configuration file can be used on each client provided
each client has its own set of SSL/TLS keys which have been signed
by the master CA.
A management interface has been developed which can be used to
remotely control or centrally manage an OpenVPN daemon.
"remote" can now specify a set of machines, or a hostname can be
configured with multiple addresses in DNS. A server will be
randomly chosen from the list, and if the connect fails, another
will be tried (see the "remote-random" option)
A package for easy RSA key management (easy-rsa-2.0rc1) has been
included to aid in generating SSL keys and certificates for use
with OpenVPN.