| Index: sdk/lib/io/secure_socket.dart
 | 
| diff --git a/sdk/lib/io/secure_socket.dart b/sdk/lib/io/secure_socket.dart
 | 
| index db82ea4d7b6137bc32ec15c47b7795ae5a2ae50a..17eb384021d326c3377082a3f1248bbdb901f39a 100644
 | 
| --- a/sdk/lib/io/secure_socket.dart
 | 
| +++ b/sdk/lib/io/secure_socket.dart
 | 
| @@ -35,7 +35,7 @@ abstract class SecureSocket implements Socket {
 | 
|     * to continue the [SecureSocket] connection.
 | 
|     */
 | 
|    static Future<SecureSocket> connect(
 | 
| -      host,
 | 
| +      String host,
 | 
|        int port,
 | 
|        {bool sendClientCertificate: false,
 | 
|         String certificateName,
 | 
| @@ -208,7 +208,7 @@ abstract class RawSecureSocket implements RawSocket {
 | 
|     * to continue the [RawSecureSocket] connection.
 | 
|     */
 | 
|    static Future<RawSecureSocket> connect(
 | 
| -      host,
 | 
| +      String host,
 | 
|        int port,
 | 
|        {bool sendClientCertificate: false,
 | 
|         String certificateName,
 | 
| @@ -244,7 +244,7 @@ abstract class RawSecureSocket implements RawSocket {
 | 
|         String certificateName,
 | 
|         bool onBadCertificate(X509Certificate certificate)}) {
 | 
|      return  _RawSecureSocket.connect(
 | 
| -        socket.address,
 | 
| +        socket.host,
 | 
|          socket.port,
 | 
|          certificateName,
 | 
|          is_server: false,
 | 
| @@ -345,7 +345,7 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|    StreamSubscription<RawSocketEvent> _socketSubscription;
 | 
|    List<int> _carryOverData;
 | 
|    int _carryOverDataIndex = 0;
 | 
| -  final InternetAddress address;
 | 
| +  final String host;
 | 
|    final bool is_server;
 | 
|    final String certificateName;
 | 
|    final bool requestClientCertificate;
 | 
| @@ -366,7 +366,7 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|    _SecureFilter _secureFilter = new _SecureFilter();
 | 
|  
 | 
|    static Future<_RawSecureSocket> connect(
 | 
| -      host,
 | 
| +      String host,
 | 
|        int requestedPort,
 | 
|        String certificateName,
 | 
|        {bool is_server,
 | 
| @@ -376,15 +376,8 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|         bool requestClientCertificate: false,
 | 
|         bool requireClientCertificate: false,
 | 
|         bool sendClientCertificate: false,
 | 
| -       bool onBadCertificate(X509Certificate certificate)}) {
 | 
| -    var future;
 | 
| -    if (host is String) {
 | 
| -      future = InternetAddress.lookup(host).then((addrs) => addrs.first);
 | 
| -    } else {
 | 
| -      future = new Future.value(host);
 | 
| -    }
 | 
| -    return future.then((addr) {
 | 
| -     return new _RawSecureSocket(addr,
 | 
| +       bool onBadCertificate(X509Certificate certificate)}){
 | 
| +     return new _RawSecureSocket(host,
 | 
|                                   requestedPort,
 | 
|                                   certificateName,
 | 
|                                   is_server,
 | 
| @@ -396,11 +389,10 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|                                   sendClientCertificate,
 | 
|                                   onBadCertificate)
 | 
|           ._handshakeComplete.future;
 | 
| -    });
 | 
|    }
 | 
|  
 | 
|    _RawSecureSocket(
 | 
| -      InternetAddress this.address,
 | 
| +      String this.host,
 | 
|        int requestedPort,
 | 
|        String this.certificateName,
 | 
|        bool this.is_server,
 | 
| @@ -429,7 +421,7 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|      }
 | 
|      var futureSocket;
 | 
|      if (socket == null) {
 | 
| -      futureSocket = RawSocket.connect(address, requestedPort);
 | 
| +      futureSocket = RawSocket.connect(host, requestedPort);
 | 
|      } else {
 | 
|        futureSocket = new Future.value(socket);
 | 
|      }
 | 
| @@ -449,7 +441,7 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|          _socketSubscription.onDone(_doneHandler);
 | 
|        }
 | 
|        _connectPending = true;
 | 
| -      _secureFilter.connect(rawSocket.address.host,
 | 
| +      _secureFilter.connect(host,
 | 
|                              port,
 | 
|                              is_server,
 | 
|                              certificateName,
 | 
| @@ -483,9 +475,9 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
 | 
|    void _verifyFields() {
 | 
|      assert(is_server is bool);
 | 
|      assert(_socket == null || _socket is RawSocket);
 | 
| -    if (address is! InternetAddress) {
 | 
| +    if (host is! String) {
 | 
|        throw new ArgumentError(
 | 
| -          "RawSecureSocket constructor: host is not an InternetAddress");
 | 
| +          "RawSecureSocket constructor: host is not a String");
 | 
|      }
 | 
|      if (certificateName != null && certificateName is! String) {
 | 
|        throw new ArgumentError("certificateName is not null or a String");
 | 
| 
 |