2019-12-16 12:15:20 +00:00
|
|
|
# Keep class's integer static field for MessageUtils to parsing their name.
|
2022-09-29 09:01:49 +00:00
|
|
|
-keepclassmembers class com.android.server.**,android.net.**,com.android.networkstack.** {
|
|
|
|
static final % POLICY_*;
|
|
|
|
static final % NOTIFY_TYPE_*;
|
|
|
|
static final % TRANSPORT_*;
|
|
|
|
static final % CMD_*;
|
|
|
|
static final % EVENT_*;
|
2019-12-16 12:15:20 +00:00
|
|
|
}
|
|
|
|
|
2021-10-19 17:59:01 +00:00
|
|
|
-keep class com.android.networkstack.tethering.util.BpfMap {
|
2020-11-11 16:17:15 +00:00
|
|
|
native <methods>;
|
|
|
|
}
|
|
|
|
|
2022-01-20 21:06:24 +00:00
|
|
|
-keep class com.android.networkstack.tethering.util.TcUtils {
|
|
|
|
native <methods>;
|
|
|
|
}
|
|
|
|
|
2022-04-19 21:45:04 +00:00
|
|
|
# Ensure runtime-visible field annotations are kept when using R8 full mode.
|
|
|
|
-keepattributes RuntimeVisibleAnnotations,AnnotationDefault
|
|
|
|
-keep interface com.android.networkstack.tethering.util.Struct$Field {
|
|
|
|
*;
|
|
|
|
}
|
2020-11-11 16:17:15 +00:00
|
|
|
-keepclassmembers public class * extends com.android.networkstack.tethering.util.Struct {
|
2021-04-14 01:30:55 +00:00
|
|
|
*;
|
2020-11-11 16:17:15 +00:00
|
|
|
}
|
|
|
|
|
2022-03-03 02:15:09 +00:00
|
|
|
# The lite proto runtime uses reflection to access fields based on the names in
|
|
|
|
# the schema, keep all the fields.
|
|
|
|
-keepclassmembers class * extends com.android.networkstack.tethering.protobuf.MessageLite {
|
|
|
|
<fields>;
|
2022-09-29 09:01:49 +00:00
|
|
|
}
|