Add support to QUIC for QUIC_VERSION_8: for RSA-PSS signatures, set
the salt length to the digest length.

This is recommended by RFC 4055, Section 3.1:

saltLength

  The saltLength field is the octet length of the salt.  For a
  given hashAlgorithm, the recommended value of saltLength is the
  number of octets in the hash value.  ...

OpenSSL's default salt length is the special value -2. When signing,
-2 sets the salt length to the maximum permissible value. When
verifying, -2 causes the salt length to be automatically determined
based on the PSS block structure.

Merge internal CL: 50532662

[email protected],[email protected]
BUG=none
TEST=net_unittests

Review URL: https://chromiumcodereview.appspot.com/22647002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216608 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/net/quic/quic_protocol.h b/net/quic/quic_protocol.h
index 98fe2914..f332f9f 100644
--- a/net/quic/quic_protocol.h
+++ b/net/quic/quic_protocol.h
@@ -180,14 +180,16 @@
 // The available versions of QUIC. Guaranteed that the integer value of the enum
 // will match the version number.
 // When adding a new version to this enum you should add it to
-// kSupportedVersions (if appropriate), and also add a new case to the helper
-// methods QuicVersionToQuicTag, and QuicTagToQuicVersion.
+// kSupportedQuicVersions (if appropriate), and also add a new case to the
+// helper methods QuicVersionToQuicTag, QuicTagToQuicVersion, and
+// QuicVersionToString.
 enum QuicVersion {
   // Special case to indicate unknown/unsupported QUIC version.
   QUIC_VERSION_UNSUPPORTED = 0,
 
   QUIC_VERSION_6 = 6,
-  QUIC_VERSION_7 = 7,  // Current version.
+  QUIC_VERSION_7 = 7,
+  QUIC_VERSION_8 = 8,  // Current version.
 };
 
 // This vector contains QUIC versions which we currently support.
@@ -195,7 +197,7 @@
 // element, with subsequent elements in descending order (versions can be
 // skipped as necessary).
 static const QuicVersion kSupportedQuicVersions[] =
-    {QUIC_VERSION_7, QUIC_VERSION_6};
+    {QUIC_VERSION_8, QUIC_VERSION_7, QUIC_VERSION_6};
 
 typedef std::vector<QuicVersion> QuicVersionVector;