This adds optional support for using OpenVPN3 client
as an alternative to openvpn2.
Just replacing one client with another will not work:
- OpenVPN3 doesn't use interactive service, it uses
"agent" service with completely different protocol. OpenVPN GUI
needs to talk to agent using HTTP and JSON.
- OpenVPN3 management interface realtime notifications must be
explicitly turned on in order for GUI to work.
To enable using openvpn3:
- use any of *-ovpn3 presets (cmake build system)
- ./configure --enable-ovpn3 (mingw)
To switch betweet openvpn2 and openvpn3, see "OpenVPN Engine"
radiobutton group in Settings -> Advanced dialog.
OnReady() implementation was slighly changed - "log all on"
replaced with "log on all" - according to management interface
documentation this is the right way to do it, and also OpenVPN3
only supports "on all" order.
Management interface - enabled OpenVPN3 client (omiclient.exe) and
agent (ovpnagent.exe) are now part of openvpn3 repo.
Co-authored-by: Christopher Ng <facboy@gmail.com>
Signed-off-by: Christopher Ng <facboy@gmail.com>
Signed-off-by: Lev Stipakov <lev@openvpn.net>
The number of configs is now unlimited. But there is a limit
of 2^16 menu items which permits only about 2^12 configs to be
displayed in the menu. A warning is shown if the number of
configs exceeds this value.
For a responsive menu keep the number of configs under ~1000.
Signed-off-by: Selva Nair <selva.nair@gmail.com>
Also define WINVER used by some header files.
The change will help warn against use of API calls not in vista.
The original setting of this macro to _NTDDI_WINXP was wrong and
permitted use of any API not just those supported by WinXP. Build
is unaffected as we currently do not have any function calls not
present in Vista.
Signed-off-by: Selva Nair <selva.nair@gmail.com>
- Add PRODUCTVERSION to the VERSIONINFO resource.
Without this some versions of Windows (e.g., Server 2008 32bit)
displays Product version = 0.0.0.0, File version = 11.1.0.0
- Also define the file and product versions in the stringinfo block
as a stringified form of PACKAGE_VERSION_RESOURCE (e.g., "11.1.0.0").
Windows versions that take the Product version from this block
will now get the same value as older versions that use PRODUCTVERSION.
Signed-off-by: Selva Nair <selva.nair@gmail.com>
'make installer' will now spit out an openvpn-gui-installer.exe. The
location of the required makensis tool can be specified by appending
MAKENSIS=/path/to/makensis to the configure command line. Otherwise
it's searched for in your $PATH. The installer target is only available
when makensis is available.
You can now define up to how many configuration files you want
to support by stating something like
./configure MAX_CONFIGS=150 ...
when invoking configure. Default value remains 50.