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.

Bug: 145825329
Test: Device boots up & connects to wifi networks.
Change-Id: Ifde69b579cfe5b813766f676acb10e436e64a44c
Merged-In: Ifde69b579cfe5b813766f676acb10e436e64a44c
This commit is contained in:
Roshan Pius
2020-02-21 07:37:30 -08:00
parent e072ca8b35
commit fae5822946

View File

@@ -22,7 +22,6 @@ import static android.net.InvalidPacketException.ERROR_INVALID_PORT;
import android.annotation.NonNull; import android.annotation.NonNull;
import android.annotation.SystemApi; import android.annotation.SystemApi;
import android.net.util.IpUtils; import android.net.util.IpUtils;
import android.os.Parcel;
import android.util.Log; import android.util.Log;
import java.net.InetAddress; import java.net.InetAddress;
@@ -30,7 +29,6 @@ import java.net.InetAddress;
/** /**
* Represents the actual packets that are sent by the * Represents the actual packets that are sent by the
* {@link android.net.SocketKeepalive} API. * {@link android.net.SocketKeepalive} API.
*
* @hide * @hide
*/ */
@SystemApi @SystemApi
@@ -54,6 +52,9 @@ public class KeepalivePacketData {
/** Packet data. A raw byte string of packet data, not including the link-layer header. */ /** Packet data. A raw byte string of packet data, not including the link-layer header. */
private final byte[] mPacket; 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 // This should only be constructed via static factory methods, such as
// nattKeepalivePacket. // nattKeepalivePacket.
/** /**
@@ -87,21 +88,4 @@ public class KeepalivePacketData {
return mPacket.clone(); 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();
}
} }