Compare commits

...
8 Commits
Author SHA1 Message Date
Adam Ierymenko fc18334dbb Version 0.4.3 (the real one): fix Gentoo ip config failures and crashes
This version fixes problems with locating the 'ip' command on Gentoo
and possibly other Linux systems, and a problem that could cause a
crash if EthernetTap was unable to locate one of the commands it
invokes to configure IP information on tap devices.

The code also now builds on Windows. It doesn't run yet, but it's a
step. Windows port is in full swing.

Finally, the multicast rate limit defaults were raised a little. More
testing is needed here, and real world measurments.
2013-08-13 15:14:03 -04:00
Adam Ierymenko 4ce88d7f72 Version 0.4.3: fix Gentoo ip config failures and crashes
This version fixes problems with locating the 'ip' command on Gentoo
and possibly other Linux systems, and a problem that could cause a
crash if EthernetTap was unable to locate one of the commands it
invokes to configure IP information on tap devices.

The code also now builds on Windows. It doesn't run yet, but it's a
step. Windows port is in full swing.
2013-08-13 14:42:51 -04:00
Adam Ierymenko ce1a03bde3 Fix a *nix build issue. 2013-08-12 21:27:07 -04:00
Adam Ierymenko d6414c9ff7 Windows compiles! (w/Visual Studio 2012) That's about all it does, but it's a start. 2013-08-12 21:25:36 -04:00
Adam Ierymenko 5076c75b07 More Windows port work. 2013-08-12 16:57:34 -04:00
Adam Ierymenko 36af3d92ec Windows build work: condition, mutex, thread, udp socket... 2013-08-12 16:18:35 -04:00
Adam Ierymenko 2ad80063ec A few more visual studio file changes, forgot to save all. Will be switching to dev branch now. 2013-08-12 14:47:02 -04:00
Adam Ierymenko 2fbe1e200b Add Visual Studio DLL project for core 2013-08-12 14:44:02 -04:00
50 changed files with 1299 additions and 159 deletions

No files matched your search

+6
View File
@@ -6,3 +6,9 @@ zerotier-*
*.dSYM
mac-tap/tuntap/src/tap/tap
mac-tap/tuntap/tap.kext
/ZeroTierOne.vcxproj.user
/ZeroTierOne.sdf
/ZeroTierOne.v11.suo
/ZeroTierOne.opensdf
/Debug_32
+20
View File
@@ -0,0 +1,20 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZeroTierOne", "ZeroTierOne.vcxproj", "{0D4AE49A-FCE5-404F-8041-7FFC4DAF83F4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0D4AE49A-FCE5-404F-8041-7FFC4DAF83F4}.Debug|Win32.ActiveCfg = Debug_32|Win32
{0D4AE49A-FCE5-404F-8041-7FFC4DAF83F4}.Debug|Win32.Build.0 = Debug_32|Win32
{0D4AE49A-FCE5-404F-8041-7FFC4DAF83F4}.Release|Win32.ActiveCfg = Debug_32|Win32
{0D4AE49A-FCE5-404F-8041-7FFC4DAF83F4}.Release|Win32.Build.0 = Debug_32|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
+200
View File
@@ -0,0 +1,200 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug_32|Win32">
<Configuration>Debug_32</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{0D4AE49A-FCE5-404F-8041-7FFC4DAF83F4}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_32|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug_32|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_32|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_32|Win32'">
<ClCompile>
<PreprocessorDefinitions>WIN32;_DEBUG;__WINDOWS__;_WINDOWS;_USRDLL;ZEROTIERONE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<Optimization>Disabled</Optimization>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<AdditionalIncludeDirectories>ext\bin\libcrypto\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<TargetMachine>MachineX86</TargetMachine>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<AdditionalDependencies>ext\bin\libcrypto\win32-vs2012\libeay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="ext\kissdb\kissdb.c" />
<ClCompile Include="ext\lz4\lz4.c" />
<ClCompile Include="ext\lz4\lz4hc.c" />
<ClCompile Include="node\Defaults.cpp" />
<ClCompile Include="node\Demarc.cpp" />
<ClCompile Include="node\EllipticCurveKeyPair.cpp" />
<ClCompile Include="node\EthernetTap.cpp" />
<ClCompile Include="node\Filter.cpp" />
<ClCompile Include="node\HMAC.cpp" />
<ClCompile Include="node\Identity.cpp" />
<ClCompile Include="node\InetAddress.cpp" />
<ClCompile Include="node\Logger.cpp" />
<ClCompile Include="node\Network.cpp" />
<ClCompile Include="node\Node.cpp" />
<ClCompile Include="node\NodeConfig.cpp" />
<ClCompile Include="node\Packet.cpp" />
<ClCompile Include="node\PacketDecoder.cpp" />
<ClCompile Include="node\Peer.cpp" />
<ClCompile Include="node\Salsa20.cpp" />
<ClCompile Include="node\Service.cpp" />
<ClCompile Include="node\Switch.cpp" />
<ClCompile Include="node\SysEnv.cpp" />
<ClCompile Include="node\Topology.cpp" />
<ClCompile Include="node\UdpSocket.cpp" />
<ClCompile Include="node\Utils.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="ext\bin\libcrypto\include\openssl\aes.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\asn1.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\asn1t.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\asn1_mac.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\bio.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\blowfish.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\bn.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\buffer.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\camellia.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\cast.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\cmac.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\cms.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\comp.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\conf.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\conf_api.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\crypto.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\des.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\des_old.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\dh.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\dsa.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\dso.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\dtls1.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ebcdic.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ec.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ecdh.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ecdsa.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\engine.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\err.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\evp.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\e_os2.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\hmac.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\idea.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\krb5_asn.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\kssl.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\lhash.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\md4.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\md5.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\mdc2.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\modes.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\objects.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\obj_mac.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ocsp.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\opensslconf.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\opensslv.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ossl_typ.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\pem.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\pem2.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\pkcs12.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\pkcs7.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\pqueue.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\rand.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\rc2.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\rc4.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ripemd.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\rsa.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\safestack.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\seed.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\sha.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\srp.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\srtp.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl2.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl23.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl3.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\stack.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\symhacks.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\tls1.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ts.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\txt_db.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ui.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\ui_compat.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\whrlpool.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\x509.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\x509v3.h" />
<ClInclude Include="ext\bin\libcrypto\include\openssl\x509_vfy.h" />
<ClInclude Include="ext\kissdb\kissdb.h" />
<ClInclude Include="ext\lz4\lz4.h" />
<ClInclude Include="ext\lz4\lz4hc.h" />
<ClInclude Include="node\Address.hpp" />
<ClInclude Include="node\Array.hpp" />
<ClInclude Include="node\AtomicCounter.hpp" />
<ClInclude Include="node\BloomFilter.hpp" />
<ClInclude Include="node\Buffer.hpp" />
<ClInclude Include="node\CMWC4096.hpp" />
<ClInclude Include="node\Condition.hpp" />
<ClInclude Include="node\Constants.hpp" />
<ClInclude Include="node\Defaults.hpp" />
<ClInclude Include="node\Demarc.hpp" />
<ClInclude Include="node\Dictionary.hpp" />
<ClInclude Include="node\EllipticCurveKey.hpp" />
<ClInclude Include="node\EllipticCurveKeyPair.hpp" />
<ClInclude Include="node\EthernetTap.hpp" />
<ClInclude Include="node\Filter.hpp" />
<ClInclude Include="node\HMAC.hpp" />
<ClInclude Include="node\Identity.hpp" />
<ClInclude Include="node\InetAddress.hpp" />
<ClInclude Include="node\Logger.hpp" />
<ClInclude Include="node\MAC.hpp" />
<ClInclude Include="node\Multicaster.hpp" />
<ClInclude Include="node\MulticastGroup.hpp" />
<ClInclude Include="node\Mutex.hpp" />
<ClInclude Include="node\Network.hpp" />
<ClInclude Include="node\Node.hpp" />
<ClInclude Include="node\NodeConfig.hpp" />
<ClInclude Include="node\NonCopyable.hpp" />
<ClInclude Include="node\Packet.hpp" />
<ClInclude Include="node\PacketDecoder.hpp" />
<ClInclude Include="node\Peer.hpp" />
<ClInclude Include="node\Range.hpp" />
<ClInclude Include="node\RateLimiter.hpp" />
<ClInclude Include="node\RuntimeEnvironment.hpp" />
<ClInclude Include="node\Salsa20.hpp" />
<ClInclude Include="node\Service.hpp" />
<ClInclude Include="node\SharedPtr.hpp" />
<ClInclude Include="node\Switch.hpp" />
<ClInclude Include="node\SysEnv.hpp" />
<ClInclude Include="node\Thread.hpp" />
<ClInclude Include="node\Topology.hpp" />
<ClInclude Include="node\UdpSocket.hpp" />
<ClInclude Include="node\Utils.hpp" />
<ClInclude Include="version.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
+459
View File
@@ -0,0 +1,459 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="ext\kissdb\kissdb.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="ext\lz4\lz4.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="ext\lz4\lz4hc.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Defaults.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Demarc.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\EllipticCurveKeyPair.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\EthernetTap.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Filter.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\HMAC.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Identity.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\InetAddress.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Logger.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Network.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Node.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\NodeConfig.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Packet.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\PacketDecoder.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Peer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Salsa20.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Service.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Switch.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\SysEnv.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Topology.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\UdpSocket.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="node\Utils.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="version.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\aes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\asn1.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\asn1t.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\asn1_mac.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\bio.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\blowfish.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\bn.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\buffer.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\camellia.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\cast.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\cmac.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\cms.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\comp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\conf.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\conf_api.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\crypto.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\des.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\des_old.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\dh.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\dsa.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\dso.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\dtls1.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ebcdic.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ec.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ecdh.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ecdsa.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\engine.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\err.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\evp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\e_os2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\hmac.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\idea.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\krb5_asn.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\kssl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\lhash.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\md4.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\md5.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\mdc2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\modes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\objects.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\obj_mac.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ocsp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\opensslconf.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\opensslv.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ossl_typ.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\pem.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\pem2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\pkcs12.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\pkcs7.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\pqueue.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\rand.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\rc2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\rc4.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ripemd.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\rsa.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\safestack.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\seed.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\sha.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\srp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\srtp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl2.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl23.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ssl3.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\stack.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\symhacks.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\tls1.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ts.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\txt_db.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ui.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\ui_compat.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\whrlpool.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\x509.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\x509v3.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\bin\libcrypto\include\openssl\x509_vfy.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\kissdb\kissdb.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\lz4\lz4.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="ext\lz4\lz4hc.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Address.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Array.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\AtomicCounter.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\BloomFilter.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Buffer.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\CMWC4096.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Condition.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Constants.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Defaults.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Demarc.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Dictionary.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\EllipticCurveKey.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\EllipticCurveKeyPair.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\EthernetTap.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Filter.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\HMAC.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Identity.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\InetAddress.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Logger.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\MAC.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Multicaster.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\MulticastGroup.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Mutex.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Network.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Node.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\NodeConfig.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\NonCopyable.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Packet.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\PacketDecoder.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Peer.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Range.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\RateLimiter.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\RuntimeEnvironment.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Salsa20.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Service.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\SharedPtr.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Switch.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\SysEnv.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Thread.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Topology.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\UdpSocket.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="node\Utils.hpp">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+8 -1
View File
@@ -15,7 +15,12 @@
#include <string.h>
#include <stdlib.h>
#include <inttypes.h>
#include <stdint.h>
#ifdef _WIN32
#define fseeko _fseeki64
#define ftello _ftelli64
#endif
#define KISSDB_HEADER_SIZE ((sizeof(uint64_t) * 3) + 4)
@@ -322,6 +327,8 @@ int KISSDB_Iterator_next(KISSDB_Iterator *dbi,void *kbuf,void *vbuf)
#ifdef KISSDB_TEST
#include <inttypes.h>
int main(int argc,char **argv)
{
uint64_t i,j;
+1 -1
View File
@@ -225,7 +225,7 @@ int main(int argc,char **argv)
response["nwid"] = request.get("nwid");
response["type"] = "netconf-response";
response["requestId"] = request.get("requestId");
response["error"] = "NOT_FOUND";
response["error"] = "OBJ_NOT_FOUND";
std::string respm = response.toString();
uint32_t respml = (uint32_t)htonl((uint32_t)respm.length());
+1 -1
View File
@@ -205,7 +205,7 @@ public:
/**
* @return True if this address is not zero
*/
inline operator bool() const throw() { return (_a); }
inline operator bool() const throw() { return (_a != 0); }
/**
* @return Sum of all bytes in address
+8 -1
View File
@@ -94,7 +94,14 @@ public:
inline reference back() throw() { return data[S-1]; }
inline const_reference back() const throw() { return data[S-1]; }
inline bool operator==(const Array &k) const throw() { return std::equal(begin(),end(),k.begin()); }
inline bool operator==(const Array &k) const throw()
{
for(unsigned long i=0;i<S;++i) {
if (data[i] != k.data[i])
return false;
}
return true;
}
inline bool operator<(const Array &k) const throw() { return std::lexicographical_compare(begin(),end(),k.begin(),k.end()); }
inline bool operator!=(const Array &k) const throw() { return !(*this == k); }
inline bool operator>(const Array &k) const throw() { return (k < *this); }
+1 -1
View File
@@ -110,7 +110,7 @@ public:
throw()
{
n %= B;
return (_field[n / 8] & (1 << (n % 8)));
return ((_field[n / 8] & (1 << (n % 8))) != 0);
}
/**
+5 -2
View File
@@ -28,12 +28,15 @@
#ifndef _ZT_BUFFER_HPP
#define _ZT_BUFFER_HPP
#include <string.h>
#include <stdint.h>
#include <stdexcept>
#include <string>
#include <algorithm>
#include <utility>
#include <string.h>
#include <stdint.h>
#include "Constants.hpp"
#include "Utils.hpp"
#ifdef __GNUC__
+50 -16
View File
@@ -28,9 +28,57 @@
#ifndef _ZT_CONDITION_HPP
#define _ZT_CONDITION_HPP
#include "Constants.hpp"
#include "NonCopyable.hpp"
#if defined(__APPLE__) || defined(__linux__) || defined(linux) || defined(__LINUX__) || defined(__linux)
#ifdef __WINDOWS__
#include <Windows.h>
#include <stdlib.h>
#include "Utils.hpp"
namespace ZeroTier {
class Condition : NonCopyable
{
public:
Condition()
throw()
{
_sem = CreateSemaphore(NULL,0,1,NULL);
}
~Condition()
{
CloseHandle(_sem);
}
inline void wait() const
throw()
{
WaitForSingleObject(_sem,INFINITE);
}
inline void wait(unsigned long ms) const
throw()
{
WaitForSingleObject(_sem,(DWORD)ms);
}
inline void signal() const
throw()
{
ReleaseSemaphore(_sem,1,NULL);
}
private:
HANDLE _sem;
};
} // namespace ZeroTier
#else // !__WINDOWS__
#include <time.h>
#include <stdlib.h>
@@ -88,20 +136,6 @@ private:
} // namespace ZeroTier
#endif // Apple / Linux
#ifdef _WIN32
#include <stdlib.h>
#include <Windows.h>
namespace ZeroTier {
error need windoze;
// On Windows this will probably be implemented via Semaphores
} // namespace ZeroTier
#endif // _WIN32
#endif // !__WINDOWS__
#endif
+20 -5
View File
@@ -68,6 +68,9 @@
#ifndef __WINDOWS__
#define __WINDOWS__
#endif
#define NOMINMAX
#pragma warning(disable : 4290)
#pragma warning(disable : 4996)
#undef __UNIX_LIKE__
#define ZT_PATH_SEPARATOR '\\'
#define ZT_PATH_SEPARATOR_S "\\"
@@ -96,11 +99,23 @@
error_no_byte_order_defined;
#endif
#ifndef ZT_OSNAME
error_no_ZT_OSNAME_defined;
#ifdef __WINDOWS__
#define ZT_OSNAME "windows"
#else
no ZT_OSNAME defined;
#endif
#endif
#ifndef ZT_ARCH
#ifdef __WINDOWS__
#ifdef _WIN64
#define ZT_ARCH "x64"
#else
#define ZT_ARCH "x86"
#endif
#else
error_no_ZT_ARCH_defined;
#endif
#endif
/**
* Length of a ZeroTier address in bytes
@@ -269,22 +284,22 @@ error_no_ZT_ARCH_defined;
/**
* Default bytes per second limit for multicasts per peer on a network
*/
#define ZT_MULTICAST_DEFAULT_BYTES_PER_SECOND 50.0
#define ZT_MULTICAST_DEFAULT_BYTES_PER_SECOND 100.0
/**
* Default balance preload for multicast rate limiters on a network
*/
#define ZT_MULTICAST_DEFAULT_RATE_PRELOAD 20000.0
#define ZT_MULTICAST_DEFAULT_RATE_PRELOAD 25000.0
/**
* Default maximum balance for multicast rate limiters
*/
#define ZT_MULTICAST_DEFAULT_RATE_MAX_BALANCE 20000.0
#define ZT_MULTICAST_DEFAULT_RATE_MAX_BALANCE 25000.0
/**
* Default minimum balance for multicast rate limiters (max debt)
*/
#define ZT_MULTICAST_DEFAULT_RATE_MIN_BALANCE -10000.0
#define ZT_MULTICAST_DEFAULT_RATE_MIN_BALANCE -5000.0
/**
* Delay between scans of the topology active peer DB for peers that need ping
Loaded 20 of 50 files, more files were not shown because too many files have changed in this diff. Show more