FS-6767 #comment Add initial support for mod_verto on Windows

This commit is contained in:
Peter Olsson 2014-10-18 09:53:57 +02:00
parent 1ca81aca50
commit 7faf9f4c25
11 changed files with 447 additions and 23 deletions

View File

@ -603,6 +603,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LDNS", "libs\win32
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download PORTAUDIO", "libs\win32\Download PORTAUDIO.2012.vcxproj", "{C0779BCC-C037-4F58-B890-EF37BA956B3C}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_vp8", "src\mod\codecs\mod_vp8\mod_vp8.2012.vcxproj", "{ABFD88E1-7710-4BCC-AC34-56038DAC9652}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rtc", "src\mod\endpoints\mod_rtc\mod_rtc.2012.vcxproj", "{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_verto", "src\mod\endpoints\mod_verto\mod_verto.2012.vcxproj", "{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
All|Win32 = All|Win32
@ -4043,6 +4049,58 @@ Global
{C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release|x64.Build.0 = Release|Win32
{C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release|x64 Setup.ActiveCfg = Release|Win32
{C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release|x86 Setup.ActiveCfg = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.All|Win32.ActiveCfg = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.All|Win32.Build.0 = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.All|x64.ActiveCfg = Release|x64
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.All|x64.Build.0 = Release|x64
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.All|x64 Setup.ActiveCfg = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.All|x86 Setup.ActiveCfg = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Debug|Win32.ActiveCfg = Debug|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Debug|Win32.Build.0 = Debug|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Debug|x64.ActiveCfg = Debug|x64
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Debug|x64.Build.0 = Debug|x64
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Debug|x64 Setup.ActiveCfg = Debug|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Debug|x86 Setup.ActiveCfg = Debug|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Release|Win32.ActiveCfg = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Release|Win32.Build.0 = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Release|x64.ActiveCfg = Release|x64
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Release|x64.Build.0 = Release|x64
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Release|x64 Setup.ActiveCfg = Release|Win32
{ABFD88E1-7710-4BCC-AC34-56038DAC9652}.Release|x86 Setup.ActiveCfg = Release|Win32
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.All|Win32.ActiveCfg = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.All|x64.ActiveCfg = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.All|x64.Build.0 = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.All|x64 Setup.ActiveCfg = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.All|x86 Setup.ActiveCfg = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Debug|Win32.ActiveCfg = Debug|Win32
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Debug|Win32.Build.0 = Debug|Win32
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Debug|x64.ActiveCfg = Debug|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Debug|x64.Build.0 = Debug|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Debug|x64 Setup.ActiveCfg = Debug|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Debug|x86 Setup.ActiveCfg = Debug|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Release|Win32.ActiveCfg = Release|Win32
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Release|Win32.Build.0 = Release|Win32
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Release|x64.ActiveCfg = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Release|x64.Build.0 = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Release|x64 Setup.ActiveCfg = Release|x64
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}.Release|x86 Setup.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.All|Win32.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.All|x64.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.All|x64.Build.0 = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.All|x64 Setup.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.All|x86 Setup.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Debug|Win32.ActiveCfg = Debug|Win32
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Debug|Win32.Build.0 = Debug|Win32
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Debug|x64.ActiveCfg = Debug|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Debug|x64.Build.0 = Debug|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Debug|x64 Setup.ActiveCfg = Debug|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Debug|x86 Setup.ActiveCfg = Debug|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Release|Win32.ActiveCfg = Release|Win32
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Release|Win32.Build.0 = Release|Win32
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Release|x64.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Release|x64.Build.0 = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Release|x64 Setup.ActiveCfg = Release|x64
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}.Release|x86 Setup.ActiveCfg = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -4059,6 +4117,7 @@ Global
{4D418176-3B33-47E6-A63E-01BA34ADD21C} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
{AFA983D6-4569-4F88-BA94-555ED00FD9A8} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
{64E99CCA-3C6F-4AEB-9FA3-CFAC711257BB} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
{ABFD88E1-7710-4BCC-AC34-56038DAC9652} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
{5FD31A25-5D83-4794-8BEE-904DAD84CE71} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{FFAA4C52-3A53-4F99-90C1-D59D1F0427F3} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{0DF3ABD0-DDC0-4265-B778-07C66780979B} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
@ -4069,6 +4128,8 @@ Global
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{05C9FB27-480E-4D53-B3B7-7338E2514666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
{30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}

View File

@ -0,0 +1,135 @@
<?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|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>mod_vp8</ProjectName>
<ProjectGuid>{ABFD88E1-7710-4BCC-AC34-56038DAC9652}</ProjectGuid>
<RootNamespace>mod_vp8</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_release.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_debug.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_release.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_debug.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="mod_vp8.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2012.vcxproj">
<Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,135 @@
<?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|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>mod_rtc</ProjectName>
<ProjectGuid>{3884ADD2-91D0-4CD6-86D3-D5FB2D4AAB9E}</ProjectGuid>
<RootNamespace>mod_rtc</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_release.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_debug.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_release.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_debug.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Midl>
<TargetEnvironment>X64</TargetEnvironment>
</Midl>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="mod_rtc.c" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2012.vcxproj">
<Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -37,13 +37,21 @@
#include <stdint.h>
#include <errno.h>
#include <sys/types.h>
#ifdef WIN32
#include <winsock2.h>
#else
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#endif
#include <time.h>
#ifndef WIN32
#include <unistd.h>
#endif
#include "mcast.h"
#ifndef WIN32
#include <poll.h>
#endif
#include <switch_utils.h>
int mcast_socket_create(const char *host, int16_t port, mcast_handle_t *handle, mcast_flag_t flags)

View File

@ -42,9 +42,29 @@ extern "C" {
#endif
#include <sys/types.h>
#ifdef WIN32
#include <WinSock2.h>
#else
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#endif
#ifdef _MSC_VER
#include <stdint.h>
#ifndef strncasecmp
#define strncasecmp _strnicmp
#endif
#define snprintf _snprintf
#ifdef _WIN64
#define WS_SSIZE_T __int64
#elif _MSC_VER >= 1400
#define WS_SSIZE_T __int32 __w64
#else
#define WS_SSIZE_T __int32
#endif
typedef WS_SSIZE_T ssize_t;
#endif
typedef struct {
int sock;

View File

@ -34,7 +34,9 @@
#include "mcast.h"
#include "mcast_cpp.h"
#include <string.h>
#ifndef WIN32
#include <poll.h>
#endif
McastHandle::McastHandle(const char *host, int port, int flags)
{

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?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|Win32">
@ -20,7 +20,7 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>mod_verto</ProjectName>
<ProjectGuid>{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}</ProjectGuid>
<ProjectGuid>{5B2BACE4-0F5A-4A21-930D-C0F4B1F58FA6}</ProjectGuid>
<RootNamespace>mod_verto</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
@ -51,18 +51,22 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_release.props" />
<Import Project="..\..\..\..\w32\openssl-version.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_debug.props" />
<Import Project="..\..\..\..\w32\openssl-version.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_release.props" />
<Import Project="..\..\..\..\w32\openssl-version.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\..\..\w32\module_debug.props" />
<Import Project="..\..\..\..\w32\openssl-version.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
@ -72,6 +76,7 @@
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<AdditionalIncludeDirectories>$(SolutionDir)\src\include;%(AdditionalIncludeDirectories);..\..\..\..\libs\openssl-$(OpenSSLVersion)\include;$(ProjectDir)..\..\..\..\libs\pthreads-w32-2-9-1;.\;.\mcast</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@ -86,6 +91,7 @@
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<AdditionalIncludeDirectories>$(SolutionDir)\src\include;%(AdditionalIncludeDirectories);..\..\..\..\libs\openssl-$(OpenSSLVersion)\include;$(ProjectDir)..\..\..\..\libs\pthreads-w32-2-9-1;.\;.\mcast</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@ -98,6 +104,7 @@
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<AdditionalIncludeDirectories>$(SolutionDir)\src\include;%(AdditionalIncludeDirectories);..\..\..\..\libs\openssl-$(OpenSSLVersion)\include;$(ProjectDir)..\..\..\..\libs\pthreads-w32-2-9-1;.\;.\mcast</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@ -112,6 +119,7 @@
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<AdditionalIncludeDirectories>$(SolutionDir)\src\include;%(AdditionalIncludeDirectories);..\..\..\..\libs\openssl-$(OpenSSLVersion)\include;$(ProjectDir)..\..\..\..\libs\pthreads-w32-2-9-1;.\;.\mcast</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@ -122,14 +130,27 @@
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="mod_verto.c" />
<ClCompile Include="ws.c" />
<ClCompile Include="mcast\mcast.c" />
<ClCompile Include="mcast\mcast_cpp.cpp" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2012.vcxproj">
<Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\..\..\..\libs\win32\openssl\libeay32.2012.vcxproj">
<Project>{d331904d-a00a-4694-a5a3-fcff64ab5dbe}</Project>
</ProjectReference>
<ProjectReference Include="..\..\..\..\libs\win32\openssl\ssleay32.2012.vcxproj">
<Project>{b4b62169-5ad4-4559-8707-3d933ac5db39}</Project>
</ProjectReference>
<ProjectReference Include="..\..\..\..\libs\win32\pthread\pthread.2012.vcxproj">
<Project>{df018947-0fff-4eb3-bdee-441dc81da7a4}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

View File

@ -46,10 +46,14 @@ SWITCH_MODULE_DEFINITION(mod_verto, mod_verto_load, mod_verto_shutdown, mod_vert
//////////////////////////
#include <mod_verto.h>
#ifndef WIN32
#include <sys/param.h>
#endif
#include <sys/stat.h>
#include <fcntl.h>
#ifndef WIN32
#include <sys/file.h>
#endif
#include <ctype.h>
#include <sys/stat.h>
@ -137,15 +141,19 @@ static void verto_deinit_ssl(verto_profile_t *profile)
}
}
static void close_file(int *sock)
static void close_file(ws_socket_t *sock)
{
if (*sock > -1) {
#ifndef WIN32
close(*sock);
*sock = -1;
#else
closesocket(*sock);
#endif
*sock = ws_sock_invalid;
}
}
static void close_socket(int *sock)
static void close_socket(ws_socket_t *sock)
{
if (*sock > -1) {
shutdown(*sock, 2);
@ -2161,7 +2169,7 @@ static switch_state_handler_table_t verto_state_handlers = {
static void verto_set_media_options(verto_pvt_t *tech_pvt, verto_profile_t *profile)
{
int i;
uint32_t i;
tech_pvt->mparams->rtpip = switch_core_session_strdup(tech_pvt->session, profile->rtpip[profile->rtpip_cur++]);
@ -3622,12 +3630,16 @@ static void jrpc_init(void)
static int start_jsock(verto_profile_t *profile, int sock)
static int start_jsock(verto_profile_t *profile, ws_socket_t sock)
{
jsock_t *jsock = NULL;
int flag = 1;
int i;
unsigned int len;
#ifndef WIN32
unsigned int len;
#else
int len;
#endif
jsock_type_t ptype = PTYPE_CLIENT;
switch_thread_data_t *td;
switch_memory_pool_t *pool;
@ -3713,10 +3725,14 @@ static int start_jsock(verto_profile_t *profile, int sock)
return -1;
}
static int prepare_socket(int ip, int port)
static ws_socket_t prepare_socket(int ip, int port)
{
int sock = -1;
ws_socket_t sock = ws_sock_invalid;
#ifndef WIN32
int reuse_addr = 1;
#else
char reuse_addr = 1;
#endif
struct sockaddr_in addr;
if ((sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) {
@ -3734,12 +3750,12 @@ static int prepare_socket(int ip, int port)
if (bind(sock, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
die("Bind Error!\n");
return -1;
return ws_sock_invalid;
}
if (listen(sock, MAXPENDING) < 0) {
die("Listen error\n");
return -1;
return ws_sock_invalid;
}
return sock;
@ -3748,7 +3764,7 @@ static int prepare_socket(int ip, int port)
close_file(&sock);
return -1;
return ws_sock_invalid;
}
static void handle_mcast_sub(verto_profile_t *profile)
@ -3925,7 +3941,7 @@ static void kill_profiles(void)
while(--sanity > 0 && globals.profile_threads > 0) {
usleep(100000);
switch_yield(100000);
}
}
@ -4365,13 +4381,14 @@ static switch_status_t cmd_status(char **argv, int argc, switch_stream_handle_t
int cp = 0;
int cc = 0;
const char *line = "=================================================================================================";
int i;
stream->write_function(stream, "%25s\t%s\t %40s\t%s\n", "Name", " Type", "Data", "State");
stream->write_function(stream, "%s\n", line);
switch_mutex_lock(globals.mutex);
for(profile = globals.profile_head; profile; profile = profile->next) {
for (int i = 0; i < profile->i; i++) {
for (i = 0; i < profile->i; i++) {
char *tmpurl = switch_mprintf("%s:%s:%d",(profile->ip[i].secure == 1) ? "wss" : "ws", profile->ip[i].local_ip, profile->ip[i].local_port);
stream->write_function(stream, "%25s\t%s\t %40s\t%s\n", profile->name, "profile", tmpurl, (profile->running) ? "RUNNING" : "DOWN");
switch_safe_free(tmpurl);
@ -4408,12 +4425,13 @@ static switch_status_t cmd_xml_status(char **argv, int argc, switch_stream_handl
int cp = 0;
int cc = 0;
const char *header = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>";
int i;
stream->write_function(stream, "%s\n", header);
stream->write_function(stream, "<profiles>\n");
switch_mutex_lock(globals.mutex);
for(profile = globals.profile_head; profile; profile = profile->next) {
for (int i = 0; i < profile->i; i++) {
for (i = 0; i < profile->i; i++) {
char *tmpurl = switch_mprintf("%s:%s:%d",(profile->ip[i].secure == 1) ? "wss" : "ws", profile->ip[i].local_ip, profile->ip[i].local_port);
stream->write_function(stream, "<profile>\n<name>%s</name>\n<type>%s</type>\n<data>%s</data>\n<state>%s</state>\n</profile>\n", profile->name, "profile", tmpurl, (profile->running) ? "RUNNING" : "DOWN");
switch_safe_free(tmpurl);
@ -4506,7 +4524,7 @@ static void *SWITCH_THREAD_FUNC profile_thread(switch_thread_t *thread, void *ob
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "profile %s shutdown, Waiting for %d threads\n", profile->name, profile->jsock_count);
while(--sanity > 0 && profile->jsock_count > 0) {
usleep(100000);
switch_yield(100000);
}
verto_deinit_ssl(profile);
@ -5321,7 +5339,9 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_verto_load)
memset(&globals, 0, sizeof(globals));
globals.pool = pool;
#ifndef WIN32
globals.ready = SIGUSR1;
#endif
globals.enable_presence = SWITCH_TRUE;
globals.enable_fs_events = SWITCH_FALSE;

View File

@ -36,19 +36,29 @@
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#ifdef WIN32
#include <WinSock2.h>
#else
#include <sys/socket.h>
#include <arpa/inet.h>
#include <sys/wait.h>
#endif
#include <string.h>
#ifndef WIN32
#include <unistd.h>
#include <poll.h>
#endif
#include <stdarg.h>
#ifndef WIN32
#include <netinet/tcp.h>
#include <sys/un.h>
#endif
#include <assert.h>
#include <errno.h>
#ifndef WIN32
#include <pwd.h>
#include <netdb.h>
#endif
#include <openssl/ssl.h>
#include "mcast.h"
@ -89,7 +99,7 @@ typedef enum {
struct verto_profile_s;
struct jsock_s {
int client_socket;
ws_socket_t client_socket;
switch_memory_pool_t *pool;
switch_thread_t *thread;
wsh_t ws;
@ -99,10 +109,12 @@ struct jsock_s {
struct sockaddr_in local_addr;
struct sockaddr_in remote_addr;
struct sockaddr_in send_addr;
#ifndef WIN32
struct passwd pw;
#endif
int drop;
int local_sock;
ws_socket_t local_sock;
SSL *ssl;
jpflag_t flags;
@ -198,7 +210,7 @@ struct verto_profile_s {
jsock_t *jsock_head;
int jsock_count;
int server_socket[MAX_BIND];
ws_socket_t server_socket[MAX_BIND];
int running;
int ssl_ready;

View File

@ -656,7 +656,11 @@ ssize_t ws_close(wsh_t *wsh, int16_t reason)
restore_socket(wsh->sock);
if (wsh->close_sock && wsh->sock != ws_sock_invalid) {
#ifndef WIN32
close(wsh->sock);
#else
closesocket(wsh->sock);
#endif
}
wsh->sock = ws_sock_invalid;

View File

@ -11,11 +11,11 @@
#include <arpa/inet.h>
#include <sys/wait.h>
#include <sys/socket.h>
#include <unistd.h>
#else
#pragma warning(disable:4996)
#endif
#include <string.h>
#include <unistd.h>
#include <string.h>
#include <stdint.h>
#include <stdio.h>
@ -26,7 +26,9 @@
#include <openssl/ssl.h>
#ifdef _MSC_VER
#ifndef strncasecmp
#define strncasecmp _strnicmp
#endif
#define snprintf _snprintf
#ifdef _WIN64
#define WS_SSIZE_T __int64
@ -48,8 +50,12 @@ struct ws_globals_s {
extern struct ws_globals_s ws_globals;
#ifndef WIN32
typedef int ws_socket_t;
#define ws_sock_invalid -1
#else
typedef SOCKET ws_socket_t;
#endif
#define ws_sock_invalid (ws_socket_t)-1
typedef enum {