0
0
mirror of https://github.com/OpenVPN/openvpn3.git synced 2024-09-20 12:12:15 +02:00
Commit Graph

26 Commits

Author SHA1 Message Date
Lev Stipakov
aeb5ce0ad7 wintun: open device with SetupAPI
With introduction of ring buffers Wintun device
must be opened via SetupAPI.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2019-08-21 17:58:37 +03:00
Lev Stipakov
61794b0efd win: link OpenSSL dynamically
During Wintun performance testing it turned out that
dynamic linking provides better performance.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2019-06-20 10:34:38 +03:00
Lev Stipakov
89cc11b300 win: enable building Windows client with OpenSSL
Signed-off-by: Lev Stipakov <lev@openvpn.net>
2019-06-05 13:54:12 +03:00
Arne Schwabe
964662bacb Add /bigobj to build.py
The asio upgrade of 0.1.13 brought us over the limit of 65k
entitities in a single compilation unit. /bigobj allows more
methods

The ovpn3-core.vcxproj already uses this flag
2019-05-01 14:04:34 +02:00
Lev Stipakov
fc52fd8a58 [OC-78] proxy: support PROXY_AUTO_CONFIG_URL on Windows
Set proxy settings in registry:

HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings

If process is running under SYSTEM account, we impersonate to
logged-in user to access HKEY_CURRENT_USER.

After modifying proxy setting we need to tell Windows to refresh those,
we do it if process is running under user account. Unfortunately WinInet API
we use is not available for services, even with impersonation, so
user application should take care of refreshing settings.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2018-08-31 17:56:16 +03:00
Lev Stipakov
ac94b6eb7c
[OVPN3-206] Refactor Windows build system
Signed-off-by: Lev Stipakov <lev@openvpn.net>
2018-03-26 23:58:32 +08:00
Lev Stipakov
61bb21b369 win: make parameter optional
Added mandatory parameter broke Connect build.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2017-12-22 17:59:39 +08:00
Lev Stipakov
15d66c49d5 [OVPN3-141] win: disable WPO
Whole Program Optimization is broken on VS2017.

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2017-12-22 17:59:39 +08:00
Lev Stipakov
92a62169d4 build win: read certain params from env
Required for Jenkins multibrach pipeline build.

OVPN3-99

Signed-off-by: Lev Stipakov <lev@openvpn.net>
2017-12-22 17:59:38 +08:00
Lev Stipakov
8ae2a3f7cf Integrate Google Test framework
Implemented sample test for LogInfo class.

OVPN3-27
2017-09-27 16:16:18 +08:00
James Yonan
da99df6949 Windows: added /DUSE_ASIO to build script.
Because Asio use is now optional, USE_ASIO must be
explicitly defined by Windows build script.
2017-04-03 15:21:23 -06:00
James Yonan
0b1be12135 windows : updated build system to latest dependencies,
including mbedTLS 2.4.
2017-03-18 12:24:54 -06:00
James Yonan
df4c095ebe Minor changes to Windows build scripts due to reorganization
of asio and lz4 dependencies which are now based on github
snapshots.
2015-12-29 00:07:22 -07:00
James Yonan
18d01a1f55 In Windows build script (win/build.py), added a flag for
building OpenVPN Connect.
2015-11-10 23:10:00 -07:00
James Yonan
2a3a73bfe1 Windows build system changes:
* Support static linking via "STATIC" parm.

* New methods in utils.py: rm, rm_obj, vc_parms, zipdir.
2015-11-03 13:11:16 -07:00
James Yonan
f162a5b491 Windows: added WFP-based packet filter to prevent DNS leaks
when tunnel is active.

Based on ValdikSS's C patch for OpenVPN 2.x:
  3bd4d503d2
2015-11-02 20:19:04 -07:00
James Yonan
8cacebfd7a Modularize Windows build system to make it easier for external
scripts to drive it.
2015-11-01 00:46:55 -06:00
James Yonan
5c76a94bf2 Moved deps/win to win for ease of reference. 2015-10-30 20:06:49 -06:00
James Yonan
9373f515ee Cleaned up top-level directory by moving vars-* and dependency
build scripts to vars and deps.
2014-08-27 16:40:34 -06:00
James Yonan
3c28461021 Windows build script changes:
* Raised minimum deployment target to Vista (from XP).

* Added shell32.lib and ole32.lib to link path to
  accommodate calls to SHGetKnownFolderPath.
2014-02-20 17:27:55 -07:00
James Yonan
b84b48fb75 Ported to Windows.
Implemented full TunClient class for Windows with TAP driver
support.  For now, we use netsh (rather than TAP driver DHCP)
to set all tunnel adapter properties, as this appears to work
great on Windows 7.

IPv6 is fully supported.

Known isues:

* netsh doesn't have a command for adding DNS search domains, so
  we don't support them yet.

* While we always try to remove routes and added properties from
  TAP adapter instance when we close out the session, for robustness,
  when we bring up TAP adapter, we should try to delete any stale
  routes on interface left over from previous session.

* Right now we call netsh with system().  For security and
  compatibility with Windows apps (not only console apps),
  we should use CreateProcess instead.
2014-02-16 01:13:26 -07:00
James Yonan
11be089e3c Updated build system:
* Support VS 2013

To build cli.exe:

1. Edit parms.py

2. Build dependencies (OpenSSL, Boost):
   $ python $O3/win/buildep.py

3. Build cli:
   $ cd $O3/dist
   $ python $O3/win/build.py
2014-02-08 00:13:24 -07:00
James Yonan
3c99b8976b C++ core fixes for Windows. 2012-04-21 04:47:30 +00:00
James Yonan
98b159a35a Added Windows build script 2012-01-27 08:06:44 +00:00
James Yonan
d9e8a028c8 Ported core to Windows except for TAP driver support. 2012-01-25 08:32:27 +00:00
James Yonan
b457ec9d18 Windows build system now builds OpenSSL and Boost. 2012-01-24 23:05:44 +00:00