<?xml version="1.0" encoding="UTF-8"?> <!--*-nxml-*-->
<!DOCTYPE policyconfig PUBLIC "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
        "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">

<!--
  SPDX-License-Identifier: LGPL-2.1-or-later

  This file is part of systemd.

  systemd is free software; you can redistribute it and/or modify it
  under the terms of the GNU Lesser General Public License as published by
  the Free Software Foundation; either version 2.1 of the License, or
  (at your option) any later version.
-->

<policyconfig>

        <vendor>The systemd Project</vendor>
        <vendor_url>https://systemd.io</vendor_url>

        <action id="org.freedesktop.resolve1.register-service">
                <description gettext-domain="systemd">Register a DNS-SD service</description>
                <message gettext-domain="systemd">Authentication is required to register a DNS-SD service</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.unregister-service">
                <description gettext-domain="systemd">Unregister a DNS-SD service</description>
                <message gettext-domain="systemd">Authentication is required to unregister a DNS-SD service</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-dns-servers">
                <description gettext-domain="systemd">Set DNS servers</description>
                <message gettext-domain="systemd">Authentication is required to set DNS servers.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-domains">
                <description gettext-domain="systemd">Set domains</description>
                <message gettext-domain="systemd">Authentication is required to set domains.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-default-route">
                <description gettext-domain="systemd">Set default route</description>
                <message gettext-domain="systemd">Authentication is required to set default route.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-llmnr">
                <description gettext-domain="systemd">Enable/disable LLMNR</description>
                <message gettext-domain="systemd">Authentication is required to enable or disable LLMNR.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-mdns">
                <description gettext-domain="systemd">Enable/disable multicast DNS</description>
                <message gettext-domain="systemd">Authentication is required to enable or disable multicast DNS.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-dns-over-tls">
                <description gettext-domain="systemd">Enable/disable DNS over TLS</description>
                <message gettext-domain="systemd">Authentication is required to enable or disable DNS over TLS.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-dnssec">
                <description gettext-domain="systemd">Enable/disable DNSSEC</description>
                <message gettext-domain="systemd">Authentication is required to enable or disable DNSSEC.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.set-dnssec-negative-trust-anchors">
                <description gettext-domain="systemd">Set DNSSEC Negative Trust Anchors</description>
                <message gettext-domain="systemd">Authentication is required to set DNSSEC Negative Trust Anchors.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

        <action id="org.freedesktop.resolve1.revert">
                <description gettext-domain="systemd">Revert name resolution settings</description>
                <message gettext-domain="systemd">Authentication is required to reset name resolution settings.</message>
                <defaults>
                        <allow_any>auth_admin</allow_any>
                        <allow_inactive>auth_admin</allow_inactive>
                        <allow_active>auth_admin_keep</allow_active>
                </defaults>
                <annotate key="org.freedesktop.policykit.owner">unix-user:systemd-resolve</annotate>
        </action>

</policyconfig>
