117 lines
2.9 KiB
Plaintext
117 lines
2.9 KiB
Plaintext
/*
|
|
* Copyright (C) 2019 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
package android.net;
|
|
|
|
import android.net.ResolverOptionsParcel;
|
|
|
|
/**
|
|
* Configuration for a resolver parameters.
|
|
*
|
|
* {@hide}
|
|
*/
|
|
parcelable ResolverParamsParcel {
|
|
/**
|
|
* The network ID of the network for which information should be configured.
|
|
*/
|
|
int netId;
|
|
|
|
/**
|
|
* Sample lifetime in seconds.
|
|
*/
|
|
int sampleValiditySeconds;
|
|
|
|
/**
|
|
* Use to judge if the server is considered broken.
|
|
*/
|
|
int successThreshold;
|
|
|
|
/**
|
|
* Min. # samples.
|
|
*/
|
|
int minSamples;
|
|
|
|
/**
|
|
* Max # samples.
|
|
*/
|
|
int maxSamples;
|
|
|
|
/**
|
|
* Retransmission interval in milliseconds.
|
|
*/
|
|
int baseTimeoutMsec;
|
|
|
|
/**
|
|
* Number of retries.
|
|
*/
|
|
int retryCount;
|
|
|
|
/**
|
|
* The DNS servers to configure for the network.
|
|
*/
|
|
@utf8InCpp String[] servers;
|
|
|
|
/**
|
|
* The search domains to configure.
|
|
*/
|
|
@utf8InCpp String[] domains;
|
|
|
|
/**
|
|
* The TLS subject name to require for all servers, or empty if there is none.
|
|
*/
|
|
@utf8InCpp String tlsName;
|
|
|
|
/**
|
|
* The DNS servers to configure for strict mode Private DNS.
|
|
*/
|
|
@utf8InCpp String[] tlsServers;
|
|
|
|
/**
|
|
* An array containing TLS public key fingerprints (pins) of which each server must match
|
|
* at least one, or empty if there are no pinned keys.
|
|
*/
|
|
// DEPRECATED:Superseded by caCertificate below.
|
|
@utf8InCpp String[] tlsFingerprints = {};
|
|
|
|
/**
|
|
* Certificate authority that signed the certificate; only used by DNS-over-TLS tests.
|
|
*
|
|
*/
|
|
@utf8InCpp String caCertificate = "";
|
|
|
|
/**
|
|
* The timeout for the connection attempt to a Private DNS server.
|
|
* It's initialized to 0 to use the predefined default value.
|
|
* Setting a non-zero value to it takes no effect anymore. The timeout is configurable only
|
|
* by the experiement flag.
|
|
*/
|
|
int tlsConnectTimeoutMs = 0;
|
|
|
|
/**
|
|
* Knobs for OEM to control alternative behavior.
|
|
*/
|
|
@nullable
|
|
ResolverOptionsParcel resolverOptions;
|
|
|
|
/**
|
|
* The transport types associated to a given network.
|
|
* The valid value is defined in one of the IDnsResolver.TRANSPORT_* constants.
|
|
* If there are multiple transport types but can't be identified to a
|
|
* reasonable network type by DnsResolver, it would be considered as unknown.
|
|
*/
|
|
int[] transportTypes = {};
|
|
}
|