IpSecTransformState


class IpSecTransformState : Parcelable
kotlin.Any
   ↳ android.net.IpSecTransformState

This class represents a snapshot of the state of an IpSecTransform

This class provides the current state of an IpSecTransform, enabling link metric analysis by the caller. Use cases include understanding transform usage, such as packet and byte counts, as well as observing out-of-order delivery by checking the bitmap. Additionally, callers can query IpSecTransformStates at two timestamps. By comparing the changes in packet counts and sequence numbers, callers can estimate IPsec data loss in the inbound direction.

Summary

Nested classes

Builder class for testing purposes

Inherited constants
Public methods
Int

Long

Retrieve the number of bytes processed so far as an unsigned long

Long

Retrieve the number of packets processed so far as an unsigned long.

ByteArray

Retrieve the replay bitmap

Long

Retrieve the highest sequence number received so far as an unsigned long

Long

Retrieve the timestamp (milliseconds) when this state was created, as per android.os.SystemClock#elapsedRealtime

Long

Retrieve the highest sequence number sent so far as an unsigned long

Unit
writeToParcel(out: Parcel, flags: Int)

Flatten this object in to a Parcel.

Properties
static Parcelable.Creator<IpSecTransformState!>

Public methods

describeContents

fun describeContents(): Int
Return
Int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR

getByteCount

fun getByteCount(): Long

Retrieve the number of bytes processed so far as an unsigned long

The byte count direction (inbound or outbound) aligns with the direction in which the IpSecTransform is applied to.

getPacketCount

fun getPacketCount(): Long

Retrieve the number of packets processed so far as an unsigned long.

The packet count direction (inbound or outbound) aligns with the direction in which the IpSecTransform is applied to.

getReplayBitmap

fun getReplayBitmap(): ByteArray

Retrieve the replay bitmap

This bitmap represents a replay window, allowing the caller to observe out-of-order delivery. The last bit represents the highest sequence number received so far and bits for the received packets will be marked as true.

The size of a replay bitmap will never change over the lifetime of an IpSecTransform

The replay bitmap is solely useful for inbound IpSecTransforms. For outbound IpSecTransforms, all bits will be unchecked.

Return
ByteArray This value cannot be null.

getRxHighestSequenceNumber

fun getRxHighestSequenceNumber(): Long

Retrieve the highest sequence number received so far as an unsigned long

getTimestampMillis

fun getTimestampMillis(): Long

Retrieve the timestamp (milliseconds) when this state was created, as per android.os.SystemClock#elapsedRealtime

getTxHighestSequenceNumber

fun getTxHighestSequenceNumber(): Long

Retrieve the highest sequence number sent so far as an unsigned long

writeToParcel

fun writeToParcel(
    out: Parcel,
    flags: Int
): Unit

Flatten this object in to a Parcel.

Parameters
dest The Parcel in which the object should be written. This value cannot be null.
flags Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES
out Parcel: This value cannot be null.

Properties

CREATOR

static val CREATOR: Parcelable.Creator<IpSecTransformState!>