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

Commit 8dc1851c authored by Martin Brabham's avatar Martin Brabham Committed by Automerger Merge Worker
Browse files

Merge "Add implementation for IRK to parcelable functions." into sc-dev am: e0276d9c

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15405284

Change-Id: I645be72acf0925abd6f7204f740c8dc5f17c53e3
parents 782080dc e0276d9c
Loading
Loading
Loading
Loading
+23 −1
Original line number Diff line number Diff line
@@ -168,6 +168,15 @@ public final class ScanFilter implements Parcelable {
                dest.writeByteArray(mManufacturerDataMask);
            }
        }

        // IRK
        if (mDeviceAddress != null) {
            dest.writeInt(mAddressType);
            dest.writeInt(mIrk == null ? 0 : 1);
            if (mIrk != null) {
                dest.writeByteArray(mIrk);
            }
        }
    }

    /**
@@ -187,8 +196,10 @@ public final class ScanFilter implements Parcelable {
            if (in.readInt() == 1) {
                builder.setDeviceName(in.readString());
            }
            String address = null;
            // If we have a non-null address
            if (in.readInt() == 1) {
                builder.setDeviceAddress(in.readString());
                address = in.readString();
            }
            if (in.readInt() == 1) {
                ParcelUuid uuid = in.readParcelable(ParcelUuid.class.getClassLoader());
@@ -245,6 +256,17 @@ public final class ScanFilter implements Parcelable {
                }
            }

            // IRK
            if (address != null) {
                final int addressType = in.readInt();
                if (in.readInt() == 1) {
                    final byte[] irk = new byte[16];
                    in.readByteArray(irk);
                    builder.setDeviceAddress(address, addressType, irk);
                } else {
                    builder.setDeviceAddress(address, addressType);
                }
            }
            return builder.build();
        }
    };