• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2022 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #pragma once
18 // TODO: deduplicate with the constants in NetdConstants.h.
19 #include <aidl/android/net/INetd.h>
20 #include "clat_mark.h"
21 
22 using aidl::android::net::INetd;
23 
24 static_assert(INetd::CLAT_MARK == CLAT_MARK, "must be 0xDEADC1A7");
25 
26 enum FirewallRule { ALLOW = INetd::FIREWALL_RULE_ALLOW, DENY = INetd::FIREWALL_RULE_DENY };
27 
28 // ALLOWLIST means the firewall denies all by default, uids must be explicitly ALLOWed
29 // DENYLIST means the firewall allows all by default, uids must be explicitly DENYed
30 
31 enum FirewallType { ALLOWLIST = INetd::FIREWALL_ALLOWLIST, DENYLIST = INetd::FIREWALL_DENYLIST };
32 
33 // LINT.IfChange(firewall_chain)
34 enum ChildChain {
35     NONE = 0,
36     DOZABLE = 1,
37     STANDBY = 2,
38     POWERSAVE = 3,
39     RESTRICTED = 4,
40     LOW_POWER_STANDBY = 5,
41     LOCKDOWN = 6,
42     OEM_DENY_1 = 7,
43     OEM_DENY_2 = 8,
44     OEM_DENY_3 = 9,
45     INVALID_CHAIN
46 };
47 // LINT.ThenChange(packages/modules/Connectivity/framework/src/android/net/ConnectivityManager.java)
48