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

Side by Side Diff: net/cert/x509_certificate.cc

Issue 86913002: Make base::Base64Encode() return void (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: One more chromeos-specific fix. Created 7 years 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
« no previous file with comments | « net/base/keygen_handler_win.cc ('k') | net/http/http_auth_gssapi_posix.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "net/cert/x509_certificate.h" 5 #include "net/cert/x509_certificate.h"
6 6
7 #include <stdlib.h> 7 #include <stdlib.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <map> 10 #include <map>
(...skipping 647 matching lines...) Expand 10 before | Expand all | Expand 10 after
658 return VerifyHostname(hostname, subject_.common_name, dns_names, ip_addrs, 658 return VerifyHostname(hostname, subject_.common_name, dns_names, ip_addrs,
659 common_name_fallback_used); 659 common_name_fallback_used);
660 } 660 }
661 661
662 // static 662 // static
663 bool X509Certificate::GetPEMEncodedFromDER(const std::string& der_encoded, 663 bool X509Certificate::GetPEMEncodedFromDER(const std::string& der_encoded,
664 std::string* pem_encoded) { 664 std::string* pem_encoded) {
665 if (der_encoded.empty()) 665 if (der_encoded.empty())
666 return false; 666 return false;
667 std::string b64_encoded; 667 std::string b64_encoded;
668 if (!base::Base64Encode(der_encoded, &b64_encoded) || b64_encoded.empty()) 668 base::Base64Encode(der_encoded, &b64_encoded);
669 return false;
670 *pem_encoded = "-----BEGIN CERTIFICATE-----\n"; 669 *pem_encoded = "-----BEGIN CERTIFICATE-----\n";
671 670
672 // Divide the Base-64 encoded data into 64-character chunks, as per 671 // Divide the Base-64 encoded data into 64-character chunks, as per
673 // 4.3.2.4 of RFC 1421. 672 // 4.3.2.4 of RFC 1421.
674 static const size_t kChunkSize = 64; 673 static const size_t kChunkSize = 64;
675 size_t chunks = (b64_encoded.size() + (kChunkSize - 1)) / kChunkSize; 674 size_t chunks = (b64_encoded.size() + (kChunkSize - 1)) / kChunkSize;
676 for (size_t i = 0, chunk_offset = 0; i < chunks; 675 for (size_t i = 0, chunk_offset = 0; i < chunks;
677 ++i, chunk_offset += kChunkSize) { 676 ++i, chunk_offset += kChunkSize) {
678 pem_encoded->append(b64_encoded, chunk_offset, kChunkSize); 677 pem_encoded->append(b64_encoded, chunk_offset, kChunkSize);
679 pem_encoded->append("\n"); 678 pem_encoded->append("\n");
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
729 RemoveFromCache(cert_handle_); 728 RemoveFromCache(cert_handle_);
730 FreeOSCertHandle(cert_handle_); 729 FreeOSCertHandle(cert_handle_);
731 } 730 }
732 for (size_t i = 0; i < intermediate_ca_certs_.size(); ++i) { 731 for (size_t i = 0; i < intermediate_ca_certs_.size(); ++i) {
733 RemoveFromCache(intermediate_ca_certs_[i]); 732 RemoveFromCache(intermediate_ca_certs_[i]);
734 FreeOSCertHandle(intermediate_ca_certs_[i]); 733 FreeOSCertHandle(intermediate_ca_certs_[i]);
735 } 734 }
736 } 735 }
737 736
738 } // namespace net 737 } // namespace net
OLDNEW
« no previous file with comments | « net/base/keygen_handler_win.cc ('k') | net/http/http_auth_gssapi_posix.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698