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

Side by Side Diff: net/cert/internal/parse_ocsp.cc

Issue 2349093002: Change the interface for parsing SignatureAlgorithm to take a (Closed)
Patch Set: add comment Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <algorithm> 5 #include <algorithm>
6 6
7 #include "base/sha1.h" 7 #include "base/sha1.h"
8 #include "crypto/sha2.h" 8 #include "crypto/sha2.h"
9 #include "net/cert/internal/cert_errors.h" 9 #include "net/cert/internal/cert_errors.h"
10 #include "net/cert/internal/parse_ocsp.h" 10 #include "net/cert/internal/parse_ocsp.h"
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 if (!outer_parser.ReadSequence(&parser)) 317 if (!outer_parser.ReadSequence(&parser))
318 return false; 318 return false;
319 if (outer_parser.HasMore()) 319 if (outer_parser.HasMore())
320 return false; 320 return false;
321 321
322 if (!parser.ReadRawTLV(&(out->data))) 322 if (!parser.ReadRawTLV(&(out->data)))
323 return false; 323 return false;
324 der::Input sigalg_tlv; 324 der::Input sigalg_tlv;
325 if (!parser.ReadRawTLV(&sigalg_tlv)) 325 if (!parser.ReadRawTLV(&sigalg_tlv))
326 return false; 326 return false;
327 out->signature_algorithm = SignatureAlgorithm::CreateFromDer(sigalg_tlv); 327 // TODO(crbug.com/634443): Propagate the errors.
328 net::CertErrors errors;
329 out->signature_algorithm = SignatureAlgorithm::Create(sigalg_tlv, &errors);
328 if (!out->signature_algorithm) 330 if (!out->signature_algorithm)
329 return false; 331 return false;
330 if (!parser.ReadBitString(&(out->signature))) 332 if (!parser.ReadBitString(&(out->signature)))
331 return false; 333 return false;
332 der::Input certs_input; 334 der::Input certs_input;
333 if (!parser.ReadOptionalTag(der::ContextSpecificConstructed(0), &certs_input, 335 if (!parser.ReadOptionalTag(der::ContextSpecificConstructed(0), &certs_input,
334 &(out->has_certs))) { 336 &(out->has_certs))) {
335 return false; 337 return false;
336 } 338 }
337 339
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
552 &earliest_this_update)) { 554 &earliest_this_update)) {
553 return false; 555 return false;
554 } 556 }
555 if (response.this_update < earliest_this_update) 557 if (response.this_update < earliest_this_update)
556 return false; // Response is too old. 558 return false; // Response is too old.
557 559
558 return true; 560 return true;
559 } 561 }
560 562
561 } // namespace net 563 } // namespace net
OLDNEW
« no previous file with comments | « no previous file | net/cert/internal/parsed_certificate.cc » ('j') | net/cert/internal/signature_algorithm.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698