Changeset 380


Ignore:
Timestamp:
02/03/08 17:36:23 (12 years ago)
Author:
Eoin
Message:

Added singaling, fixed UPnP bug.

Location:
trunk
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • trunk/7z Halite Source.bat

    r363 r380  
    1 "C:\Program Files\7-Zip\7zG.exe" a -r -t7z Halite.src.7z -mx=7 ../trunk/* -x!test -x!bin -x!.svn -x!tools -x!*.7z -x!*.suo -x!*.ncb -x!*x64 -x!debug -x!Debug -x!release -x!Release 
     1"D:\Program Files\7-Zip\7zG.exe" a -r -t7z Halite.src.7z -mx=7 ../trunk/* -x!test -x!bin -x!.svn -x!tools -x!*.7z -x!*.suo -x!*.ncb -x!*x64 -x!debug -x!Debug -x!release -x!Release 
  • trunk/Halite.sln

    r370 r380  
    2121                Debug|Win32 = Debug|Win32 
    2222                Debug|x64 = Debug|x64 
     23                Release Logging|Win32 = Release Logging|Win32 
     24                Release Logging|x64 = Release Logging|x64 
    2325                Release|Win32 = Release|Win32 
    2426                Release|x64 = Release|x64 
     
    2931                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Debug|x64.ActiveCfg = Debug|x64 
    3032                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Debug|x64.Build.0 = Debug|x64 
     33                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Release Logging|Win32.ActiveCfg = Release Logging|Win32 
     34                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Release Logging|Win32.Build.0 = Release Logging|Win32 
     35                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Release Logging|x64.ActiveCfg = Release Logging|x64 
     36                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Release Logging|x64.Build.0 = Release Logging|x64 
    3137                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Release|Win32.ActiveCfg = Release|Win32 
    3238                {ED987C84-FFF9-4656-8F27-2A65FC0847FD}.Release|Win32.Build.0 = Release|Win32 
     
    3743                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Debug|x64.ActiveCfg = Debug|x64 
    3844                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Debug|x64.Build.0 = Debug|x64 
     45                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Release Logging|Win32.ActiveCfg = Release Logging|Win32 
     46                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Release Logging|Win32.Build.0 = Release Logging|Win32 
     47                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Release Logging|x64.ActiveCfg = Release Logging|x64 
     48                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Release Logging|x64.Build.0 = Release Logging|x64 
    3949                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Release|Win32.ActiveCfg = Release|Win32 
    4050                {333ECB6F-575B-4B11-BDDA-3E7F7555BAD8}.Release|Win32.Build.0 = Release|Win32 
     
    4555                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Debug|x64.ActiveCfg = Debug|x64 
    4656                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Debug|x64.Build.0 = Debug|x64 
     57                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Release Logging|Win32.ActiveCfg = Release Logging|Win32 
     58                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Release Logging|Win32.Build.0 = Release Logging|Win32 
     59                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Release Logging|x64.ActiveCfg = Release Logging|x64 
     60                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Release Logging|x64.Build.0 = Release Logging|x64 
    4761                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Release|Win32.ActiveCfg = Release|Win32 
    4862                {85145293-5491-4BA8-892C-F5A0C4AC9208}.Release|Win32.Build.0 = Release|Win32 
     
    5266                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Debug|Win32.Build.0 = Debug|Win32 
    5367                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Debug|x64.ActiveCfg = Debug|Win32 
     68                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Release Logging|Win32.ActiveCfg = Release Logging|Win32 
     69                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Release Logging|Win32.Build.0 = Release Logging|Win32 
     70                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Release Logging|x64.ActiveCfg = Release Logging|Win32 
    5471                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Release|Win32.ActiveCfg = Release|Win32 
    5572                {00A33D18-879A-4143-BCAD-45993CCB5A8C}.Release|Win32.Build.0 = Release|Win32 
  • trunk/res/Halite.rc

    r379 r380  
    9090    CONTROL         "Limit the no. of half-open connections",IDC_BC_HALFCONN_CHECK, 
    9191                    "Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,45,190,12 
     92    GROUPBOX        "Port Forwarding",IDC_BITT_GPORTFORWARDING,5,6,315,54 
     93    CONTROL         "None (Managed Externally)",IDC_BITT_GPORTFORWARD_NONE,"Button",BS_AUTORADIOBUTTON|WS_GROUP,284,73,16,10 
     94    CONTROL         "UnPlug and Play",IDC_BITT_GPORTFORWARD_UPNG,"Button",BS_AUTORADIOBUTTON,284,83,16,10 
     95    CONTROL         "NAT-PMG",IDC_BIT_GPORTFORWARD_NATPMP,"Button",BS_AUTORADIOBUTTON,284,93,16,10 
     96    PUSHBUTTON      "Test",IDC_BITT_GPORTFORWARD_TEST,207,46,51,12 
     97         
     98    LISTBOX         IDC_BITT_GPORTFORWARD_LIST,165,24,149,7,LBS_SORT | LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP 
    9299//    RTEXT           "Need Help?",IDC_BC_HELP_LINK,229,139,51,8 
    93100//    RTEXT           "Why?",IDC_BC_CON_WHY,239,47,31,8 
  • trunk/sln/Halite/Halite.vcproj

    r379 r380  
    338338                        /> 
    339339                </Configuration> 
     340                <Configuration 
     341                        Name="Release Logging|Win32" 
     342                        OutputDirectory="$(SolutionDir)$(ConfigurationName)" 
     343                        IntermediateDirectory="$(ConfigurationName)" 
     344                        ConfigurationType="1" 
     345                        CharacterSet="1" 
     346                        WholeProgramOptimization="1" 
     347                        > 
     348                        <Tool 
     349                                Name="VCPreBuildEventTool" 
     350                        /> 
     351                        <Tool 
     352                                Name="VCCustomBuildTool" 
     353                        /> 
     354                        <Tool 
     355                                Name="VCXMLDataGeneratorTool" 
     356                        /> 
     357                        <Tool 
     358                                Name="VCWebServiceProxyGeneratorTool" 
     359                        /> 
     360                        <Tool 
     361                                Name="VCMIDLTool" 
     362                        /> 
     363                        <Tool 
     364                                Name="VCCLCompilerTool" 
     365                                FavorSizeOrSpeed="2" 
     366                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     367                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;TORRENT_LOGGING;TORRENT_VERBOSE_LOGGING;TORRENT_UPNP_LOGGING;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
     368                                MinimalRebuild="true" 
     369                                ExceptionHandling="2" 
     370                                RuntimeLibrary="0" 
     371                                UsePrecompiledHeader="0" 
     372                                WarningLevel="3" 
     373                                Detect64BitPortabilityProblems="false" 
     374                                DebugInformationFormat="3" 
     375                        /> 
     376                        <Tool 
     377                                Name="VCManagedResourceCompilerTool" 
     378                        /> 
     379                        <Tool 
     380                                Name="VCResourceCompilerTool" 
     381                        /> 
     382                        <Tool 
     383                                Name="VCPreLinkEventTool" 
     384                        /> 
     385                        <Tool 
     386                                Name="VCLinkerTool" 
     387                                AdditionalDependencies="&quot;$(SolutionDir)lib\openssl\bin\release\link-static\runtime-link-static\threading-multi\libeay32.lib&quot; &quot;$(SolutionDir)lib\openssl\bin\release\link-static\runtime-link-static\threading-multi\ssleay32.lib&quot;" 
     388                                LinkIncremental="1" 
     389                                GenerateDebugInformation="true" 
     390                                SubSystem="2" 
     391                                OptimizeReferences="2" 
     392                                EnableCOMDATFolding="2" 
     393                                TargetMachine="1" 
     394                        /> 
     395                        <Tool 
     396                                Name="VCALinkTool" 
     397                        /> 
     398                        <Tool 
     399                                Name="VCManifestTool" 
     400                        /> 
     401                        <Tool 
     402                                Name="VCXDCMakeTool" 
     403                        /> 
     404                        <Tool 
     405                                Name="VCBscMakeTool" 
     406                        /> 
     407                        <Tool 
     408                                Name="VCFxCopTool" 
     409                        /> 
     410                        <Tool 
     411                                Name="VCAppVerifierTool" 
     412                        /> 
     413                        <Tool 
     414                                Name="VCWebDeploymentTool" 
     415                        /> 
     416                        <Tool 
     417                                Name="VCPostBuildEventTool" 
     418                        /> 
     419                </Configuration> 
     420                <Configuration 
     421                        Name="Release Logging|x64" 
     422                        OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" 
     423                        IntermediateDirectory="$(PlatformName)\$(ConfigurationName)" 
     424                        ConfigurationType="1" 
     425                        CharacterSet="1" 
     426                        WholeProgramOptimization="1" 
     427                        > 
     428                        <Tool 
     429                                Name="VCPreBuildEventTool" 
     430                        /> 
     431                        <Tool 
     432                                Name="VCCustomBuildTool" 
     433                        /> 
     434                        <Tool 
     435                                Name="VCXMLDataGeneratorTool" 
     436                        /> 
     437                        <Tool 
     438                                Name="VCWebServiceProxyGeneratorTool" 
     439                        /> 
     440                        <Tool 
     441                                Name="VCMIDLTool" 
     442                                TargetEnvironment="3" 
     443                        /> 
     444                        <Tool 
     445                                Name="VCCLCompilerTool" 
     446                                FavorSizeOrSpeed="2" 
     447                                WholeProgramOptimization="false" 
     448                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     449                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS" 
     450                                ExceptionHandling="2" 
     451                                RuntimeLibrary="0" 
     452                                UsePrecompiledHeader="0" 
     453                                WarningLevel="3" 
     454                                Detect64BitPortabilityProblems="false" 
     455                                DebugInformationFormat="3" 
     456                        /> 
     457                        <Tool 
     458                                Name="VCManagedResourceCompilerTool" 
     459                        /> 
     460                        <Tool 
     461                                Name="VCResourceCompilerTool" 
     462                        /> 
     463                        <Tool 
     464                                Name="VCPreLinkEventTool" 
     465                        /> 
     466                        <Tool 
     467                                Name="VCLinkerTool" 
     468                                AdditionalDependencies="&quot;$(SolutionDir)lib\openssl\bin\release\address-model-64\link-static\runtime-link-static\threading-multi\libeay32.lib&quot; &quot;$(SolutionDir)lib\openssl\bin\release\address-model-64\link-static\runtime-link-static\threading-multi\ssleay32.lib&quot;" 
     469                                LinkIncremental="1" 
     470                                GenerateDebugInformation="true" 
     471                                SubSystem="2" 
     472                                OptimizeReferences="2" 
     473                                EnableCOMDATFolding="2" 
     474                                LinkTimeCodeGeneration="0" 
     475                                TargetMachine="17" 
     476                        /> 
     477                        <Tool 
     478                                Name="VCALinkTool" 
     479                        /> 
     480                        <Tool 
     481                                Name="VCManifestTool" 
     482                        /> 
     483                        <Tool 
     484                                Name="VCXDCMakeTool" 
     485                        /> 
     486                        <Tool 
     487                                Name="VCBscMakeTool" 
     488                        /> 
     489                        <Tool 
     490                                Name="VCFxCopTool" 
     491                        /> 
     492                        <Tool 
     493                                Name="VCAppVerifierTool" 
     494                        /> 
     495                        <Tool 
     496                                Name="VCWebDeploymentTool" 
     497                        /> 
     498                        <Tool 
     499                                Name="VCPostBuildEventTool" 
     500                        /> 
     501                </Configuration> 
    340502        </Configurations> 
    341503        <References> 
  • trunk/sln/OpenSSL/OpenSSL.vcproj

    r262 r380  
    103103                        /> 
    104104                </Configuration> 
     105                <Configuration 
     106                        Name="Release Logging|Win32" 
     107                        OutputDirectory="$(SolutionDir)$(ConfigurationName)" 
     108                        IntermediateDirectory="$(ConfigurationName)" 
     109                        ConfigurationType="10" 
     110                        CharacterSet="1" 
     111                        WholeProgramOptimization="1" 
     112                        > 
     113                        <Tool 
     114                                Name="VCPreBuildEventTool" 
     115                        /> 
     116                        <Tool 
     117                                Name="VCCustomBuildTool" 
     118                        /> 
     119                        <Tool 
     120                                Name="VCMIDLTool" 
     121                        /> 
     122                        <Tool 
     123                                Name="VCPostBuildEventTool" 
     124                        /> 
     125                </Configuration> 
     126                <Configuration 
     127                        Name="Release Logging|x64" 
     128                        OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" 
     129                        IntermediateDirectory="$(PlatformName)\$(ConfigurationName)" 
     130                        ConfigurationType="10" 
     131                        CharacterSet="1" 
     132                        WholeProgramOptimization="1" 
     133                        > 
     134                        <Tool 
     135                                Name="VCPreBuildEventTool" 
     136                        /> 
     137                        <Tool 
     138                                Name="VCCustomBuildTool" 
     139                        /> 
     140                        <Tool 
     141                                Name="VCMIDLTool" 
     142                                TargetEnvironment="3" 
     143                        /> 
     144                        <Tool 
     145                                Name="VCPostBuildEventTool" 
     146                        /> 
     147                </Configuration> 
    105148        </Configurations> 
    106149        <References> 
  • trunk/sln/asio/asio.vcproj

    r269 r380  
    166166                        /> 
    167167                </Configuration> 
     168                <Configuration 
     169                        Name="Release Logging|Win32" 
     170                        OutputDirectory="$(SolutionDir)$(ConfigurationName)" 
     171                        IntermediateDirectory="$(ConfigurationName)" 
     172                        ConfigurationType="1" 
     173                        CharacterSet="1" 
     174                        WholeProgramOptimization="1" 
     175                        > 
     176                        <Tool 
     177                                Name="VCPreBuildEventTool" 
     178                        /> 
     179                        <Tool 
     180                                Name="VCCustomBuildTool" 
     181                        /> 
     182                        <Tool 
     183                                Name="VCXMLDataGeneratorTool" 
     184                        /> 
     185                        <Tool 
     186                                Name="VCWebServiceProxyGeneratorTool" 
     187                        /> 
     188                        <Tool 
     189                                Name="VCMIDLTool" 
     190                        /> 
     191                        <Tool 
     192                                Name="VCCLCompilerTool" 
     193                                PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" 
     194                                RuntimeLibrary="2" 
     195                                UsePrecompiledHeader="0" 
     196                                WarningLevel="3" 
     197                                Detect64BitPortabilityProblems="true" 
     198                                DebugInformationFormat="3" 
     199                        /> 
     200                        <Tool 
     201                                Name="VCManagedResourceCompilerTool" 
     202                        /> 
     203                        <Tool 
     204                                Name="VCResourceCompilerTool" 
     205                        /> 
     206                        <Tool 
     207                                Name="VCPreLinkEventTool" 
     208                        /> 
     209                        <Tool 
     210                                Name="VCLinkerTool" 
     211                                LinkIncremental="1" 
     212                                GenerateDebugInformation="true" 
     213                                SubSystem="2" 
     214                                OptimizeReferences="2" 
     215                                EnableCOMDATFolding="2" 
     216                                TargetMachine="1" 
     217                        /> 
     218                        <Tool 
     219                                Name="VCALinkTool" 
     220                        /> 
     221                        <Tool 
     222                                Name="VCManifestTool" 
     223                        /> 
     224                        <Tool 
     225                                Name="VCXDCMakeTool" 
     226                        /> 
     227                        <Tool 
     228                                Name="VCBscMakeTool" 
     229                        /> 
     230                        <Tool 
     231                                Name="VCFxCopTool" 
     232                        /> 
     233                        <Tool 
     234                                Name="VCAppVerifierTool" 
     235                        /> 
     236                        <Tool 
     237                                Name="VCWebDeploymentTool" 
     238                        /> 
     239                        <Tool 
     240                                Name="VCPostBuildEventTool" 
     241                        /> 
     242                </Configuration> 
    168243        </Configurations> 
    169244        <References> 
  • trunk/sln/libtorrent/libtorrent.vcproj

    r376 r380  
    279279                        /> 
    280280                </Configuration> 
     281                <Configuration 
     282                        Name="Release Logging|Win32" 
     283                        OutputDirectory="$(SolutionDir)$(ConfigurationName)" 
     284                        IntermediateDirectory="$(ConfigurationName)" 
     285                        ConfigurationType="4" 
     286                        CharacterSet="1" 
     287                        WholeProgramOptimization="1" 
     288                        > 
     289                        <Tool 
     290                                Name="VCPreBuildEventTool" 
     291                        /> 
     292                        <Tool 
     293                                Name="VCCustomBuildTool" 
     294                        /> 
     295                        <Tool 
     296                                Name="VCXMLDataGeneratorTool" 
     297                        /> 
     298                        <Tool 
     299                                Name="VCWebServiceProxyGeneratorTool" 
     300                        /> 
     301                        <Tool 
     302                                Name="VCMIDLTool" 
     303                        /> 
     304                        <Tool 
     305                                Name="VCCLCompilerTool" 
     306                                FavorSizeOrSpeed="2" 
     307                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\Openssl\inc&quot;" 
     308                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;TORRENT_LOGGING;TORRENT_VERBOSE_LOGGING;TORRENT_UPNP_LOGGING;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
     309                                MinimalRebuild="true" 
     310                                ExceptionHandling="2" 
     311                                RuntimeLibrary="0" 
     312                                UsePrecompiledHeader="0" 
     313                                WarningLevel="3" 
     314                                Detect64BitPortabilityProblems="false" 
     315                                DebugInformationFormat="3" 
     316                        /> 
     317                        <Tool 
     318                                Name="VCManagedResourceCompilerTool" 
     319                        /> 
     320                        <Tool 
     321                                Name="VCResourceCompilerTool" 
     322                        /> 
     323                        <Tool 
     324                                Name="VCPreLinkEventTool" 
     325                        /> 
     326                        <Tool 
     327                                Name="VCLibrarianTool" 
     328                        /> 
     329                        <Tool 
     330                                Name="VCALinkTool" 
     331                        /> 
     332                        <Tool 
     333                                Name="VCXDCMakeTool" 
     334                        /> 
     335                        <Tool 
     336                                Name="VCBscMakeTool" 
     337                        /> 
     338                        <Tool 
     339                                Name="VCFxCopTool" 
     340                        /> 
     341                        <Tool 
     342                                Name="VCPostBuildEventTool" 
     343                        /> 
     344                </Configuration> 
     345                <Configuration 
     346                        Name="Release Logging|x64" 
     347                        OutputDirectory="$(SolutionDir)$(PlatformName)\$(ConfigurationName)" 
     348                        IntermediateDirectory="$(PlatformName)\$(ConfigurationName)" 
     349                        ConfigurationType="4" 
     350                        CharacterSet="1" 
     351                        WholeProgramOptimization="0" 
     352                        > 
     353                        <Tool 
     354                                Name="VCPreBuildEventTool" 
     355                        /> 
     356                        <Tool 
     357                                Name="VCCustomBuildTool" 
     358                        /> 
     359                        <Tool 
     360                                Name="VCXMLDataGeneratorTool" 
     361                        /> 
     362                        <Tool 
     363                                Name="VCWebServiceProxyGeneratorTool" 
     364                        /> 
     365                        <Tool 
     366                                Name="VCMIDLTool" 
     367                                TargetEnvironment="3" 
     368                        /> 
     369                        <Tool 
     370                                Name="VCCLCompilerTool" 
     371                                FavorSizeOrSpeed="2" 
     372                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\Openssl\inc&quot;" 
     373                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
     374                                ExceptionHandling="2" 
     375                                RuntimeLibrary="0" 
     376                                UsePrecompiledHeader="0" 
     377                                WarningLevel="3" 
     378                                SuppressStartupBanner="true" 
     379                                Detect64BitPortabilityProblems="false" 
     380                                DebugInformationFormat="3" 
     381                        /> 
     382                        <Tool 
     383                                Name="VCManagedResourceCompilerTool" 
     384                        /> 
     385                        <Tool 
     386                                Name="VCResourceCompilerTool" 
     387                        /> 
     388                        <Tool 
     389                                Name="VCPreLinkEventTool" 
     390                        /> 
     391                        <Tool 
     392                                Name="VCLibrarianTool" 
     393                                SuppressStartupBanner="true" 
     394                        /> 
     395                        <Tool 
     396                                Name="VCALinkTool" 
     397                        /> 
     398                        <Tool 
     399                                Name="VCXDCMakeTool" 
     400                        /> 
     401                        <Tool 
     402                                Name="VCBscMakeTool" 
     403                        /> 
     404                        <Tool 
     405                                Name="VCFxCopTool" 
     406                        /> 
     407                        <Tool 
     408                                Name="VCPostBuildEventTool" 
     409                        /> 
     410                </Configuration> 
    281411        </Configurations> 
    282412        <References> 
  • trunk/src/ConfigOptions.hpp

    r375 r380  
    4242#define IDC_ABOUT_GROUP                 ID_CONFIG_BEGIN + 33 
    4343#define IDC_ABOUT_VERSION               ID_CONFIG_BEGIN + 34 
     44#define IDC_BITT_GPORTFORWARDING        ID_CONFIG_BEGIN + 35 
     45#define IDC_BITT_GPORTFORWARD_NONE      ID_CONFIG_BEGIN + 36 
     46#define IDC_BITT_GPORTFORWARD_UPNG      ID_CONFIG_BEGIN + 37 
     47#define IDC_BIT_GPORTFORWARD_NATPMP     ID_CONFIG_BEGIN + 38 
     48#define IDC_BITT_GPORTFORWARD_TEST      ID_CONFIG_BEGIN + 39 
     49#define IDC_BITT_GPORTFORWARD_LIST      ID_CONFIG_BEGIN + 40 
    4450 
    4551#ifndef RC_INVOKED 
     
    179185        DDX_CHECK(IDC_BC_DHT, hal::config().enableDHT) 
    180186        DDX_INT(IDC_BC_DHTPORT, hal::config().dhtServicePort) 
     187        DDX_RADIO(IDC_BITT_GPORTFORWARD_NONE, hal::config().mappingType) 
    181188    END_DDX_MAP() 
    182189         
     
    192199                WMB_ROW(_auto,  IDC_BC_DHT, IDC_BC_DHTPORT_S, IDC_BC_DHTPORT), \ 
    193200                WMB_ROW(_auto,  IDC_BITT_DHT_NOTE, _r, _r), \ 
     201        WMB_END() 
     202 
     203#define BITT_FOR_LAYOUT \ 
     204        WMB_HEAD(WMB_COLNOMAX(_exp), WMB_COLNOMAX(_exp), WMB_COLNOMAX(_exp|50)), \ 
     205                WMB_ROW(_auto,  IDC_BITT_GPORTFORWARD_NONE, _r, IDC_BITT_GPORTFORWARD_TEST), \ 
     206                WMB_ROW(_auto,  IDC_BITT_GPORTFORWARD_UPNG, IDC_BITT_GPORTFORWARD_LIST, _r), \ 
     207                WMB_ROW(_auto,  IDC_BIT_GPORTFORWARD_NATPMP, _d), \ 
    194208        WMB_END() 
    195209 
     
    201215                        WMB_ROW(_gap|3, IDC_BITT_GDHT, _r, _r), 
    202216                        WMB_ROW(_auto,  _d, BITT_DHT_LAYOUT),  
     217                        WMB_ROW(_gap,   _d), 
     218                        WMB_ROW(_gap|3, IDC_BITT_GPORTFORWARDING, _r, _r), 
     219                        WMB_ROW(_auto,  _d, BITT_FOR_LAYOUT),  
    203220                        WMB_ROW(_gap,   _d), 
    204221                WMB_END() 
  • trunk/src/Halite.hpp

    r376 r380  
    4040        void saveIniData() 
    4141        { 
    42                 HAL_DEV_MSG(L"Halite saving INI"); 
    43  
    4442                save();          
    4543                hal::ini().save_data(); 
  • trunk/src/HaliteWindow.cpp

    r378 r380  
    394394void HaliteWindow::OnSize(UINT type, CSize) 
    395395{ 
    396         HAL_DEV_MSG(wformat(L"OnSize type %1%") % type); 
    397  
    398396        if (type == SIZE_MINIMIZED) 
    399397        { 
     
    428426void HaliteWindow::OnShowWindow(BOOL bShow, UINT nStatus) 
    429427{ 
    430         HAL_DEV_MSG(wformat(L"OnShowWindow %1%, status %2%") % bShow % nStatus); 
    431  
    432428        SetMsgHandled(false); 
    433429} 
  • trunk/src/NewTorrentDialog.cpp

    r379 r380  
    2525//      stop_ = true; 
    2626} 
     27 
     28NewTorrentDialog::CWindowMapStruct* NewTorrentDialog::GetWindowMap() 
     29{ 
     30 
     31} 
     32 
     33void NewTorrentDialog::OnClose() 
     34{ 
     35        if(::IsWindow(m_hWnd))  
     36        { 
     37                ::DestroyWindow(m_hWnd); 
     38        } 
     39} 
  • trunk/src/NewTorrentDialog.hpp

    r379 r380  
    1818 
    1919class NewTorrentDialog : 
    20         public CDialogImpl<NewTorrentDialog> 
     20        public CDialogImpl<NewTorrentDialog>, 
     21        public CAutoSizeWindow<NewTorrentDialog, false> 
    2122{ 
    2223protected: 
     
    3233    BEGIN_MSG_MAP_EX(thisClass) 
    3334        MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog) 
     35                MSG_WM_CLOSE(OnClose) 
    3436//              COMMAND_ID_HANDLER_EX(IDC_PROG_CANCEL, onCancel) 
    3537    END_MSG_MAP() 
    3638         
    3739        LRESULT OnInitDialog(...); 
     40        static CWindowMapStruct* GetWindowMap(); 
    3841 
    3942        void ProgressThread() 
     
    5760         
    5861        void onCancel(UINT, int, HWND hWnd); 
     62        void OnClose(); 
    5963         
    6064private: 
  • trunk/src/halConfig.cpp

    r375 r380  
    2626        event().post(shared_ptr<EventDetail>(new EventMsg(L"Applying BitTorrent session settings.")));   
    2727 
     28        bittorrent().setMapping(mappingType);    
     29 
    2830        event().post(shared_ptr<EventDetail>(new EventMsg( 
    2931                        wformat(L"Trying port in range %1% - %2%.") % portFrom % portTo))); 
     
    4951 
    5052        event().post(shared_ptr<EventDetail>(new EventMsg(wformat(L"Opened listen port; %1%.") % bittorrent().isListeningOn()))); 
    51  
    52         //bittorrent().startUPnP(); 
    53          
    54         //event().post(shared_ptr<EventDetail>(new EventMsg(L"Mapped listen port.")));   
    5553         
    5654        try 
     
    6967                hal::event().post(boost::shared_ptr<hal::EventDetail>( 
    7068                        new hal::EventStdException(Event::critical, e, L"settingsThread, Load IP Filter")));  
    71         } 
    72          
     69        }        
    7370 
    7471        try 
     
    103100                dhtSearchBranching, dhtServicePort,  
    104101                dhtMaxFailCount); 
     102 
     103        bittorrent().setTimeouts(peerTimeout, trackerTimeout); 
    105104         
    106105        if (enableDHT) 
  • trunk/src/halConfig.hpp

    r370 r380  
    5858                peConOutPolicy(1), 
    5959                halfConn(true), 
    60                 halfConnLimit(10) 
     60                halfConnLimit(10), 
     61                mappingType(0), 
     62                peerTimeout(120), 
     63                trackerTimeout(60) 
    6164        {} 
    6265         
     
    106109                        ar & BOOST_SERIALIZATION_NVP(halfConn); 
    107110                        ar & BOOST_SERIALIZATION_NVP(halfConnLimit); 
     111                } 
     112                if (version > 2) { 
     113                        ar & BOOST_SERIALIZATION_NVP(mappingType); 
     114                        ar & BOOST_SERIALIZATION_NVP(peerTimeout); 
     115                        ar & BOOST_SERIALIZATION_NVP(trackerTimeout); 
    108116                } 
    109117        } 
     
    161169        bool halfConn; 
    162170        int halfConnLimit; 
     171 
     172        int mappingType; 
     173        int peerTimeout; 
     174        int trackerTimeout;      
    163175}; 
    164176 
     
    167179} // namespace hal 
    168180 
    169 BOOST_CLASS_VERSION(hal::Config, 2) 
     181BOOST_CLASS_VERSION(hal::Config, 3) 
  • trunk/src/halTorrent.cpp

    r378 r380  
    303303} 
    304304 
     305struct once 
     306{ 
     307        template<typename S> 
     308        once(S& s, boost::function<void ()> f) : 
     309                f_(f) 
     310        { 
     311                c_ = s.connect(*this); 
     312                HAL_DEV_MSG(L"Once ctor"); 
     313        } 
     314 
     315        void operator()()  
     316        { 
     317                f_(); 
     318                 
     319                HAL_DEV_MSG(L"Once disconnecting"); 
     320 
     321                c_.disconnect(); 
     322        } 
     323 
     324        boost::function<void ()> f_; 
     325        boost::signals::connection c_; 
     326}; 
     327 
     328template<typename S=boost::signal<void()> > 
     329class signaler 
     330{ 
     331public: 
     332 
     333        void connectRepeat(const typename S::slot_type& slot) 
     334        { 
     335                repeat_.connect(slot); 
     336        } 
     337 
     338        void connectOnce(const typename S::slot_type& slot) 
     339        { 
     340                once_.connect(slot); 
     341        } 
     342 
     343        void operator()()  
     344        { 
     345                repeat_(); 
     346 
     347                 
     348                HAL_DEV_MSG(L"Once disconnecting"); 
     349                once_(); 
     350                once_.disconnect_all_slots(); 
     351        }        
     352 
     353private: 
     354        S repeat_; 
     355        S once_; 
     356}; 
     357 
    305358class BitTorrent_impl 
    306359{ 
     
    341394                } 
    342395        } 
    343          
     396 
     397        struct  
     398        { 
     399                signaler<> successfulListen; 
     400        }  
     401        signals; 
     402                 
    344403        void alertHandler() 
    345404        { 
     
    515574                                        wformat_t(hal::app().res_wstr(HAL_LISTEN_SUCCEEDED_ALERT)) 
    516575                                                % hal::from_utf8_safe(a.msg())) 
    517                         )       );                               
     576                        )       );       
     577 
     578                        bit_impl_.signals.successfulListen(); 
    518579                } 
    519580                 
     
    616677         
    617678        const wpath_t workingDir() { return workingDirectory; }; 
    618          
     679 
    619680private: 
    620681        BitTorrent_impl() : 
     
    784845                        return pimpl->theSession.listen_on(range);       
    785846                else 
     847                { 
     848                        pimpl->signals.successfulListen(); 
     849                         
    786850                        return true; 
    787  
     851                } 
    788852        } 
    789853         
     
    856920} 
    857921 
    858 void BitTorrent::startUPnP() 
    859 { 
    860         if (pimpl->theSession.is_listening()) 
    861         { 
    862                 pimpl->theSession.start_lsd(); 
    863                 pimpl->theSession.start_upnp(); 
    864                 pimpl->theSession.start_natpmp(); 
    865         } 
     922void BitTorrent::setMapping(int mapping) 
     923{ 
     924        if (mapping != mappingNone) 
     925        { 
     926                if (mapping == mappingUPnP) 
     927                { 
     928                        event().post(shared_ptr<EventDetail>(new EventMsg(L"Starting UPnP mapping."))); 
     929                        pimpl->theSession.stop_upnp(); 
     930                        pimpl->theSession.stop_natpmp(); 
     931 
     932                        pimpl->signals.successfulListen.connectOnce(bind(&lbt::session::start_upnp, &pimpl->theSession)); 
     933                } 
     934                else 
     935                { 
     936                        event().post(shared_ptr<EventDetail>(new EventMsg(L"Starting NAT-PMP mapping."))); 
     937                        pimpl->theSession.stop_upnp(); 
     938                        pimpl->theSession.stop_natpmp(); 
     939 
     940                        pimpl->signals.successfulListen.connectOnce(bind(&lbt::session::start_natpmp, &pimpl->theSession)); 
     941                } 
     942        } 
     943        else 
     944        { 
     945                event().post(shared_ptr<EventDetail>(new EventMsg(L"No mapping."))); 
     946                pimpl->theSession.stop_upnp(); 
     947                pimpl->theSession.stop_natpmp(); 
     948        } 
     949} 
     950 
     951void BitTorrent::setTimeouts(int peers, int tracker) 
     952{ 
     953        lbt::session_settings settings = pimpl->theSession.settings(); 
     954        settings.peer_timeout = peers; 
     955        settings.tracker_completion_timeout = tracker; 
     956 
     957        pimpl->theSession.set_settings(settings); 
     958 
     959        event().post(shared_ptr<EventDetail>(new EventMsg( 
     960                wformat_t(L"Set Timeouts, peer %1%, tracker %2%") % peers % tracker))); 
    866961} 
    867962 
  • trunk/src/halTorrent.hpp

    r373 r380  
    363363{ 
    364364public:  
     365        enum mappings 
     366        { 
     367                mappingNone = 0, 
     368                mappingUPnP, 
     369                mappingNatPMP 
     370        }; 
     371 
    365372        void shutDownSession(); 
    366373        void saveTorrentData(); 
     
    379386        void ensureIpFilterOff(); 
    380387 
    381         void startUPnP(); 
    382          
     388        void setMapping(int mapping); 
     389 
    383390        void ip_v4_filter_block(asio::ip::address_v4 first, asio::ip::address_v4 last); 
    384391        void ip_v6_filter_block(asio::ip::address_v6 first, asio::ip::address_v6 last); 
     
    393400        void setDhtSettings(int max_peers_reply, int search_branching,  
    394401                int service_port, int max_fail_count); 
     402        void setTimeouts(int peers, int tracker); 
    395403         
    396404        const SessionDetail getSessionDetails(); 
Note: See TracChangeset for help on using the changeset viewer.