Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c5ae7e3 authored by Remi NGUYEN VAN's avatar Remi NGUYEN VAN Committed by Gerrit Code Review
Browse files

Merge "Replace fields with getters in keepalive API"

parents 9641e340 ab43b19b
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -455,14 +455,14 @@ package android.net {
  public final class TcpKeepalivePacketData extends android.net.KeepalivePacketData implements android.os.Parcelable {
    ctor public TcpKeepalivePacketData(@NonNull java.net.InetAddress, int, @NonNull java.net.InetAddress, int, @NonNull byte[], int, int, int, int, int, int) throws android.net.InvalidPacketException;
    method public int describeContents();
    method public int getIpTos();
    method public int getIpTtl();
    method public int getTcpAck();
    method public int getTcpSeq();
    method public int getTcpWindow();
    method public int getTcpWindowScale();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.net.TcpKeepalivePacketData> CREATOR;
    field public final int ipTos;
    field public final int ipTtl;
    field public final int tcpAck;
    field public final int tcpSeq;
    field public final int tcpWindow;
    field public final int tcpWindowScale;
  }

}
+73 −6
Original line number Diff line number Diff line
@@ -32,22 +32,39 @@ import java.util.Objects;
public final class TcpKeepalivePacketData extends KeepalivePacketData implements Parcelable {
    private static final String TAG = "TcpKeepalivePacketData";

    /** TCP sequence number. */
    /**
     * TCP sequence number.
     * @hide
     */
    public final int tcpSeq;

    /** TCP ACK number. */
    /**
     * TCP ACK number.
     * @hide
     */
    public final int tcpAck;

    /** TCP RCV window. */
    /**
     * TCP RCV window.
     * @hide
     */
    public final int tcpWindow;

    /** TCP RCV window scale. */
    /** TCP RCV window scale.
     * @hide
     */
    public final int tcpWindowScale;

    /** IP TOS. */
    /**
     * IP TOS.
     * @hide
     */
    public final int ipTos;

    /** IP TTL. */
    /**
     * IP TTL.
     * @hide
     */
    public final int ipTtl;

    public TcpKeepalivePacketData(@NonNull final InetAddress srcAddress, int srcPort,
@@ -63,6 +80,56 @@ public final class TcpKeepalivePacketData extends KeepalivePacketData implements
        this.ipTtl = ipTtl;
    }

    /**
     * Get the TCP sequence number.
     *
     * See https://tools.ietf.org/html/rfc793#page-15.
     */
    public int getTcpSeq() {
        return tcpSeq;
    }

    /**
     * Get the TCP ACK number.
     *
     * See https://tools.ietf.org/html/rfc793#page-15.
     */
    public int getTcpAck() {
        return tcpAck;
    }

    /**
     * Get the TCP RCV window.
     *
     * See https://tools.ietf.org/html/rfc793#page-15.
     */
    public int getTcpWindow() {
        return tcpWindow;
    }

    /**
     * Get the TCP RCV window scale.
     *
     * See https://tools.ietf.org/html/rfc793#page-15.
     */
    public int getTcpWindowScale() {
        return tcpWindowScale;
    }

    /**
     * Get the IP type of service.
     */
    public int getIpTos() {
        return ipTos;
    }

    /**
     * Get the IP TTL.
     */
    public int getIpTtl() {
        return ipTtl;
    }

    @Override
    public boolean equals(@Nullable final Object o) {
        if (!(o instanceof TcpKeepalivePacketData)) return false;
+6 −6
Original line number Diff line number Diff line
@@ -80,12 +80,12 @@ public final class KeepalivePacketDataUtil {
        parcel.srcPort = pkt.getSrcPort();
        parcel.dstAddress = dstAddress.getAddress();
        parcel.dstPort = pkt.getDstPort();
        parcel.seq = pkt.tcpSeq;
        parcel.ack = pkt.tcpAck;
        parcel.rcvWnd = pkt.tcpWindow;
        parcel.rcvWndScale = pkt.tcpWindowScale;
        parcel.tos = pkt.ipTos;
        parcel.ttl = pkt.ipTtl;
        parcel.seq = pkt.getTcpSeq();
        parcel.ack = pkt.getTcpAck();
        parcel.rcvWnd = pkt.getTcpWindow();
        parcel.rcvWndScale = pkt.getTcpWindowScale();
        parcel.tos = pkt.getIpTos();
        parcel.ttl = pkt.getIpTtl();
        return parcel;
    }

+6 −6
Original line number Diff line number Diff line
@@ -92,12 +92,12 @@ class TcpKeepalivePacketDataTest {
        assertTrue(str.contains(data.dstAddress.hostAddress))
        assertTrue(str.contains(data.dstPort.toString()))
        // .packet not included in toString()
        assertTrue(str.contains(data.tcpSeq.toString()))
        assertTrue(str.contains(data.tcpAck.toString()))
        assertTrue(str.contains(data.tcpWindow.toString()))
        assertTrue(str.contains(data.tcpWindowScale.toString()))
        assertTrue(str.contains(data.ipTos.toString()))
        assertTrue(str.contains(data.ipTtl.toString()))
        assertTrue(str.contains(data.getTcpSeq().toString()))
        assertTrue(str.contains(data.getTcpAck().toString()))
        assertTrue(str.contains(data.getTcpWindow().toString()))
        assertTrue(str.contains(data.getTcpWindowScale().toString()))
        assertTrue(str.contains(data.getIpTos().toString()))
        assertTrue(str.contains(data.getIpTtl().toString()))

        // Update above assertions if field is added
        assertFieldCountEquals(5, KeepalivePacketData::class.java)