Bluetooth: Check descriptors size in BluetoothHidDeviceAppSdpSettings
Bug: 119819889 Test: compilation Change-Id: If51d0e2af74d99758f79a603d40cc2f5c84e4dde Merged-In: If51d0e2af74d99758f79a603d40cc2f5c84e4dde
This commit is contained in:
@@ -18,12 +18,15 @@ package android.bluetooth;
|
|||||||
|
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
|
import android.util.EventLog;
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
public final class BluetoothHidDeviceAppSdpSettings implements Parcelable {
|
public final class BluetoothHidDeviceAppSdpSettings implements Parcelable {
|
||||||
|
|
||||||
|
private static final int MAX_DESCRIPTOR_SIZE = 2048;
|
||||||
|
|
||||||
final public String name;
|
final public String name;
|
||||||
final public String description;
|
final public String description;
|
||||||
final public String provider;
|
final public String provider;
|
||||||
@@ -36,6 +39,12 @@ public final class BluetoothHidDeviceAppSdpSettings implements Parcelable {
|
|||||||
this.description = description;
|
this.description = description;
|
||||||
this.provider = provider;
|
this.provider = provider;
|
||||||
this.subclass = subclass;
|
this.subclass = subclass;
|
||||||
|
|
||||||
|
if (descriptors == null || descriptors.length > MAX_DESCRIPTOR_SIZE) {
|
||||||
|
EventLog.writeEvent(0x534e4554, "119819889", -1, "");
|
||||||
|
throw new IllegalArgumentException("descriptors must be not null and shorter than "
|
||||||
|
+ MAX_DESCRIPTOR_SIZE);
|
||||||
|
}
|
||||||
this.descriptors = descriptors.clone();
|
this.descriptors = descriptors.clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user