Index: /pjproject/main/Makefile
===================================================================
--- /pjproject/main/Makefile	(revision 1)
+++ /pjproject/main/Makefile	(revision 2)
@@ -1,8 +1,6 @@
 DIRS = pjlib pjsdp pjmedia pjsip
 
-MAKE_FLAGS := TARGET=$(TARGET)
-
 ifdef MINSIZE
-MAKE_FLAGS := $(MAKE_FLAGS) MINSIZE=1
+MAKE_FLAGS := MINSIZE=1
 endif
 
@@ -22,8 +20,5 @@
 BINS = pjsip/bin/pjsua$(EXE) 
 
-include pjlib/build/make-$(TARGET).inc
-
 size:
-	@echo 'TARGET=$(TARGET)'
 	@echo -n 'Date: '
 	@date
@@ -42,2 +37,9 @@
 	done
 
+dos2unix:
+	for f in `find . | egrep '(mak|h|c|S|s|Makefile)$$'`; do \
+		dos2unix "$$f" > dos2unix.tmp; \
+		cp dos2unix.tmp "$$f"; \
+	done
+	rm -f dos2unix.tmp
+
Index: /pjproject/main/build.mak
===================================================================
--- /pjproject/main/build.mak	(revision 1)
+++ /pjproject/main/build.mak	(revision 2)
@@ -54,2 +54,10 @@
 #export KERNEL_ARCH = ARCH=um
 
+#
+# SunOS, sparc, gcc
+#
+export MACHINE_NAME := sparc
+export OS_NAME := sunos
+export CC_NAME := gcc
+export HOST_NAME := unix
+
Index: /pjproject/main/build/cc-gcc.mak
===================================================================
--- /pjproject/main/build/cc-gcc.mak	(revision 1)
+++ /pjproject/main/build/cc-gcc.mak	(revision 2)
Index: /pjproject/main/build/cc-vc.mak
===================================================================
--- /pjproject/main/build/cc-vc.mak	(revision 1)
+++ /pjproject/main/build/cc-vc.mak	(revision 2)
Index: /pjproject/main/build/host-mingw.mak
===================================================================
--- /pjproject/main/build/host-mingw.mak	(revision 1)
+++ /pjproject/main/build/host-mingw.mak	(revision 2)
Index: /pjproject/main/build/host-unix.mak
===================================================================
--- /pjproject/main/build/host-unix.mak	(revision 1)
+++ /pjproject/main/build/host-unix.mak	(revision 2)
Index: /pjproject/main/build/host-win32.mak
===================================================================
--- /pjproject/main/build/host-win32.mak	(revision 1)
+++ /pjproject/main/build/host-win32.mak	(revision 2)
Index: /pjproject/main/build/m-alpha.mak
===================================================================
--- /pjproject/main/build/m-alpha.mak	(revision 1)
+++ /pjproject/main/build/m-alpha.mak	(revision 2)
Index: /pjproject/main/build/m-i386.mak
===================================================================
--- /pjproject/main/build/m-i386.mak	(revision 1)
+++ /pjproject/main/build/m-i386.mak	(revision 2)
Index: /pjproject/main/build/m-m68k.mak
===================================================================
--- /pjproject/main/build/m-m68k.mak	(revision 1)
+++ /pjproject/main/build/m-m68k.mak	(revision 2)
Index: /pjproject/main/build/m-sparc.mak
===================================================================
--- /pjproject/main/build/m-sparc.mak	(revision 2)
+++ /pjproject/main/build/m-sparc.mak	(revision 2)
@@ -0,0 +1,4 @@
+export M_CFLAGS := $(CC_DEF)PJ_M_SPARC=1
+export M_CXXFLAGS :=
+export M_LDFLAGS :=
+export M_SOURCES :=
Index: /pjproject/main/build/os-linux-kernel.mak
===================================================================
--- /pjproject/main/build/os-linux-kernel.mak	(revision 1)
+++ /pjproject/main/build/os-linux-kernel.mak	(revision 2)
Index: /pjproject/main/build/os-linux.mak
===================================================================
--- /pjproject/main/build/os-linux.mak	(revision 1)
+++ /pjproject/main/build/os-linux.mak	(revision 2)
Index: /pjproject/main/build/os-palmos.mak
===================================================================
--- /pjproject/main/build/os-palmos.mak	(revision 1)
+++ /pjproject/main/build/os-palmos.mak	(revision 2)
Index: /pjproject/main/build/os-sunos.mak
===================================================================
--- /pjproject/main/build/os-sunos.mak	(revision 2)
+++ /pjproject/main/build/os-sunos.mak	(revision 2)
@@ -0,0 +1,12 @@
+export OS_CFLAGS   := $(CC_DEF)PJ_SUNOS=1
+
+export OS_CXXFLAGS := 
+
+export OS_LDFLAGS  := $(CC_LIB)pthread$(LIBEXT2) \
+		      $(CC_LIB)socket$(LIBEXT2) \
+		      $(CC_LIB)rt$(LIBEXT2) \
+		      $(CC_LIB)nsl$(LIBEXT2)
+
+export OS_SOURCES  := 
+
+
Index: /pjproject/main/build/os-win32.mak
===================================================================
--- /pjproject/main/build/os-win32.mak	(revision 1)
+++ /pjproject/main/build/os-win32.mak	(revision 2)
Index: /pjproject/main/build/rules.mak
===================================================================
--- /pjproject/main/build/rules.mak	(revision 1)
+++ /pjproject/main/build/rules.mak	(revision 2)
@@ -149,13 +149,14 @@
 	for F in $(FULL_SRCS); do \
 	   if test -f $$F; then \
-	     echo -n $(OBJDIR)/ >> $(DEP_FILE); \
+	     bash -c "echo -n $(OBJDIR)/" >> $(DEP_FILE); \
 	     if gcc -MM $(DEPFLAGS) $$F | sed '/^#/d' >> $(DEP_FILE); then \
 		true; \
 	     else \
 		echo 'err:' >> $(DEP_FILE); \
+		rm -f $(DEP_FILE); \
 		exit 1; \
 	     fi; \
 	   fi; \
-	done
+	done;
 
 dep: depend
Index: /pjproject/main/pjlib/build/Makefile
===================================================================
--- /pjproject/main/pjlib/build/Makefile	(revision 1)
+++ /pjproject/main/pjlib/build/Makefile	(revision 2)
@@ -61,5 +61,5 @@
 # Gather all flags.
 #
-export _CFLAGS 	:= $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
+export _CFLAGS 	:= -O2 $(CC_CFLAGS) $(OS_CFLAGS) $(HOST_CFLAGS) $(M_CFLAGS) \
 		   $(CFLAGS) $(CC_INC)../include
 export _CXXFLAGS:= $(_CFLAGS) $(CC_CXXFLAGS) $(OS_CXXFLAGS) $(M_CXXFLAGS) \
Index: /pjproject/main/pjlib/build/os-linux-kernel.mak
===================================================================
--- /pjproject/main/pjlib/build/os-linux-kernel.mak	(revision 1)
+++ /pjproject/main/pjlib/build/os-linux-kernel.mak	(revision 2)
Index: /pjproject/main/pjlib/build/os-linux.mak
===================================================================
--- /pjproject/main/pjlib/build/os-linux.mak	(revision 1)
+++ /pjproject/main/pjlib/build/os-linux.mak	(revision 2)
Index: /pjproject/main/pjlib/build/os-sunos.mak
===================================================================
--- /pjproject/main/pjlib/build/os-sunos.mak	(revision 2)
+++ /pjproject/main/pjlib/build/os-sunos.mak	(revision 2)
@@ -0,0 +1,36 @@
+#
+# PJLIB OS specific configuration for SunOS target. 
+#
+
+#
+# PJLIB_OBJS specified here are object files to be included in PJLIB
+# (the library) for this specific operating system. Object files common 
+# to all operating systems should go in Makefile instead.
+#
+export PJLIB_OBJS += 	addr_resolv_sock.o guid_simple.o \
+			log_writer_stdout.o os_core_unix.o \
+			os_error_unix.o os_time_ansi.o \
+			os_timestamp_common.o os_timestamp_linux.o \
+			os_time_ansi.o \
+			pool_policy_malloc.o sock_bsd.o sock_select.o
+
+export PJLIB_OBJS += ioqueue_select.o 
+#export PJLIB_OBJS += ioqueue_epoll.o
+
+#
+# TEST_OBJS are operating system specific object files to be included in
+# the test application.
+#
+export TEST_OBJS +=	main.o
+
+#
+# Additional LDFLAGS for pjlib-test
+#
+export TEST_LDFLAGS += -lm
+
+#
+# TARGETS are make targets in the Makefile, to be executed for this given
+# operating system.
+#
+export TARGETS	    =	pjlib pjlib-test
+
Index: /pjproject/main/pjlib/build/os-win32.mak
===================================================================
--- /pjproject/main/pjlib/build/os-win32.mak	(revision 1)
+++ /pjproject/main/pjlib/build/os-win32.mak	(revision 2)
Index: /pjproject/main/pjlib/build/pjlib_samples.mak
===================================================================
--- /pjproject/main/pjlib/build/pjlib_samples.mak	(revision 1)
+++ /pjproject/main/pjlib/build/pjlib_samples.mak	(revision 2)
Index: /pjproject/main/pjlib/docs/doxygen.css
===================================================================
--- /pjproject/main/pjlib/docs/doxygen.css	(revision 1)
+++ /pjproject/main/pjlib/docs/doxygen.css	(revision 2)
Index: /pjproject/main/pjlib/include/pj/addr_resolv.h
===================================================================
--- /pjproject/main/pjlib/include/pj/addr_resolv.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/addr_resolv.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/array.h
===================================================================
--- /pjproject/main/pjlib/include/pj/array.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/array.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/assert.h
===================================================================
--- /pjproject/main/pjlib/include/pj/assert.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/assert.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/assert.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/assert.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/assert.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/cc_gcc.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/cc_gcc.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/cc_gcc.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/cc_msvc.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/cc_msvc.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/cc_msvc.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/ctype.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/ctype.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/ctype.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/errno.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/errno.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/errno.h	(revision 2)
@@ -10,5 +10,6 @@
 
 #elif (defined(PJ_LINUX) && PJ_LINUX != 0) || \
-      (defined(PJ_LINUX_KERNEL) && PJ_LINUX_KERNEL != 0)
+      (defined(PJ_LINUX_KERNEL) && PJ_LINUX_KERNEL != 0) || \
+      (defined(PJ_SUNOS) && PJ_SUNOS != 0)
 
     typedef int pj_os_err_type;
Index: /pjproject/main/pjlib/include/pj/compat/high_precision.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/high_precision.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/high_precision.h	(revision 2)
@@ -36,4 +36,6 @@
 
 #else
+#   warning "High precision math is not available"
+
     /*
      * Last, fallback to 32-bit arithmetics.
Index: /pjproject/main/pjlib/include/pj/compat/m_alpha.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/m_alpha.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/m_alpha.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/m_i386.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/m_i386.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/m_i386.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/m_m68k.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/m_m68k.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/m_m68k.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/m_sparc.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/m_sparc.h	(revision 2)
+++ /pjproject/main/pjlib/include/pj/compat/m_sparc.h	(revision 2)
@@ -0,0 +1,21 @@
+/* $Header:  $ */
+/* 
+ *$Log:  $
+ * 
+ */
+#ifndef __PJ_COMPAT_M_SPARC_H__
+#define __PJ_COMPAT_M_SPARC_H__
+
+/**
+ * @file m_sparc.h
+ * @brief Describes SPARC family processor specifics.
+ */
+
+#define PJ_SPARC		1
+
+#define PJ_HAS_PENTIUM		0
+#define PJ_IS_LITTLE_ENDIAN	0
+#define PJ_IS_BIG_ENDIAN	1
+
+
+#endif	/* __PJ_COMPAT_M_SPARC_H__ */
Index: /pjproject/main/pjlib/include/pj/compat/malloc.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/malloc.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/malloc.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/os_linux.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/os_linux.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/os_linux.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/os_linux_kernel.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/os_linux_kernel.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/os_linux_kernel.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/os_palmos.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/os_palmos.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/os_palmos.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/os_sunos.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/os_sunos.h	(revision 2)
+++ /pjproject/main/pjlib/include/pj/compat/os_sunos.h	(revision 2)
@@ -0,0 +1,56 @@
+/* $Header:  $ */
+/* $Log:  $
+ * 
+ */
+#ifndef __PJ_COMPAT_OS_SUNOS_H__
+#define __PJ_COMPAT_OS_SUNOS_H__
+
+/**
+ * @file os_sunos.h
+ * @brief Describes SunOS/Solaris operating system specifics.
+ */
+
+#define PJ_HAS_ARPA_INET_H	    1
+#define PJ_HAS_ASSERT_H		    1
+#define PJ_HAS_CTYPE_H		    1
+#define PJ_HAS_ERRNO_H		    1
+#define PJ_HAS_LINUX_SOCKET_H	    0
+#define PJ_HAS_MALLOC_H		    1
+#define PJ_HAS_NETDB_H		    1
+#define PJ_HAS_NETINET_IN_H	    1
+#define PJ_HAS_SETJMP_H		    1
+#define PJ_HAS_STDARG_H		    1
+#define PJ_HAS_STDDEF_H		    1
+#define PJ_HAS_STDIO_H		    1
+#define PJ_HAS_STDLIB_H		    1
+#define PJ_HAS_STRING_H		    1
+#define PJ_HAS_SYS_IOCTL_H	    1
+#define PJ_HAS_SYS_SELECT_H	    1
+#define PJ_HAS_SYS_SOCKET_H	    1
+#define PJ_HAS_SYS_TIMEB_H	    1
+#define PJ_HAS_SYS_TYPES_H	    1
+#define PJ_HAS_TIME_H		    1
+#define PJ_HAS_UNISTD_H		    1
+
+#define PJ_HAS_MSWSOCK_H	    0
+#define PJ_HAS_WINSOCK_H	    0
+#define PJ_HAS_WINSOCK2_H	    0
+
+#define PJ_SOCK_HAS_INET_ATON	    0
+
+/* Default threading is enabled, unless it's overridden. */
+#ifndef PJ_HAS_THREADS
+#  define PJ_HAS_THREADS	    (1)
+#endif
+
+#define PJ_HAS_HIGH_RES_TIMER	    1
+#define PJ_HAS_MALLOC               1
+#define PJ_OS_HAS_CHECK_STACK	    0
+
+#define PJ_ATOMIC_VALUE_TYPE	    long
+
+/* Get BSD related identifers in Sun's include files */
+#define BSD_COMP
+
+#endif	/* __PJ_COMPAT_OS_SUNOS_H__ */
+
Index: /pjproject/main/pjlib/include/pj/compat/os_win32.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/os_win32.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/os_win32.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/rand.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/rand.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/rand.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/setjmp.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/setjmp.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/setjmp.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/size_t.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/size_t.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/size_t.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/socket.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/socket.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/socket.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/sprintf.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/sprintf.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/sprintf.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/stdarg.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/stdarg.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/stdarg.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/stdfileio.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/stdfileio.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/stdfileio.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/string.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/string.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/string.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/time.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/time.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/time.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/compat/vsprintf.h
===================================================================
--- /pjproject/main/pjlib/include/pj/compat/vsprintf.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/compat/vsprintf.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/config.h
===================================================================
--- /pjproject/main/pjlib/include/pj/config.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/config.h	(revision 2)
@@ -22,14 +22,16 @@
 
 /********************************************************************
- * Include target specific configuration.
- */
-#if defined(PJ_WIN32)
+ * Include target OS specific configuration.
+ */
+#if defined(PJ_WIN32) && PJ_WIN32!=0
 #  include <pj/compat/os_win32.h>
-#elif defined(PJ_LINUX)
+#elif defined(PJ_LINUX) && PJ_LINUX!=0
 #  include <pj/compat/os_linux.h>
-#elif defined(PJ_LINUX_KERNEL)
+#elif defined(PJ_LINUX_KERNEL) && PJ_LINUX_KERNEL!=0
 #  include <pj/compat/os_linux_kernel.h>
-#elif defined(PJ_PALMOS)
+#elif defined(PJ_PALMOS) && PJ_PALMOS!=0
 #  include <pj/compat/os_palmos.h>
+#elif defined(PJ_SUNOS) && PJ_SUNOS!=0
+#  include <pj/compat/os_sunos.h>
 #else
 #  error "Please specify target os."
@@ -41,9 +43,11 @@
  */
 #if defined (PJ_M_I386) && PJ_M_I386 != 0
-#  include <pj/compat/m_i386.h>
+#   include <pj/compat/m_i386.h>
 #elif defined (PJ_M_M68K) && PJ_M_M68K != 0
 #   include <pj/compat/m_m68k.h>
 #elif defined (PJ_M_ALPHA) && PJ_M_ALPHA != 0
 #   include <pj/compat/m_alpha.h>
+#elif defined (PJ_M_SPARC) && PJ_M_SPARC != 0
+#   include <pj/compat/m_sparc.h>
 #else
 #  error "Please specify target machine."
Index: /pjproject/main/pjlib/include/pj/ctype.h
===================================================================
--- /pjproject/main/pjlib/include/pj/ctype.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/ctype.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/doxygen.h
===================================================================
--- /pjproject/main/pjlib/include/pj/doxygen.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/doxygen.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/equeue.h
===================================================================
--- /pjproject/main/pjlib/include/pj/equeue.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/equeue.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/errno.h
===================================================================
--- /pjproject/main/pjlib/include/pj/errno.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/errno.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/except.h
===================================================================
--- /pjproject/main/pjlib/include/pj/except.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/except.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/fifobuf.h
===================================================================
--- /pjproject/main/pjlib/include/pj/fifobuf.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/fifobuf.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/guid.h
===================================================================
--- /pjproject/main/pjlib/include/pj/guid.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/guid.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/hash.h
===================================================================
--- /pjproject/main/pjlib/include/pj/hash.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/hash.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/ioqueue.h
===================================================================
--- /pjproject/main/pjlib/include/pj/ioqueue.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/ioqueue.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/list.h
===================================================================
--- /pjproject/main/pjlib/include/pj/list.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/list.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/list_i.h
===================================================================
--- /pjproject/main/pjlib/include/pj/list_i.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/list_i.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/lock.h
===================================================================
--- /pjproject/main/pjlib/include/pj/lock.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/lock.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/log.h
===================================================================
--- /pjproject/main/pjlib/include/pj/log.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/log.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/md5.h
===================================================================
--- /pjproject/main/pjlib/include/pj/md5.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/md5.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/os.h
===================================================================
--- /pjproject/main/pjlib/include/pj/os.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/os.h	(revision 2)
@@ -58,5 +58,5 @@
  */
 #if !defined(PJ_THREAD_DESC_SIZE)
-#   define PJ_THREAD_DESC_SIZE	    (PJ_MAX_OBJ_NAME + 10*sizeof(long))
+#   define PJ_THREAD_DESC_SIZE	    (16)
 #endif
 
@@ -65,5 +65,5 @@
  * or native API. 
  */
-typedef pj_uint8_t pj_thread_desc[PJ_THREAD_DESC_SIZE];
+typedef long pj_thread_desc[PJ_THREAD_DESC_SIZE];
 
 /**
@@ -245,5 +245,5 @@
  * @param value	    The value.
  */
-PJ_DECL(void) pj_thread_local_set(long index, void *value);
+PJ_DECL(pj_status_t) pj_thread_local_set(long index, void *value);
 
 /**
@@ -784,6 +784,11 @@
     struct
     {
+#if defined(PJ_IS_LITTLE_ENDIAN) && PJ_IS_LITTLE_ENDIAN!=0
 	pj_uint32_t lo;     /**< Low 32-bit value of the 64-bit value. */
 	pj_uint32_t hi;     /**< high 32-bit value of the 64-bit value. */
+#else
+	pj_uint32_t hi;     /**< high 32-bit value of the 64-bit value. */
+	pj_uint32_t lo;     /**< Low 32-bit value of the 64-bit value. */
+#endif
     } u32;                  /**< The 64-bit value as two 32-bit values. */
 
Index: /pjproject/main/pjlib/include/pj/pool.h
===================================================================
--- /pjproject/main/pjlib/include/pj/pool.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/pool.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/pool_i.h
===================================================================
--- /pjproject/main/pjlib/include/pj/pool_i.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/pool_i.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/rand.h
===================================================================
--- /pjproject/main/pjlib/include/pj/rand.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/rand.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/rbtree.h
===================================================================
--- /pjproject/main/pjlib/include/pj/rbtree.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/rbtree.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/scanner.h
===================================================================
--- /pjproject/main/pjlib/include/pj/scanner.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/scanner.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/sock.h
===================================================================
--- /pjproject/main/pjlib/include/pj/sock.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/sock.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/sock_select.h
===================================================================
--- /pjproject/main/pjlib/include/pj/sock_select.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/sock_select.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/string.h
===================================================================
--- /pjproject/main/pjlib/include/pj/string.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/string.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/string_i.h
===================================================================
--- /pjproject/main/pjlib/include/pj/string_i.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/string_i.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/stun.h
===================================================================
--- /pjproject/main/pjlib/include/pj/stun.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/stun.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/timer.h
===================================================================
--- /pjproject/main/pjlib/include/pj/timer.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/timer.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/types.h
===================================================================
--- /pjproject/main/pjlib/include/pj/types.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/types.h	(revision 2)
Index: /pjproject/main/pjlib/include/pj/xml.h
===================================================================
--- /pjproject/main/pjlib/include/pj/xml.h	(revision 1)
+++ /pjproject/main/pjlib/include/pj/xml.h	(revision 2)
Index: /pjproject/main/pjlib/include/pjlib.h
===================================================================
--- /pjproject/main/pjlib/include/pjlib.h	(revision 1)
+++ /pjproject/main/pjlib/include/pjlib.h	(revision 2)
Index: /pjproject/main/pjlib/src/pj/addr_resolv_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/addr_resolv_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/addr_resolv_linux_kernel.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/addr_resolv_sock.c
===================================================================
--- /pjproject/main/pjlib/src/pj/addr_resolv_sock.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/addr_resolv_sock.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/array.c
===================================================================
--- /pjproject/main/pjlib/src/pj/array.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/array.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/compat/longjmp_i386.S
===================================================================
--- /pjproject/main/pjlib/src/pj/compat/longjmp_i386.S	(revision 1)
+++ /pjproject/main/pjlib/src/pj/compat/longjmp_i386.S	(revision 2)
Index: /pjproject/main/pjlib/src/pj/compat/setjmp_i386.S
===================================================================
--- /pjproject/main/pjlib/src/pj/compat/setjmp_i386.S	(revision 1)
+++ /pjproject/main/pjlib/src/pj/compat/setjmp_i386.S	(revision 2)
Index: /pjproject/main/pjlib/src/pj/compat/sigjmp.c
===================================================================
--- /pjproject/main/pjlib/src/pj/compat/sigjmp.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/compat/sigjmp.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/compat/string.c
===================================================================
--- /pjproject/main/pjlib/src/pj/compat/string.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/compat/string.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/config.c
===================================================================
--- /pjproject/main/pjlib/src/pj/config.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/config.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/equeue_winnt.c
===================================================================
--- /pjproject/main/pjlib/src/pj/equeue_winnt.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/equeue_winnt.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/errno.c
===================================================================
--- /pjproject/main/pjlib/src/pj/errno.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/errno.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/except.c
===================================================================
--- /pjproject/main/pjlib/src/pj/except.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/except.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/extra-exports.c
===================================================================
--- /pjproject/main/pjlib/src/pj/extra-exports.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/extra-exports.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/fifobuf.c
===================================================================
--- /pjproject/main/pjlib/src/pj/fifobuf.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/fifobuf.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/guid.c
===================================================================
--- /pjproject/main/pjlib/src/pj/guid.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/guid.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/guid_simple.c
===================================================================
--- /pjproject/main/pjlib/src/pj/guid_simple.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/guid_simple.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/guid_win32.c
===================================================================
--- /pjproject/main/pjlib/src/pj/guid_win32.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/guid_win32.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/hash.c
===================================================================
--- /pjproject/main/pjlib/src/pj/hash.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/hash.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/ioqueue_dummy.c
===================================================================
--- /pjproject/main/pjlib/src/pj/ioqueue_dummy.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/ioqueue_dummy.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/ioqueue_epoll.c
===================================================================
--- /pjproject/main/pjlib/src/pj/ioqueue_epoll.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/ioqueue_epoll.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/ioqueue_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/ioqueue_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/ioqueue_linux_kernel.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/ioqueue_select.c
===================================================================
--- /pjproject/main/pjlib/src/pj/ioqueue_select.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/ioqueue_select.c	(revision 2)
@@ -499,5 +499,6 @@
 #	        if defined(PJ_WIN32) && PJ_WIN32 != 0
                 rc = pj_sock_recv(h->fd, h->rd_buf, &bytes_read, 0);
-#               elif defined(PJ_LINUX) && PJ_LINUX != 0
+#               elif (defined(PJ_LINUX) && PJ_LINUX != 0) || \
+		     (defined(PJ_SUNOS) && PJ_SUNOS != 0)
                 bytes_read = read(h->fd, h->rd_buf, bytes_read);
                 rc = (bytes_read >= 0) ? PJ_SUCCESS : pj_get_os_error();
@@ -506,5 +507,5 @@
                 rc = (bytes_read >= 0) ? PJ_SUCCESS : -bytes_read;
 #               else
-#               error "Check this man!"
+#               error "Implement read() for this platform!"
 #               endif
             }
@@ -560,10 +561,11 @@
 		  PJ_IOQUEUE_IS_CONNECT_OP(h->op));
 
-#if PJ_HAS_TCP
+#if defined(PJ_HAS_TCP) && PJ_HAS_TCP!=0
 	if ((h->op & PJ_IOQUEUE_OP_CONNECT)) {
 	    /* Completion of connect() operation */
 	    pj_ssize_t bytes_transfered;
 
-#if defined(PJ_LINUX) || defined(PJ_LINUX_KERNEL)
+#if (defined(PJ_LINUX) && PJ_LINUX!=0) || \
+    (defined(PJ_LINUX_KERNEL) && PJ_LINUX_KERNEL!=0)
 	    /* from connect(2): 
 		* On Linux, use getsockopt to read the SO_ERROR option at
@@ -585,8 +587,23 @@
                 bytes_transfered = value;
 	    }
-#elif defined(PJ_WIN32)
+#elif defined(PJ_WIN32) && PJ_WIN32!=0
 	    bytes_transfered = 0; /* success */
 #else
-#  error "Got to check this one!"
+	    /* Excellent information in D.J. Bernstein page:
+	     * http://cr.yp.to/docs/connect.html
+	     *
+	     * Seems like the most portable way of detecting connect()
+	     * failure is to call getpeername(). If socket is connected,
+	     * getpeername() will return 0. If the socket is not connected,
+	     * it will return ENOTCONN, and read(fd, &ch, 1) will produce
+	     * the right errno through error slippage. This is a combination
+	     * of suggestions from Douglas C. Schmidt and Ken Keys.
+	     */
+	    int gp_rc;
+	    struct sockaddr_in addr;
+	    socklen_t addrlen = sizeof(addr);
+
+	    gp_rc = getpeername(h->fd, (struct sockaddr*)&addr, &addrlen);
+	    bytes_transfered = gp_rc;
 #endif
 
Index: /pjproject/main/pjlib/src/pj/ioqueue_winnt.c
===================================================================
--- /pjproject/main/pjlib/src/pj/ioqueue_winnt.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/ioqueue_winnt.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/list.c
===================================================================
--- /pjproject/main/pjlib/src/pj/list.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/list.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/lock.c
===================================================================
--- /pjproject/main/pjlib/src/pj/lock.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/lock.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/log.c
===================================================================
--- /pjproject/main/pjlib/src/pj/log.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/log.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/log_writer_printk.c
===================================================================
--- /pjproject/main/pjlib/src/pj/log_writer_printk.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/log_writer_printk.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/log_writer_stdout.c
===================================================================
--- /pjproject/main/pjlib/src/pj/log_writer_stdout.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/log_writer_stdout.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/md5.c
===================================================================
--- /pjproject/main/pjlib/src/pj/md5.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/md5.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_core_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_core_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_core_linux_kernel.c	(revision 2)
@@ -253,5 +253,5 @@
 
     /* Initialize and set the thread entry. */
-    pj_memset(desc, 0, sizeof(pj_thread_desc));
+    pj_memset(desc, 0, sizeof(struct pj_thread_t));
 
     if(cstr_thread_name && pj_strlen(&thread_name) < sizeof(thread->obj_name)-1)
@@ -288,5 +288,5 @@
 	return rc;
 
-    return pj_thread_register("pjlib-main", (pj_uint8_t*)&main_thread, &dummy);
+    return pj_thread_register("pjlib-main", (long*)&main_thread, &dummy);
 }
 
@@ -473,8 +473,9 @@
 }
 
-PJ_DEF(void) pj_thread_local_set(long index, void *value)
+PJ_DEF(pj_status_t) pj_thread_local_set(long index, void *value)
 {
     pj_assert(index >= 0 && index < MAX_TLS_ID);
     tls_values[index] = value;
+    return PJ_SUCCESS;
 }
 
Index: /pjproject/main/pjlib/src/pj/os_core_unix.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_core_unix.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_core_unix.c	(revision 2)
@@ -175,4 +175,5 @@
 #if PJ_HAS_THREADS
     char stack_ptr;
+    pj_status_t rc;
     pj_thread_t *thread = (pj_thread_t *)desc;
     pj_str_t thread_name = pj_str((char*)cstr_thread_name);
@@ -191,5 +192,5 @@
 
     /* Initialize and set the thread entry. */
-    pj_memset(desc, 0, sizeof(pj_thread_desc));
+    pj_memset(desc, 0, sizeof(struct pj_thread_t));
     thread->thread = pthread_self();
 
@@ -199,5 +200,7 @@
 	pj_sprintf(thread->obj_name, "thr%p", (void*)thread->thread);
     
-    pj_thread_local_set(thread_tls_id, thread);
+    rc = pj_thread_local_set(thread_tls_id, thread);
+    if (rc != PJ_SUCCESS)
+	return rc;
 
 #if defined(PJ_OS_HAS_CHECK_STACK) && PJ_OS_HAS_CHECK_STACK!=0
@@ -214,5 +217,5 @@
     pj_thread_t *thread = (pj_thread_t*)desc;
     *ptr_thread = thread;
-    return SUCCESS;
+    return PJ_SUCCESS;
 #endif
 }
@@ -231,5 +234,5 @@
 	return rc;
     }
-    return pj_thread_register("thr%p", (pj_uint8_t*)&main_thread, &dummy);
+    return pj_thread_register("thr%p", (long*)&main_thread, &dummy);
 #else
     PJ_LOG(2,(THIS_FILE, "Thread init error. Threading is not enabled!"));
@@ -248,4 +251,5 @@
     pj_thread_t *rec = param;
     void *result;
+    pj_status_t rc;
 
 #if defined(PJ_OS_HAS_CHECK_STACK) && PJ_OS_HAS_CHECK_STACK!=0
@@ -254,5 +258,8 @@
 
     /* Set current thread id. */
-    pj_thread_local_set(thread_tls_id, rec);
+    rc = pj_thread_local_set(thread_tls_id, rec);
+    if (rc != PJ_SUCCESS) {
+	pj_assert(!"Thread TLS ID is not set (pj_init() error?)");
+    }
 
     /* Check if suspension is required. */
@@ -660,5 +667,5 @@
  * pj_thread_local_set()
  */
-PJ_DEF(void) pj_thread_local_set(long index, void *value)
+PJ_DEF(pj_status_t) pj_thread_local_set(long index, void *value)
 {
     //Can't check stack because this function is called in the
@@ -666,8 +673,10 @@
     //PJ_CHECK_STACK();
 #if PJ_HAS_THREADS
-    pthread_setspecific(index, value);
+    int rc=pthread_setspecific(index, value);
+    return rc==0 ? PJ_SUCCESS : PJ_RETURN_OS_ERROR(rc);
 #else
     pj_assert(index >= 0 && index < MAX_THREADS);
     tls[index] = value;
+    return PJ_SUCCESS;
 #endif
 }
@@ -706,14 +715,32 @@
 {
 #if PJ_HAS_THREADS
-    PJ_UNUSED_ARG(type);
-
-    PJ_CHECK_STACK();
+    pthread_mutexattr_t attr;
+    int rc;
+
+    PJ_CHECK_STACK();
+
+    pthread_mutexattr_init(&attr);
 
     if (type == PJ_MUTEX_SIMPLE) {
-	pthread_mutex_t the_mutex = PTHREAD_MUTEX_INITIALIZER;
-	mutex->mutex = the_mutex;
+#if defined(PJ_LINUX) && PJ_LINUX!=0
+	rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_FAST_NP);
+#else
+	rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_NORMAL);
+#endif
     } else {
-	pthread_mutex_t the_mutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
-	mutex->mutex = the_mutex;
+#if defined(PJ_LINUX) && PJ_LINUX!=0
+	rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP);
+#else
+	rc = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
+#endif
+    }
+    
+    if (rc != 0) {
+	return PJ_RETURN_OS_ERROR(rc);
+    }
+
+    rc = pthread_mutex_init(&mutex->mutex, &attr);
+    if (rc != 0) {
+	return PJ_RETURN_OS_ERROR(rc);
     }
     
Index: /pjproject/main/pjlib/src/pj/os_core_win32.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_core_win32.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_core_win32.c	(revision 2)
@@ -192,4 +192,5 @@
 {
     char stack_ptr;
+    pj_status_t rc;
     pj_thread_t *thread = (pj_thread_t *)desc;
     pj_str_t thread_name = pj_str((char*)cstr_thread_name);
@@ -208,5 +209,5 @@
 
     /* Initialize and set the thread entry. */
-    pj_memset(desc, 0, sizeof(pj_thread_desc));
+    pj_memset(desc, 0, sizeof(struct pj_thread_t));
     thread->hthread = GetCurrentThread();
     thread->idthread = GetCurrentThreadId();
@@ -225,5 +226,7 @@
 	pj_sprintf(thread->obj_name, "thr%p", (void*)thread->idthread);
     
-    pj_thread_local_set(thread_tls_id, thread);
+    rc = pj_thread_local_set(thread_tls_id, thread);
+    if (rc != PJ_SUCCESS)
+	return rc;
 
     *thread_ptr = thread;
@@ -257,5 +260,8 @@
     PJ_LOG(6,(rec->obj_name, "Thread started"));
 
-    pj_thread_local_set(thread_tls_id, rec);
+    if (pj_thread_local_set(thread_tls_id, rec) != PJ_SUCCESS) {
+	pj_assert(!"TLS is not set (pj_init() error?)");
+    }
+
     result = (*rec->proc)(rec->arg);
 
@@ -586,10 +592,13 @@
  * pj_thread_local_set()
  */
-PJ_DEF(void) pj_thread_local_set(long index, void *value)
-{
+PJ_DEF(pj_status_t) pj_thread_local_set(long index, void *value)
+{
+    BOOL rc;
+
     //Can't check stack because this function is called in the
     //beginning before main thread is initialized.
     //PJ_CHECK_STACK();
-    TlsSetValue(index, value);
+    rc = TlsSetValue(index, value);
+    return rc!=0 ? PJ_SUCCESS : PJ_RETURN_OS_ERROR(GetLastError());
 }
 
Index: /pjproject/main/pjlib/src/pj/os_error_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_error_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_error_linux_kernel.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_error_unix.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_error_unix.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_error_unix.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_error_win32.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_error_win32.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_error_win32.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_time_ansi.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_time_ansi.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_time_ansi.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_time_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_time_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_time_linux_kernel.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_timestamp_common.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_timestamp_common.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_timestamp_common.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_timestamp_linux.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_timestamp_linux.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_timestamp_linux.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_timestamp_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_timestamp_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_timestamp_linux_kernel.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/os_timestamp_win32.c
===================================================================
--- /pjproject/main/pjlib/src/pj/os_timestamp_win32.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/os_timestamp_win32.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/pool.c
===================================================================
--- /pjproject/main/pjlib/src/pj/pool.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/pool.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/pool_caching.c
===================================================================
--- /pjproject/main/pjlib/src/pj/pool_caching.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/pool_caching.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/pool_dbg_win32.c
===================================================================
--- /pjproject/main/pjlib/src/pj/pool_dbg_win32.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/pool_dbg_win32.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/pool_policy_kmalloc.c
===================================================================
--- /pjproject/main/pjlib/src/pj/pool_policy_kmalloc.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/pool_policy_kmalloc.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/pool_policy_malloc.c
===================================================================
--- /pjproject/main/pjlib/src/pj/pool_policy_malloc.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/pool_policy_malloc.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/rand.c
===================================================================
--- /pjproject/main/pjlib/src/pj/rand.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/rand.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/rbtree.c
===================================================================
--- /pjproject/main/pjlib/src/pj/rbtree.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/rbtree.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/scanner.c
===================================================================
--- /pjproject/main/pjlib/src/pj/scanner.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/scanner.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/sock_bsd.c
===================================================================
--- /pjproject/main/pjlib/src/pj/sock_bsd.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/sock_bsd.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/sock_linux_kernel.c
===================================================================
--- /pjproject/main/pjlib/src/pj/sock_linux_kernel.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/sock_linux_kernel.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/sock_select.c
===================================================================
--- /pjproject/main/pjlib/src/pj/sock_select.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/sock_select.c	(revision 2)
@@ -21,4 +21,7 @@
 #include <pj/errno.h>
 
+#if defined(PJ_HAS_STRING_H) && PJ_HAS_STRING_H!=0
+#   include <string.h>
+#endif
 
 #ifdef _MSC_VER
@@ -26,6 +29,7 @@
 #endif
 
-#define PART_FDSET(p_fdsetp)    ((fd_set*)&p_fdsetp->data[1])
-#define PART_COUNT(p_fdsetp)    (p_fdsetp->data[0])
+#define PART_FDSET(ps)		((fd_set*)&ps->data[1])
+#define PART_FDSET_OR_NULL(ps)	(ps ? PART_FDSET(ps) : NULL)
+#define PART_COUNT(ps)		(ps->data[0])
 
 PJ_DEF(void) PJ_FD_ZERO(pj_fd_set_t *fdsetp)
@@ -96,6 +100,6 @@
     }
 
-    return select(n, PART_FDSET(readfds), PART_FDSET(writefds),
-		  PART_FDSET(exceptfds), p_os_timeout);
+    return select(n, PART_FDSET_OR_NULL(readfds), PART_FDSET_OR_NULL(writefds),
+		  PART_FDSET_OR_NULL(exceptfds), p_os_timeout);
 }
 
Index: /pjproject/main/pjlib/src/pj/string.c
===================================================================
--- /pjproject/main/pjlib/src/pj/string.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/string.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/stun.c
===================================================================
--- /pjproject/main/pjlib/src/pj/stun.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/stun.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/stun_client.c
===================================================================
--- /pjproject/main/pjlib/src/pj/stun_client.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/stun_client.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/symbols.c
===================================================================
--- /pjproject/main/pjlib/src/pj/symbols.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/symbols.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/timer.c
===================================================================
--- /pjproject/main/pjlib/src/pj/timer.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/timer.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/types.c
===================================================================
--- /pjproject/main/pjlib/src/pj/types.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/types.c	(revision 2)
Index: /pjproject/main/pjlib/src/pj/xml.c
===================================================================
--- /pjproject/main/pjlib/src/pj/xml.c	(revision 1)
+++ /pjproject/main/pjlib/src/pj/xml.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-samples/except.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-samples/except.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-samples/except.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-samples/list.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-samples/list.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-samples/list.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-samples/log.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-samples/log.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-samples/log.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/atomic.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/atomic.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/atomic.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/echo_clt.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/echo_clt.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/echo_clt.c	(revision 2)
@@ -47,5 +47,5 @@
     PJ_FD_SET(sock, &fdset);
     
-    return pj_sock_select(1, &fdset, NULL, NULL, &timeout);
+    return pj_sock_select(FD_SETSIZE, &fdset, NULL, NULL, &timeout);
 }
 
@@ -83,4 +83,8 @@
         return -20;
     }
+
+    PJ_LOG(3,("", "...socket connected to %s:%d", 
+		  pj_inet_ntoa(addr.sin_addr),
+		  pj_ntohs(addr.sin_port)));
 
     pj_create_random_string(send_buf, BUF_SIZE);
@@ -116,4 +120,9 @@
         if (rc == 0) {
             PJ_LOG(3,("", "...timeout"));
+	    bytes = 0;
+	} else if (rc < 0) {
+	    rc = pj_get_netos_error();
+	    app_perror("...select() error", rc);
+	    break;
         } else {
             /* Receive back the original packet. */
@@ -130,8 +139,9 @@
                     }
                     bytes = 0;
+		    received = 0;
                     break;
                 }
                 bytes += received;
-            } while (bytes != BUF_SIZE);
+            } while (bytes != BUF_SIZE && bytes != 0);
         }
 
@@ -178,5 +188,5 @@
 
         if (pj_memcmp(send_buf, recv_buf, BUF_SIZE) != 0) {
-            PJ_LOG(3,("", "...error: buffer has changed!"));
+            //PJ_LOG(3,("", "...error: buffer has changed!"));
             break;
         }
Index: /pjproject/main/pjlib/src/pjlib-test/echo_srv.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/echo_srv.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/echo_srv.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/errno.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/errno.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/errno.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/exception.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/exception.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/exception.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/fifobuf.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/fifobuf.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/fifobuf.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/ioq_perf.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/ioq_perf.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/ioq_perf.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/ioq_tcp.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/ioq_tcp.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/ioq_tcp.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/ioq_udp.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/ioq_udp.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/ioq_udp.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/list.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/list.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/list.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/main.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/main.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/main.c	(revision 2)
@@ -36,4 +36,20 @@
 #endif
 
+#if defined(PJ_SUNOS) && PJ_SUNOS!=0
+#include <signal.h>
+static void init_signals()
+{
+    struct sigaction act;
+
+    memset(&act, 0, sizeof(act));
+    act.sa_handler = SIG_IGN;
+
+    sigaction(SIGALRM, &act, NULL);
+}
+
+#else
+#define init_signals()
+#endif
+
 int main(int argc, char *argv[])
 {
@@ -41,4 +57,5 @@
 
     boost();
+    init_signals();
 
     while (argc > 1) {
Index: /pjproject/main/pjlib/src/pjlib-test/main_mod.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/main_mod.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/main_mod.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/mutex.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/mutex.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/mutex.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/os.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/os.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/os.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/pool.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/pool.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/pool.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/pool_perf.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/pool_perf.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/pool_perf.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/rand.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/rand.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/rand.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/rbtree.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/rbtree.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/rbtree.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/select.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/select.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/select.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/sleep.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/sleep.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/sleep.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/sock.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/sock.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/sock.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/sock_perf.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/sock_perf.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/sock_perf.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/string.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/string.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/string.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/test.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/test.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/test.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/test.h
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/test.h	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/test.h	(revision 2)
@@ -5,9 +5,9 @@
 #include <pj/types.h>
 
-#define GROUP_LIBC                  1
-#define GROUP_OS                    1
-#define GROUP_DATA_STRUCTURE        1
-#define GROUP_NETWORK               1
-#define GROUP_EXTRA                 1
+#define GROUP_LIBC                  0
+#define GROUP_OS                    0
+#define GROUP_DATA_STRUCTURE        0
+#define GROUP_NETWORK               0
+#define GROUP_EXTRA                 0
 
 #define INCLUDE_ERRNO_TEST          GROUP_LIBC
@@ -19,5 +19,5 @@
 #define INCLUDE_POOL_PERF_TEST	    (PJ_HAS_MALLOC && GROUP_LIBC)
 #define INCLUDE_STRING_TEST	    GROUP_DATA_STRUCTURE
-#define INCLUDE_FIFOBUF_TEST	    GROUP_DATA_STRUCTURE
+#define INCLUDE_FIFOBUF_TEST	    0	// GROUP_DATA_STRUCTURE
 #define INCLUDE_RBTREE_TEST	    GROUP_DATA_STRUCTURE
 #define INCLUDE_TIMER_TEST	    GROUP_DATA_STRUCTURE
@@ -36,5 +36,5 @@
 
 #define INCLUDE_ECHO_SERVER         0
-#define INCLUDE_ECHO_CLIENT         0
+#define INCLUDE_ECHO_CLIENT         1
 
 #define ECHO_SERVER_MAX_THREADS     4
@@ -43,5 +43,5 @@
 #define ECHO_SERVER_DURATION_MSEC   (60*60*1000)
 
-#define ECHO_CLIENT_MAX_THREADS     10
+#define ECHO_CLIENT_MAX_THREADS     2
 
 PJ_BEGIN_DECL
Index: /pjproject/main/pjlib/src/pjlib-test/thread.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/thread.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/thread.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/timer.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/timer.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/timer.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/timestamp.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/timestamp.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/timestamp.c	(revision 2)
@@ -124,6 +124,9 @@
     /* See if elapsed time is reasonable. */
     if (elapsed < 1 || elapsed > 100000) {
-	PJ_LOG(3,(THIS_FILE, "....error: elapsed time outside window (%u)",
-			     elapsed));
+	PJ_LOG(3,(THIS_FILE, "....error: elapsed time outside window (%u, "
+			     "t1.u32.hi=%u, t1.u32.lo=%u, "
+			     "t2.u32.hi=%u, t2.u32.lo=%u)",
+			     elapsed, 
+			     t1.u32.hi, t1.u32.lo, t2.u32.hi, t2.u32.lo));
 	return -1030;
     }
Index: /pjproject/main/pjlib/src/pjlib-test/udp_echo_srv_sync.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/udp_echo_srv_sync.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/udp_echo_srv_sync.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/util.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/util.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/util.c	(revision 2)
Index: /pjproject/main/pjlib/src/pjlib-test/xml.c
===================================================================
--- /pjproject/main/pjlib/src/pjlib-test/xml.c	(revision 1)
+++ /pjproject/main/pjlib/src/pjlib-test/xml.c	(revision 2)
Index: /pjproject/main/pjmedia/build/Makefile
===================================================================
--- /pjproject/main/pjmedia/build/Makefile	(revision 1)
+++ /pjproject/main/pjmedia/build/Makefile	(revision 2)
Index: /pjproject/main/pjmedia/build/make-linux-i386.inc
===================================================================
--- /pjproject/main/pjmedia/build/make-linux-i386.inc	(revision 1)
+++ /pjproject/main/pjmedia/build/make-linux-i386.inc	(revision 2)
Index: /pjproject/main/pjmedia/build/make-mingw.inc
===================================================================
--- /pjproject/main/pjmedia/build/make-mingw.inc	(revision 1)
+++ /pjproject/main/pjmedia/build/make-mingw.inc	(revision 2)
Index: /pjproject/main/pjmedia/build/make-rules
===================================================================
--- /pjproject/main/pjmedia/build/make-rules	(revision 1)
+++ /pjproject/main/pjmedia/build/make-rules	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/codec.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/codec.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/codec.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/codec.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/codec.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/codec.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/config.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/config.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/config.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/dsound.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/dsound.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/dsound.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/g711.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/g711.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/g711.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/jbuf.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/jbuf.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/jbuf.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/jbuf.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/jbuf.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/jbuf.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/mediamgr.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/mediamgr.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/mediamgr.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/mediamgr.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/mediamgr.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/mediamgr.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/nullsound.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/nullsound.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/nullsound.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/pasound.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/pasound.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/pasound.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/dsound_wrapper.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/dsound_wrapper.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/dsound_wrapper.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/dsound_wrapper.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/dsound_wrapper.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/dsound_wrapper.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_allocation.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_allocation.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_allocation.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_allocation.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_allocation.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_allocation.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_converters.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_converters.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_converters.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_converters.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_converters.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_converters.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_cpuload.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_cpuload.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_cpuload.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_cpuload.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_cpuload.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_cpuload.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_dither.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_dither.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_dither.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_dither.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_dither.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_dither.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_endianness.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_endianness.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_endianness.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_front.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_front.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_front.c	(revision 2)
@@ -34,5 +34,5 @@
 /** @mainpage
 
-PortAudio is an open-source cross-platform C library for audio input
+PortAudio is an open-source cross-platform CË library for audio input
 and output. It is designed to simplify the porting of audio applications
 between various platforms, and also to simplify the development of audio
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_hostapi.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_hostapi.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_hostapi.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_linux_alsa.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_linux_alsa.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_linux_alsa.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_linux_alsa.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_linux_alsa.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_linux_alsa.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_process.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_process.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_process.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_process.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_process.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_process.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_skeleton.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_skeleton.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_skeleton.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_stream.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_stream.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_stream.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_stream.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_stream.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_stream.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_trace.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_trace.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_trace.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_trace.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_trace.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_trace.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_types.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_types.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_types.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_hostapis.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_hostapis.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_hostapis.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_oss.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_oss.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_oss.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_util.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_util.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_util.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_util.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_util.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_unix_util.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_util.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_util.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_util.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_ds.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_ds.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_ds.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_hostapis.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_hostapis.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_hostapis.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_util.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_util.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_util.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_wmme.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_wmme.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_wmme.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_wmme.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_wmme.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_win_wmme.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_x86_plain_converters.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_x86_plain_converters.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_x86_plain_converters.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_x86_plain_converters.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_x86_plain_converters.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/pa_x86_plain_converters.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/portaudio/portaudio.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/portaudio/portaudio.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/portaudio/portaudio.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/rtcp.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/rtcp.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/rtcp.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/rtcp.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/rtcp.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/rtcp.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/rtp.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/rtp.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/rtp.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/rtp.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/rtp.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/rtp.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/sdp.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/sdp.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/sdp.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/sdp.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/sdp.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/sdp.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/session.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/session.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/session.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/session.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/session.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/session.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/sound.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/sound.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/sound.h	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/stream.c
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/stream.c	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/stream.c	(revision 2)
Index: /pjproject/main/pjmedia/src/pjmedia/stream.h
===================================================================
--- /pjproject/main/pjmedia/src/pjmedia/stream.h	(revision 1)
+++ /pjproject/main/pjmedia/src/pjmedia/stream.h	(revision 2)
Index: /pjproject/main/pjmedia/src/test/audio_tool.c
===================================================================
--- /pjproject/main/pjmedia/src/test/audio_tool.c	(revision 1)
+++ /pjproject/main/pjmedia/src/test/audio_tool.c	(revision 2)
Index: /pjproject/main/pjmedia/src/test/jbuf_test.c
===================================================================
--- /pjproject/main/pjmedia/src/test/jbuf_test.c	(revision 1)
+++ /pjproject/main/pjmedia/src/test/jbuf_test.c	(revision 2)
Index: /pjproject/main/pjmedia/src/test/main.c
===================================================================
--- /pjproject/main/pjmedia/src/test/main.c	(revision 1)
+++ /pjproject/main/pjmedia/src/test/main.c	(revision 2)
Index: /pjproject/main/pjmedia/src/test/rtp_test.c
===================================================================
--- /pjproject/main/pjmedia/src/test/rtp_test.c	(revision 1)
+++ /pjproject/main/pjmedia/src/test/rtp_test.c	(revision 2)
Index: /pjproject/main/pjmedia/src/test/sdptest.c
===================================================================
--- /pjproject/main/pjmedia/src/test/sdptest.c	(revision 1)
+++ /pjproject/main/pjmedia/src/test/sdptest.c	(revision 2)
Index: /pjproject/main/pjmedia/src/test/session_test.c
===================================================================
--- /pjproject/main/pjmedia/src/test/session_test.c	(revision 1)
+++ /pjproject/main/pjmedia/src/test/session_test.c	(revision 2)
Index: /pjproject/main/pjsip/build/Makefile
===================================================================
--- /pjproject/main/pjsip/build/Makefile	(revision 1)
+++ /pjproject/main/pjsip/build/Makefile	(revision 2)
Index: /pjproject/main/pjsip/build/make-linux-i386.inc
===================================================================
--- /pjproject/main/pjsip/build/make-linux-i386.inc	(revision 1)
+++ /pjproject/main/pjsip/build/make-linux-i386.inc	(revision 2)
Index: /pjproject/main/pjsip/build/make-mingw.inc
===================================================================
--- /pjproject/main/pjsip/build/make-mingw.inc	(revision 1)
+++ /pjproject/main/pjsip/build/make-mingw.inc	(revision 2)
Index: /pjproject/main/pjsip/build/make-optimize.inc
===================================================================
--- /pjproject/main/pjsip/build/make-optimize.inc	(revision 1)
+++ /pjproject/main/pjsip/build/make-optimize.inc	(revision 2)
Index: /pjproject/main/pjsip/build/make-rules
===================================================================
--- /pjproject/main/pjsip/build/make-rules	(revision 1)
+++ /pjproject/main/pjsip/build/make-rules	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/print.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/print.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/print.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_auth.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_auth.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_auth.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_auth.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_auth.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_auth.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_auth_msg.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_auth_msg.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_auth_msg.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_auth_msg.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_auth_msg.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_auth_msg.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_auth_parser.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_auth_parser.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_auth_parser.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_auth_parser.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_auth_parser.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_auth_parser.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_config.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_config.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_config.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_endpoint.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_endpoint.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_endpoint.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_endpoint.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_endpoint.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_endpoint.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_event.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_event.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_event.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_misc.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_misc.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_misc.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_misc.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_misc.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_misc.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_module.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_module.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_module.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_msg.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_msg.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_msg.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_msg.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_msg.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_msg.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_msg_i.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_msg_i.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_msg_i.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_parser.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_parser.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_parser.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_parser.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_parser.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_parser.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_private.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_private.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_private.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_resolve.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_resolve.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_resolve.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_resolve.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_resolve.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_resolve.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_transaction.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_transaction.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_transaction.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_transaction.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_transaction.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_transaction.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_transport.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_transport.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_transport.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_transport.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_transport.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_transport.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_types.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_types.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_types.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_uri.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_uri.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_uri.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip/sip_uri.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip/sip_uri.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip/sip_uri.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_auth.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_auth.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_auth.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_core.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_core.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_core.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_dialog.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_dialog.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_dialog.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_dialog.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_dialog.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_dialog.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_reg.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_reg.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_reg.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_reg.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_reg.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_reg.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua_private.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua_private.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_mod_ua/sip_ua_private.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/event_notify.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/event_notify.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/event_notify.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/event_notify.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/event_notify.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/event_notify.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/event_notify_msg.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/event_notify_msg.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/event_notify_msg.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/event_notify_msg.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/event_notify_msg.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/event_notify_msg.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/messaging.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/messaging.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/messaging.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/messaging.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/messaging.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/messaging.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/pidf.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/pidf.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/pidf.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/pidf.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/pidf.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/pidf.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/presence.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/presence.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/presence.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/presence.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/presence.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/presence.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/xpidf.c
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/xpidf.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/xpidf.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_simple/xpidf.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_simple/xpidf.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_simple/xpidf.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsip_ua.h
===================================================================
--- /pjproject/main/pjsip/src/pjsip_ua.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsip_ua.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsua/getopt.c
===================================================================
--- /pjproject/main/pjsip/src/pjsua/getopt.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsua/getopt.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsua/getopt.h
===================================================================
--- /pjproject/main/pjsip/src/pjsua/getopt.h	(revision 1)
+++ /pjproject/main/pjsip/src/pjsua/getopt.h	(revision 2)
Index: /pjproject/main/pjsip/src/pjsua/main.c
===================================================================
--- /pjproject/main/pjsip/src/pjsua/main.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsua/main.c	(revision 2)
Index: /pjproject/main/pjsip/src/pjsua/misc.c
===================================================================
--- /pjproject/main/pjsip/src/pjsua/misc.c	(revision 1)
+++ /pjproject/main/pjsip/src/pjsua/misc.c	(revision 2)
Index: /pjproject/main/pjsip/src/tests/pjsip_core/main.c
===================================================================
--- /pjproject/main/pjsip/src/tests/pjsip_core/main.c	(revision 1)
+++ /pjproject/main/pjsip/src/tests/pjsip_core/main.c	(revision 2)
Index: /pjproject/main/pjsip/src/tests/pjsip_core/test.h
===================================================================
--- /pjproject/main/pjsip/src/tests/pjsip_core/test.h	(revision 1)
+++ /pjproject/main/pjsip/src/tests/pjsip_core/test.h	(revision 2)
Index: /pjproject/main/pjsip/src/tests/pjsip_core/test_msg.c
===================================================================
--- /pjproject/main/pjsip/src/tests/pjsip_core/test_msg.c	(revision 1)
+++ /pjproject/main/pjsip/src/tests/pjsip_core/test_msg.c	(revision 2)
Index: /pjproject/main/pjsip/src/tests/pjsip_core/test_uri.c
===================================================================
--- /pjproject/main/pjsip/src/tests/pjsip_core/test_uri.c	(revision 1)
+++ /pjproject/main/pjsip/src/tests/pjsip_core/test_uri.c	(revision 2)
Index: /pjproject/main/user.mak
===================================================================
--- /pjproject/main/user.mak	(revision 1)
+++ /pjproject/main/user.mak	(revision 2)
