Fixed compilation and run warnings/errors with MSVC 2005

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@315 74dad513-b988-da41-8d7b-12977e46ad98
diff --git a/pjlib/include/pj/compat/cc_msvc.h b/pjlib/include/pj/compat/cc_msvc.h
index 291ecc8..4d4490a 100644
--- a/pjlib/include/pj/compat/cc_msvc.h
+++ b/pjlib/include/pj/compat/cc_msvc.h
@@ -33,6 +33,11 @@
 #define PJ_CC_VER_2	    (_MSC_VER%100)
 #define PJ_CC_VER_3	    0
 
+/* Disable CRT deprecation warnings. */
+#if PJ_CC_VER_1 >= 8
+#   define _CRT_SECURE_NO_DEPRECATE
+#endif
+
 #pragma warning(disable: 4127) // conditional expression is constant
 #pragma warning(disable: 4611) // not wise to mix setjmp with C++
 #pragma warning(disable: 4514) // unref. inline function has been removed
diff --git a/pjlib/include/pj/compat/sprintf.h b/pjlib/include/pj/compat/sprintf.h
deleted file mode 100644
index a780a5f..0000000
--- a/pjlib/include/pj/compat/sprintf.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* $Id$ */
-/* 
- * Copyright (C)2003-2006 Benny Prijono <benny@prijono.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
- */
-#ifndef __PJ_COMPAT_SPRINTF_H__
-#define __PJ_COMPAT_SPRINTF_H__
-
-/**
- * @file sprintf.h
- * @brief Provides sprintf() and snprintf() functions.
- */
-
-#if defined(PJ_HAS_STDIO_H) && PJ_HAS_STDIO_H != 0
-#  include <stdio.h>
-#endif
-
-#if defined(_MSC_VER)
-#  define snprintf	_snprintf
-#endif
-
-#define pj_sprintf      sprintf
-#define pj_snprintf	snprintf
-
-#endif	/* __PJ_COMPAT_SPRINTF_H__ */
diff --git a/pjlib/include/pj/compat/string.h b/pjlib/include/pj/compat/string.h
index 63cfdc5..6e70430 100644
--- a/pjlib/include/pj/compat/string.h
+++ b/pjlib/include/pj/compat/string.h
@@ -26,7 +26,7 @@
 
 
 #if defined(PJ_HAS_STRING_H) && PJ_HAS_STRING_H != 0
-#  include <string.h>
+#   include <string.h>
 #else
 
     PJ_DECL(int) strcasecmp(const char *s1, const char *s2);
@@ -35,30 +35,28 @@
 #endif
 
 #if defined(_MSC_VER)
-#  define strcasecmp	stricmp
-#  if defined(PJ_WIN32_WINCE) && PJ_WIN32_WINCE!=0
+#   include <stdio.h>
+#   define strcasecmp	_stricmp
 #   define strncasecmp	_strnicmp
-#  else
-#   define strncasecmp	strnicmp
-#  endif
-#  define snprintf	_snprintf
-#  define snwprintf	_snwprintf
-#  define wcsicmp	_wcsicmp
-#  define wcsnicmp	_wcsnicmp
+#   define snprintf	_snprintf
+#   define vsnprintf	_vsnprintf
+#   define snwprintf	_snwprintf
+#   define wcsicmp	_wcsicmp
+#   define wcsnicmp	_wcsnicmp
 #else
-#  define stricmp	strcasecmp
-#  define strnicmp	strncasecmp
+#   define stricmp	strcasecmp
+#   define strnicmp	strncasecmp
 
-#  if defined(PJ_NATIVE_STRING_IS_UNICODE) && PJ_NATIVE_STRING_IS_UNICODE!=0
-#     error "Implement Unicode string functions"
-#  endif
+#   if defined(PJ_NATIVE_STRING_IS_UNICODE) && PJ_NATIVE_STRING_IS_UNICODE!=0
+#	error "Implement Unicode string functions"
+#   endif
 #endif
 
-
 #define pj_ansi_strcmp		strcmp
 #define pj_ansi_strncmp		strncmp
 #define pj_ansi_strlen		strlen
 #define pj_ansi_strcpy		strcpy
+#define pj_ansi_strncpy		strncpy
 #define pj_ansi_strcat		strcat
 #define pj_ansi_strstr		strstr
 #define pj_ansi_strchr		strchr
@@ -68,11 +66,14 @@
 #define pj_ansi_strnicmp	strncasecmp
 #define pj_ansi_sprintf		sprintf
 #define pj_ansi_snprintf	snprintf
+#define pj_ansi_vsprintf	vsprintf
+#define pj_ansi_vsnprintf	vsnprintf
 
 #define pj_unicode_strcmp	wcscmp
 #define pj_unicode_strncmp	wcsncmp
 #define pj_unicode_strlen	wcslen
 #define pj_unicode_strcpy	wcscpy
+#define	pj_unicode_strncpy	wcsncpy
 #define pj_unicode_strcat	wcscat
 #define pj_unicode_strstr	wcsstr
 #define pj_unicode_strchr	wcschr
@@ -82,13 +83,15 @@
 #define pj_unicode_strnicmp	wcsnicmp
 #define pj_unicode_sprintf	swprintf
 #define pj_unicode_snprintf	snwprintf
-
+#define pj_unicode_vsprintf	vswprintf
+#define pj_unicode_vsnprintf	vsnwprintf
 
 #if defined(PJ_NATIVE_STRING_IS_UNICODE) && PJ_NATIVE_STRING_IS_UNICODE!=0
 #   define pj_native_strcmp	    pj_unicode_strcmp
 #   define pj_native_strncmp	    pj_unicode_strncmp
 #   define pj_native_strlen	    pj_unicode_strlen
 #   define pj_native_strcpy	    pj_unicode_strcpy
+#   define pj_native_strncpy	    pj_unicode_strncpy
 #   define pj_native_strcat	    pj_unicode_strcat
 #   define pj_native_strstr	    pj_unicode_strstr
 #   define pj_native_strchr	    pj_unicode_strchr
@@ -98,11 +101,14 @@
 #   define pj_native_strnicmp	    pj_unicode_strnicmp
 #   define pj_native_sprintf	    pj_unicode_sprintf
 #   define pj_native_snprintf	    pj_unicode_snprintf
+#   define pj_native_vsprintf	    pj_unicode_vsprintf
+#   define pj_native_vsnprintf	    pj_unicode_vsnprintf
 #else
 #   define pj_native_strcmp	    pj_ansi_strcmp
 #   define pj_native_strncmp	    pj_ansi_strncmp
 #   define pj_native_strlen	    pj_ansi_strlen
 #   define pj_native_strcpy	    pj_ansi_strcpy
+#   define pj_native_strncpy	    pj_ansi_strncpy
 #   define pj_native_strcat	    pj_ansi_strcat
 #   define pj_native_strstr	    pj_ansi_strstr
 #   define pj_native_strchr	    pj_ansi_strchr
@@ -112,6 +118,8 @@
 #   define pj_native_strnicmp	    pj_ansi_strnicmp
 #   define pj_native_sprintf	    pj_ansi_sprintf
 #   define pj_native_snprintf	    pj_ansi_snprintf
+#   define pj_native_vsprintf	    pj_ansi_vsprintf
+#   define pj_native_vsnprintf	    pj_ansi_vsnprintf
 #endif
 
 
diff --git a/pjlib/include/pj/compat/vsprintf.h b/pjlib/include/pj/compat/vsprintf.h
deleted file mode 100644
index 788465f..0000000
--- a/pjlib/include/pj/compat/vsprintf.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/* $Id$ */
-/* 
- * Copyright (C)2003-2006 Benny Prijono <benny@prijono.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
- */
-#ifndef __PJ_COMPAT_VSPRINTF_H__
-#define __PJ_COMPAT_VSPRINTF_H__
-
-/**
- * @file vsprintf.h
- * @brief Provides vsprintf and vsnprintf function.
- */
-
-#if defined(PJ_HAS_STDIO_H) && PJ_HAS_STDIO_H != 0
-#  include <stdio.h>
-#endif
-
-#if defined(_MSC_VER)
-#  define vsnprintf	_vsnprintf	
-#endif
-
-#define pj_vsnprintf	vsnprintf
-
-#endif	/* __PJ_COMPAT_VSPRINTF_H__ */
diff --git a/pjlib/include/pj/string.h b/pjlib/include/pj/string.h
index acc1ddf..90ab29e 100644
--- a/pjlib/include/pj/string.h
+++ b/pjlib/include/pj/string.h
@@ -26,8 +26,6 @@
 
 #include <pj/types.h>
 #include <pj/compat/string.h>
-#include <pj/compat/sprintf.h>
-#include <pj/compat/vsprintf.h>
 
 
 PJ_BEGIN_DECL