Merge commit '82fea30fcce1d169de7ec42be84d079e0899519c' into feature/update-dependenies

This commit is contained in:
Sergey Abramchuk
2018-01-08 11:44:56 +03:00
437 changed files with 7377 additions and 2864 deletions
@@ -3,3 +3,10 @@ cli.exe
cli.obj
*.pdb
.vs
parms_local.py
Debug
x64
PropertySheet.props
*.VC.db
*.VC.opendb
*.vcxproj.user
+21 -3
View File
@@ -16,13 +16,19 @@ def src_fn(parms, srcfile):
srcfile = cli_cpp(parms)
return srcfile
def is_unit_test(argv):
unit_test = False
if len(argv) >= 2:
unit_test = argv[1] == "unittest"
return unit_test
def src_fn_argv(parms, argv):
srcfile = None
if len(argv) >= 1:
srcfile = argv[0]
return src_fn(parms, srcfile)
def build(parms, srcfile):
def build(parms, srcfile, unit_test=False):
# Debug?
if parms['DEBUG']:
dbg_rel_flags = "/Zi"
@@ -62,14 +68,26 @@ def build(parms, srcfile):
options['extra_lib_path'] += " /LIBPATH:%(jsoncpp)s/dist" % options
options['extra_lib'] += " jsoncpp.lib"
if unit_test:
options['extra_lib'] += " gtest.lib"
options['extra_inc'] += " /I %s" % os.path.join(parms["GTEST_ROOT"], "googletest", "include")
options['extra_lib_path'] += " /LIBPATH:%s" % os.path.join(parms["GTEST_ROOT"], "googlemock", "gtest", "Debug")
# Build OpenVPN Connect
if parms.get("CONNECT"):
options['extra_inc'] += " /I " + os.path.join(parms['OVPN3'], "common")
# build it
vc_cmd(parms, r"cl %(extra_defs)s /DNOMINMAX /D_CRT_SECURE_NO_WARNINGS /DUSE_ASIO /DASIO_STANDALONE /DASIO_NO_DEPRECATED /I %(asio)s\asio\include /DUSE_MBEDTLS /I %(mbedtls)s\include /DHAVE_LZ4 /I %(lz4)s%(extra_inc)s -DTAP_WIN_COMPONENT_ID=%(tap_component_id)s /I %(tap)s /I %(ovpn3)s\core /GL /EHsc %(link_static_dynamic_flags)s /W0 %(dbg_rel_flags)s /nologo %(srcfile)s /link /LIBPATH:%(mbedtls)s\library /LIBPATH:%(lz4)s%(extra_lib_path)s mbedtls.lib lz4.lib%(extra_lib)s ws2_32.lib crypt32.lib iphlpapi.lib winmm.lib user32.lib gdi32.lib advapi32.lib wininet.lib shell32.lib ole32.lib rpcrt4.lib" % options, arch=os.environ.get("ARCH"))
vc_cmd(parms, r"cl %(extra_defs)s /DNOMINMAX /D_CRT_SECURE_NO_WARNINGS /DUSE_ASIO /DASIO_STANDALONE /DASIO_NO_DEPRECATED /I %(asio)s\asio\include /DUSE_MBEDTLS /I %(mbedtls)s\include /DHAVE_LZ4 /I %(lz4)s%(extra_inc)s -DTAP_WIN_COMPONENT_ID=%(tap_component_id)s /I %(tap)s /I %(ovpn3)s\core /EHsc %(link_static_dynamic_flags)s /W0 %(dbg_rel_flags)s /nologo %(srcfile)s /link /LIBPATH:%(mbedtls)s\library /LIBPATH:%(lz4)s%(extra_lib_path)s mbedtls.lib lz4.lib%(extra_lib)s ws2_32.lib crypt32.lib iphlpapi.lib winmm.lib user32.lib gdi32.lib advapi32.lib wininet.lib shell32.lib ole32.lib rpcrt4.lib" % options, arch=os.environ.get("ARCH"))
if __name__ == "__main__":
import sys
from parms import PARMS
build(PARMS, src_fn_argv(PARMS, sys.argv[1:]))
# some parameters might be redefined, like in Jenkins multibranch pipeline case
PARMS['BUILD'] = os.environ.get('BUILD', PARMS['BUILD'])
PARMS['OVPN3'] = os.environ.get('OVPN3', PARMS['OVPN3'])
src = src_fn_argv(PARMS, sys.argv[1:])
unit_test = is_unit_test(sys.argv[1:])
build(PARMS, src, unit_test)
@@ -30,6 +30,9 @@ def build_mbedtls(parms):
d = expand('mbedtls', parms['DEP'], parms.get('LIB_VERSIONS'))
if d.endswith("-apache"):
d = d[:-7]
elif d.endswith("-gpl"):
d = d[:-4]
os.rename(d, dist)
# edit mbedTLS config.h
@@ -89,4 +92,10 @@ def build_all(parms):
if __name__ == "__main__":
from parms import PARMS
# some parameters might be redefined, like in Jenkins multibranch pipeline case
PARMS['BUILD'] = os.environ.get('BUILD', PARMS['BUILD'])
PARMS['OVPN3'] = os.environ.get('OVPN3', PARMS['OVPN3'])
PARMS['ARCH'] = os.environ.get('ARCH', PARMS['ARCH'])
build_all(PARMS)
@@ -0,0 +1,44 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cli", "ovpn3-core.vcxproj", "{1F891260-2039-494F-9777-EC5166AF31BC}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unittests", "..\test\unittests\unittests.vcxproj", "{18446924-20CC-4EB7-B639-A76C1422E5C2}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|ARM = Release|ARM
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1F891260-2039-494F-9777-EC5166AF31BC}.Debug|ARM.ActiveCfg = Debug|Win32
{1F891260-2039-494F-9777-EC5166AF31BC}.Debug|x64.ActiveCfg = Debug|x64
{1F891260-2039-494F-9777-EC5166AF31BC}.Debug|x64.Build.0 = Debug|x64
{1F891260-2039-494F-9777-EC5166AF31BC}.Debug|x86.ActiveCfg = Debug|Win32
{1F891260-2039-494F-9777-EC5166AF31BC}.Debug|x86.Build.0 = Debug|Win32
{1F891260-2039-494F-9777-EC5166AF31BC}.Release|ARM.ActiveCfg = Release|Win32
{1F891260-2039-494F-9777-EC5166AF31BC}.Release|x64.ActiveCfg = Release|x64
{1F891260-2039-494F-9777-EC5166AF31BC}.Release|x64.Build.0 = Release|x64
{1F891260-2039-494F-9777-EC5166AF31BC}.Release|x86.ActiveCfg = Release|Win32
{1F891260-2039-494F-9777-EC5166AF31BC}.Release|x86.Build.0 = Release|Win32
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Debug|ARM.ActiveCfg = Debug|Win32
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Debug|x64.ActiveCfg = Debug|x64
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Debug|x64.Build.0 = Debug|x64
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Debug|x86.ActiveCfg = Debug|Win32
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Debug|x86.Build.0 = Debug|Win32
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Release|ARM.ActiveCfg = Release|Win32
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Release|x64.ActiveCfg = Release|x64
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Release|x64.Build.0 = Release|x64
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Release|x86.ActiveCfg = Release|Win32
{18446924-20CC-4EB7-B639-A76C1422E5C2}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
@@ -0,0 +1,516 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\test\ovpncli\cli.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\client\ovpncli.hpp" />
<ClInclude Include="..\openvpn\addr\addrlist.hpp" />
<ClInclude Include="..\openvpn\addr\addrpair.hpp" />
<ClInclude Include="..\openvpn\addr\ip.hpp" />
<ClInclude Include="..\openvpn\addr\iperr.hpp" />
<ClInclude Include="..\openvpn\addr\ipv4.hpp" />
<ClInclude Include="..\openvpn\addr\ipv6.hpp" />
<ClInclude Include="..\openvpn\addr\macaddr.hpp" />
<ClInclude Include="..\openvpn\addr\pool.hpp" />
<ClInclude Include="..\openvpn\addr\range.hpp" />
<ClInclude Include="..\openvpn\addr\regex.hpp" />
<ClInclude Include="..\openvpn\addr\route.hpp" />
<ClInclude Include="..\openvpn\addr\routeinv.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\api.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\digest.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\hmac.hpp" />
<ClInclude Include="..\openvpn\applecrypto\ssl\sslctx.hpp" />
<ClInclude Include="..\openvpn\applecrypto\util\rand.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cf.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfhelper.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfhost.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfrunloop.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfsec.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfsocket.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfstream.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cftimer.hpp" />
<ClInclude Include="..\openvpn\apple\cf\error.hpp" />
<ClInclude Include="..\openvpn\apple\iosactiveiface.hpp" />
<ClInclude Include="..\openvpn\apple\maclife.hpp" />
<ClInclude Include="..\openvpn\apple\macsleep.hpp" />
<ClInclude Include="..\openvpn\apple\macver.hpp" />
<ClInclude Include="..\openvpn\apple\reach.hpp" />
<ClInclude Include="..\openvpn\apple\reachable.hpp" />
<ClInclude Include="..\openvpn\apple\scdynstore.hpp" />
<ClInclude Include="..\openvpn\apple\ver.hpp" />
<ClInclude Include="..\openvpn\asio\asioboundsock.hpp" />
<ClInclude Include="..\openvpn\asio\asiocontext.hpp" />
<ClInclude Include="..\openvpn\asio\asioerr.hpp" />
<ClInclude Include="..\openvpn\asio\asiopolysock.hpp" />
<ClInclude Include="..\openvpn\asio\asiosignal.hpp" />
<ClInclude Include="..\openvpn\asio\asiostop.hpp" />
<ClInclude Include="..\openvpn\asio\asiowork.hpp" />
<ClInclude Include="..\openvpn\asio\scoped_asio_stream.hpp" />
<ClInclude Include="..\openvpn\auth\authcert.hpp" />
<ClInclude Include="..\openvpn\auth\authcreds.hpp" />
<ClInclude Include="..\openvpn\auth\cr.hpp" />
<ClInclude Include="..\openvpn\auth\validatecreds.hpp" />
<ClInclude Include="..\openvpn\buffer\asiobuf.hpp" />
<ClInclude Include="..\openvpn\buffer\bufclamp.hpp" />
<ClInclude Include="..\openvpn\buffer\bufcomplete.hpp" />
<ClInclude Include="..\openvpn\buffer\bufcomposed.hpp" />
<ClInclude Include="..\openvpn\buffer\buffer.hpp" />
<ClInclude Include="..\openvpn\buffer\bufhex.hpp" />
<ClInclude Include="..\openvpn\buffer\buflimit.hpp" />
<ClInclude Include="..\openvpn\buffer\buflist.hpp" />
<ClInclude Include="..\openvpn\buffer\bufread.hpp" />
<ClInclude Include="..\openvpn\buffer\bufstr.hpp" />
<ClInclude Include="..\openvpn\buffer\bufstream.hpp" />
<ClInclude Include="..\openvpn\buffer\memq.hpp" />
<ClInclude Include="..\openvpn\buffer\safestr.hpp" />
<ClInclude Include="..\openvpn\buffer\zlib.hpp" />
<ClInclude Include="..\openvpn\client\cliconnect.hpp" />
<ClInclude Include="..\openvpn\client\cliconstants.hpp" />
<ClInclude Include="..\openvpn\client\clicreds.hpp" />
<ClInclude Include="..\openvpn\client\cliemuexr.hpp" />
<ClInclude Include="..\openvpn\client\clievent.hpp" />
<ClInclude Include="..\openvpn\client\clihalt.hpp" />
<ClInclude Include="..\openvpn\client\clilife.hpp" />
<ClInclude Include="..\openvpn\client\cliopt.hpp" />
<ClInclude Include="..\openvpn\client\cliopthelper.hpp" />
<ClInclude Include="..\openvpn\client\cliproto.hpp" />
<ClInclude Include="..\openvpn\client\ipverflags.hpp" />
<ClInclude Include="..\openvpn\client\optfilt.hpp" />
<ClInclude Include="..\openvpn\client\remotelist.hpp" />
<ClInclude Include="..\openvpn\client\rgopt.hpp" />
<ClInclude Include="..\openvpn\common\abort.hpp" />
<ClInclude Include="..\openvpn\common\action.hpp" />
<ClInclude Include="..\openvpn\common\actionthread.hpp" />
<ClInclude Include="..\openvpn\common\arch.hpp" />
<ClInclude Include="..\openvpn\common\argv.hpp" />
<ClInclude Include="..\openvpn\common\arraysize.hpp" />
<ClInclude Include="..\openvpn\common\asyncsleep.hpp" />
<ClInclude Include="..\openvpn\common\autoreset.hpp" />
<ClInclude Include="..\openvpn\common\base64.hpp" />
<ClInclude Include="..\openvpn\common\binprefix.hpp" />
<ClInclude Include="..\openvpn\common\circ_list.hpp" />
<ClInclude Include="..\openvpn\common\cleanup.hpp" />
<ClInclude Include="..\openvpn\common\core.hpp" />
<ClInclude Include="..\openvpn\common\count.hpp" />
<ClInclude Include="..\openvpn\common\daemon.hpp" />
<ClInclude Include="..\openvpn\common\demangle.hpp" />
<ClInclude Include="..\openvpn\common\destruct.hpp" />
<ClInclude Include="..\openvpn\common\endian.hpp" />
<ClInclude Include="..\openvpn\common\enumdir.hpp" />
<ClInclude Include="..\openvpn\common\environ.hpp" />
<ClInclude Include="..\openvpn\common\exception.hpp" />
<ClInclude Include="..\openvpn\common\extern.hpp" />
<ClInclude Include="..\openvpn\common\ffs.hpp" />
<ClInclude Include="..\openvpn\common\file.hpp" />
<ClInclude Include="..\openvpn\common\fileatomic.hpp" />
<ClInclude Include="..\openvpn\common\fileunix.hpp" />
<ClInclude Include="..\openvpn\common\format.hpp" />
<ClInclude Include="..\openvpn\common\function.hpp" />
<ClInclude Include="..\openvpn\common\getopt.hpp" />
<ClInclude Include="..\openvpn\common\getpw.hpp" />
<ClInclude Include="..\openvpn\common\glob.hpp" />
<ClInclude Include="..\openvpn\common\hash.hpp" />
<ClInclude Include="..\openvpn\common\hexstr.hpp" />
<ClInclude Include="..\openvpn\common\hostlist.hpp" />
<ClInclude Include="..\openvpn\common\hostname.hpp" />
<ClInclude Include="..\openvpn\common\hostport.hpp" />
<ClInclude Include="..\openvpn\common\inotify.hpp" />
<ClInclude Include="..\openvpn\common\lex.hpp" />
<ClInclude Include="..\openvpn\common\likely.hpp" />
<ClInclude Include="..\openvpn\common\link.hpp" />
<ClInclude Include="..\openvpn\common\logrotate.hpp" />
<ClInclude Include="..\openvpn\common\memneq.hpp" />
<ClInclude Include="..\openvpn\common\mode.hpp" />
<ClInclude Include="..\openvpn\common\msgwin.hpp" />
<ClInclude Include="..\openvpn\common\number.hpp" />
<ClInclude Include="..\openvpn\common\olong.hpp" />
<ClInclude Include="..\openvpn\common\options.hpp" />
<ClInclude Include="..\openvpn\common\ostream.hpp" />
<ClInclude Include="..\openvpn\common\path.hpp" />
<ClInclude Include="..\openvpn\common\peercred.hpp" />
<ClInclude Include="..\openvpn\common\persistfile.hpp" />
<ClInclude Include="..\openvpn\common\pipe.hpp" />
<ClInclude Include="..\openvpn\common\platform.hpp" />
<ClInclude Include="..\openvpn\common\platform_name.hpp" />
<ClInclude Include="..\openvpn\common\platform_string.hpp" />
<ClInclude Include="..\openvpn\common\process.hpp" />
<ClInclude Include="..\openvpn\common\pthreadcond.hpp" />
<ClInclude Include="..\openvpn\common\rc.hpp" />
<ClInclude Include="..\openvpn\common\redir.hpp" />
<ClInclude Include="..\openvpn\common\runcontext.hpp" />
<ClInclude Include="..\openvpn\common\scoped_fd.hpp" />
<ClInclude Include="..\openvpn\common\sess_id.hpp" />
<ClInclude Include="..\openvpn\common\signal.hpp" />
<ClInclude Include="..\openvpn\common\size.hpp" />
<ClInclude Include="..\openvpn\common\sleep.hpp" />
<ClInclude Include="..\openvpn\common\sockopt.hpp" />
<ClInclude Include="..\openvpn\common\socktypes.hpp" />
<ClInclude Include="..\openvpn\common\split.hpp" />
<ClInclude Include="..\openvpn\common\splitlines.hpp" />
<ClInclude Include="..\openvpn\common\stat.hpp" />
<ClInclude Include="..\openvpn\common\stop.hpp" />
<ClInclude Include="..\openvpn\common\strerror.hpp" />
<ClInclude Include="..\openvpn\common\string.hpp" />
<ClInclude Include="..\openvpn\common\stringize.hpp" />
<ClInclude Include="..\openvpn\common\stringtempl.hpp" />
<ClInclude Include="..\openvpn\common\tempfile.hpp" />
<ClInclude Include="..\openvpn\common\to_string.hpp" />
<ClInclude Include="..\openvpn\common\umask.hpp" />
<ClInclude Include="..\openvpn\common\unicode-impl.hpp" />
<ClInclude Include="..\openvpn\common\unicode.hpp" />
<ClInclude Include="..\openvpn\common\uniqueptr.hpp" />
<ClInclude Include="..\openvpn\common\usecount.hpp" />
<ClInclude Include="..\openvpn\common\usergroup.hpp" />
<ClInclude Include="..\openvpn\common\userpass.hpp" />
<ClInclude Include="..\openvpn\common\version.hpp" />
<ClInclude Include="..\openvpn\common\waitbarrier.hpp" />
<ClInclude Include="..\openvpn\common\write.hpp" />
<ClInclude Include="..\openvpn\common\wstring.hpp" />
<ClInclude Include="..\openvpn\compress\compnull.hpp" />
<ClInclude Include="..\openvpn\compress\compress.hpp" />
<ClInclude Include="..\openvpn\compress\compstub.hpp" />
<ClInclude Include="..\openvpn\compress\lz4.hpp" />
<ClInclude Include="..\openvpn\compress\lzo.hpp" />
<ClInclude Include="..\openvpn\compress\lzoasym.hpp" />
<ClInclude Include="..\openvpn\compress\lzoasym_impl.hpp" />
<ClInclude Include="..\openvpn\compress\lzoselect.hpp" />
<ClInclude Include="..\openvpn\compress\snappy.hpp" />
<ClInclude Include="..\openvpn\crypto\bs64_data_limit.hpp" />
<ClInclude Include="..\openvpn\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\crypto\cryptoalgs.hpp" />
<ClInclude Include="..\openvpn\crypto\cryptodc.hpp" />
<ClInclude Include="..\openvpn\crypto\cryptodcsel.hpp" />
<ClInclude Include="..\openvpn\crypto\crypto_aead.hpp" />
<ClInclude Include="..\openvpn\crypto\crypto_chm.hpp" />
<ClInclude Include="..\openvpn\crypto\decrypt_chm.hpp" />
<ClInclude Include="..\openvpn\crypto\digestapi.hpp" />
<ClInclude Include="..\openvpn\crypto\encrypt_chm.hpp" />
<ClInclude Include="..\openvpn\crypto\hashstr.hpp" />
<ClInclude Include="..\openvpn\crypto\ovpnhmac.hpp" />
<ClInclude Include="..\openvpn\crypto\packet_id.hpp" />
<ClInclude Include="..\openvpn\crypto\selftest.hpp" />
<ClInclude Include="..\openvpn\crypto\static_key.hpp" />
<ClInclude Include="..\openvpn\error\error.hpp" />
<ClInclude Include="..\openvpn\error\excode.hpp" />
<ClInclude Include="..\openvpn\frame\frame.hpp" />
<ClInclude Include="..\openvpn\frame\frame_init.hpp" />
<ClInclude Include="..\openvpn\frame\memq_dgram.hpp" />
<ClInclude Include="..\openvpn\frame\memq_stream.hpp" />
<ClInclude Include="..\openvpn\http\header.hpp" />
<ClInclude Include="..\openvpn\http\htmlskip.hpp" />
<ClInclude Include="..\openvpn\http\method.hpp" />
<ClInclude Include="..\openvpn\http\parseutil.hpp" />
<ClInclude Include="..\openvpn\http\reply.hpp" />
<ClInclude Include="..\openvpn\http\request.hpp" />
<ClInclude Include="..\openvpn\http\status.hpp" />
<ClInclude Include="..\openvpn\http\urlencode.hpp" />
<ClInclude Include="..\openvpn\http\urlparm.hpp" />
<ClInclude Include="..\openvpn\http\urlparse.hpp" />
<ClInclude Include="..\openvpn\http\webexcept.hpp" />
<ClInclude Include="..\openvpn\init\cryptoinit.hpp" />
<ClInclude Include="..\openvpn\init\engineinit.hpp" />
<ClInclude Include="..\openvpn\init\initprocess.hpp" />
<ClInclude Include="..\openvpn\io\io.hpp" />
<ClInclude Include="..\openvpn\ip\dhcp.hpp" />
<ClInclude Include="..\openvpn\ip\eth.hpp" />
<ClInclude Include="..\openvpn\ip\icmp.hpp" />
<ClInclude Include="..\openvpn\ip\ip.hpp" />
<ClInclude Include="..\openvpn\ip\udp.hpp" />
<ClInclude Include="..\openvpn\legal\copyright.hpp" />
<ClInclude Include="..\openvpn\linux\core.hpp" />
<ClInclude Include="..\openvpn\linux\daemon_alive.hpp" />
<ClInclude Include="..\openvpn\log\logbase.hpp" />
<ClInclude Include="..\openvpn\log\logbasesimple.hpp" />
<ClInclude Include="..\openvpn\log\lognull.hpp" />
<ClInclude Include="..\openvpn\log\logperiod.hpp" />
<ClInclude Include="..\openvpn\log\logsimple.hpp" />
<ClInclude Include="..\openvpn\log\logthread.hpp" />
<ClInclude Include="..\openvpn\log\sessionstats.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\api.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\ciphergcm.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\digest.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\hmac.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\dh.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\pkctx.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\x509cert.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\x509crl.hpp" />
<ClInclude Include="..\openvpn\mbedtls\ssl\sslctx.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\error.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\pkcs1.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\rand.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\selftest.hpp" />
<ClInclude Include="..\openvpn\netconf\enumiface.hpp" />
<ClInclude Include="..\openvpn\netconf\hwaddr.hpp" />
<ClInclude Include="..\openvpn\netconf\ios\net-route.h" />
<ClInclude Include="..\openvpn\netconf\linux\gw.hpp" />
<ClInclude Include="..\openvpn\netconf\linux\route.hpp" />
<ClInclude Include="..\openvpn\openssl\bio\bio_memq_dgram.hpp" />
<ClInclude Include="..\openvpn\openssl\bio\bio_memq_stream.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\api.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\ciphergcm.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\digest.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\hmac.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\crl.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\dh.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\pkey.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\x509.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\x509store.hpp" />
<ClInclude Include="..\openvpn\openssl\sign\pkcs7verify.hpp" />
<ClInclude Include="..\openvpn\openssl\sign\verify.hpp" />
<ClInclude Include="..\openvpn\openssl\ssl\sslctx.hpp" />
<ClInclude Include="..\openvpn\openssl\util\engine.hpp" />
<ClInclude Include="..\openvpn\openssl\util\error.hpp" />
<ClInclude Include="..\openvpn\openssl\util\init.hpp" />
<ClInclude Include="..\openvpn\openssl\util\rand.hpp" />
<ClInclude Include="..\openvpn\openssl\util\tokenencrypt.hpp" />
<ClInclude Include="..\openvpn\options\continuation.hpp" />
<ClInclude Include="..\openvpn\options\merge.hpp" />
<ClInclude Include="..\openvpn\options\sanitize.hpp" />
<ClInclude Include="..\openvpn\options\servpush.hpp" />
<ClInclude Include="..\openvpn\pki\cclist.hpp" />
<ClInclude Include="..\openvpn\pki\epkibase.hpp" />
<ClInclude Include="..\openvpn\pki\pkcs1.hpp" />
<ClInclude Include="..\openvpn\pki\x509track.hpp" />
<ClInclude Include="..\openvpn\proxy\httpdigest.hpp" />
<ClInclude Include="..\openvpn\proxy\ntlm.hpp" />
<ClInclude Include="..\openvpn\proxy\proxyauth.hpp" />
<ClInclude Include="..\openvpn\random\devurand.hpp" />
<ClInclude Include="..\openvpn\random\mtrandapi.hpp" />
<ClInclude Include="..\openvpn\random\randapi.hpp" />
<ClInclude Include="..\openvpn\random\randbytestore.hpp" />
<ClInclude Include="..\openvpn\reliable\relack.hpp" />
<ClInclude Include="..\openvpn\reliable\relcommon.hpp" />
<ClInclude Include="..\openvpn\reliable\relrecv.hpp" />
<ClInclude Include="..\openvpn\reliable\relsend.hpp" />
<ClInclude Include="..\openvpn\server\listenlist.hpp" />
<ClInclude Include="..\openvpn\server\manage.hpp" />
<ClInclude Include="..\openvpn\server\peeraddr.hpp" />
<ClInclude Include="..\openvpn\server\peerstats.hpp" />
<ClInclude Include="..\openvpn\server\servhalt.hpp" />
<ClInclude Include="..\openvpn\server\servproto.hpp" />
<ClInclude Include="..\openvpn\server\vpnservnetblock.hpp" />
<ClInclude Include="..\openvpn\server\vpnservpool.hpp" />
<ClInclude Include="..\openvpn\ssl\datalimit.hpp" />
<ClInclude Include="..\openvpn\ssl\is_openvpn_protocol.hpp" />
<ClInclude Include="..\openvpn\ssl\kuparse.hpp" />
<ClInclude Include="..\openvpn\ssl\mssparms.hpp" />
<ClInclude Include="..\openvpn\ssl\nscert.hpp" />
<ClInclude Include="..\openvpn\ssl\peerinfo.hpp" />
<ClInclude Include="..\openvpn\ssl\proto.hpp" />
<ClInclude Include="..\openvpn\ssl\protostack.hpp" />
<ClInclude Include="..\openvpn\ssl\proto_context_options.hpp" />
<ClInclude Include="..\openvpn\ssl\psid.hpp" />
<ClInclude Include="..\openvpn\ssl\sslapi.hpp" />
<ClInclude Include="..\openvpn\ssl\sslchoose.hpp" />
<ClInclude Include="..\openvpn\ssl\sslconsts.hpp" />
<ClInclude Include="..\openvpn\ssl\tlsprf.hpp" />
<ClInclude Include="..\openvpn\ssl\tlsver.hpp" />
<ClInclude Include="..\openvpn\ssl\tls_cert_profile.hpp" />
<ClInclude Include="..\openvpn\ssl\tls_remote.hpp" />
<ClInclude Include="..\openvpn\time\asiotimer.hpp" />
<ClInclude Include="..\openvpn\time\coarsetime.hpp" />
<ClInclude Include="..\openvpn\time\durhelper.hpp" />
<ClInclude Include="..\openvpn\time\time.hpp" />
<ClInclude Include="..\openvpn\time\timestr.hpp" />
<ClInclude Include="..\openvpn\transport\altproxy.hpp" />
<ClInclude Include="..\openvpn\transport\client\httpcli.hpp" />
<ClInclude Include="..\openvpn\transport\client\relay.hpp" />
<ClInclude Include="..\openvpn\transport\client\tcpcli.hpp" />
<ClInclude Include="..\openvpn\transport\client\transbase.hpp" />
<ClInclude Include="..\openvpn\transport\client\udpcli.hpp" />
<ClInclude Include="..\openvpn\transport\dco.hpp" />
<ClInclude Include="..\openvpn\transport\gremlin.hpp" />
<ClInclude Include="..\openvpn\transport\mutate.hpp" />
<ClInclude Include="..\openvpn\transport\pktstream.hpp" />
<ClInclude Include="..\openvpn\transport\protocol.hpp" />
<ClInclude Include="..\openvpn\transport\reconnect_notify.hpp" />
<ClInclude Include="..\openvpn\transport\server\transbase.hpp" />
<ClInclude Include="..\openvpn\transport\socket_protect.hpp" />
<ClInclude Include="..\openvpn\transport\tcplink.hpp" />
<ClInclude Include="..\openvpn\transport\udplink.hpp" />
<ClInclude Include="..\openvpn\tun\builder\base.hpp" />
<ClInclude Include="..\openvpn\tun\builder\capture.hpp" />
<ClInclude Include="..\openvpn\tun\builder\client.hpp" />
<ClInclude Include="..\openvpn\tun\builder\rgwflags.hpp" />
<ClInclude Include="..\openvpn\tun\builder\setup.hpp" />
<ClInclude Include="..\openvpn\tun\client\dhcp_capture.hpp" />
<ClInclude Include="..\openvpn\tun\client\emuexr.hpp" />
<ClInclude Include="..\openvpn\tun\client\tunbase.hpp" />
<ClInclude Include="..\openvpn\tun\client\tunnull.hpp" />
<ClInclude Include="..\openvpn\tun\client\tunprop.hpp" />
<ClInclude Include="..\openvpn\tun\extern\config.hpp" />
<ClInclude Include="..\openvpn\tun\extern\fw.hpp" />
<ClInclude Include="..\openvpn\tun\ipv6_setting.hpp" />
<ClInclude Include="..\openvpn\tun\layer.hpp" />
<ClInclude Include="..\openvpn\tun\linux\client\tuncli.hpp" />
<ClInclude Include="..\openvpn\tun\linux\tun.hpp" />
<ClInclude Include="..\openvpn\tun\mac\client\tuncli.hpp" />
<ClInclude Include="..\openvpn\tun\mac\client\tunsetup.hpp" />
<ClInclude Include="..\openvpn\tun\mac\gwv4.hpp" />
<ClInclude Include="..\openvpn\tun\mac\macdns.hpp" />
<ClInclude Include="..\openvpn\tun\mac\macdns_watchdog.hpp" />
<ClInclude Include="..\openvpn\tun\mac\macgw.hpp" />
<ClInclude Include="..\openvpn\tun\mac\tunutil.hpp" />
<ClInclude Include="..\openvpn\tun\mac\utun.hpp" />
<ClInclude Include="..\openvpn\tun\persist\tunpersist.hpp" />
<ClInclude Include="..\openvpn\tun\persist\tunwrap.hpp" />
<ClInclude Include="..\openvpn\tun\persist\tunwrapasio.hpp" />
<ClInclude Include="..\openvpn\tun\server\tunbase.hpp" />
<ClInclude Include="..\openvpn\tun\tunio.hpp" />
<ClInclude Include="..\openvpn\tun\tunlog.hpp" />
<ClInclude Include="..\openvpn\tun\tunmtu.hpp" />
<ClInclude Include="..\openvpn\tun\tunspec.hpp" />
<ClInclude Include="..\openvpn\tun\win\client\setupbase.hpp" />
<ClInclude Include="..\openvpn\tun\win\client\tuncli.hpp" />
<ClInclude Include="..\openvpn\tun\win\client\tunsetup.hpp" />
<ClInclude Include="..\openvpn\tun\win\nrpt.hpp" />
<ClInclude Include="..\openvpn\tun\win\tunutil.hpp" />
<ClInclude Include="..\openvpn\tun\win\wfp.hpp" />
<ClInclude Include="..\openvpn\win\call.hpp" />
<ClInclude Include="..\openvpn\win\cmd.hpp" />
<ClInclude Include="..\openvpn\win\console.hpp" />
<ClInclude Include="..\openvpn\win\handle.hpp" />
<ClInclude Include="..\openvpn\win\modname.hpp" />
<ClInclude Include="..\openvpn\win\reg.hpp" />
<ClInclude Include="..\openvpn\win\scoped_handle.hpp" />
<ClInclude Include="..\openvpn\win\sleep.hpp" />
<ClInclude Include="..\openvpn\win\unicode.hpp" />
<ClInclude Include="..\openvpn\win\winerr.hpp" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{1F891260-2039-494F-9777-EC5166AF31BC}</ProjectGuid>
<RootNamespace>ovpn3core</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
<ProjectName>cli</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v140</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>TurnOffAllWarnings</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>false</SDLCheck>
<AdditionalIncludeDirectories>$(OVPN3_BUILD)\amd64\mbedtls\include;$(OVPN3_TAP_WINDOWS)\src;$(OVPN3_BUILD)\amd64\asio\asio\include;$(OVPN3_BUILD)\amd64\lz4\lib;$(OVPN3_CORE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NOMINMAX;_WIN32_WINNT=0x0600;USE_ASIO;ASIO_STANDALONE;USE_MBEDTLS;HAVE_LZ4;TAP_WIN_COMPONENT_ID=tap0901;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(OVPN3_BUILD)\amd64\mbedtls\library;$(OVPN3_BUILD)\amd64\lz4\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>lz4.lib;mbedtls.lib;fwpuclnt.lib;ws2_32.lib;crypt32.lib;iphlpapi.lib;winmm.lib;advapi32.lib;wininet.lib;shell32.lib;ole32.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>TurnOffAllWarnings</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>false</SDLCheck>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NOMINMAX;_WIN32_WINNT=0x0600;USE_ASIO;ASIO_STANDALONE;USE_MBEDTLS;HAVE_LZ4;TAP_WIN_COMPONENT_ID=tap0901;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(OVPN3_BUILD)\amd64\mbedtls\include;$(OVPN3_TAP_WINDOWS)\src;$(OVPN3_BUILD)\amd64\asio\asio\include;$(OVPN3_BUILD)\amd64\lz4\lib;$(OVPN3_CORE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<SuppressStartupBanner>false</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(OVPN3_BUILD)\amd64\mbedtls\library;$(OVPN3_BUILD)\amd64\lz4\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>lz4.lib;mbedtls.lib;fwpuclnt.lib;ws2_32.lib;crypt32.lib;iphlpapi.lib;winmm.lib;advapi32.lib;wininet.lib;shell32.lib;ole32.lib;rpcrt4.lib</AdditionalDependencies>
<ShowProgress>NotSet</ShowProgress>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>TurnOffAllWarnings</WarningLevel>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>false</SDLCheck>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NOMINMAX;_WIN32_WINNT=0x0600;USE_ASIO;ASIO_STANDALONE;USE_MBEDTLS;HAVE_LZ4;TAP_WIN_COMPONENT_ID=tap0901;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(OVPN3_BUILD)\amd64\mbedtls\include;$(OVPN3_TAP_WINDOWS)\src;$(OVPN3_BUILD)\amd64\asio\asio\include;$(OVPN3_BUILD)\amd64\lz4\lib;$(OVPN3_CORE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(OVPN3_BUILD)\amd64\mbedtls\library;$(OVPN3_BUILD)\amd64\lz4\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>lz4.lib;mbedtls.lib;fwpuclnt.lib;ws2_32.lib;crypt32.lib;iphlpapi.lib;winmm.lib;advapi32.lib;wininet.lib;shell32.lib;ole32.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>TurnOffAllWarnings</WarningLevel>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>false</SDLCheck>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NOMINMAX;_WIN32_WINNT=0x0600;USE_ASIO;ASIO_STANDALONE;USE_MBEDTLS;HAVE_LZ4;TAP_WIN_COMPONENT_ID=tap0901;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(OVPN3_BUILD)\amd64\mbedtls\include;$(OVPN3_TAP_WINDOWS)\src;$(OVPN3_BUILD)\amd64\asio\asio\include;$(OVPN3_BUILD)\amd64\lz4\lib;$(OVPN3_CORE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalLibraryDirectories>$(OVPN3_BUILD)\amd64\mbedtls\library;$(OVPN3_BUILD)\amd64\lz4\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>lz4.lib;mbedtls.lib;fwpuclnt.lib;ws2_32.lib;crypt32.lib;iphlpapi.lib;winmm.lib;advapi32.lib;wininet.lib;shell32.lib;ole32.lib;rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
@@ -0,0 +1,384 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClCompile Include="..\test\ovpncli\cli.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\client\ovpncli.hpp" />
<ClInclude Include="..\openvpn\addr\addrlist.hpp" />
<ClInclude Include="..\openvpn\addr\addrpair.hpp" />
<ClInclude Include="..\openvpn\addr\ip.hpp" />
<ClInclude Include="..\openvpn\addr\iperr.hpp" />
<ClInclude Include="..\openvpn\addr\ipv4.hpp" />
<ClInclude Include="..\openvpn\addr\ipv6.hpp" />
<ClInclude Include="..\openvpn\addr\macaddr.hpp" />
<ClInclude Include="..\openvpn\addr\pool.hpp" />
<ClInclude Include="..\openvpn\addr\range.hpp" />
<ClInclude Include="..\openvpn\addr\regex.hpp" />
<ClInclude Include="..\openvpn\addr\route.hpp" />
<ClInclude Include="..\openvpn\addr\routeinv.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cf.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfhelper.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfhost.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfrunloop.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfsec.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfsocket.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cfstream.hpp" />
<ClInclude Include="..\openvpn\apple\cf\cftimer.hpp" />
<ClInclude Include="..\openvpn\apple\cf\error.hpp" />
<ClInclude Include="..\openvpn\apple\iosactiveiface.hpp" />
<ClInclude Include="..\openvpn\apple\maclife.hpp" />
<ClInclude Include="..\openvpn\apple\macsleep.hpp" />
<ClInclude Include="..\openvpn\apple\macver.hpp" />
<ClInclude Include="..\openvpn\apple\reach.hpp" />
<ClInclude Include="..\openvpn\apple\reachable.hpp" />
<ClInclude Include="..\openvpn\apple\scdynstore.hpp" />
<ClInclude Include="..\openvpn\apple\ver.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\api.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\digest.hpp" />
<ClInclude Include="..\openvpn\applecrypto\crypto\hmac.hpp" />
<ClInclude Include="..\openvpn\applecrypto\ssl\sslctx.hpp" />
<ClInclude Include="..\openvpn\applecrypto\util\rand.hpp" />
<ClInclude Include="..\openvpn\asio\asioboundsock.hpp" />
<ClInclude Include="..\openvpn\asio\asiocontext.hpp" />
<ClInclude Include="..\openvpn\asio\asioerr.hpp" />
<ClInclude Include="..\openvpn\asio\asiopolysock.hpp" />
<ClInclude Include="..\openvpn\asio\asiosignal.hpp" />
<ClInclude Include="..\openvpn\asio\asiostop.hpp" />
<ClInclude Include="..\openvpn\asio\asiowork.hpp" />
<ClInclude Include="..\openvpn\asio\scoped_asio_stream.hpp" />
<ClInclude Include="..\openvpn\auth\authcert.hpp" />
<ClInclude Include="..\openvpn\auth\authcreds.hpp" />
<ClInclude Include="..\openvpn\auth\cr.hpp" />
<ClInclude Include="..\openvpn\auth\validatecreds.hpp" />
<ClInclude Include="..\openvpn\buffer\asiobuf.hpp" />
<ClInclude Include="..\openvpn\buffer\bufclamp.hpp" />
<ClInclude Include="..\openvpn\buffer\bufcomplete.hpp" />
<ClInclude Include="..\openvpn\buffer\bufcomposed.hpp" />
<ClInclude Include="..\openvpn\buffer\buffer.hpp" />
<ClInclude Include="..\openvpn\buffer\bufhex.hpp" />
<ClInclude Include="..\openvpn\buffer\buflimit.hpp" />
<ClInclude Include="..\openvpn\buffer\buflist.hpp" />
<ClInclude Include="..\openvpn\buffer\bufread.hpp" />
<ClInclude Include="..\openvpn\buffer\bufstr.hpp" />
<ClInclude Include="..\openvpn\buffer\bufstream.hpp" />
<ClInclude Include="..\openvpn\buffer\memq.hpp" />
<ClInclude Include="..\openvpn\buffer\safestr.hpp" />
<ClInclude Include="..\openvpn\buffer\zlib.hpp" />
<ClInclude Include="..\openvpn\client\cliconnect.hpp" />
<ClInclude Include="..\openvpn\client\cliconstants.hpp" />
<ClInclude Include="..\openvpn\client\clicreds.hpp" />
<ClInclude Include="..\openvpn\client\cliemuexr.hpp" />
<ClInclude Include="..\openvpn\client\clievent.hpp" />
<ClInclude Include="..\openvpn\client\clihalt.hpp" />
<ClInclude Include="..\openvpn\client\clilife.hpp" />
<ClInclude Include="..\openvpn\client\cliopt.hpp" />
<ClInclude Include="..\openvpn\client\cliopthelper.hpp" />
<ClInclude Include="..\openvpn\client\cliproto.hpp" />
<ClInclude Include="..\openvpn\client\ipverflags.hpp" />
<ClInclude Include="..\openvpn\client\optfilt.hpp" />
<ClInclude Include="..\openvpn\client\remotelist.hpp" />
<ClInclude Include="..\openvpn\client\rgopt.hpp" />
<ClInclude Include="..\openvpn\common\abort.hpp" />
<ClInclude Include="..\openvpn\common\action.hpp" />
<ClInclude Include="..\openvpn\common\actionthread.hpp" />
<ClInclude Include="..\openvpn\common\arch.hpp" />
<ClInclude Include="..\openvpn\common\argv.hpp" />
<ClInclude Include="..\openvpn\common\arraysize.hpp" />
<ClInclude Include="..\openvpn\common\asyncsleep.hpp" />
<ClInclude Include="..\openvpn\common\autoreset.hpp" />
<ClInclude Include="..\openvpn\common\base64.hpp" />
<ClInclude Include="..\openvpn\common\binprefix.hpp" />
<ClInclude Include="..\openvpn\common\circ_list.hpp" />
<ClInclude Include="..\openvpn\common\cleanup.hpp" />
<ClInclude Include="..\openvpn\common\core.hpp" />
<ClInclude Include="..\openvpn\common\count.hpp" />
<ClInclude Include="..\openvpn\common\daemon.hpp" />
<ClInclude Include="..\openvpn\common\demangle.hpp" />
<ClInclude Include="..\openvpn\common\destruct.hpp" />
<ClInclude Include="..\openvpn\common\endian.hpp" />
<ClInclude Include="..\openvpn\common\enumdir.hpp" />
<ClInclude Include="..\openvpn\common\environ.hpp" />
<ClInclude Include="..\openvpn\common\exception.hpp" />
<ClInclude Include="..\openvpn\common\extern.hpp" />
<ClInclude Include="..\openvpn\common\ffs.hpp" />
<ClInclude Include="..\openvpn\common\file.hpp" />
<ClInclude Include="..\openvpn\common\fileatomic.hpp" />
<ClInclude Include="..\openvpn\common\fileunix.hpp" />
<ClInclude Include="..\openvpn\common\format.hpp" />
<ClInclude Include="..\openvpn\common\function.hpp" />
<ClInclude Include="..\openvpn\common\getopt.hpp" />
<ClInclude Include="..\openvpn\common\getpw.hpp" />
<ClInclude Include="..\openvpn\common\glob.hpp" />
<ClInclude Include="..\openvpn\common\hash.hpp" />
<ClInclude Include="..\openvpn\common\hexstr.hpp" />
<ClInclude Include="..\openvpn\common\hostlist.hpp" />
<ClInclude Include="..\openvpn\common\hostname.hpp" />
<ClInclude Include="..\openvpn\common\hostport.hpp" />
<ClInclude Include="..\openvpn\common\inotify.hpp" />
<ClInclude Include="..\openvpn\common\lex.hpp" />
<ClInclude Include="..\openvpn\common\likely.hpp" />
<ClInclude Include="..\openvpn\common\link.hpp" />
<ClInclude Include="..\openvpn\common\logrotate.hpp" />
<ClInclude Include="..\openvpn\common\memneq.hpp" />
<ClInclude Include="..\openvpn\common\mode.hpp" />
<ClInclude Include="..\openvpn\common\msgwin.hpp" />
<ClInclude Include="..\openvpn\common\number.hpp" />
<ClInclude Include="..\openvpn\common\olong.hpp" />
<ClInclude Include="..\openvpn\common\options.hpp" />
<ClInclude Include="..\openvpn\common\ostream.hpp" />
<ClInclude Include="..\openvpn\common\path.hpp" />
<ClInclude Include="..\openvpn\common\peercred.hpp" />
<ClInclude Include="..\openvpn\common\persistfile.hpp" />
<ClInclude Include="..\openvpn\common\pipe.hpp" />
<ClInclude Include="..\openvpn\common\platform.hpp" />
<ClInclude Include="..\openvpn\common\platform_name.hpp" />
<ClInclude Include="..\openvpn\common\platform_string.hpp" />
<ClInclude Include="..\openvpn\common\process.hpp" />
<ClInclude Include="..\openvpn\common\pthreadcond.hpp" />
<ClInclude Include="..\openvpn\common\rc.hpp" />
<ClInclude Include="..\openvpn\common\redir.hpp" />
<ClInclude Include="..\openvpn\common\runcontext.hpp" />
<ClInclude Include="..\openvpn\common\scoped_fd.hpp" />
<ClInclude Include="..\openvpn\common\sess_id.hpp" />
<ClInclude Include="..\openvpn\common\signal.hpp" />
<ClInclude Include="..\openvpn\common\size.hpp" />
<ClInclude Include="..\openvpn\common\sleep.hpp" />
<ClInclude Include="..\openvpn\common\sockopt.hpp" />
<ClInclude Include="..\openvpn\common\socktypes.hpp" />
<ClInclude Include="..\openvpn\common\split.hpp" />
<ClInclude Include="..\openvpn\common\splitlines.hpp" />
<ClInclude Include="..\openvpn\common\stat.hpp" />
<ClInclude Include="..\openvpn\common\stop.hpp" />
<ClInclude Include="..\openvpn\common\strerror.hpp" />
<ClInclude Include="..\openvpn\common\string.hpp" />
<ClInclude Include="..\openvpn\common\stringize.hpp" />
<ClInclude Include="..\openvpn\common\stringtempl.hpp" />
<ClInclude Include="..\openvpn\common\tempfile.hpp" />
<ClInclude Include="..\openvpn\common\to_string.hpp" />
<ClInclude Include="..\openvpn\common\umask.hpp" />
<ClInclude Include="..\openvpn\common\unicode-impl.hpp" />
<ClInclude Include="..\openvpn\common\unicode.hpp" />
<ClInclude Include="..\openvpn\common\uniqueptr.hpp" />
<ClInclude Include="..\openvpn\common\usecount.hpp" />
<ClInclude Include="..\openvpn\common\usergroup.hpp" />
<ClInclude Include="..\openvpn\common\userpass.hpp" />
<ClInclude Include="..\openvpn\common\version.hpp" />
<ClInclude Include="..\openvpn\common\waitbarrier.hpp" />
<ClInclude Include="..\openvpn\common\write.hpp" />
<ClInclude Include="..\openvpn\common\wstring.hpp" />
<ClInclude Include="..\openvpn\compress\compnull.hpp" />
<ClInclude Include="..\openvpn\compress\compress.hpp" />
<ClInclude Include="..\openvpn\compress\compstub.hpp" />
<ClInclude Include="..\openvpn\compress\lz4.hpp" />
<ClInclude Include="..\openvpn\compress\lzo.hpp" />
<ClInclude Include="..\openvpn\compress\lzoasym.hpp" />
<ClInclude Include="..\openvpn\compress\lzoasym_impl.hpp" />
<ClInclude Include="..\openvpn\compress\lzoselect.hpp" />
<ClInclude Include="..\openvpn\compress\snappy.hpp" />
<ClInclude Include="..\openvpn\crypto\bs64_data_limit.hpp" />
<ClInclude Include="..\openvpn\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\crypto\cryptoalgs.hpp" />
<ClInclude Include="..\openvpn\crypto\cryptodc.hpp" />
<ClInclude Include="..\openvpn\crypto\cryptodcsel.hpp" />
<ClInclude Include="..\openvpn\crypto\crypto_aead.hpp" />
<ClInclude Include="..\openvpn\crypto\crypto_chm.hpp" />
<ClInclude Include="..\openvpn\crypto\decrypt_chm.hpp" />
<ClInclude Include="..\openvpn\crypto\digestapi.hpp" />
<ClInclude Include="..\openvpn\crypto\encrypt_chm.hpp" />
<ClInclude Include="..\openvpn\crypto\hashstr.hpp" />
<ClInclude Include="..\openvpn\crypto\ovpnhmac.hpp" />
<ClInclude Include="..\openvpn\crypto\packet_id.hpp" />
<ClInclude Include="..\openvpn\crypto\selftest.hpp" />
<ClInclude Include="..\openvpn\crypto\static_key.hpp" />
<ClInclude Include="..\openvpn\error\error.hpp" />
<ClInclude Include="..\openvpn\error\excode.hpp" />
<ClInclude Include="..\openvpn\frame\frame.hpp" />
<ClInclude Include="..\openvpn\frame\frame_init.hpp" />
<ClInclude Include="..\openvpn\frame\memq_dgram.hpp" />
<ClInclude Include="..\openvpn\frame\memq_stream.hpp" />
<ClInclude Include="..\openvpn\http\header.hpp" />
<ClInclude Include="..\openvpn\http\htmlskip.hpp" />
<ClInclude Include="..\openvpn\http\method.hpp" />
<ClInclude Include="..\openvpn\http\parseutil.hpp" />
<ClInclude Include="..\openvpn\http\reply.hpp" />
<ClInclude Include="..\openvpn\http\request.hpp" />
<ClInclude Include="..\openvpn\http\status.hpp" />
<ClInclude Include="..\openvpn\http\urlencode.hpp" />
<ClInclude Include="..\openvpn\http\urlparm.hpp" />
<ClInclude Include="..\openvpn\http\urlparse.hpp" />
<ClInclude Include="..\openvpn\http\webexcept.hpp" />
<ClInclude Include="..\openvpn\init\cryptoinit.hpp" />
<ClInclude Include="..\openvpn\init\engineinit.hpp" />
<ClInclude Include="..\openvpn\init\initprocess.hpp" />
<ClInclude Include="..\openvpn\io\io.hpp" />
<ClInclude Include="..\openvpn\ip\dhcp.hpp" />
<ClInclude Include="..\openvpn\ip\eth.hpp" />
<ClInclude Include="..\openvpn\ip\icmp.hpp" />
<ClInclude Include="..\openvpn\ip\ip.hpp" />
<ClInclude Include="..\openvpn\ip\udp.hpp" />
<ClInclude Include="..\openvpn\legal\copyright.hpp" />
<ClInclude Include="..\openvpn\linux\core.hpp" />
<ClInclude Include="..\openvpn\linux\daemon_alive.hpp" />
<ClInclude Include="..\openvpn\log\logbase.hpp" />
<ClInclude Include="..\openvpn\log\logbasesimple.hpp" />
<ClInclude Include="..\openvpn\log\lognull.hpp" />
<ClInclude Include="..\openvpn\log\logperiod.hpp" />
<ClInclude Include="..\openvpn\log\logsimple.hpp" />
<ClInclude Include="..\openvpn\log\logthread.hpp" />
<ClInclude Include="..\openvpn\log\sessionstats.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\api.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\ciphergcm.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\digest.hpp" />
<ClInclude Include="..\openvpn\mbedtls\crypto\hmac.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\dh.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\pkctx.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\x509cert.hpp" />
<ClInclude Include="..\openvpn\mbedtls\pki\x509crl.hpp" />
<ClInclude Include="..\openvpn\mbedtls\ssl\sslctx.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\error.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\pkcs1.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\rand.hpp" />
<ClInclude Include="..\openvpn\mbedtls\util\selftest.hpp" />
<ClInclude Include="..\openvpn\netconf\enumiface.hpp" />
<ClInclude Include="..\openvpn\netconf\hwaddr.hpp" />
<ClInclude Include="..\openvpn\netconf\ios\net-route.h" />
<ClInclude Include="..\openvpn\netconf\linux\gw.hpp" />
<ClInclude Include="..\openvpn\netconf\linux\route.hpp" />
<ClInclude Include="..\openvpn\openssl\bio\bio_memq_dgram.hpp" />
<ClInclude Include="..\openvpn\openssl\bio\bio_memq_stream.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\api.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\cipher.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\ciphergcm.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\digest.hpp" />
<ClInclude Include="..\openvpn\openssl\crypto\hmac.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\crl.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\dh.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\pkey.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\x509.hpp" />
<ClInclude Include="..\openvpn\openssl\pki\x509store.hpp" />
<ClInclude Include="..\openvpn\openssl\sign\pkcs7verify.hpp" />
<ClInclude Include="..\openvpn\openssl\sign\verify.hpp" />
<ClInclude Include="..\openvpn\openssl\ssl\sslctx.hpp" />
<ClInclude Include="..\openvpn\openssl\util\engine.hpp" />
<ClInclude Include="..\openvpn\openssl\util\error.hpp" />
<ClInclude Include="..\openvpn\openssl\util\init.hpp" />
<ClInclude Include="..\openvpn\openssl\util\rand.hpp" />
<ClInclude Include="..\openvpn\openssl\util\tokenencrypt.hpp" />
<ClInclude Include="..\openvpn\options\continuation.hpp" />
<ClInclude Include="..\openvpn\options\merge.hpp" />
<ClInclude Include="..\openvpn\options\sanitize.hpp" />
<ClInclude Include="..\openvpn\options\servpush.hpp" />
<ClInclude Include="..\openvpn\pki\cclist.hpp" />
<ClInclude Include="..\openvpn\pki\epkibase.hpp" />
<ClInclude Include="..\openvpn\pki\pkcs1.hpp" />
<ClInclude Include="..\openvpn\pki\x509track.hpp" />
<ClInclude Include="..\openvpn\proxy\httpdigest.hpp" />
<ClInclude Include="..\openvpn\proxy\ntlm.hpp" />
<ClInclude Include="..\openvpn\proxy\proxyauth.hpp" />
<ClInclude Include="..\openvpn\random\devurand.hpp" />
<ClInclude Include="..\openvpn\random\mtrandapi.hpp" />
<ClInclude Include="..\openvpn\random\randapi.hpp" />
<ClInclude Include="..\openvpn\random\randbytestore.hpp" />
<ClInclude Include="..\openvpn\reliable\relack.hpp" />
<ClInclude Include="..\openvpn\reliable\relcommon.hpp" />
<ClInclude Include="..\openvpn\reliable\relrecv.hpp" />
<ClInclude Include="..\openvpn\reliable\relsend.hpp" />
<ClInclude Include="..\openvpn\server\listenlist.hpp" />
<ClInclude Include="..\openvpn\server\manage.hpp" />
<ClInclude Include="..\openvpn\server\peeraddr.hpp" />
<ClInclude Include="..\openvpn\server\peerstats.hpp" />
<ClInclude Include="..\openvpn\server\servhalt.hpp" />
<ClInclude Include="..\openvpn\server\servproto.hpp" />
<ClInclude Include="..\openvpn\server\vpnservnetblock.hpp" />
<ClInclude Include="..\openvpn\server\vpnservpool.hpp" />
<ClInclude Include="..\openvpn\ssl\datalimit.hpp" />
<ClInclude Include="..\openvpn\ssl\is_openvpn_protocol.hpp" />
<ClInclude Include="..\openvpn\ssl\kuparse.hpp" />
<ClInclude Include="..\openvpn\ssl\mssparms.hpp" />
<ClInclude Include="..\openvpn\ssl\nscert.hpp" />
<ClInclude Include="..\openvpn\ssl\peerinfo.hpp" />
<ClInclude Include="..\openvpn\ssl\proto.hpp" />
<ClInclude Include="..\openvpn\ssl\protostack.hpp" />
<ClInclude Include="..\openvpn\ssl\proto_context_options.hpp" />
<ClInclude Include="..\openvpn\ssl\psid.hpp" />
<ClInclude Include="..\openvpn\ssl\sslapi.hpp" />
<ClInclude Include="..\openvpn\ssl\sslchoose.hpp" />
<ClInclude Include="..\openvpn\ssl\sslconsts.hpp" />
<ClInclude Include="..\openvpn\ssl\tlsprf.hpp" />
<ClInclude Include="..\openvpn\ssl\tlsver.hpp" />
<ClInclude Include="..\openvpn\ssl\tls_cert_profile.hpp" />
<ClInclude Include="..\openvpn\ssl\tls_remote.hpp" />
<ClInclude Include="..\openvpn\time\asiotimer.hpp" />
<ClInclude Include="..\openvpn\time\coarsetime.hpp" />
<ClInclude Include="..\openvpn\time\durhelper.hpp" />
<ClInclude Include="..\openvpn\time\time.hpp" />
<ClInclude Include="..\openvpn\time\timestr.hpp" />
<ClInclude Include="..\openvpn\transport\altproxy.hpp" />
<ClInclude Include="..\openvpn\transport\client\httpcli.hpp" />
<ClInclude Include="..\openvpn\transport\client\relay.hpp" />
<ClInclude Include="..\openvpn\transport\client\tcpcli.hpp" />
<ClInclude Include="..\openvpn\transport\client\transbase.hpp" />
<ClInclude Include="..\openvpn\transport\client\udpcli.hpp" />
<ClInclude Include="..\openvpn\transport\dco.hpp" />
<ClInclude Include="..\openvpn\transport\gremlin.hpp" />
<ClInclude Include="..\openvpn\transport\mutate.hpp" />
<ClInclude Include="..\openvpn\transport\pktstream.hpp" />
<ClInclude Include="..\openvpn\transport\protocol.hpp" />
<ClInclude Include="..\openvpn\transport\reconnect_notify.hpp" />
<ClInclude Include="..\openvpn\transport\server\transbase.hpp" />
<ClInclude Include="..\openvpn\transport\socket_protect.hpp" />
<ClInclude Include="..\openvpn\transport\tcplink.hpp" />
<ClInclude Include="..\openvpn\transport\udplink.hpp" />
<ClInclude Include="..\openvpn\tun\builder\base.hpp" />
<ClInclude Include="..\openvpn\tun\builder\capture.hpp" />
<ClInclude Include="..\openvpn\tun\builder\client.hpp" />
<ClInclude Include="..\openvpn\tun\builder\rgwflags.hpp" />
<ClInclude Include="..\openvpn\tun\builder\setup.hpp" />
<ClInclude Include="..\openvpn\tun\client\dhcp_capture.hpp" />
<ClInclude Include="..\openvpn\tun\client\emuexr.hpp" />
<ClInclude Include="..\openvpn\tun\client\tunbase.hpp" />
<ClInclude Include="..\openvpn\tun\client\tunnull.hpp" />
<ClInclude Include="..\openvpn\tun\client\tunprop.hpp" />
<ClInclude Include="..\openvpn\tun\extern\config.hpp" />
<ClInclude Include="..\openvpn\tun\extern\fw.hpp" />
<ClInclude Include="..\openvpn\tun\ipv6_setting.hpp" />
<ClInclude Include="..\openvpn\tun\layer.hpp" />
<ClInclude Include="..\openvpn\tun\linux\client\tuncli.hpp" />
<ClInclude Include="..\openvpn\tun\linux\tun.hpp" />
<ClInclude Include="..\openvpn\tun\mac\client\tuncli.hpp" />
<ClInclude Include="..\openvpn\tun\mac\client\tunsetup.hpp" />
<ClInclude Include="..\openvpn\tun\mac\gwv4.hpp" />
<ClInclude Include="..\openvpn\tun\mac\macdns.hpp" />
<ClInclude Include="..\openvpn\tun\mac\macdns_watchdog.hpp" />
<ClInclude Include="..\openvpn\tun\mac\macgw.hpp" />
<ClInclude Include="..\openvpn\tun\mac\tunutil.hpp" />
<ClInclude Include="..\openvpn\tun\mac\utun.hpp" />
<ClInclude Include="..\openvpn\tun\persist\tunpersist.hpp" />
<ClInclude Include="..\openvpn\tun\persist\tunwrap.hpp" />
<ClInclude Include="..\openvpn\tun\persist\tunwrapasio.hpp" />
<ClInclude Include="..\openvpn\tun\server\tunbase.hpp" />
<ClInclude Include="..\openvpn\tun\tunio.hpp" />
<ClInclude Include="..\openvpn\tun\tunlog.hpp" />
<ClInclude Include="..\openvpn\tun\tunmtu.hpp" />
<ClInclude Include="..\openvpn\tun\tunspec.hpp" />
<ClInclude Include="..\openvpn\tun\win\client\setupbase.hpp" />
<ClInclude Include="..\openvpn\tun\win\client\tuncli.hpp" />
<ClInclude Include="..\openvpn\tun\win\client\tunsetup.hpp" />
<ClInclude Include="..\openvpn\tun\win\nrpt.hpp" />
<ClInclude Include="..\openvpn\tun\win\tunutil.hpp" />
<ClInclude Include="..\openvpn\tun\win\wfp.hpp" />
<ClInclude Include="..\openvpn\win\call.hpp" />
<ClInclude Include="..\openvpn\win\cmd.hpp" />
<ClInclude Include="..\openvpn\win\console.hpp" />
<ClInclude Include="..\openvpn\win\handle.hpp" />
<ClInclude Include="..\openvpn\win\modname.hpp" />
<ClInclude Include="..\openvpn\win\reg.hpp" />
<ClInclude Include="..\openvpn\win\scoped_handle.hpp" />
<ClInclude Include="..\openvpn\win\sleep.hpp" />
<ClInclude Include="..\openvpn\win\unicode.hpp" />
<ClInclude Include="..\openvpn\win\winerr.hpp" />
</ItemGroup>
</Project>
+8 -1
View File
@@ -15,5 +15,12 @@ PARMS = {
'asio' : "asio-20170227",
'mbedtls' : "mbedtls-2.4.0",
'lz4' : "lz4-1.7.5",
}
},
"GTEST_ROOT": ""
}
try:
from parms_local import PARMS as parms_local
PARMS.update(parms_local)
except ImportError:
pass
+44 -15
View File
@@ -1,4 +1,4 @@
import os, sys, re, stat, shutil, tarfile, subprocess
import os, sys, re, stat, shutil, tarfile, zipfile, subprocess
j = os.path.join
@@ -134,35 +134,61 @@ def tarsplit(fn):
raise ValueError("unrecognized tar file type: %r" % (fn,))
return b, t
def tarsplit_filt(fn):
def zipsplit(fn):
if fn.endswith(".zip"):
t = "zip"
b = fn[:-4]
else:
raise ValueError("unrecognized zip file type: %r" % (fn,))
return b, t
def archsplit(fn):
try:
b, t = tarsplit(fn)
except:
b, t = zipsplit(fn)
return b, t
def archsplit_filt(fn):
try:
tarsplit(fn)
except:
return False
try:
zipsplit(fn)
except:
return False
else:
return True
else:
return True
def tarextract(fn, t):
print "TAR EXTRACT %s [%s]" % (fn, t)
tar = tarfile.open(fn, mode='r:'+t)
try:
tar.extractall()
finally:
tar.close()
def extract(fn, t):
print "%s EXTRACT %s [%s]" % ("ZIP" if t == "zip" else "TAR", fn, t)
if t == "zip":
with zipfile.ZipFile(fn) as z:
z.extractall()
else:
tar = tarfile.open(fn, mode='r:'+t)
try:
tar.extractall()
finally:
tar.close()
def expand(pkg_prefix, srcdir, lib_versions=None, noop=False):
if lib_versions and pkg_prefix in lib_versions:
f = one_prefix(lib_versions[pkg_prefix], srcdir, tarsplit_filt)
f = one_prefix(lib_versions[pkg_prefix], srcdir, archsplit_filt)
else:
f = one_prefix(pkg_prefix, srcdir, tarsplit_filt)
b, t = tarsplit(f)
f = one_prefix(pkg_prefix, srcdir, archsplit_filt)
b, t = archsplit(f)
if not noop:
# remove previous directory
rmtree(os.path.realpath(b))
# expand it
tarextract(os.path.join(srcdir, f), t)
extract(os.path.join(srcdir, f), t)
return b
@@ -199,7 +225,10 @@ def vc_cmd(parms, cmd, arch=None, succeed=0):
def vc_parms(parms, cmd_dict):
cmd_dict["dbg_rel_flags"] = "/Zi" if parms['DEBUG'] else "/O2"
cmd_dict["link_static_dynamic_flags"] = "/MT" if parms['STATIC'] else "/MD"
flags = "/MT" if parms['STATIC'] else "/MD"
if parms['DEBUG']:
flags += "d"
cmd_dict["link_static_dynamic_flags"] = flags
def patchfile(pkg_prefix, patchdir):
return os.path.join(patchdir, one_prefix(pkg_prefix, patchdir))