blob: 55db8a8e0242e6fd291337790e6703902463dee4 [file] [log] [blame]
// Copyright 2018 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.
module network.mojom;
import "services/network/public/mojom/ip_endpoint.mojom";
import "services/network/public/mojom/ssl_config.mojom";
// Represents a connected TLS client socket. Writes and Reads are through the
// data pipes supplied upon construction. Consumer should use SocketObserver
// interface to get notified about any error occurred during reading or writing
// to data pipes. Consumer can close the socket by destroying the interface
// pointer.
interface TLSClientSocket {
// Represents the options that consumers can specify when requesting a
// TLSClientSocket.
struct TLSClientSocketOptions {
SSLVersion version_min = kTLS1;
SSLVersion version_max = kTLS13;
// If true, the SSLInfo will be returned in the UpgradeToTLS callback on
// success.
bool send_ssl_info = false;
// If true, the SSLInfo will also be returned in the UpgradeToTLS callback.
bool unsafely_skip_cert_verification = false;