diff options
| author | Ruchi Kandoi <kandoiruchi@google.com> | 2017-01-25 19:59:16 +0000 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2017-01-25 19:59:16 +0000 |
| commit | e6cb2aa61482ce6228567fff26429e2c1fe0b6dc (patch) | |
| tree | 5f9686b65a3f4d2007cf0c99c236c2c1de0478d2 /core/java | |
| parent | 36ce9b7ea0fb148bcf8d23d1e13d55e154732895 (diff) | |
| parent | f3a6269fed5912650ad328d39880de7c572b1f1f (diff) | |
Merge "nfc: Make NDEF validation stricter"
am: f3a6269fed
Change-Id: If69e586c81e5926c0795af3689de67b260891eaa
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/nfc/NdefRecord.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/core/java/android/nfc/NdefRecord.java b/core/java/android/nfc/NdefRecord.java index 83d17ba7fdd2..bd3231464ccf 100644 --- a/core/java/android/nfc/NdefRecord.java +++ b/core/java/android/nfc/NdefRecord.java @@ -805,7 +805,7 @@ public final class NdefRecord implements Parcelable { if (!mb && records.size() == 0 && !inChunk && !ignoreMbMe) { throw new FormatException("expected MB flag"); - } else if (mb && records.size() != 0 && !ignoreMbMe) { + } else if (mb && (records.size() != 0 || inChunk) && !ignoreMbMe) { throw new FormatException("unexpected MB flag"); } else if (inChunk && il) { throw new FormatException("unexpected IL flag in non-leading chunk"); @@ -839,6 +839,9 @@ public final class NdefRecord implements Parcelable { if (cf && !inChunk) { // first chunk + if (typeLength == 0) { + throw new FormatException("expected non-zero type length in first chunk"); + } chunks.clear(); chunkTnf = tnf; } |
