Changeset 2970


Ignore:
Timestamp:
Oct 26, 2009 3:47:52 PM (10 years ago)
Author:
nanang
Message:

Ticket #957:

  • Added features in secure socket: handshake timeout timer, certificate info, renegotiation API.
  • Added unit test for secure socket, along with testing purpose certificate & private key.
  • Updated build configs for secure socket.
Location:
pjproject/trunk
Files:
3 added
19 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/aconfigure

    r2962 r2970  
    1150111501_ACEOF 
    1150211502 
     11503                        cat >>confdefs.h <<\_ACEOF 
     11504#define PJ_HAS_SSL_SOCK 1 
     11505_ACEOF 
     11506 
    1150311507                else 
    1150411508                        { echo "$as_me:$LINENO: result: ** OpenSSL libraries not found, disabling SSL support **" >&5 
  • pjproject/trunk/aconfigure.ac

    r2962 r2970  
    760760                        AC_MSG_RESULT([OpenSSL library found, SSL support enabled]) 
    761761                        AC_DEFINE(PJSIP_HAS_TLS_TRANSPORT, 1) 
     762                        AC_DEFINE(PJ_HAS_SSL_SOCK, 1) 
    762763                else 
    763764                        AC_MSG_RESULT([** OpenSSL libraries not found, disabling SSL support **]) 
  • pjproject/trunk/pjlib/build/Makefile

    r2966 r2970  
    2727        pool.o pool_buf.o pool_caching.o pool_dbg.o rand.o \ 
    2828        rbtree.o sock_common.o sock_qos_common.o sock_qos_bsd.o \ 
    29         string.o timer.o types.o 
     29        ssl_sock_common.o ssl_sock_ossl.o string.o timer.o types.o 
    3030export PJLIB_CFLAGS += $(_CFLAGS) 
    3131 
     
    3838                    ioq_unreg.o ioq_tcp.o \ 
    3939                    list.o mutex.o os.o pool.o pool_perf.o rand.o rbtree.o \ 
    40                     select.o sleep.o sock.o sock_perf.o \ 
     40                    select.o sleep.o sock.o sock_perf.o ssl_sock.o \ 
    4141                    string.o test.o thread.o timer.o timestamp.o \ 
    4242                    udp_echo_srv_sync.o udp_echo_srv_ioqueue.o \ 
  • pjproject/trunk/pjlib/build/pjlib.dsp

    r2966 r2970  
    354354# Begin Source File 
    355355 
     356SOURCE=..\src\pj\ssl_sock_common.c 
     357# End Source File 
     358# Begin Source File 
     359 
     360SOURCE=..\src\pj\ssl_sock_ossl.c 
     361# End Source File 
     362# Begin Source File 
     363 
    356364SOURCE=..\src\pj\string.c 
    357365# End Source File 
     
    603611 
    604612SOURCE=..\include\pj\sock_select.h 
     613# End Source File 
     614# Begin Source File 
     615 
     616SOURCE=..\include\pj\ssl_sock.h 
    605617# End Source File 
    606618# Begin Source File 
  • pjproject/trunk/pjlib/build/pjlib.vcproj

    r2966 r2970  
    56445644                                        /> 
    56455645                                </FileConfiguration> 
     5646                        </File> 
     5647                        <File 
     5648                                RelativePath="..\src\pj\ssl_sock_common.c" 
     5649                                > 
     5650                        </File> 
     5651                        <File 
     5652                                RelativePath="..\src\pj\ssl_sock_ossl.c" 
     5653                                > 
    56465654                        </File> 
    56475655                        <File 
     
    1163911647                        </File> 
    1164011648                        <File 
     11649                                RelativePath="..\include\pj\ssl_sock.h" 
     11650                                > 
     11651                        </File> 
     11652                        <File 
    1164111653                                RelativePath="..\include\pj\string.h" 
    1164211654                                > 
  • pjproject/trunk/pjlib/build/pjlib_test.dsp

    r2148 r2970  
    7575LINK32=link.exe 
    7676# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 
    77 # ADD LINK32 netapi32.lib mswsock.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../bin/pjlib-test-i386-win32-vc6-debug.exe" /pdbtype:sept 
     77# ADD LINK32 netapi32.lib mswsock.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  libeay32MT.lib ssleay32MT.lib /nologo /subsystem:console /debug /machine:I386 /out:"../bin/pjlib-test-i386-win32-vc6-debug.exe" /pdbtype:sept 
    7878 
    7979!ENDIF  
     
    191191 
    192192SOURCE="..\src\pjlib-test\sock_perf.c" 
     193# End Source File 
     194# Begin Source File 
     195 
     196SOURCE="..\src\pjlib-test\ssl_sock.c" 
    193197# End Source File 
    194198# Begin Source File 
  • pjproject/trunk/pjlib/build/pjlib_test.vcproj

    r2664 r2970  
    3535                <Configuration 
    3636                        Name="Debug|Win32" 
     37                        ConfigurationType="1" 
    3738                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
    38  
     39                        UseOfMFC="0" 
    3940                        ATLMinimizesCRunTimeLibraryUsage="false" 
    40  
    4141                        CharacterSet="2" 
    42  
    43                         ConfigurationType="1" 
    44                         UseOfMFC="0" 
    4542                        > 
    4643                        <Tool 
     
    6158                        <Tool 
    6259                                Name="VCCLCompilerTool" 
     60                                AdditionalIncludeDirectories="../include" 
    6361                                PreprocessorDefinitions="_CONSOLE;" 
    64  
    65                                 AdditionalIncludeDirectories="../include" 
    6662                                PrecompiledHeaderFile="" 
    6763                        /> 
     
    7975                                AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
    8076                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
    81  
    8277                        /> 
    8378                        <Tool 
     
    108103                <Configuration 
    109104                        Name="Debug|Windows Mobile 6 Standard SDK (ARMV4I)" 
     105                        ConfigurationType="1" 
    110106                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    111  
    112107                        ATLMinimizesCRunTimeLibraryUsage="false" 
    113  
    114108                        CharacterSet="1" 
    115  
    116                         ConfigurationType="1" 
    117109                        > 
    118110                        <Tool 
     
    150142                                AdditionalDependencies="ws2.lib" 
    151143                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    152  
    153144                        /> 
    154145                        <Tool 
     
    178169                <Configuration 
    179170                        Name="Debug|Windows Mobile 6 Professional SDK (ARMV4I)" 
     171                        ConfigurationType="1" 
    180172                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    181  
    182173                        ATLMinimizesCRunTimeLibraryUsage="false" 
    183  
    184174                        CharacterSet="1" 
    185  
    186                         ConfigurationType="1" 
    187175                        > 
    188176                        <Tool 
     
    220208                                AdditionalDependencies="ws2.lib" 
    221209                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    222  
    223210                        /> 
    224211                        <Tool 
     
    247234                </Configuration> 
    248235                <Configuration 
    249                         Name="Release|Win32" 
    250                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
    251  
     236                        Name="Debug|Pocket PC 2003 (ARMV4)" 
     237                        ConfigurationType="1" 
     238                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    252239                        ATLMinimizesCRunTimeLibraryUsage="false" 
    253  
    254                         CharacterSet="2" 
    255  
    256                         ConfigurationType="1" 
    257                         UseOfMFC="0" 
    258                         > 
    259                         <Tool 
    260                                 Name="VCPreBuildEventTool" 
    261                         /> 
    262                         <Tool 
    263                                 Name="VCCustomBuildTool" 
    264                         /> 
    265                         <Tool 
    266                                 Name="VCXMLDataGeneratorTool" 
    267                         /> 
    268                         <Tool 
    269                                 Name="VCWebServiceProxyGeneratorTool" 
    270                         /> 
    271                         <Tool 
    272                                 Name="VCMIDLTool" 
    273                         /> 
    274                         <Tool 
    275                                 Name="VCCLCompilerTool" 
    276                                 PreprocessorDefinitions="_CONSOLE;" 
    277  
    278                                 AdditionalIncludeDirectories="../include" 
    279                                 PrecompiledHeaderFile="" 
    280                         /> 
    281                         <Tool 
    282                                 Name="VCManagedResourceCompilerTool" 
    283                         /> 
    284                         <Tool 
    285                                 Name="VCResourceCompilerTool" 
    286                         /> 
    287                         <Tool 
    288                                 Name="VCPreLinkEventTool" 
    289                         /> 
    290                         <Tool 
    291                                 Name="VCLinkerTool" 
    292                                 AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
    293                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
    294  
    295                         /> 
    296                         <Tool 
    297                                 Name="VCALinkTool" 
    298                         /> 
    299                         <Tool 
    300                                 Name="VCManifestTool" 
    301                         /> 
    302                         <Tool 
    303                                 Name="VCXDCMakeTool" 
    304                         /> 
    305                         <Tool 
    306                                 Name="VCBscMakeTool" 
    307                         /> 
    308                         <Tool 
    309                                 Name="VCFxCopTool" 
    310                         /> 
    311                         <Tool 
    312                                 Name="VCAppVerifierTool" 
    313                         /> 
    314                         <Tool 
    315                                 Name="VCWebDeploymentTool" 
    316                         /> 
    317                         <Tool 
    318                                 Name="VCPostBuildEventTool" 
    319                         /> 
    320                 </Configuration> 
    321                 <Configuration 
    322                         Name="Release|Windows Mobile 6 Standard SDK (ARMV4I)" 
    323                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    324  
    325                         ATLMinimizesCRunTimeLibraryUsage="false" 
    326  
    327240                        CharacterSet="1" 
    328  
    329                         ConfigurationType="1" 
    330241                        > 
    331242                        <Tool 
     
    362273                                Name="VCLinkerTool" 
    363274                                AdditionalDependencies="ws2.lib" 
    364                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    365  
     275                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    366276                        /> 
    367277                        <Tool 
     
    390300                </Configuration> 
    391301                <Configuration 
    392                         Name="Release|Windows Mobile 6 Professional SDK (ARMV4I)" 
    393                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    394  
     302                        Name="Debug|Smartphone 2003 (ARMV4)" 
     303                        ConfigurationType="1" 
     304                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    395305                        ATLMinimizesCRunTimeLibraryUsage="false" 
    396  
    397306                        CharacterSet="1" 
    398  
    399                         ConfigurationType="1" 
    400307                        > 
    401308                        <Tool 
     
    432339                                Name="VCLinkerTool" 
    433340                                AdditionalDependencies="ws2.lib" 
    434                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    435  
     341                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    436342                        /> 
    437343                        <Tool 
     
    460366                </Configuration> 
    461367                <Configuration 
    462                         Name="Debug-Static|Win32" 
    463                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
    464  
     368                        Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     369                        ConfigurationType="1" 
     370                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    465371                        ATLMinimizesCRunTimeLibraryUsage="false" 
    466  
    467                         CharacterSet="2" 
    468  
    469                         ConfigurationType="1" 
    470                         UseOfMFC="0" 
    471                         > 
    472                         <Tool 
    473                                 Name="VCPreBuildEventTool" 
    474                         /> 
    475                         <Tool 
    476                                 Name="VCCustomBuildTool" 
    477                         /> 
    478                         <Tool 
    479                                 Name="VCXMLDataGeneratorTool" 
    480                         /> 
    481                         <Tool 
    482                                 Name="VCWebServiceProxyGeneratorTool" 
    483                         /> 
    484                         <Tool 
    485                                 Name="VCMIDLTool" 
    486                         /> 
    487                         <Tool 
    488                                 Name="VCCLCompilerTool" 
    489                                 PreprocessorDefinitions="_CONSOLE;" 
    490  
    491                                 AdditionalIncludeDirectories="../include" 
    492                                 PrecompiledHeaderFile="" 
    493                         /> 
    494                         <Tool 
    495                                 Name="VCManagedResourceCompilerTool" 
    496                         /> 
    497                         <Tool 
    498                                 Name="VCResourceCompilerTool" 
    499                         /> 
    500                         <Tool 
    501                                 Name="VCPreLinkEventTool" 
    502                         /> 
    503                         <Tool 
    504                                 Name="VCLinkerTool" 
    505                                 AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
    506                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
    507  
    508                         /> 
    509                         <Tool 
    510                                 Name="VCALinkTool" 
    511                         /> 
    512                         <Tool 
    513                                 Name="VCManifestTool" 
    514                         /> 
    515                         <Tool 
    516                                 Name="VCXDCMakeTool" 
    517                         /> 
    518                         <Tool 
    519                                 Name="VCBscMakeTool" 
    520                         /> 
    521                         <Tool 
    522                                 Name="VCFxCopTool" 
    523                         /> 
    524                         <Tool 
    525                                 Name="VCAppVerifierTool" 
    526                         /> 
    527                         <Tool 
    528                                 Name="VCWebDeploymentTool" 
    529                         /> 
    530                         <Tool 
    531                                 Name="VCPostBuildEventTool" 
    532                         /> 
    533                 </Configuration> 
    534                 <Configuration 
    535                         Name="Debug-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
    536                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    537  
    538                         ATLMinimizesCRunTimeLibraryUsage="false" 
    539  
    540372                        CharacterSet="1" 
    541  
    542                         ConfigurationType="1" 
    543373                        > 
    544374                        <Tool 
     
    575405                                Name="VCLinkerTool" 
    576406                                AdditionalDependencies="ws2.lib" 
    577                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    578  
     407                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    579408                        /> 
    580409                        <Tool 
     
    603432                </Configuration> 
    604433                <Configuration 
    605                         Name="Debug-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
    606                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    607  
     434                        Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     435                        ConfigurationType="1" 
     436                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    608437                        ATLMinimizesCRunTimeLibraryUsage="false" 
    609  
    610438                        CharacterSet="1" 
    611  
    612                         ConfigurationType="1" 
    613439                        > 
    614440                        <Tool 
     
    645471                                Name="VCLinkerTool" 
    646472                                AdditionalDependencies="ws2.lib" 
    647                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    648  
     473                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    649474                        /> 
    650475                        <Tool 
     
    673498                </Configuration> 
    674499                <Configuration 
    675                         Name="Release-Dynamic|Win32" 
     500                        Name="Release|Win32" 
     501                        ConfigurationType="1" 
    676502                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
    677  
     503                        UseOfMFC="0" 
    678504                        ATLMinimizesCRunTimeLibraryUsage="false" 
    679  
    680505                        CharacterSet="2" 
    681  
    682                         ConfigurationType="1" 
    683                         UseOfMFC="0" 
    684506                        > 
    685507                        <Tool 
     
    700522                        <Tool 
    701523                                Name="VCCLCompilerTool" 
     524                                AdditionalIncludeDirectories="../include" 
    702525                                PreprocessorDefinitions="_CONSOLE;" 
    703  
    704                                 AdditionalIncludeDirectories="../include" 
    705526                                PrecompiledHeaderFile="" 
    706527                        /> 
     
    718539                                AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
    719540                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
    720  
    721541                        /> 
    722542                        <Tool 
     
    746566                </Configuration> 
    747567                <Configuration 
    748                         Name="Release-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)" 
     568                        Name="Release|Windows Mobile 6 Standard SDK (ARMV4I)" 
     569                        ConfigurationType="1" 
    749570                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    750  
    751571                        ATLMinimizesCRunTimeLibraryUsage="false" 
    752  
    753572                        CharacterSet="1" 
    754  
    755                         ConfigurationType="1" 
    756573                        > 
    757574                        <Tool 
     
    789606                                AdditionalDependencies="ws2.lib" 
    790607                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    791  
    792608                        /> 
    793609                        <Tool 
     
    816632                </Configuration> 
    817633                <Configuration 
    818                         Name="Release-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)" 
     634                        Name="Release|Windows Mobile 6 Professional SDK (ARMV4I)" 
     635                        ConfigurationType="1" 
    819636                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    820  
    821637                        ATLMinimizesCRunTimeLibraryUsage="false" 
    822  
    823638                        CharacterSet="1" 
    824  
    825                         ConfigurationType="1" 
    826639                        > 
    827640                        <Tool 
     
    859672                                AdditionalDependencies="ws2.lib" 
    860673                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    861  
    862674                        /> 
    863675                        <Tool 
     
    886698                </Configuration> 
    887699                <Configuration 
    888                         Name="Debug-Dynamic|Win32" 
    889                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
    890  
     700                        Name="Release|Pocket PC 2003 (ARMV4)" 
     701                        ConfigurationType="1" 
     702                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    891703                        ATLMinimizesCRunTimeLibraryUsage="false" 
    892  
    893                         CharacterSet="2" 
    894  
    895                         ConfigurationType="1" 
    896                         UseOfMFC="0" 
    897                         > 
    898                         <Tool 
    899                                 Name="VCPreBuildEventTool" 
    900                         /> 
    901                         <Tool 
    902                                 Name="VCCustomBuildTool" 
    903                         /> 
    904                         <Tool 
    905                                 Name="VCXMLDataGeneratorTool" 
    906                         /> 
    907                         <Tool 
    908                                 Name="VCWebServiceProxyGeneratorTool" 
    909                         /> 
    910                         <Tool 
    911                                 Name="VCMIDLTool" 
    912                         /> 
    913                         <Tool 
    914                                 Name="VCCLCompilerTool" 
    915                                 PreprocessorDefinitions="_CONSOLE;" 
    916  
    917                                 AdditionalIncludeDirectories="../include" 
    918                                 PrecompiledHeaderFile="" 
    919                         /> 
    920                         <Tool 
    921                                 Name="VCManagedResourceCompilerTool" 
    922                         /> 
    923                         <Tool 
    924                                 Name="VCResourceCompilerTool" 
    925                         /> 
    926                         <Tool 
    927                                 Name="VCPreLinkEventTool" 
    928                         /> 
    929                         <Tool 
    930                                 Name="VCLinkerTool" 
    931                                 AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
    932                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
    933  
    934                         /> 
    935                         <Tool 
    936                                 Name="VCALinkTool" 
    937                         /> 
    938                         <Tool 
    939                                 Name="VCManifestTool" 
    940                         /> 
    941                         <Tool 
    942                                 Name="VCXDCMakeTool" 
    943                         /> 
    944                         <Tool 
    945                                 Name="VCBscMakeTool" 
    946                         /> 
    947                         <Tool 
    948                                 Name="VCFxCopTool" 
    949                         /> 
    950                         <Tool 
    951                                 Name="VCAppVerifierTool" 
    952                         /> 
    953                         <Tool 
    954                                 Name="VCWebDeploymentTool" 
    955                         /> 
    956                         <Tool 
    957                                 Name="VCPostBuildEventTool" 
    958                         /> 
    959                 </Configuration> 
    960                 <Configuration 
    961                         Name="Debug-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)" 
    962                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    963  
    964                         ATLMinimizesCRunTimeLibraryUsage="false" 
    965  
    966704                        CharacterSet="1" 
    967  
    968                         ConfigurationType="1" 
    969705                        > 
    970706                        <Tool 
     
    1001737                                Name="VCLinkerTool" 
    1002738                                AdditionalDependencies="ws2.lib" 
    1003                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    1004  
     739                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1005740                        /> 
    1006741                        <Tool 
     
    1029764                </Configuration> 
    1030765                <Configuration 
    1031                         Name="Debug-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)" 
    1032                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    1033  
     766                        Name="Release|Smartphone 2003 (ARMV4)" 
     767                        ConfigurationType="1" 
     768                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1034769                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1035  
    1036770                        CharacterSet="1" 
    1037  
    1038                         ConfigurationType="1" 
    1039771                        > 
    1040772                        <Tool 
     
    1071803                                Name="VCLinkerTool" 
    1072804                                AdditionalDependencies="ws2.lib" 
    1073                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    1074  
     805                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    1075806                        /> 
    1076807                        <Tool 
     
    1099830                </Configuration> 
    1100831                <Configuration 
    1101                         Name="Release-Static|Win32" 
    1102                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
    1103  
     832                        Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     833                        ConfigurationType="1" 
     834                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    1104835                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1105  
    1106                         CharacterSet="2" 
    1107  
    1108                         ConfigurationType="1" 
    1109                         UseOfMFC="0" 
    1110                         > 
    1111                         <Tool 
    1112                                 Name="VCPreBuildEventTool" 
    1113                         /> 
    1114                         <Tool 
    1115                                 Name="VCCustomBuildTool" 
    1116                         /> 
    1117                         <Tool 
    1118                                 Name="VCXMLDataGeneratorTool" 
    1119                         /> 
    1120                         <Tool 
    1121                                 Name="VCWebServiceProxyGeneratorTool" 
    1122                         /> 
    1123                         <Tool 
    1124                                 Name="VCMIDLTool" 
    1125                         /> 
    1126                         <Tool 
    1127                                 Name="VCCLCompilerTool" 
    1128                                 PreprocessorDefinitions="_CONSOLE;" 
    1129  
    1130                                 AdditionalIncludeDirectories="../include" 
    1131                                 PrecompiledHeaderFile="" 
    1132                         /> 
    1133                         <Tool 
    1134                                 Name="VCManagedResourceCompilerTool" 
    1135                         /> 
    1136                         <Tool 
    1137                                 Name="VCResourceCompilerTool" 
    1138                         /> 
    1139                         <Tool 
    1140                                 Name="VCPreLinkEventTool" 
    1141                         /> 
    1142                         <Tool 
    1143                                 Name="VCLinkerTool" 
    1144                                 AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
    1145                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
    1146  
    1147                         /> 
    1148                         <Tool 
    1149                                 Name="VCALinkTool" 
    1150                         /> 
    1151                         <Tool 
    1152                                 Name="VCManifestTool" 
    1153                         /> 
    1154                         <Tool 
    1155                                 Name="VCXDCMakeTool" 
    1156                         /> 
    1157                         <Tool 
    1158                                 Name="VCBscMakeTool" 
    1159                         /> 
    1160                         <Tool 
    1161                                 Name="VCFxCopTool" 
    1162                         /> 
    1163                         <Tool 
    1164                                 Name="VCAppVerifierTool" 
    1165                         /> 
    1166                         <Tool 
    1167                                 Name="VCWebDeploymentTool" 
    1168                         /> 
    1169                         <Tool 
    1170                                 Name="VCPostBuildEventTool" 
    1171                         /> 
    1172                 </Configuration> 
    1173                 <Configuration 
    1174                         Name="Release-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
    1175                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    1176  
    1177                         ATLMinimizesCRunTimeLibraryUsage="false" 
    1178  
    1179836                        CharacterSet="1" 
    1180  
    1181                         ConfigurationType="1" 
    1182837                        > 
    1183838                        <Tool 
     
    1214869                                Name="VCLinkerTool" 
    1215870                                AdditionalDependencies="ws2.lib" 
    1216                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    1217  
     871                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1218872                        /> 
    1219873                        <Tool 
     
    1242896                </Configuration> 
    1243897                <Configuration 
    1244                         Name="Release-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
    1245                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    1246  
     898                        Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     899                        ConfigurationType="1" 
     900                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    1247901                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1248  
    1249902                        CharacterSet="1" 
    1250  
    1251                         ConfigurationType="1" 
    1252903                        > 
    1253904                        <Tool 
     
    1284935                                Name="VCLinkerTool" 
    1285936                                AdditionalDependencies="ws2.lib" 
    1286                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    1287  
     937                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    1288938                        /> 
    1289939                        <Tool 
     
    1312962                </Configuration> 
    1313963                <Configuration 
    1314                         Name="Debug|Pocket PC 2003 (ARMV4)" 
    1315                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1316  
     964                        Name="Debug-Static|Win32" 
     965                        ConfigurationType="1" 
     966                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
     967                        UseOfMFC="0" 
    1317968                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1318  
     969                        CharacterSet="2" 
     970                        > 
     971                        <Tool 
     972                                Name="VCPreBuildEventTool" 
     973                        /> 
     974                        <Tool 
     975                                Name="VCCustomBuildTool" 
     976                        /> 
     977                        <Tool 
     978                                Name="VCXMLDataGeneratorTool" 
     979                        /> 
     980                        <Tool 
     981                                Name="VCWebServiceProxyGeneratorTool" 
     982                        /> 
     983                        <Tool 
     984                                Name="VCMIDLTool" 
     985                        /> 
     986                        <Tool 
     987                                Name="VCCLCompilerTool" 
     988                                AdditionalIncludeDirectories="../include" 
     989                                PreprocessorDefinitions="_CONSOLE;" 
     990                                PrecompiledHeaderFile="" 
     991                        /> 
     992                        <Tool 
     993                                Name="VCManagedResourceCompilerTool" 
     994                        /> 
     995                        <Tool 
     996                                Name="VCResourceCompilerTool" 
     997                        /> 
     998                        <Tool 
     999                                Name="VCPreLinkEventTool" 
     1000                        /> 
     1001                        <Tool 
     1002                                Name="VCLinkerTool" 
     1003                                AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
     1004                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
     1005                        /> 
     1006                        <Tool 
     1007                                Name="VCALinkTool" 
     1008                        /> 
     1009                        <Tool 
     1010                                Name="VCManifestTool" 
     1011                        /> 
     1012                        <Tool 
     1013                                Name="VCXDCMakeTool" 
     1014                        /> 
     1015                        <Tool 
     1016                                Name="VCBscMakeTool" 
     1017                        /> 
     1018                        <Tool 
     1019                                Name="VCFxCopTool" 
     1020                        /> 
     1021                        <Tool 
     1022                                Name="VCAppVerifierTool" 
     1023                        /> 
     1024                        <Tool 
     1025                                Name="VCWebDeploymentTool" 
     1026                        /> 
     1027                        <Tool 
     1028                                Name="VCPostBuildEventTool" 
     1029                        /> 
     1030                </Configuration> 
     1031                <Configuration 
     1032                        Name="Debug-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
     1033                        ConfigurationType="1" 
     1034                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
     1035                        ATLMinimizesCRunTimeLibraryUsage="false" 
    13191036                        CharacterSet="1" 
    1320  
    1321                         ConfigurationType="1" 
    13221037                        > 
    13231038                        <Tool 
     
    13541069                                Name="VCLinkerTool" 
    13551070                                AdditionalDependencies="ws2.lib" 
    1356                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1357  
     1071                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    13581072                        /> 
    13591073                        <Tool 
     
    13821096                </Configuration> 
    13831097                <Configuration 
    1384                         Name="Release|Pocket PC 2003 (ARMV4)" 
    1385                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1386  
     1098                        Name="Debug-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
     1099                        ConfigurationType="1" 
     1100                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    13871101                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1388  
    13891102                        CharacterSet="1" 
    1390  
    1391                         ConfigurationType="1" 
    13921103                        > 
    13931104                        <Tool 
     
    14241135                                Name="VCLinkerTool" 
    14251136                                AdditionalDependencies="ws2.lib" 
    1426                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1427  
     1137                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    14281138                        /> 
    14291139                        <Tool 
     
    14531163                <Configuration 
    14541164                        Name="Debug-Static|Pocket PC 2003 (ARMV4)" 
     1165                        ConfigurationType="1" 
    14551166                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1456  
    14571167                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1458  
    14591168                        CharacterSet="1" 
    1460  
    1461                         ConfigurationType="1" 
    14621169                        > 
    14631170                        <Tool 
     
    14951202                                AdditionalDependencies="ws2.lib" 
    14961203                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1497  
    14981204                        /> 
    14991205                        <Tool 
     
    15221228                </Configuration> 
    15231229                <Configuration 
    1524                         Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
    1525                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1526  
     1230                        Name="Debug-Static|Smartphone 2003 (ARMV4)" 
     1231                        ConfigurationType="1" 
     1232                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    15271233                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1528  
    15291234                        CharacterSet="1" 
    1530  
    1531                         ConfigurationType="1" 
    15321235                        > 
    15331236                        <Tool 
     
    15641267                                Name="VCLinkerTool" 
    15651268                                AdditionalDependencies="ws2.lib" 
    1566                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1567  
     1269                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    15681270                        /> 
    15691271                        <Tool 
     
    15921294                </Configuration> 
    15931295                <Configuration 
    1594                         Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
    1595                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1596  
     1296                        Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     1297                        ConfigurationType="1" 
     1298                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    15971299                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1598  
    15991300                        CharacterSet="1" 
    1600  
    1601                         ConfigurationType="1" 
    16021301                        > 
    16031302                        <Tool 
     
    16341333                                Name="VCLinkerTool" 
    16351334                                AdditionalDependencies="ws2.lib" 
    1636                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1637  
     1335                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    16381336                        /> 
    16391337                        <Tool 
     
    16621360                </Configuration> 
    16631361                <Configuration 
    1664                         Name="Release-Static|Pocket PC 2003 (ARMV4)" 
    1665                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1666  
     1362                        Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     1363                        ConfigurationType="1" 
     1364                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    16671365                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1668  
    16691366                        CharacterSet="1" 
    1670  
    1671                         ConfigurationType="1" 
    16721367                        > 
    16731368                        <Tool 
     
    17041399                                Name="VCLinkerTool" 
    17051400                                AdditionalDependencies="ws2.lib" 
    1706                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    1707  
     1401                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    17081402                        /> 
    17091403                        <Tool 
     
    17321426                </Configuration> 
    17331427                <Configuration 
    1734                         Name="Debug|Smartphone 2003 (ARMV4)" 
    1735                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1736  
     1428                        Name="Release-Dynamic|Win32" 
     1429                        ConfigurationType="1" 
     1430                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
     1431                        UseOfMFC="0" 
    17371432                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1738  
     1433                        CharacterSet="2" 
     1434                        > 
     1435                        <Tool 
     1436                                Name="VCPreBuildEventTool" 
     1437                        /> 
     1438                        <Tool 
     1439                                Name="VCCustomBuildTool" 
     1440                        /> 
     1441                        <Tool 
     1442                                Name="VCXMLDataGeneratorTool" 
     1443                        /> 
     1444                        <Tool 
     1445                                Name="VCWebServiceProxyGeneratorTool" 
     1446                        /> 
     1447                        <Tool 
     1448                                Name="VCMIDLTool" 
     1449                        /> 
     1450                        <Tool 
     1451                                Name="VCCLCompilerTool" 
     1452                                AdditionalIncludeDirectories="../include" 
     1453                                PreprocessorDefinitions="_CONSOLE;" 
     1454                                PrecompiledHeaderFile="" 
     1455                        /> 
     1456                        <Tool 
     1457                                Name="VCManagedResourceCompilerTool" 
     1458                        /> 
     1459                        <Tool 
     1460                                Name="VCResourceCompilerTool" 
     1461                        /> 
     1462                        <Tool 
     1463                                Name="VCPreLinkEventTool" 
     1464                        /> 
     1465                        <Tool 
     1466                                Name="VCLinkerTool" 
     1467                                AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
     1468                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
     1469                        /> 
     1470                        <Tool 
     1471                                Name="VCALinkTool" 
     1472                        /> 
     1473                        <Tool 
     1474                                Name="VCManifestTool" 
     1475                        /> 
     1476                        <Tool 
     1477                                Name="VCXDCMakeTool" 
     1478                        /> 
     1479                        <Tool 
     1480                                Name="VCBscMakeTool" 
     1481                        /> 
     1482                        <Tool 
     1483                                Name="VCFxCopTool" 
     1484                        /> 
     1485                        <Tool 
     1486                                Name="VCAppVerifierTool" 
     1487                        /> 
     1488                        <Tool 
     1489                                Name="VCWebDeploymentTool" 
     1490                        /> 
     1491                        <Tool 
     1492                                Name="VCPostBuildEventTool" 
     1493                        /> 
     1494                </Configuration> 
     1495                <Configuration 
     1496                        Name="Release-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)" 
     1497                        ConfigurationType="1" 
     1498                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
     1499                        ATLMinimizesCRunTimeLibraryUsage="false" 
    17391500                        CharacterSet="1" 
    1740  
    1741                         ConfigurationType="1" 
    17421501                        > 
    17431502                        <Tool 
     
    17741533                                Name="VCLinkerTool" 
    17751534                                AdditionalDependencies="ws2.lib" 
    1776                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    1777  
     1535                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    17781536                        /> 
    17791537                        <Tool 
     
    18021560                </Configuration> 
    18031561                <Configuration 
    1804                         Name="Release|Smartphone 2003 (ARMV4)" 
    1805                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1806  
     1562                        Name="Release-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)" 
     1563                        ConfigurationType="1" 
     1564                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    18071565                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1808  
    18091566                        CharacterSet="1" 
    1810  
    1811                         ConfigurationType="1" 
    18121567                        > 
    18131568                        <Tool 
     
    18441599                                Name="VCLinkerTool" 
    18451600                                AdditionalDependencies="ws2.lib" 
    1846                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    1847  
     1601                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    18481602                        /> 
    18491603                        <Tool 
     
    18721626                </Configuration> 
    18731627                <Configuration 
    1874                         Name="Debug-Static|Smartphone 2003 (ARMV4)" 
    1875                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1876  
     1628                        Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
     1629                        ConfigurationType="1" 
     1630                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    18771631                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1878  
    18791632                        CharacterSet="1" 
    1880  
    1881                         ConfigurationType="1" 
    18821633                        > 
    18831634                        <Tool 
     
    19141665                                Name="VCLinkerTool" 
    19151666                                AdditionalDependencies="ws2.lib" 
    1916                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    1917  
     1667                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    19181668                        /> 
    19191669                        <Tool 
     
    19431693                <Configuration 
    19441694                        Name="Release-Dynamic|Smartphone 2003 (ARMV4)" 
     1695                        ConfigurationType="1" 
    19451696                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1946  
    19471697                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1948  
    19491698                        CharacterSet="1" 
    1950  
    1951                         ConfigurationType="1" 
    19521699                        > 
    19531700                        <Tool 
     
    19851732                                AdditionalDependencies="ws2.lib" 
    19861733                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    1987  
    19881734                        /> 
    19891735                        <Tool 
     
    20121758                </Configuration> 
    20131759                <Configuration 
    2014                         Name="Debug-Dynamic|Smartphone 2003 (ARMV4)" 
    2015                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    2016  
     1760                        Name="Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     1761                        ConfigurationType="1" 
     1762                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    20171763                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2018  
    20191764                        CharacterSet="1" 
    2020  
    2021                         ConfigurationType="1" 
    20221765                        > 
    20231766                        <Tool 
     
    20541797                                Name="VCLinkerTool" 
    20551798                                AdditionalDependencies="ws2.lib" 
    2056                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2057  
     1799                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    20581800                        /> 
    20591801                        <Tool 
     
    20821824                </Configuration> 
    20831825                <Configuration 
    2084                         Name="Release-Static|Smartphone 2003 (ARMV4)" 
    2085                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    2086  
     1826                        Name="Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     1827                        ConfigurationType="1" 
     1828                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    20871829                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2088  
    20891830                        CharacterSet="1" 
    2090  
    2091                         ConfigurationType="1" 
    20921831                        > 
    20931832                        <Tool 
     
    21241863                                Name="VCLinkerTool" 
    21251864                                AdditionalDependencies="ws2.lib" 
    2126                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2127  
     1865                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    21281866                        /> 
    21291867                        <Tool 
     
    21521890                </Configuration> 
    21531891                <Configuration 
    2154                         Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    2155                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    2156  
     1892                        Name="Debug-Dynamic|Win32" 
     1893                        ConfigurationType="1" 
     1894                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
     1895                        UseOfMFC="0" 
    21571896                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2158  
     1897                        CharacterSet="2" 
     1898                        > 
     1899                        <Tool 
     1900                                Name="VCPreBuildEventTool" 
     1901                        /> 
     1902                        <Tool 
     1903                                Name="VCCustomBuildTool" 
     1904                        /> 
     1905                        <Tool 
     1906                                Name="VCXMLDataGeneratorTool" 
     1907                        /> 
     1908                        <Tool 
     1909                                Name="VCWebServiceProxyGeneratorTool" 
     1910                        /> 
     1911                        <Tool 
     1912                                Name="VCMIDLTool" 
     1913                        /> 
     1914                        <Tool 
     1915                                Name="VCCLCompilerTool" 
     1916                                AdditionalIncludeDirectories="../include" 
     1917                                PreprocessorDefinitions="_CONSOLE;" 
     1918                                PrecompiledHeaderFile="" 
     1919                        /> 
     1920                        <Tool 
     1921                                Name="VCManagedResourceCompilerTool" 
     1922                        /> 
     1923                        <Tool 
     1924                                Name="VCResourceCompilerTool" 
     1925                        /> 
     1926                        <Tool 
     1927                                Name="VCPreLinkEventTool" 
     1928                        /> 
     1929                        <Tool 
     1930                                Name="VCLinkerTool" 
     1931                                AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
     1932                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
     1933                        /> 
     1934                        <Tool 
     1935                                Name="VCALinkTool" 
     1936                        /> 
     1937                        <Tool 
     1938                                Name="VCManifestTool" 
     1939                        /> 
     1940                        <Tool 
     1941                                Name="VCXDCMakeTool" 
     1942                        /> 
     1943                        <Tool 
     1944                                Name="VCBscMakeTool" 
     1945                        /> 
     1946                        <Tool 
     1947                                Name="VCFxCopTool" 
     1948                        /> 
     1949                        <Tool 
     1950                                Name="VCAppVerifierTool" 
     1951                        /> 
     1952                        <Tool 
     1953                                Name="VCWebDeploymentTool" 
     1954                        /> 
     1955                        <Tool 
     1956                                Name="VCPostBuildEventTool" 
     1957                        /> 
     1958                </Configuration> 
     1959                <Configuration 
     1960                        Name="Debug-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)" 
     1961                        ConfigurationType="1" 
     1962                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
     1963                        ATLMinimizesCRunTimeLibraryUsage="false" 
    21591964                        CharacterSet="1" 
    2160  
    2161                         ConfigurationType="1" 
    21621965                        > 
    21631966                        <Tool 
     
    21941997                                Name="VCLinkerTool" 
    21951998                                AdditionalDependencies="ws2.lib" 
    2196                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    2197  
     1999                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    21982000                        /> 
    21992001                        <Tool 
     
    22222024                </Configuration> 
    22232025                <Configuration 
    2224                         Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    2225                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    2226  
     2026                        Name="Debug-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)" 
     2027                        ConfigurationType="1" 
     2028                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    22272029                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2228  
    22292030                        CharacterSet="1" 
    2230  
    2231                         ConfigurationType="1" 
    22322031                        > 
    22332032                        <Tool 
     
    22642063                                Name="VCLinkerTool" 
    22652064                                AdditionalDependencies="ws2.lib" 
    2266                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    2267  
     2065                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    22682066                        /> 
    22692067                        <Tool 
     
    22922090                </Configuration> 
    22932091                <Configuration 
    2294                         Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    2295                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    2296  
     2092                        Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
     2093                        ConfigurationType="1" 
     2094                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    22972095                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2298  
    22992096                        CharacterSet="1" 
    2300  
    2301                         ConfigurationType="1" 
    23022097                        > 
    23032098                        <Tool 
     
    23342129                                Name="VCLinkerTool" 
    23352130                                AdditionalDependencies="ws2.lib" 
    2336                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    2337  
     2131                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    23382132                        /> 
    23392133                        <Tool 
     
    23622156                </Configuration> 
    23632157                <Configuration 
    2364                         Name="Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    2365                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    2366  
     2158                        Name="Debug-Dynamic|Smartphone 2003 (ARMV4)" 
     2159                        ConfigurationType="1" 
     2160                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    23672161                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2368  
    23692162                        CharacterSet="1" 
    2370  
    2371                         ConfigurationType="1" 
    23722163                        > 
    23732164                        <Tool 
     
    24042195                                Name="VCLinkerTool" 
    24052196                                AdditionalDependencies="ws2.lib" 
    2406                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    2407  
     2197                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    24082198                        /> 
    24092199                        <Tool 
     
    24332223                <Configuration 
    24342224                        Name="Debug-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     2225                        ConfigurationType="1" 
    24352226                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    2436  
    24372227                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2438  
    24392228                        CharacterSet="1" 
    2440  
    2441                         ConfigurationType="1" 
    24422229                        > 
    24432230                        <Tool 
     
    24752262                                AdditionalDependencies="ws2.lib" 
    24762263                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    2477  
    24782264                        /> 
    24792265                        <Tool 
     
    25022288                </Configuration> 
    25032289                <Configuration 
    2504                         Name="Release-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    2505                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    2506  
     2290                        Name="Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     2291                        ConfigurationType="1" 
     2292                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    25072293                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2508  
    25092294                        CharacterSet="1" 
    2510  
    2511                         ConfigurationType="1" 
    25122295                        > 
    25132296                        <Tool 
     
    25442327                                Name="VCLinkerTool" 
    25452328                                AdditionalDependencies="ws2.lib" 
    2546                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    2547  
     2329                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    25482330                        /> 
    25492331                        <Tool 
     
    25722354                </Configuration> 
    25732355                <Configuration 
    2574                         Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    2575                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    2576  
     2356                        Name="Release-Static|Win32" 
     2357                        ConfigurationType="1" 
     2358                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
     2359                        UseOfMFC="0" 
    25772360                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2578  
     2361                        CharacterSet="2" 
     2362                        > 
     2363                        <Tool 
     2364                                Name="VCPreBuildEventTool" 
     2365                        /> 
     2366                        <Tool 
     2367                                Name="VCCustomBuildTool" 
     2368                        /> 
     2369                        <Tool 
     2370                                Name="VCXMLDataGeneratorTool" 
     2371                        /> 
     2372                        <Tool 
     2373                                Name="VCWebServiceProxyGeneratorTool" 
     2374                        /> 
     2375                        <Tool 
     2376                                Name="VCMIDLTool" 
     2377                        /> 
     2378                        <Tool 
     2379                                Name="VCCLCompilerTool" 
     2380                                AdditionalIncludeDirectories="../include" 
     2381                                PreprocessorDefinitions="_CONSOLE;" 
     2382                                PrecompiledHeaderFile="" 
     2383                        /> 
     2384                        <Tool 
     2385                                Name="VCManagedResourceCompilerTool" 
     2386                        /> 
     2387                        <Tool 
     2388                                Name="VCResourceCompilerTool" 
     2389                        /> 
     2390                        <Tool 
     2391                                Name="VCPreLinkEventTool" 
     2392                        /> 
     2393                        <Tool 
     2394                                Name="VCLinkerTool" 
     2395                                AdditionalDependencies="netapi32.lib mswsock.lib ws2_32.lib odbc32.lib odbccp32.lib oleaut32.lib ole32.lib" 
     2396                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).exe" 
     2397                        /> 
     2398                        <Tool 
     2399                                Name="VCALinkTool" 
     2400                        /> 
     2401                        <Tool 
     2402                                Name="VCManifestTool" 
     2403                        /> 
     2404                        <Tool 
     2405                                Name="VCXDCMakeTool" 
     2406                        /> 
     2407                        <Tool 
     2408                                Name="VCBscMakeTool" 
     2409                        /> 
     2410                        <Tool 
     2411                                Name="VCFxCopTool" 
     2412                        /> 
     2413                        <Tool 
     2414                                Name="VCAppVerifierTool" 
     2415                        /> 
     2416                        <Tool 
     2417                                Name="VCWebDeploymentTool" 
     2418                        /> 
     2419                        <Tool 
     2420                                Name="VCPostBuildEventTool" 
     2421                        /> 
     2422                </Configuration> 
     2423                <Configuration 
     2424                        Name="Release-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
     2425                        ConfigurationType="1" 
     2426                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
     2427                        ATLMinimizesCRunTimeLibraryUsage="false" 
    25792428                        CharacterSet="1" 
    2580  
    2581                         ConfigurationType="1" 
    25822429                        > 
    25832430                        <Tool 
     
    26142461                                Name="VCLinkerTool" 
    26152462                                AdditionalDependencies="ws2.lib" 
    2616                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2617  
     2463                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).exe" 
    26182464                        /> 
    26192465                        <Tool 
     
    26422488                </Configuration> 
    26432489                <Configuration 
    2644                         Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    2645                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    2646  
     2490                        Name="Release-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
     2491                        ConfigurationType="1" 
     2492                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    26472493                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2648  
    26492494                        CharacterSet="1" 
    2650  
    2651                         ConfigurationType="1" 
    26522495                        > 
    26532496                        <Tool 
     
    26842527                                Name="VCLinkerTool" 
    26852528                                AdditionalDependencies="ws2.lib" 
    2686                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2687  
     2529                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).exe" 
    26882530                        /> 
    26892531                        <Tool 
     
    27122554                </Configuration> 
    27132555                <Configuration 
    2714                         Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    2715                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    2716  
     2556                        Name="Release-Static|Pocket PC 2003 (ARMV4)" 
     2557                        ConfigurationType="1" 
     2558                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    27172559                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2718  
    27192560                        CharacterSet="1" 
    2720  
    2721                         ConfigurationType="1" 
    27222561                        > 
    27232562                        <Tool 
     
    27542593                                Name="VCLinkerTool" 
    27552594                                AdditionalDependencies="ws2.lib" 
    2756                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2757  
     2595                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    27582596                        /> 
    27592597                        <Tool 
     
    27822620                </Configuration> 
    27832621                <Configuration 
    2784                         Name="Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    2785                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    2786  
     2622                        Name="Release-Static|Smartphone 2003 (ARMV4)" 
     2623                        ConfigurationType="1" 
     2624                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    27872625                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2788  
    27892626                        CharacterSet="1" 
    2790  
    2791                         ConfigurationType="1" 
    27922627                        > 
    27932628                        <Tool 
     
    28242659                                Name="VCLinkerTool" 
    28252660                                AdditionalDependencies="ws2.lib" 
    2826                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2827  
     2661                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).exe" 
    28282662                        /> 
    28292663                        <Tool 
     
    28522686                </Configuration> 
    28532687                <Configuration 
    2854                         Name="Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    2855                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    2856  
     2688                        Name="Release-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     2689                        ConfigurationType="1" 
     2690                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    28572691                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2858  
    28592692                        CharacterSet="1" 
    2860  
    2861                         ConfigurationType="1" 
    28622693                        > 
    28632694                        <Tool 
     
    28942725                                Name="VCLinkerTool" 
    28952726                                AdditionalDependencies="ws2.lib" 
    2896                                 OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2897  
     2727                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).exe" 
    28982728                        /> 
    28992729                        <Tool 
     
    29232753                <Configuration 
    29242754                        Name="Release-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     2755                        ConfigurationType="1" 
    29252756                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    2926  
    29272757                        ATLMinimizesCRunTimeLibraryUsage="false" 
    2928  
    29292758                        CharacterSet="1" 
    2930  
    2931                         ConfigurationType="1" 
    29322759                        > 
    29332760                        <Tool 
     
    29652792                                AdditionalDependencies="ws2.lib" 
    29662793                                OutputFile="..\bin\pjlib-test-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).exe" 
    2967  
    29682794                        /> 
    29692795                        <Tool 
     
    36743500                                </FileConfiguration> 
    36753501                                <FileConfiguration 
     3502                                        Name="Debug|Pocket PC 2003 (ARMV4)" 
     3503                                        ExcludedFromBuild="true" 
     3504                                        > 
     3505                                        <Tool 
     3506                                                Name="VCCLCompilerTool" 
     3507                                        /> 
     3508                                </FileConfiguration> 
     3509                                <FileConfiguration 
     3510                                        Name="Debug|Smartphone 2003 (ARMV4)" 
     3511                                        ExcludedFromBuild="true" 
     3512                                        > 
     3513                                        <Tool 
     3514                                                Name="VCCLCompilerTool" 
     3515                                        /> 
     3516                                </FileConfiguration> 
     3517                                <FileConfiguration 
     3518                                        Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3519                                        ExcludedFromBuild="true" 
     3520                                        > 
     3521                                        <Tool 
     3522                                                Name="VCCLCompilerTool" 
     3523                                        /> 
     3524                                </FileConfiguration> 
     3525                                <FileConfiguration 
     3526                                        Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3527                                        ExcludedFromBuild="true" 
     3528                                        > 
     3529                                        <Tool 
     3530                                                Name="VCCLCompilerTool" 
     3531                                        /> 
     3532                                </FileConfiguration> 
     3533                                <FileConfiguration 
    36763534                                        Name="Release|Win32" 
    36773535                                        > 
     
    36993557                                </FileConfiguration> 
    37003558                                <FileConfiguration 
     3559                                        Name="Release|Pocket PC 2003 (ARMV4)" 
     3560                                        ExcludedFromBuild="true" 
     3561                                        > 
     3562                                        <Tool 
     3563                                                Name="VCCLCompilerTool" 
     3564                                        /> 
     3565                                </FileConfiguration> 
     3566                                <FileConfiguration 
     3567                                        Name="Release|Smartphone 2003 (ARMV4)" 
     3568                                        ExcludedFromBuild="true" 
     3569                                        > 
     3570                                        <Tool 
     3571                                                Name="VCCLCompilerTool" 
     3572                                        /> 
     3573                                </FileConfiguration> 
     3574                                <FileConfiguration 
     3575                                        Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3576                                        ExcludedFromBuild="true" 
     3577                                        > 
     3578                                        <Tool 
     3579                                                Name="VCCLCompilerTool" 
     3580                                        /> 
     3581                                </FileConfiguration> 
     3582                                <FileConfiguration 
     3583                                        Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3584                                        ExcludedFromBuild="true" 
     3585                                        > 
     3586                                        <Tool 
     3587                                                Name="VCCLCompilerTool" 
     3588                                        /> 
     3589                                </FileConfiguration> 
     3590                                <FileConfiguration 
    37013591                                        Name="Debug-Static|Win32" 
    37023592                                        > 
     
    37243614                                </FileConfiguration> 
    37253615                                <FileConfiguration 
     3616                                        Name="Debug-Static|Pocket PC 2003 (ARMV4)" 
     3617                                        ExcludedFromBuild="true" 
     3618                                        > 
     3619                                        <Tool 
     3620                                                Name="VCCLCompilerTool" 
     3621                                        /> 
     3622                                </FileConfiguration> 
     3623                                <FileConfiguration 
     3624                                        Name="Debug-Static|Smartphone 2003 (ARMV4)" 
     3625                                        ExcludedFromBuild="true" 
     3626                                        > 
     3627                                        <Tool 
     3628                                                Name="VCCLCompilerTool" 
     3629                                        /> 
     3630                                </FileConfiguration> 
     3631                                <FileConfiguration 
     3632                                        Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3633                                        ExcludedFromBuild="true" 
     3634                                        > 
     3635                                        <Tool 
     3636                                                Name="VCCLCompilerTool" 
     3637                                        /> 
     3638                                </FileConfiguration> 
     3639                                <FileConfiguration 
     3640                                        Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3641                                        ExcludedFromBuild="true" 
     3642                                        > 
     3643                                        <Tool 
     3644                                                Name="VCCLCompilerTool" 
     3645                                        /> 
     3646                                </FileConfiguration> 
     3647                                <FileConfiguration 
    37263648                                        Name="Release-Dynamic|Win32" 
    37273649                                        > 
     
    37493671                                </FileConfiguration> 
    37503672                                <FileConfiguration 
     3673                                        Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
     3674                                        ExcludedFromBuild="true" 
     3675                                        > 
     3676                                        <Tool 
     3677                                                Name="VCCLCompilerTool" 
     3678                                        /> 
     3679                                </FileConfiguration> 
     3680                                <FileConfiguration 
     3681                                        Name="Release-Dynamic|Smartphone 2003 (ARMV4)" 
     3682                                        ExcludedFromBuild="true" 
     3683                                        > 
     3684                                        <Tool 
     3685                                                Name="VCCLCompilerTool" 
     3686                                        /> 
     3687                                </FileConfiguration> 
     3688                                <FileConfiguration 
     3689                                        Name="Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3690                                        ExcludedFromBuild="true" 
     3691                                        > 
     3692                                        <Tool 
     3693                                                Name="VCCLCompilerTool" 
     3694                                        /> 
     3695                                </FileConfiguration> 
     3696                                <FileConfiguration 
     3697                                        Name="Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3698                                        ExcludedFromBuild="true" 
     3699                                        > 
     3700                                        <Tool 
     3701                                                Name="VCCLCompilerTool" 
     3702                                        /> 
     3703                                </FileConfiguration> 
     3704                                <FileConfiguration 
    37513705                                        Name="Debug-Dynamic|Win32" 
    37523706                                        > 
     
    37743728                                </FileConfiguration> 
    37753729                                <FileConfiguration 
     3730                                        Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
     3731                                        ExcludedFromBuild="true" 
     3732                                        > 
     3733                                        <Tool 
     3734                                                Name="VCCLCompilerTool" 
     3735                                        /> 
     3736                                </FileConfiguration> 
     3737                                <FileConfiguration 
     3738                                        Name="Debug-Dynamic|Smartphone 2003 (ARMV4)" 
     3739                                        ExcludedFromBuild="true" 
     3740                                        > 
     3741                                        <Tool 
     3742                                                Name="VCCLCompilerTool" 
     3743                                        /> 
     3744                                </FileConfiguration> 
     3745                                <FileConfiguration 
     3746                                        Name="Debug-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3747                                        ExcludedFromBuild="true" 
     3748                                        > 
     3749                                        <Tool 
     3750                                                Name="VCCLCompilerTool" 
     3751                                        /> 
     3752                                </FileConfiguration> 
     3753                                <FileConfiguration 
     3754                                        Name="Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3755                                        ExcludedFromBuild="true" 
     3756                                        > 
     3757                                        <Tool 
     3758                                                Name="VCCLCompilerTool" 
     3759                                        /> 
     3760                                </FileConfiguration> 
     3761                                <FileConfiguration 
    37763762                                        Name="Release-Static|Win32" 
    37773763                                        > 
     
    37993785                                </FileConfiguration> 
    38003786                                <FileConfiguration 
    3801                                         Name="Debug|Pocket PC 2003 (ARMV4)" 
    3802                                         ExcludedFromBuild="true" 
    3803                                         > 
    3804                                         <Tool 
    3805                                                 Name="VCCLCompilerTool" 
    3806                                         /> 
    3807                                 </FileConfiguration> 
    3808                                 <FileConfiguration 
    3809                                         Name="Release|Pocket PC 2003 (ARMV4)" 
    3810                                         ExcludedFromBuild="true" 
    3811                                         > 
    3812                                         <Tool 
    3813                                                 Name="VCCLCompilerTool" 
    3814                                         /> 
    3815                                 </FileConfiguration> 
    3816                                 <FileConfiguration 
    3817                                         Name="Debug-Static|Pocket PC 2003 (ARMV4)" 
    3818                                         ExcludedFromBuild="true" 
    3819                                         > 
    3820                                         <Tool 
    3821                                                 Name="VCCLCompilerTool" 
    3822                                         /> 
    3823                                 </FileConfiguration> 
    3824                                 <FileConfiguration 
    3825                                         Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
    3826                                         ExcludedFromBuild="true" 
    3827                                         > 
    3828                                         <Tool 
    3829                                                 Name="VCCLCompilerTool" 
    3830                                         /> 
    3831                                 </FileConfiguration> 
    3832                                 <FileConfiguration 
    3833                                         Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
    3834                                         ExcludedFromBuild="true" 
    3835                                         > 
    3836                                         <Tool 
    3837                                                 Name="VCCLCompilerTool" 
    3838                                         /> 
    3839                                 </FileConfiguration> 
    3840                                 <FileConfiguration 
    38413787                                        Name="Release-Static|Pocket PC 2003 (ARMV4)" 
    38423788                                        ExcludedFromBuild="true" 
     
    38473793                                </FileConfiguration> 
    38483794                                <FileConfiguration 
    3849                                         Name="Debug|Smartphone 2003 (ARMV4)" 
    3850                                         ExcludedFromBuild="true" 
    3851                                         > 
    3852                                         <Tool 
    3853                                                 Name="VCCLCompilerTool" 
    3854                                         /> 
    3855                                 </FileConfiguration> 
    3856                                 <FileConfiguration 
    3857                                         Name="Release|Smartphone 2003 (ARMV4)" 
    3858                                         ExcludedFromBuild="true" 
    3859                                         > 
    3860                                         <Tool 
    3861                                                 Name="VCCLCompilerTool" 
    3862                                         /> 
    3863                                 </FileConfiguration> 
    3864                                 <FileConfiguration 
    3865                                         Name="Debug-Static|Smartphone 2003 (ARMV4)" 
    3866                                         ExcludedFromBuild="true" 
    3867                                         > 
    3868                                         <Tool 
    3869                                                 Name="VCCLCompilerTool" 
    3870                                         /> 
    3871                                 </FileConfiguration> 
    3872                                 <FileConfiguration 
    3873                                         Name="Release-Dynamic|Smartphone 2003 (ARMV4)" 
    3874                                         ExcludedFromBuild="true" 
    3875                                         > 
    3876                                         <Tool 
    3877                                                 Name="VCCLCompilerTool" 
    3878                                         /> 
    3879                                 </FileConfiguration> 
    3880                                 <FileConfiguration 
    3881                                         Name="Debug-Dynamic|Smartphone 2003 (ARMV4)" 
    3882                                         ExcludedFromBuild="true" 
    3883                                         > 
    3884                                         <Tool 
    3885                                                 Name="VCCLCompilerTool" 
    3886                                         /> 
    3887                                 </FileConfiguration> 
    3888                                 <FileConfiguration 
    38893795                                        Name="Release-Static|Smartphone 2003 (ARMV4)" 
    38903796                                        ExcludedFromBuild="true" 
     
    38953801                                </FileConfiguration> 
    38963802                                <FileConfiguration 
    3897                                         Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    3898                                         ExcludedFromBuild="true" 
    3899                                         > 
    3900                                         <Tool 
    3901                                                 Name="VCCLCompilerTool" 
    3902                                         /> 
    3903                                 </FileConfiguration> 
    3904                                 <FileConfiguration 
    3905                                         Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    3906                                         ExcludedFromBuild="true" 
    3907                                         > 
    3908                                         <Tool 
    3909                                                 Name="VCCLCompilerTool" 
    3910                                         /> 
    3911                                 </FileConfiguration> 
    3912                                 <FileConfiguration 
    3913                                         Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    3914                                         ExcludedFromBuild="true" 
    3915                                         > 
    3916                                         <Tool 
    3917                                                 Name="VCCLCompilerTool" 
    3918                                         /> 
    3919                                 </FileConfiguration> 
    3920                                 <FileConfiguration 
    3921                                         Name="Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    3922                                         ExcludedFromBuild="true" 
    3923                                         > 
    3924                                         <Tool 
    3925                                                 Name="VCCLCompilerTool" 
    3926                                         /> 
    3927                                 </FileConfiguration> 
    3928                                 <FileConfiguration 
    3929                                         Name="Debug-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    3930                                         ExcludedFromBuild="true" 
    3931                                         > 
    3932                                         <Tool 
    3933                                                 Name="VCCLCompilerTool" 
    3934                                         /> 
    3935                                 </FileConfiguration> 
    3936                                 <FileConfiguration 
    39373803                                        Name="Release-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    3938                                         ExcludedFromBuild="true" 
    3939                                         > 
    3940                                         <Tool 
    3941                                                 Name="VCCLCompilerTool" 
    3942                                         /> 
    3943                                 </FileConfiguration> 
    3944                                 <FileConfiguration 
    3945                                         Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    3946                                         ExcludedFromBuild="true" 
    3947                                         > 
    3948                                         <Tool 
    3949                                                 Name="VCCLCompilerTool" 
    3950                                         /> 
    3951                                 </FileConfiguration> 
    3952                                 <FileConfiguration 
    3953                                         Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    3954                                         ExcludedFromBuild="true" 
    3955                                         > 
    3956                                         <Tool 
    3957                                                 Name="VCCLCompilerTool" 
    3958                                         /> 
    3959                                 </FileConfiguration> 
    3960                                 <FileConfiguration 
    3961                                         Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    3962                                         ExcludedFromBuild="true" 
    3963                                         > 
    3964                                         <Tool 
    3965                                                 Name="VCCLCompilerTool" 
    3966                                         /> 
    3967                                 </FileConfiguration> 
    3968                                 <FileConfiguration 
    3969                                         Name="Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    3970                                         ExcludedFromBuild="true" 
    3971                                         > 
    3972                                         <Tool 
    3973                                                 Name="VCCLCompilerTool" 
    3974                                         /> 
    3975                                 </FileConfiguration> 
    3976                                 <FileConfiguration 
    3977                                         Name="Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    39783804                                        ExcludedFromBuild="true" 
    39793805                                        > 
     
    40213847                                </FileConfiguration> 
    40223848                                <FileConfiguration 
     3849                                        Name="Debug|Pocket PC 2003 (ARMV4)" 
     3850                                        ExcludedFromBuild="true" 
     3851                                        > 
     3852                                        <Tool 
     3853                                                Name="VCCLCompilerTool" 
     3854                                        /> 
     3855                                </FileConfiguration> 
     3856                                <FileConfiguration 
     3857                                        Name="Debug|Smartphone 2003 (ARMV4)" 
     3858                                        ExcludedFromBuild="true" 
     3859                                        > 
     3860                                        <Tool 
     3861                                                Name="VCCLCompilerTool" 
     3862                                        /> 
     3863                                </FileConfiguration> 
     3864                                <FileConfiguration 
     3865                                        Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3866                                        ExcludedFromBuild="true" 
     3867                                        > 
     3868                                        <Tool 
     3869                                                Name="VCCLCompilerTool" 
     3870                                        /> 
     3871                                </FileConfiguration> 
     3872                                <FileConfiguration 
     3873                                        Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3874                                        ExcludedFromBuild="true" 
     3875                                        > 
     3876                                        <Tool 
     3877                                                Name="VCCLCompilerTool" 
     3878                                        /> 
     3879                                </FileConfiguration> 
     3880                                <FileConfiguration 
    40233881                                        Name="Release|Win32" 
    40243882                                        ExcludedFromBuild="true" 
     
    40473905                                </FileConfiguration> 
    40483906                                <FileConfiguration 
     3907                                        Name="Release|Pocket PC 2003 (ARMV4)" 
     3908                                        ExcludedFromBuild="true" 
     3909                                        > 
     3910                                        <Tool 
     3911                                                Name="VCCLCompilerTool" 
     3912                                        /> 
     3913                                </FileConfiguration> 
     3914                                <FileConfiguration 
     3915                                        Name="Release|Smartphone 2003 (ARMV4)" 
     3916                                        ExcludedFromBuild="true" 
     3917                                        > 
     3918                                        <Tool 
     3919                                                Name="VCCLCompilerTool" 
     3920                                        /> 
     3921                                </FileConfiguration> 
     3922                                <FileConfiguration 
     3923                                        Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3924                                        ExcludedFromBuild="true" 
     3925                                        > 
     3926                                        <Tool 
     3927                                                Name="VCCLCompilerTool" 
     3928                                        /> 
     3929                                </FileConfiguration> 
     3930                                <FileConfiguration 
     3931                                        Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3932                                        ExcludedFromBuild="true" 
     3933                                        > 
     3934                                        <Tool 
     3935                                                Name="VCCLCompilerTool" 
     3936                                        /> 
     3937                                </FileConfiguration> 
     3938                                <FileConfiguration 
    40493939                                        Name="Debug-Static|Win32" 
    40503940                                        ExcludedFromBuild="true" 
     
    40733963                                </FileConfiguration> 
    40743964                                <FileConfiguration 
     3965                                        Name="Debug-Static|Pocket PC 2003 (ARMV4)" 
     3966                                        ExcludedFromBuild="true" 
     3967                                        > 
     3968                                        <Tool 
     3969                                                Name="VCCLCompilerTool" 
     3970                                        /> 
     3971                                </FileConfiguration> 
     3972                                <FileConfiguration 
     3973                                        Name="Debug-Static|Smartphone 2003 (ARMV4)" 
     3974                                        ExcludedFromBuild="true" 
     3975                                        > 
     3976                                        <Tool 
     3977                                                Name="VCCLCompilerTool" 
     3978                                        /> 
     3979                                </FileConfiguration> 
     3980                                <FileConfiguration 
     3981                                        Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     3982                                        ExcludedFromBuild="true" 
     3983                                        > 
     3984                                        <Tool 
     3985                                                Name="VCCLCompilerTool" 
     3986                                        /> 
     3987                                </FileConfiguration> 
     3988                                <FileConfiguration 
     3989                                        Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     3990                                        ExcludedFromBuild="true" 
     3991                                        > 
     3992                                        <Tool 
     3993                                                Name="VCCLCompilerTool" 
     3994                                        /> 
     3995                                </FileConfiguration> 
     3996                                <FileConfiguration 
    40753997                                        Name="Release-Dynamic|Win32" 
    40763998                                        ExcludedFromBuild="true" 
     
    40994021                                </FileConfiguration> 
    41004022                                <FileConfiguration 
     4023                                        Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
     4024                                        ExcludedFromBuild="true" 
     4025                                        > 
     4026                                        <Tool 
     4027                                                Name="VCCLCompilerTool" 
     4028                                        /> 
     4029                                </FileConfiguration> 
     4030                                <FileConfiguration 
     4031                                        Name="Release-Dynamic|Smartphone 2003 (ARMV4)" 
     4032                                        ExcludedFromBuild="true" 
     4033                                        > 
     4034                                        <Tool 
     4035                                                Name="VCCLCompilerTool" 
     4036                                        /> 
     4037                                </FileConfiguration> 
     4038                                <FileConfiguration 
     4039                                        Name="Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     4040                                        ExcludedFromBuild="true" 
     4041                                        > 
     4042                                        <Tool 
     4043                                                Name="VCCLCompilerTool" 
     4044                                        /> 
     4045                                </FileConfiguration> 
     4046                                <FileConfiguration 
     4047                                        Name="Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     4048                                        ExcludedFromBuild="true" 
     4049                                        > 
     4050                                        <Tool 
     4051                                                Name="VCCLCompilerTool" 
     4052                                        /> 
     4053                                </FileConfiguration> 
     4054                                <FileConfiguration 
    41014055                                        Name="Debug-Dynamic|Win32" 
    41024056                                        ExcludedFromBuild="true" 
     
    41254079                                </FileConfiguration> 
    41264080                                <FileConfiguration 
     4081                                        Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
     4082                                        ExcludedFromBuild="true" 
     4083                                        > 
     4084                                        <Tool 
     4085                                                Name="VCCLCompilerTool" 
     4086                                        /> 
     4087                                </FileConfiguration> 
     4088                                <FileConfiguration 
     4089                                        Name="Debug-Dynamic|Smartphone 2003 (ARMV4)" 
     4090                                        ExcludedFromBuild="true" 
     4091                                        > 
     4092                                        <Tool 
     4093                                                Name="VCCLCompilerTool" 
     4094                                        /> 
     4095                                </FileConfiguration> 
     4096                                <FileConfiguration 
     4097                                        Name="Debug-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     4098                                        ExcludedFromBuild="true" 
     4099                                        > 
     4100                                        <Tool 
     4101                                                Name="VCCLCompilerTool" 
     4102                                        /> 
     4103                                </FileConfiguration> 
     4104                                <FileConfiguration 
     4105                                        Name="Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     4106                                        ExcludedFromBuild="true" 
     4107                                        > 
     4108                                        <Tool 
     4109                                                Name="VCCLCompilerTool" 
     4110                                        /> 
     4111                                </FileConfiguration> 
     4112                                <FileConfiguration 
    41274113                                        Name="Release-Static|Win32" 
    41284114                                        ExcludedFromBuild="true" 
     
    41514137                                </FileConfiguration> 
    41524138                                <FileConfiguration 
    4153                                         Name="Debug|Pocket PC 2003 (ARMV4)" 
    4154                                         ExcludedFromBuild="true" 
    4155                                         > 
    4156                                         <Tool 
    4157                                                 Name="VCCLCompilerTool" 
    4158                                         /> 
    4159                                 </FileConfiguration> 
    4160                                 <FileConfiguration 
    4161                                         Name="Release|Pocket PC 2003 (ARMV4)" 
    4162                                         ExcludedFromBuild="true" 
    4163                                         > 
    4164                                         <Tool 
    4165                                                 Name="VCCLCompilerTool" 
    4166                                         /> 
    4167                                 </FileConfiguration> 
    4168                                 <FileConfiguration 
    4169                                         Name="Debug-Static|Pocket PC 2003 (ARMV4)" 
    4170                                         ExcludedFromBuild="true" 
    4171                                         > 
    4172                                         <Tool 
    4173                                                 Name="VCCLCompilerTool" 
    4174                                         /> 
    4175                                 </FileConfiguration> 
    4176                                 <FileConfiguration 
    4177                                         Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
    4178                                         ExcludedFromBuild="true" 
    4179                                         > 
    4180                                         <Tool 
    4181                                                 Name="VCCLCompilerTool" 
    4182                                         /> 
    4183                                 </FileConfiguration> 
    4184                                 <FileConfiguration 
    4185                                         Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
    4186                                         ExcludedFromBuild="true" 
    4187                                         > 
    4188                                         <Tool 
    4189                                                 Name="VCCLCompilerTool" 
    4190                                         /> 
    4191                                 </FileConfiguration> 
    4192                                 <FileConfiguration 
    41934139                                        Name="Release-Static|Pocket PC 2003 (ARMV4)" 
    41944140                                        ExcludedFromBuild="true" 
     
    41994145                                </FileConfiguration> 
    42004146                                <FileConfiguration 
    4201                                         Name="Debug|Smartphone 2003 (ARMV4)" 
    4202                                         ExcludedFromBuild="true" 
    4203                                         > 
    4204                                         <Tool 
    4205                                                 Name="VCCLCompilerTool" 
    4206                                         /> 
    4207                                 </FileConfiguration> 
    4208                                 <FileConfiguration 
    4209                                         Name="Release|Smartphone 2003 (ARMV4)" 
    4210                                         ExcludedFromBuild="true" 
    4211                                         > 
    4212                                         <Tool 
    4213                                                 Name="VCCLCompilerTool" 
    4214                                         /> 
    4215                                 </FileConfiguration> 
    4216                                 <FileConfiguration 
    4217                                         Name="Debug-Static|Smartphone 2003 (ARMV4)" 
    4218                                         ExcludedFromBuild="true" 
    4219                                         > 
    4220                                         <Tool 
    4221                                                 Name="VCCLCompilerTool" 
    4222                                         /> 
    4223                                 </FileConfiguration> 
    4224                                 <FileConfiguration 
    4225                                         Name="Release-Dynamic|Smartphone 2003 (ARMV4)" 
    4226                                         ExcludedFromBuild="true" 
    4227                                         > 
    4228                                         <Tool 
    4229                                                 Name="VCCLCompilerTool" 
    4230                                         /> 
    4231                                 </FileConfiguration> 
    4232                                 <FileConfiguration 
    4233                                         Name="Debug-Dynamic|Smartphone 2003 (ARMV4)" 
    4234                                         ExcludedFromBuild="true" 
    4235                                         > 
    4236                                         <Tool 
    4237                                                 Name="VCCLCompilerTool" 
    4238                                         /> 
    4239                                 </FileConfiguration> 
    4240                                 <FileConfiguration 
    42414147                                        Name="Release-Static|Smartphone 2003 (ARMV4)" 
    42424148                                        ExcludedFromBuild="true" 
     
    42474153                                </FileConfiguration> 
    42484154                                <FileConfiguration 
    4249                                         Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    4250                                         ExcludedFromBuild="true" 
    4251                                         > 
    4252                                         <Tool 
    4253                                                 Name="VCCLCompilerTool" 
    4254                                         /> 
    4255                                 </FileConfiguration> 
    4256                                 <FileConfiguration 
    4257                                         Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    4258                                         ExcludedFromBuild="true" 
    4259                                         > 
    4260                                         <Tool 
    4261                                                 Name="VCCLCompilerTool" 
    4262                                         /> 
    4263                                 </FileConfiguration> 
    4264                                 <FileConfiguration 
    4265                                         Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    4266                                         ExcludedFromBuild="true" 
    4267                                         > 
    4268                                         <Tool 
    4269                                                 Name="VCCLCompilerTool" 
    4270                                         /> 
    4271                                 </FileConfiguration> 
    4272                                 <FileConfiguration 
    4273                                         Name="Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    4274                                         ExcludedFromBuild="true" 
    4275                                         > 
    4276                                         <Tool 
    4277                                                 Name="VCCLCompilerTool" 
    4278                                         /> 
    4279                                 </FileConfiguration> 
    4280                                 <FileConfiguration 
    4281                                         Name="Debug-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    4282                                         ExcludedFromBuild="true" 
    4283                                         > 
    4284                                         <Tool 
    4285                                                 Name="VCCLCompilerTool" 
    4286                                         /> 
    4287                                 </FileConfiguration> 
    4288                                 <FileConfiguration 
    42894155                                        Name="Release-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
    4290                                         ExcludedFromBuild="true" 
    4291                                         > 
    4292                                         <Tool 
    4293                                                 Name="VCCLCompilerTool" 
    4294                                         /> 
    4295                                 </FileConfiguration> 
    4296                                 <FileConfiguration 
    4297                                         Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    4298                                         ExcludedFromBuild="true" 
    4299                                         > 
    4300                                         <Tool 
    4301                                                 Name="VCCLCompilerTool" 
    4302                                         /> 
    4303                                 </FileConfiguration> 
    4304                                 <FileConfiguration 
    4305                                         Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    4306                                         ExcludedFromBuild="true" 
    4307                                         > 
    4308                                         <Tool 
    4309                                                 Name="VCCLCompilerTool" 
    4310                                         /> 
    4311                                 </FileConfiguration> 
    4312                                 <FileConfiguration 
    4313                                         Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    4314                                         ExcludedFromBuild="true" 
    4315                                         > 
    4316                                         <Tool 
    4317                                                 Name="VCCLCompilerTool" 
    4318                                         /> 
    4319                                 </FileConfiguration> 
    4320                                 <FileConfiguration 
    4321                                         Name="Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    4322                                         ExcludedFromBuild="true" 
    4323                                         > 
    4324                                         <Tool 
    4325                                                 Name="VCCLCompilerTool" 
    4326                                         /> 
    4327                                 </FileConfiguration> 
    4328                                 <FileConfiguration 
    4329                                         Name="Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
    43304156                                        ExcludedFromBuild="true" 
    43314157                                        > 
     
    49864812                                        /> 
    49874813                                </FileConfiguration> 
     4814                        </File> 
     4815                        <File 
     4816                                RelativePath="..\src\pjlib-test\ssl_sock.c" 
     4817                                > 
    49884818                        </File> 
    49894819                        <File 
  • pjproject/trunk/pjlib/include/pj/compat/os_auto.h.in

    r2962 r2970  
    182182#undef PJ_THREAD_ALLOCATE_STACK 
    183183 
     184/* SSL socket availability. */ 
     185#ifndef PJ_HAS_SSL_SOCK 
     186#undef PJ_HAS_SSL_SOCK 
     187#endif 
     188 
     189 
    184190#endif  /* __PJ_COMPAT_OS_AUTO_H__ */ 
    185191 
  • pjproject/trunk/pjlib/include/pj/config.h

    r2966 r2970  
    777777#       define PJ_QOS_IMPLEMENTATION    PJ_QOS_WM 
    778778#   endif 
     779#endif 
     780 
     781 
     782/** 
     783 * Enable secure socket. For most platforms, this is implemented using 
     784 * OpenSSL, so this will require OpenSSL to be installed. For Symbian 
     785 * platform, this is implemented natively using CSecureSocket. 
     786 * 
     787 * Default: 0 (for now) 
     788 */ 
     789#ifndef PJ_HAS_SSL_SOCK 
     790#  define PJ_HAS_SSL_SOCK           0 
    779791#endif 
    780792 
  • pjproject/trunk/pjlib/include/pj/ssl_sock.h

    r2950 r2970  
    6161 
    6262/** 
     63 * Describe structure of certificate info. 
     64 */ 
     65typedef struct pj_ssl_cert_info { 
     66    pj_str_t    subject;            /**< Subject.               */ 
     67    pj_str_t    issuer;             /**< Issuer.                */ 
     68    unsigned    version;            /**< Certificate version.   */ 
     69    pj_time_val validity_start;     /**< Validity start.        */ 
     70    pj_time_val validity_end;       /**< Validity end.          */ 
     71    pj_bool_t   validity_use_gmt;   /**< Flag if validity date/time  
     72                                         use GMT.               */ 
     73} pj_ssl_cert_info; 
     74 
     75 
     76/** 
    6377 * Create credential from files. 
    6478 * 
     
    6781 * @param privkey_file  The file of private key. 
    6882 * @param privkey_pass  The password of private key, if any. 
     83 * @param p_cert        Pointer to credential instance to be created. 
    6984 * 
    7085 * @return              PJ_SUCCESS when successful. 
     
    323338     */ 
    324339    pj_bool_t established; 
     340 
    325341    /** 
    326342     * Describes secure socket protocol being used. 
    327343     */ 
    328344    pj_ssl_sock_proto proto; 
     345 
    329346    /** 
    330347     * Describes cipher suite being used, this will only be set when connection 
     
    332349     */ 
    333350    pj_ssl_cipher cipher; 
     351 
    334352    /** 
    335353     * Describes local address. 
    336354     */ 
    337355    pj_sockaddr local_addr; 
     356 
    338357    /** 
    339358     * Describes remote address. 
     
    341360    pj_sockaddr remote_addr; 
    342361    
     362    /** 
     363     * Describes active local certificate info. 
     364     */ 
     365    pj_ssl_cert_info local_cert_info; 
     366    
     367    /** 
     368     * Describes active remote certificate info. 
     369     */ 
     370    pj_ssl_cert_info remote_cert_info; 
     371    
    343372} pj_ssl_sock_info; 
    344373 
     
    368397     */ 
    369398    pj_ioqueue_t *ioqueue; 
     399 
     400    /** 
     401     * Specify the timer heap to use. Secure socket uses the timer to provide 
     402     * auto cancelation on asynchronous operation when it takes longer time  
     403     * than specified timeout period, e.g: security negotiation timeout. 
     404     */ 
     405    pj_timer_heap_t *timer_heap; 
    370406 
    371407    /** 
     
    431467 
    432468    /** 
    433      * Specify buffer size for delayed send operation. This setting is only 
    434      * applied for some platforms that restrict more than one outstanding  
    435      * send operation at a time, e.g: Symbian. So delaying/buffering send  
    436      * mechanism is used to allow application to send data anytime without  
    437      * worrying about current outstanding send operations. 
     469     * Specify buffer size for sending operation. Buffering sending data 
     470     * is used for allowing application to perform multiple outstanding  
     471     * send operations. Whenever application specifies this setting too 
     472     * small, sending operation may return PJ_ENOMEM. 
    438473     *   
    439      * Default value is 0, except for Symbian 8192 bytes. 
     474     * Default value is 8192 bytes. 
    440475     */ 
    441476    pj_size_t send_buffer_size; 
     
    496531     * Default value is zero/not-set. 
    497532     */ 
    498     pj_str_t servername; 
     533    pj_str_t server_name; 
    499534     
    500535} pj_ssl_sock_param; 
     
    692727 * @param flags         Flags to be given to pj_ioqueue_send(). 
    693728 * 
    694  * 
    695729 * @return              PJ_SUCCESS if data has been sent immediately, or 
    696  *                      PJ_EPENDING if data cannot be sent immediately. In 
    697  *                      this case the \a on_data_sent() callback will be 
    698  *                      called when data is actually sent. Any other return 
    699  *                      value indicates error condition. 
     730 *                      PJ_EPENDING if data cannot be sent immediately or 
     731 *                      PJ_ENOMEM when sending buffer could not handle all 
     732 *                      queued data, see \a send_buffer_size. The callback 
     733 *                      \a on_data_sent() will be called when data is actually 
     734 *                      sent. Any other return value indicates error condition. 
    700735 */ 
    701736PJ_DECL(pj_status_t) pj_ssl_sock_send(pj_ssl_sock_t *ssock, 
     
    787822 
    788823/** 
     824 * Starts SSL/TLS renegotiation over an already established SSL connection 
     825 * for this socket. This operation is performed transparently, no callback  
     826 * will be called once the renegotiation completed successfully. However,  
     827 * when the renegotiation fails, the connection will be closed and callback 
     828 * \a on_data_read() will be invoked with non-PJ_SUCCESS status code. 
     829 * 
     830 * @param ssock         The secure socket. 
     831 * 
     832 * @return              PJ_SUCCESS if renegotiation is completed immediately, 
     833 *                      or PJ_EPENDING if renegotiation has been started and 
     834 *                      waiting for completion, or the appropriate error code  
     835 *                      on failure. 
     836 */ 
     837PJ_DECL(pj_status_t) pj_ssl_sock_renegotiate(pj_ssl_sock_t *ssock); 
     838 
     839 
     840/** 
    789841 * @} 
    790842 */ 
  • pjproject/trunk/pjlib/include/pjlib.h

    r2966 r2970  
    5353#include <pj/sock_qos.h> 
    5454#include <pj/sock_select.h> 
     55#include <pj/ssl_sock.h> 
    5556#include <pj/string.h> 
    5657#include <pj/timer.h> 
  • pjproject/trunk/pjlib/src/pj/ssl_sock_ossl.c

    r2950 r2970  
    2626#include <pj/log.h> 
    2727#include <pj/math.h> 
     28#include <pj/os.h> 
    2829#include <pj/pool.h> 
    2930#include <pj/string.h> 
     31#include <pj/timer.h> 
    3032 
    3133 
    3234/* Only build when PJ_HAS_SSL_SOCK is enabled */ 
    33 //#if defined(PJ_HAS_SSL_SOCK) && PJ_HAS_SSL_SOCK!=0 
     35#if defined(PJ_HAS_SSL_SOCK) && PJ_HAS_SSL_SOCK!=0 
    3436 
    3537#define THIS_FILE               "ssl_sock_ossl.c" 
     
    130132    pj_ssl_sock_param     param; 
    131133    pj_ssl_cert_t        *cert; 
     134     
     135    pj_ssl_cert_info      local_cert_info; 
     136    pj_ssl_cert_info      remote_cert_info; 
    132137 
    133138    pj_bool_t             is_server; 
    134139    enum ssl_state        ssl_state; 
    135140    pj_ioqueue_op_key_t   handshake_op_key; 
     141    pj_timer_entry        handshake_timer; 
    136142 
    137143    pj_sock_t             sock; 
     
    180186 */ 
    181187 
    182 /* ssl_report_error() */ 
    183 static void ssl_report_error(const char *sender, int level,  
    184                              pj_status_t status, 
    185                              const char *format, ...) 
    186 { 
    187     va_list marker; 
    188  
    189     va_start(marker, format); 
    190  
    191 #if PJ_LOG_MAX_LEVEL > 0 
    192     if (status != PJ_SUCCESS) { 
    193         char err_format[PJ_ERR_MSG_SIZE + 512]; 
    194         int len; 
    195  
    196         len = pj_ansi_snprintf(err_format, sizeof(err_format), 
    197                                "%s: ", format); 
    198         pj_strerror(status, err_format+len, sizeof(err_format)-len); 
    199          
    200         pj_log(sender, level, err_format, marker); 
    201  
    202     } else { 
    203         unsigned long ssl_err; 
    204  
    205         ssl_err = ERR_get_error(); 
    206  
    207         if (ssl_err == 0) { 
    208             pj_log(sender, level, format, marker); 
    209         } else { 
    210             char err_format[512]; 
    211             int len; 
    212  
    213             len = pj_ansi_snprintf(err_format, sizeof(err_format), 
    214                                    "%s: ", format); 
    215             ERR_error_string(ssl_err, err_format+len); 
    216              
    217             pj_log(sender, level, err_format, marker); 
    218         } 
    219     } 
    220 #endif 
    221  
    222     va_end(marker); 
    223 } 
    224  
     188/** 
     189 * Mapping from OpenSSL error codes to pjlib error space. 
     190 */ 
     191 
     192#define PJ_SSL_ERRNO_START              (PJ_ERRNO_START_USER + \ 
     193                                         PJ_ERRNO_SPACE_SIZE*6) 
     194 
     195#define PJ_SSL_ERRNO_SPACE_SIZE         5000 
     196 
     197#define PJ_STATUS_FROM_OSSL(ossl_err)   (ossl_err == SSL_ERROR_NONE? \ 
     198                                         PJ_SUCCESS : \ 
     199                                         (PJ_SSL_ERRNO_START + ossl_err)) 
     200 
     201#define PJ_STATUS_TO_OSSL(status)       (status == PJ_SUCCESS? \ 
     202                                         SSL_ERROR_NONE : \ 
     203                                        (status - PJ_SSL_ERRNO_START)) 
     204 
     205 
     206/* 
     207 * Get error string of OpenSSL. 
     208 */ 
     209static pj_str_t ssl_strerror(pj_status_t status,  
     210                             char *buf, pj_size_t bufsize) 
     211{ 
     212    pj_str_t errstr; 
     213    unsigned long ssl_err = PJ_STATUS_TO_OSSL(status); 
     214 
     215#if defined(PJ_HAS_ERROR_STRING) && (PJ_HAS_ERROR_STRING != 0) 
     216 
     217    ERR_error_string_n(ssl_err, buf, bufsize); 
     218    errstr = pj_str(buf); 
     219 
     220#else 
     221 
     222    errstr.ptr = buf; 
     223    errstr.slen = pj_ansi_snprintf(buf, bufsize,  
     224                                   "Unknown OpenSSL error %d", 
     225                                   ssl_err); 
     226 
     227#endif  /* PJ_HAS_ERROR_STRING */ 
     228 
     229    return errstr; 
     230} 
    225231 
    226232 
    227233/* OpenSSL library initialization counter */ 
    228234static int openssl_init_count; 
     235static int openssl_reg_strerr; 
    229236 
    230237/* OpenSSL available ciphers */ 
    231 static pj_ssl_cipher openssl_ciphers[64]; 
     238static pj_ssl_cipher openssl_ciphers[100]; 
    232239static unsigned openssl_cipher_num; 
    233240 
     
    239246        return PJ_SUCCESS; 
    240247 
     248    /* Register error subsystem */ 
     249    if (!openssl_reg_strerr) { 
     250        pj_status_t status; 
     251 
     252        openssl_reg_strerr = 1; 
     253        status = pj_register_strerror(PJ_SSL_ERRNO_START,  
     254                                      PJ_SSL_ERRNO_SPACE_SIZE,  
     255                                      &ssl_strerror); 
     256        pj_assert(status == PJ_SUCCESS); 
     257    } 
     258 
     259    /* Init OpenSSL lib */ 
    241260    SSL_library_init(); 
    242261    SSL_load_error_strings(); 
     
    345364        break; 
    346365    default: 
    347         ssl_report_error(THIS_FILE, 4, PJ_EINVAL, 
    348                          "Error creating SSL context"); 
    349366        return PJ_EINVAL; 
    350367    } 
     
    353370    ctx = SSL_CTX_new(ssl_method); 
    354371    if (ctx == NULL) { 
    355         ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    356                          "Error creating SSL context"); 
    357         return PJ_EINVAL; 
     372        PJ_LOG(1,(ssock->pool->obj_name, "Error creating OpenSSL context")); 
     373        return PJ_STATUS_FROM_OSSL(ERR_get_error()); 
    358374    } 
    359375 
     
    366382 
    367383            if (rc != 1) { 
    368                 ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    369                                  "Error loading/verifying CA list file '%s'", 
    370                                  cert->CA_file.ptr); 
     384                PJ_LOG(1,(ssock->pool->obj_name, "Error loading CA list file " 
     385                          "'%s'", cert->CA_file.ptr)); 
    371386                SSL_CTX_free(ctx); 
    372                 return PJ_EINVAL; 
     387                return PJ_STATUS_FROM_OSSL(ERR_get_error()); 
    373388            } 
    374  
    375             PJ_LOG(5,(THIS_FILE, "CA file successfully loaded from '%s'", 
    376                       cert->CA_file.ptr)); 
    377389        } 
    378390     
     
    391403 
    392404            if(rc != 1) { 
    393                 ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    394                                  "Error loading certificate chain file '%s'", 
    395                                  cert->cert_file.ptr); 
     405                PJ_LOG(1,(ssock->pool->obj_name, "Error loading certificate " 
     406                          "chain file '%s'", cert->cert_file.ptr)); 
    396407                SSL_CTX_free(ctx); 
    397                 return PJ_EINVAL; 
     408                return PJ_STATUS_FROM_OSSL(ERR_get_error()); 
    398409            } 
    399  
    400             PJ_LOG(5,(THIS_FILE, "TLS certificate successfully loaded from '%s'", 
    401                       cert->cert_file.ptr)); 
    402410        } 
    403411 
     
    410418 
    411419            if(rc != 1) { 
    412                 ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    413                                  "Error adding private key from '%s'", 
    414                                  cert->privkey_file.ptr); 
     420                PJ_LOG(1,(ssock->pool->obj_name, "Error adding private key " 
     421                          "from '%s'", cert->privkey_file.ptr)); 
    415422                SSL_CTX_free(ctx); 
    416                 return PJ_EINVAL; 
     423                return PJ_STATUS_FROM_OSSL(ERR_get_error()); 
    417424            } 
    418  
    419             PJ_LOG(5,(THIS_FILE, "Private key successfully loaded from '%s'", 
    420                       cert->privkey_file.ptr)); 
    421425        } 
    422426    } 
     
    431435 
    432436    if (ssock->is_server && ssock->param.require_client_cert) 
    433         mode |= SSL_VERIFY_FAIL_IF_NO_PEER_CERT; 
     437        mode |= SSL_VERIFY_FAIL_IF_NO_PEER_CERT | SSL_VERIFY_PEER; 
    434438 
    435439    SSL_CTX_set_verify(ctx, mode, NULL); 
    436  
    437     PJ_LOG(5,(THIS_FILE, "Verification mode set to %d", mode)); 
    438440 
    439441    *p_ctx = ctx; 
     
    472474        pj_activesock_close(ssock->asock); 
    473475        ssock->asock = NULL; 
     476        ssock->sock = PJ_INVALID_SOCKET; 
     477    } 
     478    if (ssock->sock != PJ_INVALID_SOCKET) { 
     479        pj_sock_close(ssock->sock); 
    474480        ssock->sock = PJ_INVALID_SOCKET; 
    475481    } 
     
    529535    /* Finally, set chosen cipher list */ 
    530536    ret = SSL_set_cipher_list(ssock->ossl_ssl, buf); 
    531     if (ret < 1) { 
    532         ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    533                          "Error setting cipher list"); 
    534         return PJ_EINVAL; 
    535     } 
     537    if (ret < 1) 
     538        return PJ_STATUS_FROM_OSSL(SSL_get_error(ssock->ossl_ssl, ret)); 
    536539 
    537540    return PJ_SUCCESS; 
     541} 
     542 
     543 
     544/* Parse OpenSSL ASN1_TIME to pj_time_val and GMT info */ 
     545static pj_bool_t parse_ossl_asn1_time(pj_time_val *tv, pj_bool_t *gmt, 
     546                                      const ASN1_TIME *tm) 
     547{ 
     548    unsigned long parts[7] = {0}; 
     549    char *p, *end; 
     550    unsigned len; 
     551    pj_bool_t utc; 
     552    pj_parsed_time pt; 
     553    int i; 
     554 
     555    utc = tm->type == V_ASN1_UTCTIME; 
     556    p = (char*)tm->data; 
     557    len = tm->length; 
     558    end = p + len - 1; 
     559 
     560    /* GMT */ 
     561    *gmt = (*end == 'Z'); 
     562 
     563    /* parse parts */ 
     564    for (i = 0; i < 7 && p < end; ++i) { 
     565        pj_str_t st; 
     566 
     567        if (i==0 && !utc) { 
     568            /* 4 digits year part for non-UTC time format */ 
     569            st.slen = 4; 
     570        } else if (i==6) { 
     571            /* fraction of seconds */ 
     572            if (*p == '.') ++p; 
     573            st.slen = end - p + 1; 
     574        } else { 
     575            /* other parts always 2 digits length */ 
     576            st.slen = 2; 
     577        } 
     578        st.ptr = p; 
     579 
     580        parts[i] = pj_strtoul(&st); 
     581        p += st.slen; 
     582    } 
     583 
     584    /* encode parts to pj_time_val */ 
     585    pt.year = parts[0]; 
     586    if (utc) 
     587        pt.year += (pt.year < 50)? 2000:1900; 
     588    pt.mon = parts[1] - 1; 
     589    pt.day = parts[2]; 
     590    pt.hour = parts[3]; 
     591    pt.min = parts[4]; 
     592    pt.sec = parts[5]; 
     593    pt.msec = parts[6]; 
     594 
     595    pj_time_encode(&pt, tv); 
     596 
     597    return PJ_TRUE; 
     598} 
     599 
     600 
     601/* Get certificate info from OpenSSL X509 */ 
     602static void get_cert_info(pj_pool_t *pool, pj_ssl_cert_info *ci, X509 *x) 
     603{ 
     604    pj_ssl_cert_info info; 
     605    char buf1[256]; 
     606    char buf2[256]; 
     607 
     608    pj_assert(pool && ci); 
     609 
     610    if (!x) { 
     611        pj_bzero(ci, sizeof(pj_ssl_cert_info)); 
     612        return; 
     613    } 
     614 
     615    pj_bzero(&info, sizeof(info)); 
     616 
     617    /* Populate cert info */ 
     618    info.subject = pj_str(X509_NAME_oneline(X509_get_subject_name(x),buf1, 
     619                                            sizeof(buf1))); 
     620    info.issuer = pj_str(X509_NAME_oneline(X509_get_issuer_name(x), buf2, 
     621                                           sizeof(buf2))); 
     622    info.version = X509_get_version(x) + 1; 
     623    parse_ossl_asn1_time(&info.validity_start, &info.validity_use_gmt, 
     624                         X509_get_notBefore(x)); 
     625    parse_ossl_asn1_time(&info.validity_end, &info.validity_use_gmt, 
     626                         X509_get_notAfter(x)); 
     627 
     628    /* Update certificate info */ 
     629    if (pj_strcmp(&ci->subject, &info.subject)) 
     630        pj_strdup(pool, &ci->subject, &info.subject); 
     631    if (pj_strcmp(&ci->issuer, &info.issuer)) 
     632        pj_strdup(pool, &ci->issuer, &info.issuer); 
     633    ci->version = info.version; 
     634    ci->validity_start = info.validity_start; 
     635    ci->validity_end = info.validity_end; 
     636    ci->validity_use_gmt = info.validity_use_gmt; 
     637} 
     638 
     639 
     640/* Update local & remote certificates info. This function should be 
     641 * called after handshake or renegotiation successfully completed. 
     642 */ 
     643static void update_certs_info(pj_ssl_sock_t *ssock) 
     644{ 
     645    X509 *x; 
     646 
     647    pj_assert(ssock->ssl_state == SSL_STATE_ESTABLISHED); 
     648 
     649    /* Active local certificate */ 
     650    x = SSL_get_certificate(ssock->ossl_ssl); 
     651    get_cert_info(ssock->pool, &ssock->local_cert_info, x); 
     652    /* Don't free local's X509! */ 
     653 
     654    /* Active remote certificate */ 
     655    x = SSL_get_peer_certificate(ssock->ossl_ssl); 
     656    get_cert_info(ssock->pool, &ssock->remote_cert_info, x); 
     657    /* Free peer's X509 */ 
     658    X509_free(x); 
    538659} 
    539660 
     
    547668                                       pj_status_t status) 
    548669{ 
     670    /* Cancel handshake timer */ 
     671    if (ssock->param.timer_heap) 
     672        pj_timer_heap_cancel(ssock->param.timer_heap, &ssock->handshake_timer); 
     673 
     674    /* Update certificates info on successful handshake */ 
     675    if (status == PJ_SUCCESS) 
     676        update_certs_info(ssock); 
     677 
    549678    /* Accepting */ 
    550679    if (ssock->is_server) { 
     
    708837} 
    709838 
     839 
     840static void handshake_timeout_cb(pj_timer_heap_t *th, 
     841                                 struct pj_timer_entry *te) 
     842{ 
     843    pj_ssl_sock_t *ssock = (pj_ssl_sock_t*)te->user_data; 
     844 
     845    PJ_UNUSED_ARG(th); 
     846 
     847    PJ_LOG(1,(ssock->pool->obj_name, "SSL handshake timeout after %d.%ds", 
     848              ssock->param.timeout.sec, ssock->param.timeout.msec)); 
     849 
     850    on_handshake_complete(ssock, PJ_ETIMEDOUT); 
     851} 
     852 
     853 
     854/* Asynchronouse handshake */ 
    710855static pj_status_t do_handshake(pj_ssl_sock_t *ssock) 
    711856{ 
     
    722867        { 
    723868            /* Handshake fails */ 
    724             ssl_report_error(THIS_FILE, 4, PJ_SUCCESS,  
    725                              "SSL_do_handshake()"); 
    726869            pj_lock_release(ssock->write_mutex); 
    727             return PJ_ECANCELLED; 
     870            return PJ_STATUS_FROM_OSSL(err); 
    728871        } 
    729872    } 
     
    767910 
    768911    /* Socket error or closed */ 
    769     if (data == NULL || size < 0) 
    770         goto on_error; 
    771  
    772     /* Consume the whole data */ 
    773     nwritten = BIO_write(ssock->ossl_rbio, data, size); 
    774     if (nwritten < size) { 
    775         status = PJ_ENOMEM; 
    776         ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, "BIO_write()"); 
    777         goto on_error; 
     912    if (data && size > 0) { 
     913        /* Consume the whole data */ 
     914        nwritten = BIO_write(ssock->ossl_rbio, data, size); 
     915        if (nwritten < size) { 
     916            status = PJ_STATUS_FROM_OSSL(ERR_get_error()); 
     917            goto on_error; 
     918        } 
    778919    } 
    779920 
     
    803944             */ 
    804945            pj_lock_acquire(ssock->write_mutex); 
    805  
    806946            size_ = SSL_read(ssock->ossl_ssl, data_, size_); 
    807             if (size_ > 0) { 
    808                 pj_lock_release(ssock->write_mutex); 
     947            pj_lock_release(ssock->write_mutex); 
     948 
     949            if (size_ > 0 || status != PJ_SUCCESS) { 
    809950                if (ssock->param.cb.on_data_read) { 
    810951                    pj_bool_t ret; 
    811952                    pj_size_t remainder_ = 0; 
    812953 
    813                     buf->len += size_; 
     954                    if (size_ > 0) 
     955                        buf->len += size_; 
    814956                 
    815957                    ret = (*ssock->param.cb.on_data_read)(ssock, buf->data, 
     
    826968                    buf->len = remainder_; 
    827969                } 
     970 
     971                /* Active socket signalled connection closed/error, this has 
     972                 * been signalled to the application along with any remaining 
     973                 * buffer. So, let's just reset SSL socket now. 
     974                 */ 
     975                if (status != PJ_SUCCESS) { 
     976                    reset_ssl_sock_state(ssock); 
     977                    return PJ_FALSE; 
     978                } 
     979 
    828980            } else { 
     981 
    829982                int err = SSL_get_error(ssock->ossl_ssl, size); 
    830983                 
     
    834987                if (err != SSL_ERROR_NONE && err != SSL_ERROR_WANT_READ) 
    835988                { 
     989                    char errmsg[PJ_ERR_MSG_SIZE]; 
     990 
     991                    pj_strerror(status, errmsg, sizeof(errmsg)); 
     992                    PJ_LOG(1,(ssock->pool->obj_name, "SSL_read() failed: %s", 
     993                              errmsg)); 
     994 
    836995                    /* Reset SSL socket state, then return PJ_FALSE */ 
    837                     ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, "SSL_read()"); 
     996                    reset_ssl_sock_state(ssock); 
     997                    goto on_error; 
     998                } 
     999 
     1000                status = do_handshake(ssock); 
     1001                if (status == PJ_SUCCESS) { 
     1002                    /* Renegotiation completed */ 
     1003 
     1004                    /* Update certificates */ 
     1005                    update_certs_info(ssock); 
     1006 
     1007                    pj_lock_acquire(ssock->write_mutex); 
     1008                    status = flush_delayed_send(ssock); 
    8381009                    pj_lock_release(ssock->write_mutex); 
    839                     reset_ssl_sock_state(ssock); 
    840                     return PJ_FALSE; 
    841                 } 
    842  
    843                 /* SSL may write something in case of re-negotiation */ 
    844                 status = flush_write_bio(ssock, &ssock->handshake_op_key, 0, 0); 
    845                 pj_lock_release(ssock->write_mutex); 
    846                 if (status != PJ_SUCCESS && status != PJ_EPENDING) 
     1010 
     1011                    if (status != PJ_SUCCESS && status != PJ_EPENDING) { 
     1012                        char errmsg[PJ_ERR_MSG_SIZE]; 
     1013 
     1014                        pj_strerror(status, errmsg, sizeof(errmsg)); 
     1015                        PJ_LOG(1,(ssock->pool->obj_name, "Failed to flush " 
     1016                                  "delayed send: %s", errmsg)); 
     1017                        goto on_error; 
     1018                    } 
     1019                } else if (status != PJ_EPENDING) { 
     1020                    char errmsg[PJ_ERR_MSG_SIZE]; 
     1021 
     1022                    pj_strerror(status, errmsg, sizeof(errmsg)); 
     1023                    PJ_LOG(1,(ssock->pool->obj_name, "Renegotiation failed: " 
     1024                              "%s", errmsg)); 
    8471025                    goto on_error; 
    848  
    849                 /* If re-negotiation has been completed, start flushing 
    850                  * delayed send. 
    851                  */ 
    852                 if (!SSL_renegotiate_pending(ssock->ossl_ssl)) { 
    853                     status = flush_delayed_send(ssock); 
    854                     if (status != PJ_SUCCESS && status != PJ_EPENDING) 
    855                         goto on_error; 
    8561026                } 
    8571027 
     
    9441114    unsigned i; 
    9451115    pj_status_t status; 
     1116    char buf[64]; 
    9461117 
    9471118    PJ_UNUSED_ARG(src_addr_len); 
     1119 
     1120    PJ_LOG(4,(ssock_parent->pool->obj_name, "Incoming connection from %s", 
     1121              pj_sockaddr_print(src_addr, buf, sizeof(buf), 3))); 
    9481122 
    9491123    /* Create new SSL socket instance */ 
     
    9821156    ssock->ossl_ssl = SSL_new(ssock->ossl_ctx); 
    9831157    if (ssock->ossl_ssl == NULL) { 
    984         ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    985                          "Error creating SSL connection object"); 
    986         status = PJ_EINVAL; 
     1158        PJ_LOG(1,(ssock->pool->obj_name, "Error creating SSL instance")); 
     1159        status = PJ_STATUS_FROM_OSSL(ERR_get_error()); 
    9871160        goto on_return; 
    9881161    } 
     
    10501223    ssock->write_state.len = 0; 
    10511224 
     1225    /* Start handshake timer */ 
     1226    if (ssock->param.timer_heap && (ssock->param.timeout.sec != 0 || 
     1227        ssock->param.timeout.msec != 0)) 
     1228    { 
     1229        pj_timer_entry_init(&ssock->handshake_timer, 0, ssock,  
     1230                            &handshake_timeout_cb); 
     1231        pj_timer_heap_schedule(ssock->param.timer_heap, &ssock->handshake_timer, 
     1232                               &ssock->param.timeout); 
     1233    } 
     1234 
    10521235    /* Start SSL handshake */ 
    10531236    ssock->ssl_state = SSL_STATE_HANDSHAKING; 
     
    10891272    ssock->ossl_ssl = SSL_new(ssock->ossl_ctx); 
    10901273    if (ssock->ossl_ssl == NULL) { 
    1091         ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, 
    1092                          "Error creating SSL connection object"); 
    1093         status = PJ_EINVAL; 
     1274        PJ_LOG(1,(ssock->pool->obj_name, "Error creating SSL instance")); 
     1275        status = PJ_STATUS_FROM_OSSL(ERR_get_error()); 
    10941276        goto on_return; 
    10951277    } 
     
    11351317    ssock->write_state.len = 0; 
    11361318 
     1319    /* Start handshake timer */ 
     1320    if (ssock->param.timer_heap && (ssock->param.timeout.sec != 0 || 
     1321        ssock->param.timeout.msec != 0)) 
     1322    { 
     1323        pj_timer_entry_init(&ssock->handshake_timer, 0, ssock,  
     1324                            &handshake_timeout_cb); 
     1325        pj_timer_heap_schedule(ssock->param.timer_heap, 
     1326                               &ssock->handshake_timer, 
     1327                               &ssock->param.timeout); 
     1328    } 
     1329 
     1330#ifdef SSL_set_tlsext_host_name 
     1331    /* Set server name to connect */ 
     1332    if (ssock->param.server_name.slen) { 
     1333        /* Server name is null terminated already */ 
     1334        if (!SSL_set_tlsext_host_name(ssock->ossl_ssl,  
     1335                                      ssock->param.server_name.ptr)) 
     1336        { 
     1337            char err_str[PJ_ERR_MSG_SIZE]; 
     1338 
     1339            ERR_error_string_n(ERR_get_error(), err_str, sizeof(err_str)); 
     1340            PJ_LOG(3,(ssock->pool->obj_name, "SSL_set_tlsext_host_name() " 
     1341                "failed: %s", err_str)); 
     1342        } 
     1343    } 
     1344#endif 
     1345 
    11371346    /* Start SSL handshake */ 
    11381347    ssock->ssl_state = SSL_STATE_HANDSHAKING; 
    11391348    SSL_set_connect_state(ssock->ossl_ssl); 
     1349 
    11401350    status = do_handshake(ssock); 
    11411351    if (status != PJ_EPENDING) 
     
    11861396                                            const pj_ssl_cert_t *cert) 
    11871397{ 
     1398    pj_ssl_cert_t *cert_; 
     1399 
    11881400    PJ_ASSERT_RETURN(ssock && pool && cert, PJ_EINVAL); 
    11891401 
    1190     ssock->cert = PJ_POOL_ZALLOC_T(pool, pj_ssl_cert_t); 
    1191     pj_strdup_with_null(pool, &ssock->cert->CA_file, &cert->CA_file); 
    1192     pj_strdup_with_null(pool, &ssock->cert->cert_file, &cert->cert_file); 
    1193     pj_strdup_with_null(pool, &ssock->cert->privkey_file, &cert->privkey_file); 
    1194     pj_strdup_with_null(pool, &ssock->cert->privkey_pass, &cert->privkey_pass); 
     1402    cert_ = PJ_POOL_ZALLOC_T(pool, pj_ssl_cert_t); 
     1403    pj_memcpy(cert_, cert, sizeof(cert)); 
     1404    pj_strdup_with_null(pool, &cert_->CA_file, &cert->CA_file); 
     1405    pj_strdup_with_null(pool, &cert_->cert_file, &cert->cert_file); 
     1406    pj_strdup_with_null(pool, &cert_->privkey_file, &cert->privkey_file); 
     1407    pj_strdup_with_null(pool, &cert_->privkey_pass, &cert->privkey_pass); 
     1408 
     1409    ssock->cert = cert_; 
    11951410 
    11961411    return PJ_SUCCESS; 
     
    12631478            ssock->param.ciphers[i] = param->ciphers[i]; 
    12641479    } 
    1265     pj_strdup_with_null(pool, &ssock->param.servername,  
    1266                         &param->servername); 
     1480 
     1481    /* Server name must be null-terminated */ 
     1482    pj_strdup_with_null(pool, &ssock->param.server_name,  
     1483                        &param->server_name); 
    12671484 
    12681485    /* Finally */ 
     
    13461563        /* Remote address */ 
    13471564        pj_sockaddr_cp(&info->remote_addr, &ssock->rem_addr); 
     1565 
     1566        /* Certificates info */ 
     1567        info->local_cert_info = ssock->local_cert_info; 
     1568        info->remote_cert_info = ssock->remote_cert_info; 
    13481569    } 
    13491570 
     
    14901711            status = flush_write_bio(ssock, &ssock->handshake_op_key, 0, 0); 
    14911712            if (status == PJ_SUCCESS || status == PJ_EPENDING) 
     1713                /* Just return PJ_EBUSY when re-negotiation is on progress */ 
    14921714                status = PJ_EBUSY; 
    14931715        } else { 
    14941716            /* Some problem occured */ 
    1495             ssl_report_error(THIS_FILE, 4, PJ_SUCCESS, "SSL_write()"); 
    1496             status = PJ_ECANCELLED; 
     1717            status = PJ_STATUS_FROM_OSSL(err); 
    14971718        } 
    14981719    } else { 
     
    17771998 
    17781999 
    1779 //#endif  /* PJ_HAS_SSL_SOCK */ 
    1780  
     2000PJ_DEF(pj_status_t) pj_ssl_sock_renegotiate(pj_ssl_sock_t *ssock) 
     2001{ 
     2002    int ret; 
     2003    pj_status_t status; 
     2004 
     2005    PJ_ASSERT_RETURN(ssock->ssl_state == SSL_STATE_ESTABLISHED, PJ_EINVALIDOP); 
     2006 
     2007    if (SSL_renegotiate_pending(ssock->ossl_ssl)) 
     2008        return PJ_EPENDING; 
     2009 
     2010    ret = SSL_renegotiate(ssock->ossl_ssl); 
     2011    if (ret <= 0) { 
     2012        status = PJ_STATUS_FROM_OSSL(SSL_get_error(ssock->ossl_ssl, ret)); 
     2013    } else { 
     2014        status = do_handshake(ssock); 
     2015    } 
     2016 
     2017    return status; 
     2018} 
     2019 
     2020#endif  /* PJ_HAS_SSL_SOCK */ 
     2021 
  • pjproject/trunk/pjlib/src/pj/ssl_sock_symbian.cpp

    r2950 r2970  
    500500            ssock->ciphers[i] = param->ciphers[i]; 
    501501    } 
    502     pj_strdup_with_null(pool, &ssock->servername, &param->servername); 
     502    pj_strdup_with_null(pool, &ssock->servername, &param->server_name); 
    503503 
    504504    /* Finally */ 
     
    10861086} 
    10871087 
     1088 
     1089PJ_DEF(pj_status_t) pj_ssl_sock_renegotiate(pj_ssl_sock_t *ssock) 
     1090{ 
     1091    PJ_UNUSED_ARG(ssock); 
     1092    return PJ_ENOTSUP; 
     1093} 
  • pjproject/trunk/pjlib/src/pjlib-test/test.c

    r2769 r2970  
    168168#endif 
    169169 
     170#if INCLUDE_SSLSOCK_TEST 
     171    DO_TEST( ssl_sock_test() ); 
     172#endif 
     173 
    170174#if INCLUDE_ECHO_SERVER 
    171175    //echo_server(); 
  • pjproject/trunk/pjlib/src/pjlib-test/test.h

    r2394 r2970  
    5555#define INCLUDE_TCP_IOQUEUE_TEST    GROUP_NETWORK 
    5656#define INCLUDE_ACTIVESOCK_TEST     GROUP_NETWORK 
     57#define INCLUDE_SSLSOCK_TEST        (PJ_HAS_SSL_SOCK && GROUP_NETWORK) 
    5758#define INCLUDE_IOQUEUE_PERF_TEST   (PJ_HAS_THREADS && GROUP_NETWORK) 
    5859#define INCLUDE_IOQUEUE_UNREG_TEST  (PJ_HAS_THREADS && GROUP_NETWORK) 
     
    9798extern int activesock_test(void); 
    9899extern int file_test(void); 
     100extern int ssl_sock_test(void); 
    99101 
    100102extern int echo_server(void); 
     
    104106extern int udp_echo_srv_ioqueue(void); 
    105107extern int echo_srv_common_loop(pj_atomic_t *bytes_counter); 
     108 
    106109 
    107110extern pj_pool_factory *mem; 
  • pjproject/trunk/pjsip/build/Makefile

    r2968 r2970  
    4242                sip_resolve.o sip_transport.o sip_transport_loop.o \ 
    4343                sip_transport_udp.o sip_transport_tcp.o \ 
    44                 sip_transport_tls_ossl.o sip_auth_aka.o sip_auth_client.o \ 
     44                sip_transport_tls.o sip_auth_aka.o sip_auth_client.o \ 
    4545                sip_auth_msg.o sip_auth_parser.o \ 
    4646                sip_auth_server.o \ 
  • pjproject/trunk/pjsip/build/pjsip_core.dsp

    r1818 r2970  
    157157# Begin Source File 
    158158 
     159SOURCE=..\src\pjsip\sip_transport_tls.c 
     160# End Source File 
     161# Begin Source File 
     162 
    159163SOURCE=..\src\pjsip\sip_transport_tls_ossl.c 
     164 
     165!IF  "$(CFG)" == "pjsip_core - Win32 Release" 
     166 
     167!ELSEIF  "$(CFG)" == "pjsip_core - Win32 Debug" 
     168 
     169# PROP Exclude_From_Build 1 
     170 
     171!ENDIF  
     172 
    160173# End Source File 
    161174# Begin Source File 
  • pjproject/trunk/pjsip/build/pjsip_core.vcproj

    r2664 r2970  
    3535                <Configuration 
    3636                        Name="Release|Win32" 
     37                        ConfigurationType="4" 
    3738                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
    38  
     39                        UseOfMFC="0" 
    3940                        ATLMinimizesCRunTimeLibraryUsage="false" 
    40  
    4141                        CharacterSet="2" 
    42  
    43                         ConfigurationType="4" 
    44                         UseOfMFC="0" 
    4542                        > 
    4643                        <Tool 
     
    6158                        <Tool 
    6259                                Name="VCCLCompilerTool" 
     60                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    6361                                PreprocessorDefinitions="_LIB;" 
    64  
    65                                 AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    6662                                PrecompiledHeaderFile="" 
    6763                        /> 
     
    7874                                Name="VCLibrarianTool" 
    7975                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
    80  
    8176                        /> 
    8277                        <Tool 
     
    9893                <Configuration 
    9994                        Name="Release|Windows Mobile 6 Standard SDK (ARMV4I)" 
     95                        ConfigurationType="4" 
    10096                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    101  
    10297                        ATLMinimizesCRunTimeLibraryUsage="false" 
    103  
    10498                        CharacterSet="1" 
    105  
    106                         ConfigurationType="4" 
    10799                        > 
    108100                        <Tool 
     
    123115                        <Tool 
    124116                                Name="VCCLCompilerTool" 
    125                                 PreprocessorDefinitions="_LIB;" 
    126  
    127117                                ExecutionBucket="7" 
    128118                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     119                                PreprocessorDefinitions="_LIB;" 
    129120                                PrecompiledHeaderFile="" 
    130121                        /> 
     
    141132                                Name="VCLibrarianTool" 
    142133                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    143  
    144134                        /> 
    145135                        <Tool 
     
    169159                <Configuration 
    170160                        Name="Release|Windows Mobile 6 Professional SDK (ARMV4I)" 
     161                        ConfigurationType="4" 
    171162                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    172  
    173163                        ATLMinimizesCRunTimeLibraryUsage="false" 
    174  
    175164                        CharacterSet="1" 
    176  
    177                         ConfigurationType="4" 
    178165                        > 
    179166                        <Tool 
     
    194181                        <Tool 
    195182                                Name="VCCLCompilerTool" 
    196                                 PreprocessorDefinitions="_LIB;" 
    197  
    198183                                ExecutionBucket="7" 
    199184                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     185                                PreprocessorDefinitions="_LIB;" 
    200186                                PrecompiledHeaderFile="" 
    201187                        /> 
     
    212198                                Name="VCLibrarianTool" 
    213199                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    214  
    215200                        /> 
    216201                        <Tool 
     
    239224                </Configuration> 
    240225                <Configuration 
    241                         Name="Debug|Win32" 
    242                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
    243  
     226                        Name="Release|Pocket PC 2003 (ARMV4)" 
     227                        ConfigurationType="4" 
     228                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    244229                        ATLMinimizesCRunTimeLibraryUsage="false" 
    245  
    246                         CharacterSet="2" 
    247  
    248                         ConfigurationType="4" 
    249                         UseOfMFC="0" 
     230                        CharacterSet="1" 
    250231                        > 
    251232                        <Tool 
     
    266247                        <Tool 
    267248                                Name="VCCLCompilerTool" 
    268                                 PreprocessorDefinitions="_LIB;" 
    269  
    270                                 AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    271                                 PrecompiledHeaderFile="" 
    272                         /> 
    273                         <Tool 
    274                                 Name="VCManagedResourceCompilerTool" 
    275                         /> 
    276                         <Tool 
    277                                 Name="VCResourceCompilerTool" 
    278                         /> 
    279                         <Tool 
    280                                 Name="VCPreLinkEventTool" 
    281                         /> 
    282                         <Tool 
    283                                 Name="VCLibrarianTool" 
    284                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
    285  
    286                         /> 
    287                         <Tool 
    288                                 Name="VCALinkTool" 
    289                         /> 
    290                         <Tool 
    291                                 Name="VCXDCMakeTool" 
    292                         /> 
    293                         <Tool 
    294                                 Name="VCBscMakeTool" 
    295                         /> 
    296                         <Tool 
    297                                 Name="VCFxCopTool" 
    298                         /> 
    299                         <Tool 
    300                                 Name="VCPostBuildEventTool" 
    301                         /> 
    302                 </Configuration> 
    303                 <Configuration 
    304                         Name="Debug|Windows Mobile 6 Standard SDK (ARMV4I)" 
    305                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    306  
    307                         ATLMinimizesCRunTimeLibraryUsage="false" 
    308  
    309                         CharacterSet="1" 
    310  
    311                         ConfigurationType="4" 
    312                         > 
    313                         <Tool 
    314                                 Name="VCPreBuildEventTool" 
    315                         /> 
    316                         <Tool 
    317                                 Name="VCCustomBuildTool" 
    318                         /> 
    319                         <Tool 
    320                                 Name="VCXMLDataGeneratorTool" 
    321                         /> 
    322                         <Tool 
    323                                 Name="VCWebServiceProxyGeneratorTool" 
    324                         /> 
    325                         <Tool 
    326                                 Name="VCMIDLTool" 
    327                         /> 
    328                         <Tool 
    329                                 Name="VCCLCompilerTool" 
    330                                 PreprocessorDefinitions="_LIB;" 
    331  
    332249                                ExecutionBucket="7" 
    333250                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     251                                PreprocessorDefinitions="_LIB;" 
    334252                                PrecompiledHeaderFile="" 
    335253                        /> 
     
    345263                        <Tool 
    346264                                Name="VCLibrarianTool" 
    347                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    348  
     265                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    349266                        /> 
    350267                        <Tool 
     
    373290                </Configuration> 
    374291                <Configuration 
    375                         Name="Debug|Windows Mobile 6 Professional SDK (ARMV4I)" 
    376                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    377  
     292                        Name="Release|Smartphone 2003 (ARMV4)" 
     293                        ConfigurationType="4" 
     294                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    378295                        ATLMinimizesCRunTimeLibraryUsage="false" 
    379  
    380296                        CharacterSet="1" 
    381  
    382                         ConfigurationType="4" 
    383297                        > 
    384298                        <Tool 
     
    399313                        <Tool 
    400314                                Name="VCCLCompilerTool" 
    401                                 PreprocessorDefinitions="_LIB;" 
    402  
    403315                                ExecutionBucket="7" 
    404316                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     317                                PreprocessorDefinitions="_LIB;" 
    405318                                PrecompiledHeaderFile="" 
    406319                        /> 
     
    416329                        <Tool 
    417330                                Name="VCLibrarianTool" 
    418                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    419  
     331                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).lib" 
    420332                        /> 
    421333                        <Tool 
     
    444356                </Configuration> 
    445357                <Configuration 
    446                         Name="Debug-Static|Win32" 
    447                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
    448  
     358                        Name="Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     359                        ConfigurationType="4" 
     360                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    449361                        ATLMinimizesCRunTimeLibraryUsage="false" 
    450  
    451                         CharacterSet="2" 
    452  
    453                         ConfigurationType="4" 
    454                         UseOfMFC="0" 
     362                        CharacterSet="1" 
    455363                        > 
    456364                        <Tool 
     
    471379                        <Tool 
    472380                                Name="VCCLCompilerTool" 
    473                                 PreprocessorDefinitions="_LIB;" 
    474  
    475                                 AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    476                                 PrecompiledHeaderFile="" 
    477                         /> 
    478                         <Tool 
    479                                 Name="VCManagedResourceCompilerTool" 
    480                         /> 
    481                         <Tool 
    482                                 Name="VCResourceCompilerTool" 
    483                         /> 
    484                         <Tool 
    485                                 Name="VCPreLinkEventTool" 
    486                         /> 
    487                         <Tool 
    488                                 Name="VCLibrarianTool" 
    489                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
    490  
    491                         /> 
    492                         <Tool 
    493                                 Name="VCALinkTool" 
    494                         /> 
    495                         <Tool 
    496                                 Name="VCXDCMakeTool" 
    497                         /> 
    498                         <Tool 
    499                                 Name="VCBscMakeTool" 
    500                         /> 
    501                         <Tool 
    502                                 Name="VCFxCopTool" 
    503                         /> 
    504                         <Tool 
    505                                 Name="VCPostBuildEventTool" 
    506                         /> 
    507                 </Configuration> 
    508                 <Configuration 
    509                         Name="Debug-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
    510                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    511  
    512                         ATLMinimizesCRunTimeLibraryUsage="false" 
    513  
    514                         CharacterSet="1" 
    515  
    516                         ConfigurationType="4" 
    517                         > 
    518                         <Tool 
    519                                 Name="VCPreBuildEventTool" 
    520                         /> 
    521                         <Tool 
    522                                 Name="VCCustomBuildTool" 
    523                         /> 
    524                         <Tool 
    525                                 Name="VCXMLDataGeneratorTool" 
    526                         /> 
    527                         <Tool 
    528                                 Name="VCWebServiceProxyGeneratorTool" 
    529                         /> 
    530                         <Tool 
    531                                 Name="VCMIDLTool" 
    532                         /> 
    533                         <Tool 
    534                                 Name="VCCLCompilerTool" 
    535                                 PreprocessorDefinitions="_LIB;" 
    536  
    537381                                ExecutionBucket="7" 
    538382                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     383                                PreprocessorDefinitions="_LIB;" 
    539384                                PrecompiledHeaderFile="" 
    540385                        /> 
     
    550395                        <Tool 
    551396                                Name="VCLibrarianTool" 
    552                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    553  
     397                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    554398                        /> 
    555399                        <Tool 
     
    578422                </Configuration> 
    579423                <Configuration 
    580                         Name="Debug-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
    581                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    582  
     424                        Name="Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     425                        ConfigurationType="4" 
     426                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-release-defaults.vsprops" 
    583427                        ATLMinimizesCRunTimeLibraryUsage="false" 
    584  
    585428                        CharacterSet="1" 
    586  
    587                         ConfigurationType="4" 
    588429                        > 
    589430                        <Tool 
     
    604445                        <Tool 
    605446                                Name="VCCLCompilerTool" 
    606                                 PreprocessorDefinitions="_LIB;" 
    607  
    608447                                ExecutionBucket="7" 
    609448                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     449                                PreprocessorDefinitions="_LIB;" 
    610450                                PrecompiledHeaderFile="" 
    611451                        /> 
     
    621461                        <Tool 
    622462                                Name="VCLibrarianTool" 
    623                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    624  
     463                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).lib" 
    625464                        /> 
    626465                        <Tool 
     
    649488                </Configuration> 
    650489                <Configuration 
    651                         Name="Release-Dynamic|Win32" 
    652                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
    653  
     490                        Name="Debug|Win32" 
     491                        ConfigurationType="4" 
     492                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
     493                        UseOfMFC="0" 
    654494                        ATLMinimizesCRunTimeLibraryUsage="false" 
    655  
    656495                        CharacterSet="2" 
    657  
    658                         ConfigurationType="4" 
    659                         UseOfMFC="0" 
    660496                        > 
    661497                        <Tool 
     
    676512                        <Tool 
    677513                                Name="VCCLCompilerTool" 
     514                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    678515                                PreprocessorDefinitions="_LIB;" 
    679  
    680                                 AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    681516                                PrecompiledHeaderFile="" 
    682517                        /> 
     
    693528                                Name="VCLibrarianTool" 
    694529                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
    695  
    696530                        /> 
    697531                        <Tool 
     
    712546                </Configuration> 
    713547                <Configuration 
    714                         Name="Release-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)" 
    715                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    716  
     548                        Name="Debug|Windows Mobile 6 Standard SDK (ARMV4I)" 
     549                        ConfigurationType="4" 
     550                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    717551                        ATLMinimizesCRunTimeLibraryUsage="false" 
    718  
    719552                        CharacterSet="1" 
    720  
    721                         ConfigurationType="4" 
    722553                        > 
    723554                        <Tool 
     
    738569                        <Tool 
    739570                                Name="VCCLCompilerTool" 
    740                                 PreprocessorDefinitions="_LIB;" 
    741  
    742571                                ExecutionBucket="7" 
    743572                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     573                                PreprocessorDefinitions="_LIB;" 
    744574                                PrecompiledHeaderFile="" 
    745575                        /> 
     
    756586                                Name="VCLibrarianTool" 
    757587                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    758  
    759588                        /> 
    760589                        <Tool 
     
    783612                </Configuration> 
    784613                <Configuration 
    785                         Name="Release-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)" 
    786                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    787  
     614                        Name="Debug|Windows Mobile 6 Professional SDK (ARMV4I)" 
     615                        ConfigurationType="4" 
     616                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    788617                        ATLMinimizesCRunTimeLibraryUsage="false" 
    789  
    790618                        CharacterSet="1" 
    791  
    792                         ConfigurationType="4" 
    793619                        > 
    794620                        <Tool 
     
    809635                        <Tool 
    810636                                Name="VCCLCompilerTool" 
    811                                 PreprocessorDefinitions="_LIB;" 
    812  
    813637                                ExecutionBucket="7" 
    814638                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     639                                PreprocessorDefinitions="_LIB;" 
    815640                                PrecompiledHeaderFile="" 
    816641                        /> 
     
    827652                                Name="VCLibrarianTool" 
    828653                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    829  
    830654                        /> 
    831655                        <Tool 
     
    854678                </Configuration> 
    855679                <Configuration 
    856                         Name="Debug-Dynamic|Win32" 
    857                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
    858  
     680                        Name="Debug|Pocket PC 2003 (ARMV4)" 
     681                        ConfigurationType="4" 
     682                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    859683                        ATLMinimizesCRunTimeLibraryUsage="false" 
    860  
    861                         CharacterSet="2" 
    862  
    863                         ConfigurationType="4" 
    864                         UseOfMFC="0" 
     684                        CharacterSet="1" 
    865685                        > 
    866686                        <Tool 
     
    881701                        <Tool 
    882702                                Name="VCCLCompilerTool" 
    883                                 PreprocessorDefinitions="_LIB;" 
    884  
    885                                 AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    886                                 PrecompiledHeaderFile="" 
    887                         /> 
    888                         <Tool 
    889                                 Name="VCManagedResourceCompilerTool" 
    890                         /> 
    891                         <Tool 
    892                                 Name="VCResourceCompilerTool" 
    893                         /> 
    894                         <Tool 
    895                                 Name="VCPreLinkEventTool" 
    896                         /> 
    897                         <Tool 
    898                                 Name="VCLibrarianTool" 
    899                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
    900  
    901                         /> 
    902                         <Tool 
    903                                 Name="VCALinkTool" 
    904                         /> 
    905                         <Tool 
    906                                 Name="VCXDCMakeTool" 
    907                         /> 
    908                         <Tool 
    909                                 Name="VCBscMakeTool" 
    910                         /> 
    911                         <Tool 
    912                                 Name="VCFxCopTool" 
    913                         /> 
    914                         <Tool 
    915                                 Name="VCPostBuildEventTool" 
    916                         /> 
    917                 </Configuration> 
    918                 <Configuration 
    919                         Name="Debug-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)" 
    920                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    921  
    922                         ATLMinimizesCRunTimeLibraryUsage="false" 
    923  
    924                         CharacterSet="1" 
    925  
    926                         ConfigurationType="4" 
    927                         > 
    928                         <Tool 
    929                                 Name="VCPreBuildEventTool" 
    930                         /> 
    931                         <Tool 
    932                                 Name="VCCustomBuildTool" 
    933                         /> 
    934                         <Tool 
    935                                 Name="VCXMLDataGeneratorTool" 
    936                         /> 
    937                         <Tool 
    938                                 Name="VCWebServiceProxyGeneratorTool" 
    939                         /> 
    940                         <Tool 
    941                                 Name="VCMIDLTool" 
    942                         /> 
    943                         <Tool 
    944                                 Name="VCCLCompilerTool" 
    945                                 PreprocessorDefinitions="_LIB;" 
    946  
    947703                                ExecutionBucket="7" 
    948704                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     705                                PreprocessorDefinitions="_LIB;" 
    949706                                PrecompiledHeaderFile="" 
    950707                        /> 
     
    960717                        <Tool 
    961718                                Name="VCLibrarianTool" 
    962                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    963  
     719                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    964720                        /> 
    965721                        <Tool 
     
    988744                </Configuration> 
    989745                <Configuration 
    990                         Name="Debug-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)" 
    991                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    992  
     746                        Name="Debug|Smartphone 2003 (ARMV4)" 
     747                        ConfigurationType="4" 
     748                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    993749                        ATLMinimizesCRunTimeLibraryUsage="false" 
    994  
    995750                        CharacterSet="1" 
    996  
    997                         ConfigurationType="4" 
    998751                        > 
    999752                        <Tool 
     
    1014767                        <Tool 
    1015768                                Name="VCCLCompilerTool" 
    1016                                 PreprocessorDefinitions="_LIB;" 
    1017  
    1018769                                ExecutionBucket="7" 
    1019770                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     771                                PreprocessorDefinitions="_LIB;" 
    1020772                                PrecompiledHeaderFile="" 
    1021773                        /> 
     
    1031783                        <Tool 
    1032784                                Name="VCLibrarianTool" 
    1033                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    1034  
     785                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).lib" 
    1035786                        /> 
    1036787                        <Tool 
     
    1059810                </Configuration> 
    1060811                <Configuration 
    1061                         Name="Release-Static|Win32" 
    1062                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
    1063  
     812                        Name="Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     813                        ConfigurationType="4" 
     814                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    1064815                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1065  
    1066                         CharacterSet="2" 
    1067  
    1068                         ConfigurationType="4" 
    1069                         UseOfMFC="0" 
     816                        CharacterSet="1" 
    1070817                        > 
    1071818                        <Tool 
     
    1086833                        <Tool 
    1087834                                Name="VCCLCompilerTool" 
    1088                                 PreprocessorDefinitions="_LIB;" 
    1089  
    1090                                 AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
    1091                                 PrecompiledHeaderFile="" 
    1092                         /> 
    1093                         <Tool 
    1094                                 Name="VCManagedResourceCompilerTool" 
    1095                         /> 
    1096                         <Tool 
    1097                                 Name="VCResourceCompilerTool" 
    1098                         /> 
    1099                         <Tool 
    1100                                 Name="VCPreLinkEventTool" 
    1101                         /> 
    1102                         <Tool 
    1103                                 Name="VCLibrarianTool" 
    1104                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
    1105  
    1106                         /> 
    1107                         <Tool 
    1108                                 Name="VCALinkTool" 
    1109                         /> 
    1110                         <Tool 
    1111                                 Name="VCXDCMakeTool" 
    1112                         /> 
    1113                         <Tool 
    1114                                 Name="VCBscMakeTool" 
    1115                         /> 
    1116                         <Tool 
    1117                                 Name="VCFxCopTool" 
    1118                         /> 
    1119                         <Tool 
    1120                                 Name="VCPostBuildEventTool" 
    1121                         /> 
    1122                 </Configuration> 
    1123                 <Configuration 
    1124                         Name="Release-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
    1125                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    1126  
    1127                         ATLMinimizesCRunTimeLibraryUsage="false" 
    1128  
    1129                         CharacterSet="1" 
    1130  
    1131                         ConfigurationType="4" 
    1132                         > 
    1133                         <Tool 
    1134                                 Name="VCPreBuildEventTool" 
    1135                         /> 
    1136                         <Tool 
    1137                                 Name="VCCustomBuildTool" 
    1138                         /> 
    1139                         <Tool 
    1140                                 Name="VCXMLDataGeneratorTool" 
    1141                         /> 
    1142                         <Tool 
    1143                                 Name="VCWebServiceProxyGeneratorTool" 
    1144                         /> 
    1145                         <Tool 
    1146                                 Name="VCMIDLTool" 
    1147                         /> 
    1148                         <Tool 
    1149                                 Name="VCCLCompilerTool" 
    1150                                 PreprocessorDefinitions="_LIB;" 
    1151  
    1152835                                ExecutionBucket="7" 
    1153836                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     837                                PreprocessorDefinitions="_LIB;" 
    1154838                                PrecompiledHeaderFile="" 
    1155839                        /> 
     
    1165849                        <Tool 
    1166850                                Name="VCLibrarianTool" 
    1167                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    1168  
     851                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1169852                        /> 
    1170853                        <Tool 
     
    1193876                </Configuration> 
    1194877                <Configuration 
    1195                         Name="Release-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
    1196                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-release-defaults.vsprops" 
    1197  
     878                        Name="Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     879                        ConfigurationType="4" 
     880                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    1198881                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1199  
    1200882                        CharacterSet="1" 
    1201  
    1202                         ConfigurationType="4" 
    1203883                        > 
    1204884                        <Tool 
     
    1219899                        <Tool 
    1220900                                Name="VCCLCompilerTool" 
    1221                                 PreprocessorDefinitions="_LIB;" 
    1222  
    1223901                                ExecutionBucket="7" 
    1224902                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     903                                PreprocessorDefinitions="_LIB;" 
    1225904                                PrecompiledHeaderFile="" 
    1226905                        /> 
     
    1236915                        <Tool 
    1237916                                Name="VCLibrarianTool" 
    1238                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    1239  
     917                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).lib" 
    1240918                        /> 
    1241919                        <Tool 
     
    1264942                </Configuration> 
    1265943                <Configuration 
    1266                         Name="Release|Pocket PC 2003 (ARMV4)" 
    1267                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1268  
     944                        Name="Debug-Static|Win32" 
     945                        ConfigurationType="4" 
     946                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-common-defaults.vsprops" 
     947                        UseOfMFC="0" 
    1269948                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1270  
     949                        CharacterSet="2" 
     950                        > 
     951                        <Tool 
     952                                Name="VCPreBuildEventTool" 
     953                        /> 
     954                        <Tool 
     955                                Name="VCCustomBuildTool" 
     956                        /> 
     957                        <Tool 
     958                                Name="VCXMLDataGeneratorTool" 
     959                        /> 
     960                        <Tool 
     961                                Name="VCWebServiceProxyGeneratorTool" 
     962                        /> 
     963                        <Tool 
     964                                Name="VCMIDLTool" 
     965                        /> 
     966                        <Tool 
     967                                Name="VCCLCompilerTool" 
     968                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     969                                PreprocessorDefinitions="_LIB;" 
     970                                PrecompiledHeaderFile="" 
     971                        /> 
     972                        <Tool 
     973                                Name="VCManagedResourceCompilerTool" 
     974                        /> 
     975                        <Tool 
     976                                Name="VCResourceCompilerTool" 
     977                        /> 
     978                        <Tool 
     979                                Name="VCPreLinkEventTool" 
     980                        /> 
     981                        <Tool 
     982                                Name="VCLibrarianTool" 
     983                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
     984                        /> 
     985                        <Tool 
     986                                Name="VCALinkTool" 
     987                        /> 
     988                        <Tool 
     989                                Name="VCXDCMakeTool" 
     990                        /> 
     991                        <Tool 
     992                                Name="VCBscMakeTool" 
     993                        /> 
     994                        <Tool 
     995                                Name="VCFxCopTool" 
     996                        /> 
     997                        <Tool 
     998                                Name="VCPostBuildEventTool" 
     999                        /> 
     1000                </Configuration> 
     1001                <Configuration 
     1002                        Name="Debug-Static|Windows Mobile 6 Standard SDK (ARMV4I)" 
     1003                        ConfigurationType="4" 
     1004                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
     1005                        ATLMinimizesCRunTimeLibraryUsage="false" 
    12711006                        CharacterSet="1" 
    1272  
    1273                         ConfigurationType="4" 
    12741007                        > 
    12751008                        <Tool 
     
    12901023                        <Tool 
    12911024                                Name="VCCLCompilerTool" 
    1292                                 PreprocessorDefinitions="_LIB;" 
    1293  
    12941025                                ExecutionBucket="7" 
    12951026                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1027                                PreprocessorDefinitions="_LIB;" 
    12961028                                PrecompiledHeaderFile="" 
    12971029                        /> 
     
    13071039                        <Tool 
    13081040                                Name="VCLibrarianTool" 
    1309                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1310  
     1041                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6std-vc$(VSVer)-$(ConfigurationName).lib" 
    13111042                        /> 
    13121043                        <Tool 
     
    13351066                </Configuration> 
    13361067                <Configuration 
    1337                         Name="Debug|Pocket PC 2003 (ARMV4)" 
    1338                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1339  
     1068                        Name="Debug-Static|Windows Mobile 6 Professional SDK (ARMV4I)" 
     1069                        ConfigurationType="4" 
     1070                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm6-common-defaults.vsprops" 
    13401071                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1341  
    13421072                        CharacterSet="1" 
    1343  
    1344                         ConfigurationType="4" 
    13451073                        > 
    13461074                        <Tool 
     
    13611089                        <Tool 
    13621090                                Name="VCCLCompilerTool" 
    1363                                 PreprocessorDefinitions="_LIB;" 
    1364  
    13651091                                ExecutionBucket="7" 
    13661092                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1093                                PreprocessorDefinitions="_LIB;" 
    13671094                                PrecompiledHeaderFile="" 
    13681095                        /> 
     
    13781105                        <Tool 
    13791106                                Name="VCLibrarianTool" 
    1380                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1381  
     1107                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm6pro-vc$(VSVer)-$(ConfigurationName).lib" 
    13821108                        /> 
    13831109                        <Tool 
     
    14071133                <Configuration 
    14081134                        Name="Debug-Static|Pocket PC 2003 (ARMV4)" 
     1135                        ConfigurationType="4" 
    14091136                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1410  
    14111137                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1412  
    14131138                        CharacterSet="1" 
    1414  
    1415                         ConfigurationType="4" 
    14161139                        > 
    14171140                        <Tool 
     
    14321155                        <Tool 
    14331156                                Name="VCCLCompilerTool" 
    1434                                 PreprocessorDefinitions="_LIB;" 
    1435  
    14361157                                ExecutionBucket="7" 
    14371158                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1159                                PreprocessorDefinitions="_LIB;" 
    14381160                                PrecompiledHeaderFile="" 
    14391161                        /> 
     
    14501172                                Name="VCLibrarianTool" 
    14511173                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1452  
    14531174                        /> 
    14541175                        <Tool 
     
    14771198                </Configuration> 
    14781199                <Configuration 
    1479                         Name="Release-Dynamic|Pocket PC 2003 (ARMV4)" 
    1480                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1481  
     1200                        Name="Debug-Static|Smartphone 2003 (ARMV4)" 
     1201                        ConfigurationType="4" 
     1202                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    14821203                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1483  
    14841204                        CharacterSet="1" 
    1485  
    1486                         ConfigurationType="4" 
    14871205                        > 
    14881206                        <Tool 
     
    15031221                        <Tool 
    15041222                                Name="VCCLCompilerTool" 
    1505                                 PreprocessorDefinitions="_LIB;" 
    1506  
    15071223                                ExecutionBucket="7" 
    15081224                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1225                                PreprocessorDefinitions="_LIB;" 
    15091226                                PrecompiledHeaderFile="" 
    15101227                        /> 
     
    15201237                        <Tool 
    15211238                                Name="VCLibrarianTool" 
    1522                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1523  
     1239                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003sp-vc$(VSVer)-$(ConfigurationName).lib" 
    15241240                        /> 
    15251241                        <Tool 
     
    15481264                </Configuration> 
    15491265                <Configuration 
    1550                         Name="Debug-Dynamic|Pocket PC 2003 (ARMV4)" 
    1551                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-common-defaults.vsprops" 
    1552  
     1266                        Name="Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)" 
     1267                        ConfigurationType="4" 
     1268                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    15531269                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1554  
    15551270                        CharacterSet="1" 
    1556  
    1557                         ConfigurationType="4" 
    15581271                        > 
    15591272                        <Tool 
     
    15741287                        <Tool 
    15751288                                Name="VCCLCompilerTool" 
    1576                                 PreprocessorDefinitions="_LIB;" 
    1577  
    15781289                                ExecutionBucket="7" 
    15791290                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1291                                PreprocessorDefinitions="_LIB;" 
    15801292                                PrecompiledHeaderFile="" 
    15811293                        /> 
     
    15911303                        <Tool 
    15921304                                Name="VCLibrarianTool" 
    1593                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1594  
     1305                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm5ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    15951306                        /> 
    15961307                        <Tool 
     
    16191330                </Configuration> 
    16201331                <Configuration 
    1621                         Name="Release-Static|Pocket PC 2003 (ARMV4)" 
    1622                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1623  
     1332                        Name="Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)" 
     1333                        ConfigurationType="4" 
     1334                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-debug-static-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm5-common-defaults.vsprops" 
    16241335                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1625  
    16261336                        CharacterSet="1" 
    1627  
    1628                         ConfigurationType="4" 
    16291337                        > 
    16301338                        <Tool 
     
    16451353                        <Tool 
    16461354                                Name="VCCLCompilerTool" 
    1647                                 PreprocessorDefinitions="_LIB;" 
    1648  
    16491355                                ExecutionBucket="7" 
    16501356                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1357                                PreprocessorDefinitions="_LIB;" 
    16511358                                PrecompiledHeaderFile="" 
    16521359                        /> 
     
    16621369                        <Tool 
    16631370                                Name="VCLibrarianTool" 
    1664                                 OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm2003ppc-vc$(VSVer)-$(ConfigurationName).lib" 
    1665  
     1371                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-wm5sp-vc$(VSVer)-$(ConfigurationName).lib" 
    16661372                        /> 
    16671373                        <Tool 
     
    16901396                </Configuration> 
    16911397                <Configuration 
    1692                         Name="Release|Smartphone 2003 (ARMV4)" 
    1693                         InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-wm2003-release-defaults.vsprops" 
    1694  
     1398                        Name="Release-Dynamic|Win32" 
     1399                        ConfigurationType="4" 
     1400                        InheritedPropertySheets="..\..\build\vs\pjproject-vs8-release-dynamic-defaults.vsprops;..\..\build\vs\pjproject-vs8-win32-release-defaults.vsprops" 
     1401                        UseOfMFC="0" 
    16951402                        ATLMinimizesCRunTimeLibraryUsage="false" 
    1696  
     1403                        CharacterSet="2" 
     1404                        > 
     1405                        <Tool 
     1406                                Name="VCPreBuildEventTool" 
     1407                        /> 
     1408                        <Tool 
     1409                                Name="VCCustomBuildTool" 
     1410                        /> 
     1411                        <Tool 
     1412                                Name="VCXMLDataGeneratorTool" 
     1413                        /> 
     1414                        <Tool 
     1415                                Name="VCWebServiceProxyGeneratorTool" 
     1416                        /> 
     1417                        <Tool 
     1418                                Name="VCMIDLTool" 
     1419                        /> 
     1420                        <Tool 
     1421                                Name="VCCLCompilerTool" 
     1422                                AdditionalIncludeDirectories="../include,../../pjlib/include,../../pjlib-util/include" 
     1423                                PreprocessorDefinitions="_LIB;" 
     1424                                PrecompiledHeaderFile="" 
     1425                        /> 
     1426                        <Tool 
     1427                                Name="VCManagedResourceCompilerTool" 
     1428                        /> 
     1429                        <Tool 
     1430                                Name="VCResourceCompilerTool" 
     1431                        /> 
     1432                        <Tool 
     1433                                Name="VCPreLinkEventTool" 
     1434                        /> 
     1435                        <Tool 
     1436                                Name="VCLibrarianTool" 
     1437                                OutputFile="..\lib\pjsip-core-$(TargetCPU)-$(PlatformName)-vc$(VSVer)-$(ConfigurationName).lib" 
     1438                        /> 
     1439                        <Tool 
     1440                                Name="VCALinkTool" 
     1441                        /> 
     1442                        <Tool 
     1443                                Name="VCXDCMakeTool" 
     1444                        /> 
     1445                        <Tool 
     1446                                Name="VCBscMakeTool" 
     1447