blob: 7c9628c501e7d95f5f93f6cc94db2d2317b0329c [file] [log] [blame]
# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=7
CROS_WORKON_INCREMENTAL_BUILD=1
CROS_WORKON_LOCALNAME="platform2"
CROS_WORKON_PROJECT="chromiumos/platform2"
CROS_WORKON_OUTOFTREE_BUILD=1
CROS_WORKON_SUBTREE="common-mk dns-proxy metrics shill/dbus/client shill/net .gn"
PLATFORM_SUBDIR="dns-proxy"
inherit cros-workon platform user
DESCRIPTION="A daemon that provides DNS proxying services."
HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/HEAD/dns-proxy/"
LICENSE="BSD-Google"
SLOT="0/0"
KEYWORDS="~*"
COMMON_DEPEND="
chromeos-base/metrics:=
chromeos-base/minijail:=
chromeos-base/patchpanel:=
chromeos-base/patchpanel-client:=
chromeos-base/shill-dbus-client:=
chromeos-base/shill-net:=
dev-libs/protobuf:=
dev-libs/dbus-glib:=
sys-apps/dbus:=
net-misc/curl:=
"
RDEPEND="${COMMON_DEPEND}"
DEPEND="
${COMMON_DEPEND}
chromeos-base/permission_broker-client:=
"
pkg_preinst() {
enewuser "dns-proxy"
enewgroup "dns-proxy"
}
src_install() {
dosbin "${OUT}"/dnsproxyd
insinto /etc/init
doins init/dns-proxy.conf
insinto /usr/share/policy
newins seccomp/dns-proxy-seccomp-"${ARCH}".policy dns-proxy-seccomp.policy
local fuzzer_component_id="156085"
platform_fuzzer_install "${S}"/OWNERS "${OUT}"/ares_client_fuzzer \
--comp "${fuzzer_component_id}"
platform_fuzzer_install "${S}"/OWNERS "${OUT}"/doh_curl_client_fuzzer \
--comp "${fuzzer_component_id}"
platform_fuzzer_install "${S}"/OWNERS "${OUT}"/resolver_fuzzer \
--comp "${fuzzer_component_id}"
}
platform_pkg_test() {
platform_test "run" "${OUT}/dns-proxy_test"
}