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

Side by Side Diff: net/socket/ssl_client_socket_mac.cc

Issue 10491007: fixed issue 128383 - replace GetPeerAddress(AddressList* address) with GetPeerAddress(IPEndPoint* a… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix according to review Created 8 years, 6 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 | Annotate | Revision Log
« no previous file with comments | « net/socket/ssl_client_socket_mac.h ('k') | net/socket/ssl_client_socket_nss.h » ('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/socket/ssl_client_socket_mac.h" 5 #include "net/socket/ssl_client_socket_mac.h"
6 6
7 #include <CoreServices/CoreServices.h> 7 #include <CoreServices/CoreServices.h>
8 #include <netdb.h> 8 #include <netdb.h>
9 #include <sys/socket.h> 9 #include <sys/socket.h>
10 #include <sys/types.h> 10 #include <sys/types.h>
(...skipping 591 matching lines...) Expand 10 before | Expand all | Expand 10 after
602 // 602 //
603 // Strictly speaking, we should check if we have received the close_notify 603 // Strictly speaking, we should check if we have received the close_notify
604 // alert message from the server, and return false in that case. Although 604 // alert message from the server, and return false in that case. Although
605 // the close_notify alert message means EOF in the SSL layer, it is just 605 // the close_notify alert message means EOF in the SSL layer, it is just
606 // bytes to the transport layer below, so 606 // bytes to the transport layer below, so
607 // transport_->socket()->IsConnectedAndIdle() returns the desired false 607 // transport_->socket()->IsConnectedAndIdle() returns the desired false
608 // when we receive close_notify. 608 // when we receive close_notify.
609 return completed_handshake() && transport_->socket()->IsConnectedAndIdle(); 609 return completed_handshake() && transport_->socket()->IsConnectedAndIdle();
610 } 610 }
611 611
612 int SSLClientSocketMac::GetPeerAddress(AddressList* address) const { 612 int SSLClientSocketMac::GetPeerAddress(IPEndPoint* address) const {
613 return transport_->socket()->GetPeerAddress(address); 613 return transport_->socket()->GetPeerAddress(address);
614 } 614 }
615 615
616 int SSLClientSocketMac::GetLocalAddress(IPEndPoint* address) const { 616 int SSLClientSocketMac::GetLocalAddress(IPEndPoint* address) const {
617 return transport_->socket()->GetLocalAddress(address); 617 return transport_->socket()->GetLocalAddress(address);
618 } 618 }
619 619
620 const BoundNetLog& SSLClientSocketMac::NetLog() const { 620 const BoundNetLog& SSLClientSocketMac::NetLog() const {
621 return net_log_; 621 return net_log_;
622 } 622 }
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
877 if (status) 877 if (status)
878 return NetErrorFromOSStatus(status); 878 return NetErrorFromOSStatus(status);
879 return OK; 879 return OK;
880 } 880 }
881 881
882 // Concatenate the hostname and peer address to use as the peer ID. To 882 // Concatenate the hostname and peer address to use as the peer ID. To
883 // resume a session, we must connect to the same server on the same port 883 // resume a session, we must connect to the same server on the same port
884 // using the same hostname (i.e., localhost and 127.0.0.1 are considered 884 // using the same hostname (i.e., localhost and 127.0.0.1 are considered
885 // different peers, which puts us through certificate validation again 885 // different peers, which puts us through certificate validation again
886 // and catches hostname/certificate name mismatches. 886 // and catches hostname/certificate name mismatches.
887 AddressList address; 887 IPEndPoint endpoint;
888 int rv = transport_->socket()->GetPeerAddress(&address); 888 int rv = transport_->socket()->GetPeerAddress(&endpoint);
889 if (rv != OK) 889 if (rv != OK)
890 return rv; 890 return rv;
891 const IPEndPoint& endpoint = address.front();
892 std::string peer_id(host_and_port_.ToString()); 891 std::string peer_id(host_and_port_.ToString());
893 peer_id += std::string(reinterpret_cast<const char*>(&endpoint.address()[0]), 892 peer_id += std::string(reinterpret_cast<const char*>(&endpoint.address()[0]),
894 endpoint.address().size()); 893 endpoint.address().size());
895 // SSLSetPeerID() treats peer_id as a binary blob, and makes its 894 // SSLSetPeerID() treats peer_id as a binary blob, and makes its
896 // own copy. 895 // own copy.
897 status = SSLSetPeerID(ssl_context_, peer_id.data(), peer_id.length()); 896 status = SSLSetPeerID(ssl_context_, peer_id.data(), peer_id.length());
898 if (status) 897 if (status)
899 return NetErrorFromOSStatus(status); 898 return NetErrorFromOSStatus(status);
900 899
901 return OK; 900 return OK;
(...skipping 538 matching lines...) Expand 10 before | Expand all | Expand 10 after
1440 if (rv < 0 && rv != ERR_IO_PENDING) { 1439 if (rv < 0 && rv != ERR_IO_PENDING) {
1441 us->write_io_buf_ = NULL; 1440 us->write_io_buf_ = NULL;
1442 return OSStatusFromNetError(rv); 1441 return OSStatusFromNetError(rv);
1443 } 1442 }
1444 1443
1445 // always lie to our caller 1444 // always lie to our caller
1446 return noErr; 1445 return noErr;
1447 } 1446 }
1448 1447
1449 } // namespace net 1448 } // namespace net
OLDNEW
« no previous file with comments | « net/socket/ssl_client_socket_mac.h ('k') | net/socket/ssl_client_socket_nss.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698