Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Issue 331143006: QUIC Crypto - return the reasons for reject message. Reject reason (Closed)

Created:
6 years, 6 months ago by ramant (doing other things)
Modified:
6 years, 6 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, avd, Ryan Hamilton
Project:
chromium
Visibility:
Public.

Description

QUIC Crypto - return the reasons for reject message. Reject reason contains failures due to invalid source address token client nonce and server nonce. Will add UMA histogram in chrome when this CL is merged. Send reject reason to client for debugging purposes. Protected behind new flags: FLAGS_use_early_return_when_verifying_chlo and FLAGS_send_quic_crypto_reject_reason Merge internal change: 69227401 R=jar@chromium.org, wtc@chromium.org, avd@google.com Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=278523

Patch Set 1 #

Patch Set 2 : Rebase with TOT #

Total comments: 36

Patch Set 3 : Fixed wtc's comments for Patch Set 2 #

Patch Set 4 : Used static_cast<uint32> per avd's comments #

Total comments: 10
Unified diffs Side-by-side diffs Delta from patch set Stats (+440 lines, -73 lines) Patch
M net/quic/crypto/crypto_protocol.h View 1 2 1 chunk +3 lines, -0 lines 2 comments Download
M net/quic/crypto/crypto_server_test.cc View 1 2 15 chunks +213 lines, -13 lines 2 comments Download
M net/quic/crypto/quic_crypto_client_config.cc View 1 2 1 chunk +11 lines, -0 lines 0 comments Download
M net/quic/crypto/quic_crypto_server_config.h View 1 2 3 chunks +38 lines, -11 lines 0 comments Download
M net/quic/crypto/quic_crypto_server_config.cc View 1 2 3 13 chunks +90 lines, -26 lines 6 comments Download
M net/quic/crypto/quic_crypto_server_config_test.cc View 3 chunks +76 lines, -23 lines 0 comments Download
M net/quic/quic_flags.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M net/quic/quic_flags.cc View 1 2 1 chunk +7 lines, -0 lines 0 comments Download

Messages

Total messages: 13 (0 generated)
ramant (doing other things)
6 years, 6 months ago (2014-06-16 17:33:05 UTC) #1
ramant (doing other things)
Hi Jim and Wan-Teh, This CL is merge of the internal server changes for reject ...
6 years, 6 months ago (2014-06-16 17:35:55 UTC) #2
wtc
Patch set 2 LGTM. I didn't review the tests, but I reviewed everything else carefully. ...
6 years, 6 months ago (2014-06-19 00:13:25 UTC) #3
ramant (doing other things)
PTAL. Thanks. https://codereview.chromium.org/331143006/diff/40001/net/quic/crypto/crypto_protocol.h File net/quic/crypto/crypto_protocol.h (right): https://codereview.chromium.org/331143006/diff/40001/net/quic/crypto/crypto_protocol.h#newcode135 net/quic/crypto/crypto_protocol.h:135: const QuicTag kRejectReason = TAG('R', 'R', 'E', ...
6 years, 6 months ago (2014-06-19 01:57:35 UTC) #4
avd
https://codereview.chromium.org/331143006/diff/40001/net/quic/crypto/quic_crypto_server_config.cc File net/quic/crypto/quic_crypto_server_config.cc (right): https://codereview.chromium.org/331143006/diff/40001/net/quic/crypto/quic_crypto_server_config.cc#newcode87 net/quic/crypto/quic_crypto_server_config.cc:87: vector<HandshakeFailureReason> reject_reasons; On 2014/06/19 01:57:35, ramant wrote: > On ...
6 years, 6 months ago (2014-06-19 02:27:54 UTC) #5
ramant (doing other things)
https://codereview.chromium.org/331143006/diff/40001/net/quic/crypto/quic_crypto_server_config.cc File net/quic/crypto/quic_crypto_server_config.cc (right): https://codereview.chromium.org/331143006/diff/40001/net/quic/crypto/quic_crypto_server_config.cc#newcode87 net/quic/crypto/quic_crypto_server_config.cc:87: vector<HandshakeFailureReason> reject_reasons; On 2014/06/19 02:27:54, avd wrote: > On ...
6 years, 6 months ago (2014-06-19 17:25:48 UTC) #6
ramant (doing other things)
The CQ bit was checked by rtenneti@chromium.org
6 years, 6 months ago (2014-06-19 18:35:48 UTC) #7
ramant (doing other things)
Will submit a new CL for newer comments. thanks raman On 2014/06/19 17:25:48, ramant wrote: ...
6 years, 6 months ago (2014-06-19 18:36:35 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rtenneti@chromium.org/331143006/80001
6 years, 6 months ago (2014-06-19 18:37:19 UTC) #9
wtc
Patch set 4 LGTM. You can let the commit queue job finish and make the ...
6 years, 6 months ago (2014-06-19 19:58:43 UTC) #10
wtc
https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/quic_crypto_server_config.cc File net/quic/crypto/quic_crypto_server_config.cc (right): https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/quic_crypto_server_config.cc#newcode157 net/quic/crypto/quic_crypto_server_config.cc:157: static_cast<uint32>(CLIENT_NONCE_UNKNOWN_FAILURE)); It would be nice to omit the static_cast ...
6 years, 6 months ago (2014-06-19 20:04:09 UTC) #11
commit-bot: I haz the power
Change committed as 278523
6 years, 6 months ago (2014-06-19 23:03:36 UTC) #12
ramant (doing other things)
6 years, 6 months ago (2014-06-20 23:20:47 UTC) #13
Message was sent while issue was closed.
Fixed these comments in internal source tree first and then uploaded the merged
changes in  https://codereview.chromium.org/336273006/

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/crypto_p...
File net/quic/crypto/crypto_protocol.h (right):

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/crypto_p...
net/quic/crypto/crypto_protocol.h:114: const QuicTag kRREJ = TAG('R', 'R', 'E',
'J');
On 2014/06/19 19:58:42, wtc wrote:
> 
> Nit: please make this change in your new CL.
> 
> Move this definition to line 98, before the "// Server hello tags" line, and
> change this to:
> 
> // Rejection tags
> const QuicTag kRREJ = TAG('R', 'R', 'E', 'J');   // Reasons for server sending
>                                                  // rejection message tag.

Fixed in CL: https://codereview.chromium.org/336273006/

Done.

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/crypto_s...
File net/quic/crypto/crypto_server_test.cc (right):

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/crypto_s...
net/quic/crypto/crypto_server_test.cc:273: const QuicTag* reject_reason_tags;
On 2014/06/19 19:58:42, wtc wrote:
> 
> Nit: also rename this variable "reject_reasons".

Fixed in CL: https://codereview.chromium.org/336273006/

Done.

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/quic_cry...
File net/quic/crypto/quic_crypto_server_config.cc (right):

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/quic_cry...
net/quic/crypto/quic_crypto_server_config.cc:87: vector<uint32> reject_reasons;
On 2014/06/19 19:58:42, wtc wrote:
> 
> Nit: you may want to add a COMPILE_ASSERT that sizeof(QuicTag) ==
sizeof(uint32)
> because you are using GetTagList() to decode the kRREJ field of a CHLO.

Fixed in CL: https://codereview.chromium.org/336273006/

Done.

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/quic_cry...
net/quic/crypto/quic_crypto_server_config.cc:157:
static_cast<uint32>(CLIENT_NONCE_UNKNOWN_FAILURE));
On 2014/06/19 20:04:09, wtc wrote:
> 
> It would be nice to omit the static_cast if the compiler doesn't complain.
> Please do this experiment in your new CL.

Fixed in CL: https://codereview.chromium.org/336273006/

Done.

https://codereview.chromium.org/331143006/diff/80001/net/quic/crypto/quic_cry...
net/quic/crypto/quic_crypto_server_config.cc:981: // We want to contact strike
register if there are no errors because it is
On 2014/06/19 19:58:42, wtc wrote:
> 
> Nit: add "only" before "if".

Done.

Powered by Google App Engine
This is Rietveld 408576698