summaryrefslogtreecommitdiffstats
path: root/net/socket/ssl_client_socket_nss_factory.cc
blob: f7fc43555dc2b7c337d22df93cc6d66735a965e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright (c) 2010 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "net/socket/client_socket_factory.h"

#include "net/socket/ssl_client_socket_nss.h"
#include "net/socket/ssl_host_info.h"

// This file is only used on platforms where NSS is not the system SSL
// library.  When compiled, this file is the only object module that pulls
// in the dependency on NSPR and NSS.  This allows us to control which
// projects depend on NSPR and NSS on those platforms.

namespace net {

SSLClientSocket* SSLClientSocketNSSFactory(
    ClientSocketHandle* transport_socket,
    const HostPortPair& host_and_port,
    const SSLConfig& ssl_config,
    SSLHostInfo* ssl_host_info,
    DnsRRResolver* dnsrr_resolver) {
  scoped_ptr<SSLHostInfo> shi(ssl_host_info);
  return new SSLClientSocketNSS(transport_socket, host_and_port, ssl_config,
                                shi.release(), dnsrr_resolver);
}

}  // namespace net