diff --git a/Freeswitch.2008.express.sln b/Freeswitch.2008.express.sln
index 5d1b15df83..94dd67b042 100644
--- a/Freeswitch.2008.express.sln
+++ b/Freeswitch.2008.express.sln
@@ -575,6 +575,25 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applicat
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download TIFF", "libs\win32\Download TIFF.2008.vcproj", "{2B8A45C9-FEB4-4734-AB37-8DB9DB899917}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.vcproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
+ ProjectSection(ProjectDependencies) = postProject
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src\libtiff.vcproj", "{401A40CD-5DB4-4E34-AC68-FA99E9FAC014}"
+ ProjectSection(ProjectDependencies) = postProject
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917} = {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fax", "src\mod\applications\mod_fax\mod_fax.2008.vcproj", "{7877EFC8-4807-484B-B573-D7B7FD058FAA}"
+ ProjectSection(ProjectDependencies) = postProject
+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -1290,6 +1309,30 @@ Global
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.ActiveCfg = Release|Win32
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.Build.0 = Release|Win32
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.ActiveCfg = Release|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Debug|Win32.Build.0 = Debug|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Debug|x64.ActiveCfg = Debug|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Release|Win32.ActiveCfg = Release|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Release|Win32.Build.0 = Release|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Release|x64.ActiveCfg = Release|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.ActiveCfg = Debug|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.ActiveCfg = Release|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.Build.0 = Release|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.ActiveCfg = Release|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.ActiveCfg = Release|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.Build.0 = Release|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.ActiveCfg = Release|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Debug|Win32.Build.0 = Debug|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Debug|x64.ActiveCfg = Debug|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Release|Win32.ActiveCfg = Release|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Release|Win32.Build.0 = Release|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Release|x64.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Freeswitch.2008.sln b/Freeswitch.2008.sln
index 5067889162..be0592c19b 100644
--- a/Freeswitch.2008.sln
+++ b/Freeswitch.2008.sln
@@ -953,6 +953,25 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applicat
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download TIFF", "libs\win32\Download TIFF.2008.vcproj", "{2B8A45C9-FEB4-4734-AB37-8DB9DB899917}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src\libtiff.vcproj", "{401A40CD-5DB4-4E34-AC68-FA99E9FAC014}"
+ ProjectSection(ProjectDependencies) = postProject
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917} = {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.vcproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
+ ProjectSection(ProjectDependencies) = postProject
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fax", "src\mod\applications\mod_fax\mod_fax.2008.vcproj", "{7877EFC8-4807-484B-B573-D7B7FD058FAA}"
+ ProjectSection(ProjectDependencies) = postProject
+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -1674,6 +1693,30 @@ Global
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.ActiveCfg = Release|Win32
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.Build.0 = Release|Win32
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.ActiveCfg = Release|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Debug|Win32.ActiveCfg = Debug|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Debug|Win32.Build.0 = Debug|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Debug|x64.ActiveCfg = Debug|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Release|Win32.ActiveCfg = Release|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Release|Win32.Build.0 = Release|Win32
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917}.Release|x64.ActiveCfg = Release|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.ActiveCfg = Release|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.Build.0 = Release|Win32
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.ActiveCfg = Release|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.ActiveCfg = Debug|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.ActiveCfg = Release|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.Build.0 = Release|Win32
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.ActiveCfg = Release|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Debug|Win32.ActiveCfg = Debug|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Debug|Win32.Build.0 = Debug|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Debug|x64.ActiveCfg = Debug|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Release|Win32.ActiveCfg = Release|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Release|Win32.Build.0 = Release|Win32
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA}.Release|x64.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -1707,6 +1750,7 @@ Global
{14E4A972-9CFB-436D-B0A5-4943F3F80D47} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{329FD5B0-EF28-4606-86D0-F6EA21CF8E36} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
+ {7877EFC8-4807-484B-B573-D7B7FD058FAA} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
{07113B25-D3AF-4E04-BA77-4CD1171F022C} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
{A27CCA23-1541-4337-81A4-F0A6413078A0} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
{E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
@@ -1773,6 +1817,8 @@ Global
{419C8F80-D858-4B48-A25C-AF4007608137} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
{1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
{CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
{5927104D-C14C-4AC8-925C-4AB681762E75} = {C120A020-773F-4EA3-923F-B67AF28B750D}
{8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}
{4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
@@ -1786,6 +1832,7 @@ Global
{D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
{D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
{E796E337-DE78-4303-8614-9A590862EE95} = {C120A020-773F-4EA3-923F-B67AF28B750D}
+ {2B8A45C9-FEB4-4734-AB37-8DB9DB899917} = {C120A020-773F-4EA3-923F-B67AF28B750D}
{988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
{5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
{FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
diff --git a/libs/spandsp/src/libspandsp.vcproj b/libs/spandsp/src/libspandsp.vcproj
index 001fc79fb2..e67ad342a2 100644
--- a/libs/spandsp/src/libspandsp.vcproj
+++ b/libs/spandsp/src/libspandsp.vcproj
@@ -3,7 +3,7 @@
ProjectType="Visual C++"
Version="9.00"
Name="libspandsp"
- ProjectGUID="{CF70F278-3364-4395-A2E1-23501C9B8AD2}"
+ ProjectGUID="{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
RootNamespace="libspandsp"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
@@ -41,7 +41,7 @@
@@ -320,47 +320,47 @@
Name="Header Files"
>
diff --git a/libs/spandsp/src/msvc/inttypes.h b/libs/spandsp/src/msvc/inttypes.h
index f3c01e579d..cc5981ee0f 100644
--- a/libs/spandsp/src/msvc/inttypes.h
+++ b/libs/spandsp/src/msvc/inttypes.h
@@ -55,9 +55,15 @@ typedef __int64 int64_t;
#pragma comment(lib, "ws2_32.lib")
+#ifndef strncasecmp
#define strncasecmp _strnicmp
+#endif
+#ifndef strcasecmp
#define strcasecmp _stricmp
+#endif
+#ifndef snprintf
#define snprintf _snprintf
+#endif
#if !defined(INFINITY)
#define INFINITY 0x7fffffff
diff --git a/libs/spandsp/src/msvc/spandsp.def b/libs/spandsp/src/msvc/spandsp.def
index 80d794792a..3f9b5a04b5 100644
--- a/libs/spandsp/src/msvc/spandsp.def
+++ b/libs/spandsp/src/msvc/spandsp.def
@@ -274,4 +274,23 @@ v8_release
v8_tx
v8_rx
v8_log_supported_modulations
+t30_set_ecm_capability
+t30_set_supported_compressions
+t30_set_supported_modems
+t30_set_supported_resolutions
+t30_set_supported_image_sizes
+t30_set_tx_page_header_info
+t30_set_tx_ident
+span_log_set_level
+span_log_set_message_handler
+fax_set_transmit_on_idle
+fax_get_t30_state
+t30_get_rx_model
+t30_get_rx_vendor
+t30_get_rx_country
+t30_get_rx_ident
+t30_get_tx_ident
+t38_terminal_release
+t38_terminal_get_t30_state
+t30_terminate
diff --git a/libs/spandsp/src/msvc/spandsp.h b/libs/spandsp/src/msvc/spandsp.h
new file mode 100644
index 0000000000..7add43dd6d
--- /dev/null
+++ b/libs/spandsp/src/msvc/spandsp.h
@@ -0,0 +1,123 @@
+/*
+ * SpanDSP - a series of DSP components for telephony
+ *
+ * spandsp.h - The head guy amongst the headers
+ *
+ * Written by Steve Underwood
+ *
+ * Copyright (C) 2003 Steve Underwood
+ *
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 2.1,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ * $Id: spandsp.h.in,v 1.14 2009/01/07 13:31:53 steveu Exp $
+ */
+
+/*! \file */
+
+#if !defined(_SPANDSP_H_)
+#define _SPANDSP_H_
+
+#undef SPANDSP_USE_FIXED_POINT
+#undef SPANDSP_MISALIGNED_ACCESS_FAILS
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#endif
+
+#if defined(SPANDSP_EXPOSE_INTERNAL_STRUCTURES)
+#include
+#endif
+/*- End of file ------------------------------------------------------------*/
diff --git a/libs/win32/Download TIFF.2008.vcproj b/libs/win32/Download TIFF.2008.vcproj
new file mode 100644
index 0000000000..ee6e3af069
--- /dev/null
+++ b/libs/win32/Download TIFF.2008.vcproj
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/mod/applications/mod_fax/mod_fax.2008.vcproj b/src/mod/applications/mod_fax/mod_fax.2008.vcproj
new file mode 100644
index 0000000000..52577a0dca
--- /dev/null
+++ b/src/mod/applications/mod_fax/mod_fax.2008.vcproj
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/mod/applications/mod_fax/mod_fax.c b/src/mod/applications/mod_fax/mod_fax.c
index 8a31fc979d..f7b63e3e09 100644
--- a/src/mod/applications/mod_fax/mod_fax.c
+++ b/src/mod/applications/mod_fax/mod_fax.c
@@ -34,6 +34,26 @@
#include
+#ifdef WIN32
+ __inline float rintf(float flt)
+ {
+ _asm
+ { fld flt
+ frndint
+ }
+ }
+
+ __inline double rint(double dbl)
+ {
+ __asm
+ {
+ fld dbl
+ frndint
+ }
+ }
+
+#endif
+
#define SPANDSP_EXPOSE_INTERNAL_STRUCTURES
#include
#include