diff --git a/indra/newview/llsechandler_basic.cpp b/indra/newview/llsechandler_basic.cpp
index 904bb03270065573852bd41c975cc1d3241ba4b7..8d64c8c04f4bf2b3bd00dd29f482f024d0263923 100644
--- a/indra/newview/llsechandler_basic.cpp
+++ b/indra/newview/llsechandler_basic.cpp
@@ -1005,6 +1005,8 @@ void LLBasicCertificateStore::validate(int validation_policy,
 									   LLPointer<LLCertificateChain> cert_chain,
 									   const LLSD& validation_params)
 {
+	// If --no-verify-ssl-cert was passed on the command line, stop right now.
+	if (gSavedSettings.getBOOL("NoVerifySSLCert")) return;
 
 	if(cert_chain->size() < 1)
 	{
diff --git a/indra/newview/tests/llsechandler_basic_test.cpp b/indra/newview/tests/llsechandler_basic_test.cpp
index daa10819fc036d8683ed445c7d750a162f6580d1..02354009760348c40dd7bc1b294d250a9ed0a449 100644
--- a/indra/newview/tests/llsechandler_basic_test.cpp
+++ b/indra/newview/tests/llsechandler_basic_test.cpp
@@ -86,6 +86,9 @@ std::string LLControlGroup::getString(const std::string& name)
 	return "";
 }
 
+// Stub for --no-verify-ssl-cert
+BOOL LLControlGroup::getBOOL(const std::string& name) { return FALSE; }
+
 LLSD LLCredential::getLoginParams()
 {
 	LLSD result = LLSD::emptyMap();