| // Copyright 2023 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. |
| { |
| include: [ |
| "//src/connectivity/network/meta/netstack-common.shard.cml", |
| "//src/connectivity/network/netstack/meta/netstack2-common.shard.cml", |
| "//src/connectivity/network/netstack/meta/netstack2-prod.shard.cml", |
| "//src/connectivity/network/netstack3/meta/netstack3.shard.cml", |
| "//src/connectivity/network/netstack3/meta/routed_configs.shard.cml", |
| "trace/client.shard.cml", |
| ], |
| program: { |
| runner: "elf", |
| binary: "bin/netstack_proxy", |
| }, |
| children: [ |
| // TODO(https://fxbug.dev/42076541): This is transitional. Once the DHCP |
| // client is being used by both netstacks, it should be moved out of |
| // the netstack realm and into the network realm. |
| { |
| name: "dhcp-client", |
| url: "#meta/dhcp-client.cm", |
| }, |
| ], |
| capabilities: [ |
| // TODO(https://fxbug.dev/42076541): Remove this once the DHCP client is |
| // in the network realm and can get the packet socket provider |
| // capability from there. |
| { |
| protocol: [ "fuchsia.net.dhcp.ClientProvider" ], |
| }, |
| ], |
| use: [ |
| { |
| protocol: [ |
| "fuchsia.net.stackmigrationdeprecated.State", |
| "fuchsia.process.Launcher", |
| ], |
| }, |
| |
| // TODO(https://fxbug.dev/42076541): Remove this once the DHCP client is |
| // in the network realm and can get the packet socket provider |
| // capability from there. |
| { |
| protocol: "fuchsia.net.dhcp.ClientProvider", |
| from: "#dhcp-client", |
| dependency: "weak", |
| }, |
| ], |
| offer: [ |
| // TODO(https://fxbug.dev/42076541): Remove this once the DHCP client is |
| // in the network realm and can get the packet socket provider |
| // capability from there. |
| { |
| protocol: [ |
| "fuchsia.posix.socket.packet.Provider", |
| "fuchsia.posix.socket.Provider", |
| ], |
| from: "self", |
| to: "#dhcp-client", |
| }, |
| ], |
| expose: [ |
| // TODO(https://fxbug.dev/42076541): Remove this once the DHCP client is |
| // in the network realm and can get the packet socket provider |
| // capability from there. |
| { |
| protocol: "fuchsia.net.dhcp.ClientProvider", |
| from: "self", |
| }, |
| ], |
| } |