OSDN Git Service

IM0027-4 IM0027-4
authoreru <eru01@users.sourceforge.jp>
Thu, 8 May 2008 10:01:49 +0000 (10:01 +0000)
committereru <eru01@users.sourceforge.jp>
Thu, 8 May 2008 10:01:49 +0000 (10:01 +0000)
20 files changed:
PeerCast.root/PeerCast/core/common/channel.cpp
PeerCast.root/PeerCast/core/common/http.cpp
PeerCast.root/PeerCast/core/common/http.h
PeerCast.root/PeerCast/core/common/servent.h
PeerCast.root/PeerCast/core/common/servhs.cpp
PeerCast.root/PeerCast/core/common/url.cpp
PeerCast.root/PeerCast/core/common/version2.h
PeerCast.root/PeerCast/core/win32/lib/corelib.vcproj
PeerCast.root/PeerCast/ui/win32/PeerCast.sln
PeerCast.root/PeerCast/ui/win32/simple/Simple.vcproj
c:/Git/PeerCast.root/PeerCast/core/common/channel.cpp
c:/Git/PeerCast.root/PeerCast/core/common/http.cpp
c:/Git/PeerCast.root/PeerCast/core/common/http.h
c:/Git/PeerCast.root/PeerCast/core/common/servent.h
c:/Git/PeerCast.root/PeerCast/core/common/servhs.cpp
c:/Git/PeerCast.root/PeerCast/core/common/url.cpp
c:/Git/PeerCast.root/PeerCast/core/common/version2.h
c:/Git/PeerCast.root/PeerCast/core/win32/lib/corelib.vcproj
c:/Git/PeerCast.root/PeerCast/ui/win32/PeerCast.sln
c:/Git/PeerCast.root/PeerCast/ui/win32/simple/Simple.vcproj

index c1b3e2b..b1262a2 100644 (file)
@@ -570,7 +570,7 @@ int Channel::handshakeFetch()
                if (http.isHeader(PCX_HS_POS))
                        streamPos = atoi(arg);
                else
-                       Servent::readICYHeader(http, info, NULL);
+                       Servent::readICYHeader(http, info, NULL, 0);
 
                LOG_CHANNEL("Channel fetch: %s",http.cmdLine);
        }
index 95f4df4..21d900e 100644 (file)
@@ -107,7 +107,7 @@ int HTTP::getArgInt()
                return 0;
 }
 //-----------------------------------------
-void HTTP::getAuthUserPass(char *user, char *pass)
+void HTTP::getAuthUserPass(char *user, char *pass, size_t szUser, size_t szPass)
 {
        if (arg)
        {
@@ -125,9 +125,15 @@ void HTTP::getAuthUserPass(char *user, char *pass)
                        {
                                *s = 0;
                                if (user)
-                                       strcpy(user,str.cstr());
+                               {
+                                       strncpy(user, str.cstr(), szUser);
+                                       user[szUser-1] = '\0';
+                               }
                                if (pass)
-                                       strcpy(pass,s+1);
+                               {
+                                       strncpy(pass, s+1, szPass);
+                                       pass[szPass-1] = '\0';
+                               }
                        }                       
                }
        }
index 2627d3d..8f60404 100644 (file)
@@ -176,7 +176,7 @@ public:
        char    *getArgStr();
        int             getArgInt();
 
-       void    getAuthUserPass(char *, char *);
+       void    getAuthUserPass(char *, char *, size_t, size_t);
 
        char    cmdLine[8192],*arg;
 
index 09aaac5..d590a90 100644 (file)
@@ -213,7 +213,7 @@ public:
        void    sendPCPChannel();
        void    checkPCPComms(Channel *, AtomStream &);
 
-       static void     readICYHeader(HTTP &, ChanInfo &, char *);
+       static void     readICYHeader(HTTP &, ChanInfo &, char *, size_t);
        bool    canStream(Channel *);
 
        bool    isConnected() {return status == S_CONNECTED;}
index ac30b47..7217767 100644 (file)
@@ -726,7 +726,7 @@ bool Servent::handshakeAuth(HTTP &http,const char *args,bool local)
                {
                        case ServMgr::AUTH_HTTPBASIC:
                                if (http.isHeader("Authorization"))
-                                       http.getAuthUserPass(user,pass);
+                                       http.getAuthUserPass(user, pass, sizeof(user), sizeof(pass));
                                break;
                        case ServMgr::AUTH_COOKIE:
                                if (http.isHeader("Cookie"))
@@ -1708,7 +1708,7 @@ void Servent::handshakeXML()
 
 }
 // -----------------------------------
-void Servent::readICYHeader(HTTP &http, ChanInfo &info, char *pwd)
+void Servent::readICYHeader(HTTP &http, ChanInfo &info, char *pwd, size_t szPwd)
 {
        char *arg = http.getArgStr();
        if (!arg) return;
@@ -1733,7 +1733,7 @@ void Servent::readICYHeader(HTTP &http, ChanInfo &info, char *pwd)
                info.desc.convertTo(String::T_UNICODE);
 
        }else if (http.isHeader("Authorization"))
-               http.getAuthUserPass(NULL,pwd);
+               http.getAuthUserPass(NULL, pwd, 0, sizeof(pwd));
        else if (http.isHeader(PCX_HS_CHANNELID))
                info.id.fromStr(arg);
        else if (http.isHeader("ice-password"))
@@ -1804,7 +1804,7 @@ void Servent::handshakeICY(Channel::SRC_TYPE type, bool isHTTP)
        while (http.nextHeader())
        {
                LOG_DEBUG("ICY %s",http.cmdLine);
-               readICYHeader(http,info,loginPassword.cstr());
+               readICYHeader(http, info, loginPassword.cstr(), loginPassword.MAX_LEN);
        }
 
 
index f98d195..eccca20 100644 (file)
@@ -180,7 +180,7 @@ int URLSource::getSourceRate()
                                LOG_CHANNEL("Fetch HTTP: %s",http.cmdLine);
 
                                ChanInfo tmpInfo = ch->info;
-                               Servent::readICYHeader(http,ch->info,NULL);
+                               Servent::readICYHeader(http, ch->info, NULL, 0);
 
                                if (!tmpInfo.name.isEmpty())
                                        ch->info.name = tmpInfo.name;
index 2ae3f0f..f9517a0 100644 (file)
@@ -45,8 +45,8 @@ extern int version_ex; // PP
 //#define VERSION_EX 1
 static const char *PCP_CLIENT_VERSION_EX_PREFIX = "IM"; // 2bytes only
 static const int  PCP_CLIENT_VERSION_EX_NUMBER = 27;
-static const char *PCX_AGENTEX = "PeerCast/0.1218(IM0027-3)";
-static const char *PCX_VERSTRING_EX = "v0.1218(IM0027-3)";
+static const char *PCX_AGENTEX = "PeerCast/0.1218(IM0027-4)";
+static const char *PCX_VERSTRING_EX = "v0.1218(IM0027-4)";
 #endif
 
 // ------------------------------------------------
index 6f7743e..a8ddb0d 100644 (file)
@@ -1,13 +1,14 @@
 <?xml version="1.0" encoding="shift_jis"?>
 <VisualStudioProject
        ProjectType="Visual C++"
-       Version="8.00"
+       Version="9.00"
        Name="corelib"
        ProjectGUID="{7BCFE65B-8757-45F3-8DFB-1E7D683950D1}"
        RootNamespace="corelib"
        SccProjectName="&quot;$/PeerCast.root/PeerCast&quot;, JCAAAAAA"
        SccLocalPath="..\..\.."
        SccProvider="MSSCCI:Microsoft Visual SourceSafe"
+       TargetFrameworkVersion="131072"
        >
        <Platforms>
                <Platform
                        <Tool
                                Name="VCCLCompilerTool"
                                Optimization="2"
-                               InlineFunctionExpansion="1"
+                               InlineFunctionExpansion="2"
                                EnableIntrinsicFunctions="true"
+                               FavorSizeOrSpeed="1"
+                               EnableFiberSafeOptimizations="true"
                                AdditionalIncludeDirectories="../../,../../common"
                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
                                StringPooling="true"
index 942ce13..df1d14f 100644 (file)
@@ -1,6 +1,11 @@
 
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{00D364AE-DB2F-4109-A925-31B4F129D613}"
+       ProjectSection(SolutionItems) = preProject
+               memo.txt = memo.txt
+       EndProjectSection
+EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "corelib", "..\..\core\win32\lib\corelib.vcproj", "{7BCFE65B-8757-45F3-8DFB-1E7D683950D1}"
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Simple", "simple\Simple.vcproj", "{7D4833CE-1286-4587-9470-52E098B29C12}"
@@ -8,11 +13,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Simple", "simple\Simple.vcp
                {7BCFE65B-8757-45F3-8DFB-1E7D683950D1} = {7BCFE65B-8757-45F3-8DFB-1E7D683950D1}
        EndProjectSection
 EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{00D364AE-DB2F-4109-A925-31B4F129D613}"
-       ProjectSection(SolutionItems) = preProject
-               memo.txt = memo.txt
-       EndProjectSection
-EndProject
 Global
        GlobalSection(SourceCodeControl) = preSolution
                SccNumberOfProjects = 3
index 4102c17..4a5a924 100644 (file)
@@ -1,13 +1,14 @@
 <?xml version="1.0" encoding="shift_jis"?>
 <VisualStudioProject
        ProjectType="Visual C++"
-       Version="8.00"
+       Version="9.00"
        Name="Simple"
        ProjectGUID="{7D4833CE-1286-4587-9470-52E098B29C12}"
        RootNamespace="Simple"
        SccProjectName="&quot;$/PeerCast.root/PeerCast&quot;, JCAAAAAA"
        SccLocalPath="..\..\.."
        SccProvider="MSSCCI:Microsoft Visual SourceSafe"
+       TargetFrameworkVersion="131072"
        >
        <Platforms>
                <Platform
@@ -85,6 +86,8 @@
                                GenerateDebugInformation="true"
                                ProgramDatabaseFile=".\Simple___Win32_Private_Debug/PeerCast.pdb"
                                SubSystem="2"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to program files"
                                CommandLine="copy           debug\peercast.exe           &quot;c:\program files\peercast&quot;"
                                InlineFunctionExpansion="1"
                                EnableIntrinsicFunctions="true"
                                FavorSizeOrSpeed="0"
+                               EnableFiberSafeOptimizations="true"
                                AdditionalIncludeDirectories="../../../core,../../../core/common"
                                PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
                                StringPooling="true"
                                AdditionalLibraryDirectories="&quot;C:\Visual Studio Projects\PeCa-IMAS7651\core\win32\lib\Release&quot;"
                                ProgramDatabaseFile=".\Release/PeerCast.pdb"
                                SubSystem="2"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to pimp"
                                CommandLine="copy                   release\peercast.exe                   ..\pimp\&#x0D;&#x0A;"
                                SuppressStartupBanner="true"
                                ProgramDatabaseFile=".\Simple___Win32_Private_Release/PeerCast.pdb"
                                SubSystem="2"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to pimp &amp; program files"
                                CommandLine="copy                   release\peercast.exe                   &quot;c:\program files\peercast&quot;&#x0D;&#x0A;copy                   release\peercast.exe                   ..\pimp\&#x0D;&#x0A;"
                                ProgramDatabaseFile=".\Debug/PeerCast.pdb"
                                SubSystem="2"
                                HeapReserveSize="4194304"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to program files"
                                CommandLine="copy           debug\peercast.exe           &quot;c:\program files\peercast&quot;"
index c1b3e2b..b1262a2 100644 (file)
@@ -570,7 +570,7 @@ int Channel::handshakeFetch()
                if (http.isHeader(PCX_HS_POS))
                        streamPos = atoi(arg);
                else
-                       Servent::readICYHeader(http, info, NULL);
+                       Servent::readICYHeader(http, info, NULL, 0);
 
                LOG_CHANNEL("Channel fetch: %s",http.cmdLine);
        }
index 95f4df4..21d900e 100644 (file)
@@ -107,7 +107,7 @@ int HTTP::getArgInt()
                return 0;
 }
 //-----------------------------------------
-void HTTP::getAuthUserPass(char *user, char *pass)
+void HTTP::getAuthUserPass(char *user, char *pass, size_t szUser, size_t szPass)
 {
        if (arg)
        {
@@ -125,9 +125,15 @@ void HTTP::getAuthUserPass(char *user, char *pass)
                        {
                                *s = 0;
                                if (user)
-                                       strcpy(user,str.cstr());
+                               {
+                                       strncpy(user, str.cstr(), szUser);
+                                       user[szUser-1] = '\0';
+                               }
                                if (pass)
-                                       strcpy(pass,s+1);
+                               {
+                                       strncpy(pass, s+1, szPass);
+                                       pass[szPass-1] = '\0';
+                               }
                        }                       
                }
        }
index 2627d3d..8f60404 100644 (file)
@@ -176,7 +176,7 @@ public:
        char    *getArgStr();
        int             getArgInt();
 
-       void    getAuthUserPass(char *, char *);
+       void    getAuthUserPass(char *, char *, size_t, size_t);
 
        char    cmdLine[8192],*arg;
 
index 09aaac5..d590a90 100644 (file)
@@ -213,7 +213,7 @@ public:
        void    sendPCPChannel();
        void    checkPCPComms(Channel *, AtomStream &);
 
-       static void     readICYHeader(HTTP &, ChanInfo &, char *);
+       static void     readICYHeader(HTTP &, ChanInfo &, char *, size_t);
        bool    canStream(Channel *);
 
        bool    isConnected() {return status == S_CONNECTED;}
index ac30b47..7217767 100644 (file)
@@ -726,7 +726,7 @@ bool Servent::handshakeAuth(HTTP &http,const char *args,bool local)
                {
                        case ServMgr::AUTH_HTTPBASIC:
                                if (http.isHeader("Authorization"))
-                                       http.getAuthUserPass(user,pass);
+                                       http.getAuthUserPass(user, pass, sizeof(user), sizeof(pass));
                                break;
                        case ServMgr::AUTH_COOKIE:
                                if (http.isHeader("Cookie"))
@@ -1708,7 +1708,7 @@ void Servent::handshakeXML()
 
 }
 // -----------------------------------
-void Servent::readICYHeader(HTTP &http, ChanInfo &info, char *pwd)
+void Servent::readICYHeader(HTTP &http, ChanInfo &info, char *pwd, size_t szPwd)
 {
        char *arg = http.getArgStr();
        if (!arg) return;
@@ -1733,7 +1733,7 @@ void Servent::readICYHeader(HTTP &http, ChanInfo &info, char *pwd)
                info.desc.convertTo(String::T_UNICODE);
 
        }else if (http.isHeader("Authorization"))
-               http.getAuthUserPass(NULL,pwd);
+               http.getAuthUserPass(NULL, pwd, 0, sizeof(pwd));
        else if (http.isHeader(PCX_HS_CHANNELID))
                info.id.fromStr(arg);
        else if (http.isHeader("ice-password"))
@@ -1804,7 +1804,7 @@ void Servent::handshakeICY(Channel::SRC_TYPE type, bool isHTTP)
        while (http.nextHeader())
        {
                LOG_DEBUG("ICY %s",http.cmdLine);
-               readICYHeader(http,info,loginPassword.cstr());
+               readICYHeader(http, info, loginPassword.cstr(), loginPassword.MAX_LEN);
        }
 
 
index f98d195..eccca20 100644 (file)
@@ -180,7 +180,7 @@ int URLSource::getSourceRate()
                                LOG_CHANNEL("Fetch HTTP: %s",http.cmdLine);
 
                                ChanInfo tmpInfo = ch->info;
-                               Servent::readICYHeader(http,ch->info,NULL);
+                               Servent::readICYHeader(http, ch->info, NULL, 0);
 
                                if (!tmpInfo.name.isEmpty())
                                        ch->info.name = tmpInfo.name;
index 2ae3f0f..f9517a0 100644 (file)
@@ -45,8 +45,8 @@ extern int version_ex; // PP
 //#define VERSION_EX 1
 static const char *PCP_CLIENT_VERSION_EX_PREFIX = "IM"; // 2bytes only
 static const int  PCP_CLIENT_VERSION_EX_NUMBER = 27;
-static const char *PCX_AGENTEX = "PeerCast/0.1218(IM0027-3)";
-static const char *PCX_VERSTRING_EX = "v0.1218(IM0027-3)";
+static const char *PCX_AGENTEX = "PeerCast/0.1218(IM0027-4)";
+static const char *PCX_VERSTRING_EX = "v0.1218(IM0027-4)";
 #endif
 
 // ------------------------------------------------
index 6f7743e..a8ddb0d 100644 (file)
@@ -1,13 +1,14 @@
 <?xml version="1.0" encoding="shift_jis"?>
 <VisualStudioProject
        ProjectType="Visual C++"
-       Version="8.00"
+       Version="9.00"
        Name="corelib"
        ProjectGUID="{7BCFE65B-8757-45F3-8DFB-1E7D683950D1}"
        RootNamespace="corelib"
        SccProjectName="&quot;$/PeerCast.root/PeerCast&quot;, JCAAAAAA"
        SccLocalPath="..\..\.."
        SccProvider="MSSCCI:Microsoft Visual SourceSafe"
+       TargetFrameworkVersion="131072"
        >
        <Platforms>
                <Platform
                        <Tool
                                Name="VCCLCompilerTool"
                                Optimization="2"
-                               InlineFunctionExpansion="1"
+                               InlineFunctionExpansion="2"
                                EnableIntrinsicFunctions="true"
+                               FavorSizeOrSpeed="1"
+                               EnableFiberSafeOptimizations="true"
                                AdditionalIncludeDirectories="../../,../../common"
                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
                                StringPooling="true"
index 942ce13..df1d14f 100644 (file)
@@ -1,6 +1,11 @@
 
-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{00D364AE-DB2F-4109-A925-31B4F129D613}"
+       ProjectSection(SolutionItems) = preProject
+               memo.txt = memo.txt
+       EndProjectSection
+EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "corelib", "..\..\core\win32\lib\corelib.vcproj", "{7BCFE65B-8757-45F3-8DFB-1E7D683950D1}"
 EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Simple", "simple\Simple.vcproj", "{7D4833CE-1286-4587-9470-52E098B29C12}"
@@ -8,11 +13,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Simple", "simple\Simple.vcp
                {7BCFE65B-8757-45F3-8DFB-1E7D683950D1} = {7BCFE65B-8757-45F3-8DFB-1E7D683950D1}
        EndProjectSection
 EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{00D364AE-DB2F-4109-A925-31B4F129D613}"
-       ProjectSection(SolutionItems) = preProject
-               memo.txt = memo.txt
-       EndProjectSection
-EndProject
 Global
        GlobalSection(SourceCodeControl) = preSolution
                SccNumberOfProjects = 3
index 4102c17..4a5a924 100644 (file)
@@ -1,13 +1,14 @@
 <?xml version="1.0" encoding="shift_jis"?>
 <VisualStudioProject
        ProjectType="Visual C++"
-       Version="8.00"
+       Version="9.00"
        Name="Simple"
        ProjectGUID="{7D4833CE-1286-4587-9470-52E098B29C12}"
        RootNamespace="Simple"
        SccProjectName="&quot;$/PeerCast.root/PeerCast&quot;, JCAAAAAA"
        SccLocalPath="..\..\.."
        SccProvider="MSSCCI:Microsoft Visual SourceSafe"
+       TargetFrameworkVersion="131072"
        >
        <Platforms>
                <Platform
@@ -85,6 +86,8 @@
                                GenerateDebugInformation="true"
                                ProgramDatabaseFile=".\Simple___Win32_Private_Debug/PeerCast.pdb"
                                SubSystem="2"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to program files"
                                CommandLine="copy           debug\peercast.exe           &quot;c:\program files\peercast&quot;"
                                InlineFunctionExpansion="1"
                                EnableIntrinsicFunctions="true"
                                FavorSizeOrSpeed="0"
+                               EnableFiberSafeOptimizations="true"
                                AdditionalIncludeDirectories="../../../core,../../../core/common"
                                PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
                                StringPooling="true"
                                AdditionalLibraryDirectories="&quot;C:\Visual Studio Projects\PeCa-IMAS7651\core\win32\lib\Release&quot;"
                                ProgramDatabaseFile=".\Release/PeerCast.pdb"
                                SubSystem="2"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to pimp"
                                CommandLine="copy                   release\peercast.exe                   ..\pimp\&#x0D;&#x0A;"
                                SuppressStartupBanner="true"
                                ProgramDatabaseFile=".\Simple___Win32_Private_Release/PeerCast.pdb"
                                SubSystem="2"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to pimp &amp; program files"
                                CommandLine="copy                   release\peercast.exe                   &quot;c:\program files\peercast&quot;&#x0D;&#x0A;copy                   release\peercast.exe                   ..\pimp\&#x0D;&#x0A;"
                                ProgramDatabaseFile=".\Debug/PeerCast.pdb"
                                SubSystem="2"
                                HeapReserveSize="4194304"
+                               RandomizedBaseAddress="1"
+                               DataExecutionPrevention="0"
                                TargetMachine="1"
                        />
                        <Tool
                                Name="VCAppVerifierTool"
                        />
                        <Tool
-                               Name="VCWebDeploymentTool"
-                       />
-                       <Tool
                                Name="VCPostBuildEventTool"
                                Description="Copy exe to program files"
                                CommandLine="copy           debug\peercast.exe           &quot;c:\program files\peercast&quot;"