# Keep JNI registered methods
-keepclasseswithmembers,includedescriptorclasses class * { native <methods>; }

-keepclassmembers class com.android.networkstack.android.net.ip.IpClient$IpClientCommands {
    static final int CMD_*;
    static final int EVENT_*;
}

-keepclassmembers class com.android.networkstack.android.net.dhcp.DhcpClient {
    static final int CMD_*;
    static final int EVENT_*;
}

-keepclassmembers public class * extends com.android.networkstack.com.android.net.module.util.Struct {
    *;
}

# The lite proto runtime uses reflection to access fields based on the names in
# the schema, keep all the fields.
# This replicates the base proguard rule used by the build by default
# (proguard_basic_keeps.flags), but needs to be specified here because the
# com.google.protobuf package is jarjared to the below package.
-keepclassmembers class * extends com.android.networkstack.com.google.protobuf.MessageLite { <fields>; }
