- MGR: Re-enable the ability for the manager to detect a temporary

name failure vs needing a proxy server or something like that.
        
    clientgui/
        AccountManagerPropertiesPage.cpp, .h
        ProjectPropertiesPage.cpp, .h

svn path=/branches/boinc_core_release_6_8/; revision=18775
This commit is contained in:
Rom Walton 2009-07-30 00:14:30 +00:00
parent 3c85c42c98
commit e180d75f98
5 changed files with 12 additions and 46 deletions

View File

@ -6132,6 +6132,14 @@ David 28 July 2009
client/
net_stats.cpp
Rom 29 July 2009
- MGR: Re-enable the ability for the manager to detect a temporary
name failure vs needing a proxy server or something like that.
clientgui/
AccountManagerPropertiesPage.cpp, .h
ProjectPropertiesPage.cpp, .h
Rom 29 July 2009
- client: Initial swipe at automatic proxy server configuration
detection on Windows. Fixes #35

View File

@ -113,7 +113,6 @@ bool CAccountManagerPropertiesPage::Create( CBOINCBaseWizard* parent )
m_bProjectPropertiesSucceeded = false;
m_bProjectPropertiesURLFailure = false;
m_bProjectPropertiesDNSFailure = false;
m_bProjectPropertiesCommunicationFailure = false;
m_bProjectAccountCreationDisabled = false;
m_bProjectClientAccountCreationDisabled = false;
@ -211,7 +210,6 @@ void CAccountManagerPropertiesPage::OnPageChanged( wxWizardExEvent& event )
SetProjectPropertiesSucceeded(false);
SetProjectPropertiesURLFailure(false);
SetProjectPropertiesDNSFailure(false);
SetProjectPropertiesCommunicationFailure(false);
SetProjectAccountCreationDisabled(false);
SetProjectClientAccountCreationDisabled(false);
@ -344,23 +342,8 @@ void CAccountManagerPropertiesPage::OnStateChange( CAccountManagerPropertiesPage
SetProjectPropertiesURLFailure(false);
}
// DNS failures can be caused by a few different situations, but
// the most common is the machine is sitting behind a firewall
// and the local DNS servers do not know about the outside world.
// In this situation the user is expected to use a proxy server.
//
// Project domain moves or host name changes don't happen
// often enough for them to be the default assumtion.
//
bSuccessfulCondition =
(!iReturnValue) && (ERR_GETHOSTBYNAME == pc->error_num);
if (bSuccessfulCondition) {
SetProjectPropertiesDNSFailure(true);
} else {
SetProjectPropertiesDNSFailure(false);
}
bSuccessfulCondition =
(!iReturnValue) && (ERR_GETHOSTBYNAME == pc->error_num) ||
(!iReturnValue) && (ERR_CONNECT == pc->error_num) ||
(!iReturnValue) && (ERR_XML_PARSE == pc->error_num) ||
(!iReturnValue) && (ERR_PROJECT_DOWN == pc->error_num);
@ -490,7 +473,7 @@ wxWizardPageEx* CAccountManagerPropertiesPage::GetNext() const
} else if (GetProjectPropertiesSucceeded()) {
// We were successful in retrieving the project properties
return PAGE_TRANSITION_NEXT(ID_ACCOUNTINFOPAGE);
} else if (GetProjectPropertiesDNSFailure() || GetNetworkConnectionNotDetected()) {
} else if (GetProjectPropertiesCommunicationFailure() && GetNetworkConnectionNotDetected()) {
// No Internet Connection
return PAGE_TRANSITION_NEXT(ID_ERRPROXYINFOPAGE);
} else if (GetProjectPropertiesURLFailure()) {

View File

@ -114,9 +114,6 @@ public:
bool GetProjectPropertiesURLFailure() const { return m_bProjectPropertiesURLFailure ; }
void SetProjectPropertiesURLFailure(bool value) { m_bProjectPropertiesURLFailure = value ; }
bool GetProjectPropertiesDNSFailure() const { return m_bProjectPropertiesDNSFailure ; }
void SetProjectPropertiesDNSFailure(bool value) { m_bProjectPropertiesDNSFailure = value ; }
bool GetProjectPropertiesCommunicationFailure() const { return m_bProjectPropertiesCommunicationFailure ; }
void SetProjectPropertiesCommunicationFailure(bool value) { m_bProjectPropertiesCommunicationFailure = value ; }
@ -156,7 +153,6 @@ public:
////@end CAccountManagerPropertiesPage member variables
bool m_bProjectPropertiesSucceeded;
bool m_bProjectPropertiesURLFailure;
bool m_bProjectPropertiesDNSFailure;
bool m_bProjectPropertiesCommunicationFailure;
bool m_bProjectAccountCreationDisabled;
bool m_bProjectClientAccountCreationDisabled;

View File

@ -110,7 +110,6 @@ bool CProjectPropertiesPage::Create( CBOINCBaseWizard* parent )
m_bProjectPropertiesSucceeded = false;
m_bProjectPropertiesURLFailure = false;
m_bProjectPropertiesDNSFailure = false;
m_bProjectPropertiesCommunicationFailure = false;
m_bProjectAccountCreationDisabled = false;
m_bProjectClientAccountCreationDisabled = false;
@ -195,7 +194,7 @@ wxWizardPageEx* CProjectPropertiesPage::GetNext() const
} else if (GetProjectPropertiesSucceeded()) {
// We were successful in retrieving the project properties
return PAGE_TRANSITION_NEXT(ID_ACCOUNTINFOPAGE);
} else if (GetProjectPropertiesDNSFailure() || GetNetworkConnectionNotDetected()) {
} else if (GetProjectPropertiesCommunicationFailure() && GetNetworkConnectionNotDetected()) {
// No Internet Connection
return PAGE_TRANSITION_NEXT(ID_ERRPROXYINFOPAGE);
} else if (GetProjectPropertiesURLFailure()) {
@ -339,7 +338,6 @@ void CProjectPropertiesPage::OnPageChanged( wxWizardExEvent& event ) {
SetProjectPropertiesSucceeded(false);
SetProjectPropertiesURLFailure(false);
SetProjectPropertiesDNSFailure(false);
SetProjectPropertiesCommunicationFailure(false);
SetProjectAccountCreationDisabled(false);
SetProjectClientAccountCreationDisabled(false);
@ -466,23 +464,8 @@ void CProjectPropertiesPage::OnStateChange( CProjectPropertiesPageEvent& WXUNUSE
SetProjectPropertiesURLFailure(false);
}
// DNS failures can be caused by a few different situations, but
// the most common is the machine is sitting behind a firewall
// and the local DNS servers do not know about the outside world.
// In this situation the user is expected to use a proxy server.
//
// Project domain moves or host name changes don't happen
// often enough for them to be the default assumtion.
//
bSuccessfulCondition =
(!iReturnValue) && (ERR_GETHOSTBYNAME == pc->error_num);
if (bSuccessfulCondition) {
SetProjectPropertiesDNSFailure(true);
} else {
SetProjectPropertiesDNSFailure(false);
}
bSuccessfulCondition =
(!iReturnValue) && (ERR_GETHOSTBYNAME == pc->error_num) ||
(!iReturnValue) && (ERR_CONNECT == pc->error_num) ||
(!iReturnValue) && (ERR_XML_PARSE == pc->error_num) ||
(!iReturnValue) && (ERR_PROJECT_DOWN == pc->error_num);

View File

@ -114,9 +114,6 @@ public:
bool GetProjectPropertiesURLFailure() const { return m_bProjectPropertiesURLFailure ; }
void SetProjectPropertiesURLFailure(bool value) { m_bProjectPropertiesURLFailure = value ; }
bool GetProjectPropertiesDNSFailure() const { return m_bProjectPropertiesDNSFailure ; }
void SetProjectPropertiesDNSFailure(bool value) { m_bProjectPropertiesDNSFailure = value ; }
bool GetProjectPropertiesCommunicationFailure() const { return m_bProjectPropertiesCommunicationFailure ; }
void SetProjectPropertiesCommunicationFailure(bool value) { m_bProjectPropertiesCommunicationFailure = value ; }
@ -155,7 +152,6 @@ public:
////@end CProjectPropertiesPage member variables
bool m_bProjectPropertiesSucceeded;
bool m_bProjectPropertiesURLFailure;
bool m_bProjectPropertiesDNSFailure;
bool m_bProjectPropertiesCommunicationFailure;
bool m_bProjectAccountCreationDisabled;
bool m_bProjectClientAccountCreationDisabled;