| Index: net/socket/ssl_server_socket_nss.cc | 
| diff --git a/net/socket/ssl_server_socket_nss.cc b/net/socket/ssl_server_socket_nss.cc | 
| index 614265e45eecce1653acbf03ce79b90f80e50954..4984ece9d770ce8b28cf04a3dbad640a838a5449 100644 | 
| --- a/net/socket/ssl_server_socket_nss.cc | 
| +++ b/net/socket/ssl_server_socket_nss.cc | 
| @@ -82,7 +82,7 @@ scoped_ptr<SSLServerSocket> CreateSSLServerSocket( | 
| scoped_ptr<StreamSocket> socket, | 
| X509Certificate* cert, | 
| crypto::RSAPrivateKey* key, | 
| -    const SSLConfig& ssl_config) { | 
| +    const SSLServerConfig& ssl_config) { | 
| DCHECK(g_nss_server_sockets_init) << "EnableSSLServerSockets() has not been" | 
| << " called yet!"; | 
|  | 
| @@ -94,7 +94,7 @@ SSLServerSocketNSS::SSLServerSocketNSS( | 
| scoped_ptr<StreamSocket> transport_socket, | 
| scoped_refptr<X509Certificate> cert, | 
| crypto::RSAPrivateKey* key, | 
| -    const SSLConfig& ssl_config) | 
| +    const SSLServerConfig& ssl_config) | 
| : transport_send_busy_(false), | 
| transport_recv_busy_(false), | 
| user_read_buf_len_(0), | 
| @@ -332,6 +332,15 @@ int SSLServerSocketNSS::InitializeSSLOptions() { | 
|  | 
| int rv; | 
|  | 
| +  if (ssl_config_.require_client_cert) { | 
| +    rv = SSL_OptionSet(nss_fd_, SSL_REQUEST_CERTIFICATE, PR_TRUE); | 
| +    if (rv != SECSuccess) { | 
| +      LogFailedNSSFunction(net_log_, "SSL_OptionSet", | 
| +                           "SSL_REQUEST_CERTIFICATE"); | 
| +      return ERR_UNEXPECTED; | 
| +    } | 
| +  } | 
| + | 
| rv = SSL_OptionSet(nss_fd_, SSL_SECURITY, PR_TRUE); | 
| if (rv != SECSuccess) { | 
| LogFailedNSSFunction(net_log_, "SSL_OptionSet", "SSL_SECURITY"); | 
|  |