| // Copyright 2020 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| library fuchsia.net.name; |
| |
| using fuchsia.net; |
| using zx; |
| |
| /// Provides administration controls over name resolution settings. |
| [Discoverable] |
| protocol LookupAdmin { |
| /// Sets the DNS servers to `servers` |
| /// |
| /// + request `servers` The list of servers to use for domain name resolution, in priority |
| /// order. An empty list means no servers will be used and name resolution may fail. Each |
| /// `SocketAddress` in `servers` must be a valid unicast socket address. The list of servers |
| /// will be deduplicated. |
| /// * error Returns `ZX_ERR_INVALID_ARGS` if any of the provided addresses does not meet the |
| /// conditions above. |
| SetDnsServers(vector<fuchsia.net.SocketAddress>:MAX servers) -> () error zx.status; |
| |
| /// Gets the DNS servers currently in use to resolve name lookups. |
| /// - response `servers` The list of servers in use by `LookupAdmin`, in priority order. |
| GetDnsServers() -> (vector<fuchsia.net.SocketAddress>:MAX servers); |
| }; |