Index: net/third_party/nss/ssl/ssl3con.c |
diff --git a/net/third_party/nss/ssl/ssl3con.c b/net/third_party/nss/ssl/ssl3con.c |
index 7ff7beacbc18899ca037da0630866c0bc1517e63..ffb757a9a9ddca7edc01b0fdfdb5296e92af705b 100644 |
--- a/net/third_party/nss/ssl/ssl3con.c |
+++ b/net/third_party/nss/ssl/ssl3con.c |
@@ -5373,15 +5373,7 @@ ssl3_SendClientHello(sslSocket *ss, PRBool resending) |
} |
actual_count++; |
} |
- if (fallbackSCSV) { |
- rv = ssl3_AppendHandshakeNumber(ss, TLS_FALLBACK_SCSV, |
- sizeof(ssl3CipherSuite)); |
- if (rv != SECSuccess) { |
- if (sid->u.ssl3.lock) { NSSRWLock_UnlockRead(sid->u.ssl3.lock); } |
- return rv; /* err set by ssl3_AppendHandshake* */ |
- } |
- actual_count++; |
- } |
+ |
for (i = 0; i < ssl_V3_SUITES_IMPLEMENTED; i++) { |
ssl3CipherSuiteCfg *suite = &ss->cipherSuites[i]; |
if (config_match(suite, ss->ssl3.policy, PR_TRUE, &ss->vrange)) { |
@@ -5401,6 +5393,16 @@ ssl3_SendClientHello(sslSocket *ss, PRBool resending) |
} |
} |
+ if (fallbackSCSV) { |
+ rv = ssl3_AppendHandshakeNumber(ss, TLS_FALLBACK_SCSV, |
+ sizeof(ssl3CipherSuite)); |
+ if (rv != SECSuccess) { |
+ if (sid->u.ssl3.lock) { NSSRWLock_UnlockRead(sid->u.ssl3.lock); } |
+ return rv; /* err set by ssl3_AppendHandshake* */ |
+ } |
+ actual_count++; |
+ } |
+ |
/* if cards were removed or inserted between count_cipher_suites and |
* generating our list, detect the error here rather than send it off to |
* the server.. */ |