services.net: Add a static library needed by wifi module

Add a new static library that compiles against system_current which
includes all the parts needed by the wifi mainline module.

Also,
a) Refactored TcpKeepalivePacketData to use public APIs. The parcel
read/write methods in the base class are @hide and they're not used by
the other child class (NatKeepalivePacketData). So, remove the @hide
method from base class and use it direcly in the child class.
b) Add jar-jar rules for all the statically linked dependencies in wifi
service jar rules.

Exempt-From-Owner-Approval: Minor change on top of owner's approval.
Bug: 145825329
Test: Device boots up & connects to wifi networks.
Change-Id: Ifde69b579cfe5b813766f676acb10e436e64a44c
This commit is contained in:
Roshan Pius
2020-02-21 07:37:30 -08:00
parent 58d144f6ed
commit 1378facba4

View File

@@ -22,7 +22,6 @@ import static android.net.InvalidPacketException.ERROR_INVALID_PORT;
import android.annotation.NonNull;
import android.annotation.SystemApi;
import android.net.util.IpUtils;
import android.os.Parcel;
import android.util.Log;
import java.net.InetAddress;
@@ -30,7 +29,6 @@ import java.net.InetAddress;
/**
* Represents the actual packets that are sent by the
* {@link android.net.SocketKeepalive} API.
*
* @hide
*/
@SystemApi
@@ -54,6 +52,9 @@ public class KeepalivePacketData {
/** Packet data. A raw byte string of packet data, not including the link-layer header. */
private final byte[] mPacket;
// Note: If you add new fields, please modify the parcelling code in the child classes.
// This should only be constructed via static factory methods, such as
// nattKeepalivePacket.
/**
@@ -87,21 +88,4 @@ public class KeepalivePacketData {
return mPacket.clone();
}
/** @hide */
public void writeToParcel(Parcel out, int flags) {
out.writeString(srcAddress.getHostAddress());
out.writeString(dstAddress.getHostAddress());
out.writeInt(srcPort);
out.writeInt(dstPort);
out.writeByteArray(mPacket);
}
/** @hide */
protected KeepalivePacketData(Parcel in) {
srcAddress = NetworkUtils.numericToInetAddress(in.readString());
dstAddress = NetworkUtils.numericToInetAddress(in.readString());
srcPort = in.readInt();
dstPort = in.readInt();
mPacket = in.createByteArray();
}
}