changeset 360:41663c6d1fd9 draft

Merge remote branch 'refs/remotes/svn/trunk' into svn
author Gavin Andresen <gavinandresen@gmail.com>
date Tue, 16 Nov 2010 09:04:24 -0500
parents 9e3283ddf5bc (current diff) 015d5de83339 (diff)
children ae9e12688579
files net.cpp serialize.h setup.nsi util.cpp
diffstat 4 files changed, 28 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/net.cpp
+++ b/net.cpp
@@ -128,7 +128,7 @@
     string strLine;
     while (RecvLine(hSocket, strLine))
     {
-        if (strLine.empty())
+        if (strLine.empty()) // HTTP response is separated from headers by blank line
         {
             loop
             {
@@ -137,6 +137,8 @@
                     closesocket(hSocket);
                     return false;
                 }
+                if (pszKeyword == NULL)
+                    break;
                 if (strLine.find(pszKeyword) != -1)
                 {
                     strLine = strLine.substr(strLine.find(pszKeyword) + strlen(pszKeyword));
@@ -176,26 +178,26 @@
     {
         if (nHost == 1)
         {
-            addrConnect = CAddress("70.86.96.218:80"); // www.ipaddressworld.com
+            addrConnect = CAddress("72.233.89.199:80"); // www.whatismyip.com
 
             if (nLookup == 1)
             {
-                struct hostent* phostent = gethostbyname("www.ipaddressworld.com");
+                struct hostent* phostent = gethostbyname("www.whatismyip.com");
                 if (phostent && phostent->h_addr_list && phostent->h_addr_list[0])
                     addrConnect = CAddress(*(u_long*)phostent->h_addr_list[0], htons(80));
             }
 
-            pszGet = "GET /ip.php HTTP/1.1\r\n"
-                     "Host: www.ipaddressworld.com\r\n"
-                     "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)\r\n"
+            pszGet = "GET /automation/n09230945.asp HTTP/1.1\r\n"
+                     "Host: www.whatismyip.com\r\n"
+                     "User-Agent: Bitcoin/1.0 (see www.bitcoin.org)\r\n"
                      "Connection: close\r\n"
                      "\r\n";
 
-            pszKeyword = "IP:";
+            pszKeyword = NULL; // Returns just IP address
         }
         else if (nHost == 2)
         {
-            addrConnect = CAddress("208.78.68.70:80"); // checkip.dyndns.org
+            addrConnect = CAddress("91.198.22.70:80"); // checkip.dyndns.org
 
             if (nLookup == 1)
             {
--- a/serialize.h
+++ b/serialize.h
@@ -22,7 +22,7 @@
 class CAutoFile;
 static const unsigned int MAX_SIZE = 0x02000000;
 
-static const int VERSION = 31403;
+static const int VERSION = 31501;
 static const char* pszSubVer = "";
 
 
--- a/setup.nsi
+++ b/setup.nsi
@@ -7,7 +7,7 @@
 
 # General Symbol Definitions
 !define REGKEY "SOFTWARE\$(^Name)"
-!define VERSION 0.3.14
+!define VERSION 0.3.15
 !define COMPANY "Bitcoin project"
 !define URL http://www.bitcoin.org/
 
@@ -42,12 +42,12 @@
 !insertmacro MUI_LANGUAGE English
 
 # Installer attributes
-OutFile bitcoin-0.3.14-win32-setup.exe
+OutFile bitcoin-0.3.15-win32-setup.exe
 InstallDir $PROGRAMFILES\Bitcoin
 CRCCheck on
 XPStyle on
 ShowInstDetails show
-VIProductVersion 0.3.14.0
+VIProductVersion 0.3.15.0
 VIAddVersionKey ProductName Bitcoin
 VIAddVersionKey ProductVersion "${VERSION}"
 VIAddVersionKey CompanyName "${COMPANY}"
--- a/util.cpp
+++ b/util.cpp
@@ -157,10 +157,19 @@
     else
     {
         // print to debug.log
-        char pszFile[MAX_PATH+100];
-        GetDataDir(pszFile);
-        strlcat(pszFile, "/debug.log", sizeof(pszFile));
-        FILE* fileout = fopen(pszFile, "a");
+        static FILE* fileout = NULL;
+        static int64 nOpenTime = 0;
+
+        if (GetTime()-nOpenTime > 10 * 60)
+        {
+            if (fileout)
+                fclose(fileout);
+            char pszFile[MAX_PATH+100];
+            GetDataDir(pszFile);
+            strlcat(pszFile, "/debug.log", sizeof(pszFile));
+            fileout = fopen(pszFile, "a");
+            nOpenTime = GetTime();
+        }
         if (fileout)
         {
             //// Debug print useful for profiling
@@ -169,7 +178,7 @@
             va_start(arg_ptr, pszFormat);
             ret = vfprintf(fileout, pszFormat, arg_ptr);
             va_end(arg_ptr);
-            fclose(fileout);
+            fflush(fileout);
         }
     }