From 92f4250ebce9404bc9a353e8683c7084c0936402 Mon Sep 17 00:00:00 2001 From: Marc Ferland Date: Tue, 19 Sep 2017 09:16:39 -0400 Subject: bluez5: Upgrade 5.46 -> 5.47 This release includes: - SDP fix for CVE-2017-1000250. - New bluetooth mesh profile. - Various fixes to GATT, A2DP and BR/EDR vs LE bearer handling. This commit also drops the following two patches which are included in 5.47: - 0001-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch - cve-2017-1000250.patch (From OE-Core rev: cf25d927b2deadc11688b9dab2c366eaa57c54e6) Signed-off-by: Marc Ferland Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/recipes-connectivity/bluez5/bluez5.inc | 3 +- ...cm43xx-fix-the-delay-timer-for-firmware-d.patch | 36 ----------- .../bluez5/bluez5/cve-2017-1000250.patch | 34 ----------- meta/recipes-connectivity/bluez5/bluez5_5.46.bb | 69 ---------------------- meta/recipes-connectivity/bluez5/bluez5_5.47.bb | 69 ++++++++++++++++++++++ 5 files changed, 70 insertions(+), 141 deletions(-) delete mode 100644 meta/recipes-connectivity/bluez5/bluez5/0001-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch delete mode 100644 meta/recipes-connectivity/bluez5/bluez5/cve-2017-1000250.patch delete mode 100644 meta/recipes-connectivity/bluez5/bluez5_5.46.bb create mode 100644 meta/recipes-connectivity/bluez5/bluez5_5.47.bb (limited to 'meta/recipes-connectivity/bluez5') diff --git a/meta/recipes-connectivity/bluez5/bluez5.inc b/meta/recipes-connectivity/bluez5/bluez5.inc index 1807aa7c96..e78f174c5c 100644 --- a/meta/recipes-connectivity/bluez5/bluez5.inc +++ b/meta/recipes-connectivity/bluez5/bluez5.inc @@ -41,6 +41,7 @@ PACKAGECONFIG[sixaxis] = "--enable-sixaxis,--disable-sixaxis" PACKAGECONFIG[tools] = "--enable-tools,--disable-tools" PACKAGECONFIG[threads] = "--enable-threads,--disable-threads" PACKAGECONFIG[deprecated] = "--enable-deprecated,--disable-deprecated" +PACKAGECONFIG[mesh] = "--enable-mesh,--disable-mesh, json-c" SRC_URI = "\ ${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.xz \ @@ -49,8 +50,6 @@ SRC_URI = "\ file://run-ptest \ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'file://0001-Allow-using-obexd-without-systemd-in-the-user-sessio.patch', d)} \ file://0001-tests-add-a-target-for-building-tests-without-runnin.patch \ - file://0001-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch \ - file://cve-2017-1000250.patch \ " S = "${WORKDIR}/bluez-${PV}" diff --git a/meta/recipes-connectivity/bluez5/bluez5/0001-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch b/meta/recipes-connectivity/bluez5/bluez5/0001-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch deleted file mode 100644 index 46794381f7..0000000000 --- a/meta/recipes-connectivity/bluez5/bluez5/0001-hciattach-bcm43xx-fix-the-delay-timer-for-firmware-d.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 3b341fb421ef61db7782bf1314ec693828467de9 Mon Sep 17 00:00:00 2001 -From: Andy Duan -Date: Wed, 23 Nov 2016 17:12:12 +0800 -Subject: [PATCH] hciattach: bcm43xx: fix the delay timer for firmware download - -From the log in .bcm43xx_load_firmware(): - /* Wait 50ms to let the firmware placed in download mode */ - nanosleep(&tm_mode, NULL); - -But timespec tm_mode is real is 50us. Correct the delayed timer count. - -Upstream-Status: Accepted [https://git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=76255f732d68aef2b90d36d9c7be51a9e1739ce7] - -Signed-off-by: Fugang Duan ---- - tools/hciattach_bcm43xx.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/tools/hciattach_bcm43xx.c b/tools/hciattach_bcm43xx.c -index 81f38cb..ac1b3c1 100644 ---- a/tools/hciattach_bcm43xx.c -+++ b/tools/hciattach_bcm43xx.c -@@ -228,8 +228,8 @@ static int bcm43xx_set_speed(int fd, struct termios *ti, uint32_t speed) - static int bcm43xx_load_firmware(int fd, const char *fw) - { - unsigned char cmd[] = { HCI_COMMAND_PKT, 0x2e, 0xfc, 0x00 }; -- struct timespec tm_mode = { 0, 50000 }; -- struct timespec tm_ready = { 0, 2000000 }; -+ struct timespec tm_mode = { 0, 50000000 }; -+ struct timespec tm_ready = { 0, 200000000 }; - unsigned char resp[CC_MIN_SIZE]; - unsigned char tx_buf[1024]; - int len, fd_fw, n; --- -1.9.1 - diff --git a/meta/recipes-connectivity/bluez5/bluez5/cve-2017-1000250.patch b/meta/recipes-connectivity/bluez5/bluez5/cve-2017-1000250.patch deleted file mode 100644 index 9fac961bcf..0000000000 --- a/meta/recipes-connectivity/bluez5/bluez5/cve-2017-1000250.patch +++ /dev/null @@ -1,34 +0,0 @@ -All versions of the SDP server in BlueZ 5.46 and earlier are vulnerable to an -information disclosure vulnerability which allows remote attackers to obtain -sensitive information from the bluetoothd process memory. This vulnerability -lies in the processing of SDP search attribute requests. - -CVE: CVE-2017-1000250 -Upstream-Status: Backport -Signed-off-by: Ross Burton - -From 9e009647b14e810e06626dde7f1bb9ea3c375d09 Mon Sep 17 00:00:00 2001 -From: Luiz Augusto von Dentz -Date: Wed, 13 Sep 2017 10:01:40 +0300 -Subject: sdp: Fix Out-of-bounds heap read in service_search_attr_req function - -Check if there is enough data to continue otherwise return an error. ---- - src/sdpd-request.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/sdpd-request.c b/src/sdpd-request.c -index 1eefdce..318d044 100644 ---- a/src/sdpd-request.c -+++ b/src/sdpd-request.c -@@ -917,7 +917,7 @@ static int service_search_attr_req(sdp_req_t *req, sdp_buf_t *buf) - } else { - /* continuation State exists -> get from cache */ - sdp_buf_t *pCache = sdp_get_cached_rsp(cstate); -- if (pCache) { -+ if (pCache && cstate->cStateValue.maxBytesSent < pCache->data_size) { - uint16_t sent = MIN(max, pCache->data_size - cstate->cStateValue.maxBytesSent); - pResponse = pCache->data; - memcpy(buf->data, pResponse + cstate->cStateValue.maxBytesSent, sent); --- -cgit v1.1 diff --git a/meta/recipes-connectivity/bluez5/bluez5_5.46.bb b/meta/recipes-connectivity/bluez5/bluez5_5.46.bb deleted file mode 100644 index e1f85879ce..0000000000 --- a/meta/recipes-connectivity/bluez5/bluez5_5.46.bb +++ /dev/null @@ -1,69 +0,0 @@ -require bluez5.inc - -REQUIRED_DISTRO_FEATURES = "bluez5" - -SRC_URI[md5sum] = "913f35d6fa4ca5772c53adb936bf1947" -SRC_URI[sha256sum] = "ddab3d3837c1afb8ae228a94ba17709a4650bd4db24211b6771ab735c8908e28" - -# noinst programs in Makefile.tools that are conditional on READLINE -# support -NOINST_TOOLS_READLINE ?= " \ - ${@bb.utils.contains('PACKAGECONFIG', 'deprecated', 'attrib/gatttool', '', d)} \ - tools/obex-client-tool \ - tools/obex-server-tool \ - tools/bluetooth-player \ - tools/obexctl \ - tools/btmgmt \ -" - -# noinst programs in Makefile.tools that are conditional on TESTING -# support -NOINST_TOOLS_TESTING ?= " \ - emulator/btvirt \ - emulator/b1ee \ - emulator/hfp \ - peripheral/btsensor \ - tools/3dsp \ - tools/mgmt-tester \ - tools/gap-tester \ - tools/l2cap-tester \ - tools/sco-tester \ - tools/smp-tester \ - tools/hci-tester \ - tools/rfcomm-tester \ - tools/bnep-tester \ - tools/userchan-tester \ -" - -# noinst programs in Makefile.tools that are conditional on TOOLS -# support -NOINST_TOOLS_BT ?= " \ - tools/bdaddr \ - tools/avinfo \ - tools/avtest \ - tools/scotest \ - tools/amptest \ - tools/hwdb \ - tools/hcieventmask \ - tools/hcisecfilter \ - tools/btinfo \ - tools/btsnoop \ - tools/btproxy \ - tools/btiotest \ - tools/bneptest \ - tools/mcaptest \ - tools/cltest \ - tools/oobtest \ - tools/advtest \ - tools/seq2bseq \ - tools/nokfw \ - tools/create-image \ - tools/eddystone \ - tools/ibeacon \ - tools/btgatt-client \ - tools/btgatt-server \ - tools/test-runner \ - tools/check-selftest \ - tools/gatt-service \ - profiles/iap/iapd \ -" diff --git a/meta/recipes-connectivity/bluez5/bluez5_5.47.bb b/meta/recipes-connectivity/bluez5/bluez5_5.47.bb new file mode 100644 index 0000000000..49666f226c --- /dev/null +++ b/meta/recipes-connectivity/bluez5/bluez5_5.47.bb @@ -0,0 +1,69 @@ +require bluez5.inc + +REQUIRED_DISTRO_FEATURES = "bluez5" + +SRC_URI[md5sum] = "783e15f65e70cdb8f721c659e140dd56" +SRC_URI[sha256sum] = "cf75bf7cd5d564f21cc4a2bd01d5c39ce425397335fd47d9bbe43af0a58342c8" + +# noinst programs in Makefile.tools that are conditional on READLINE +# support +NOINST_TOOLS_READLINE ?= " \ + ${@bb.utils.contains('PACKAGECONFIG', 'deprecated', 'attrib/gatttool', '', d)} \ + tools/obex-client-tool \ + tools/obex-server-tool \ + tools/bluetooth-player \ + tools/obexctl \ + tools/btmgmt \ +" + +# noinst programs in Makefile.tools that are conditional on TESTING +# support +NOINST_TOOLS_TESTING ?= " \ + emulator/btvirt \ + emulator/b1ee \ + emulator/hfp \ + peripheral/btsensor \ + tools/3dsp \ + tools/mgmt-tester \ + tools/gap-tester \ + tools/l2cap-tester \ + tools/sco-tester \ + tools/smp-tester \ + tools/hci-tester \ + tools/rfcomm-tester \ + tools/bnep-tester \ + tools/userchan-tester \ +" + +# noinst programs in Makefile.tools that are conditional on TOOLS +# support +NOINST_TOOLS_BT ?= " \ + tools/bdaddr \ + tools/avinfo \ + tools/avtest \ + tools/scotest \ + tools/amptest \ + tools/hwdb \ + tools/hcieventmask \ + tools/hcisecfilter \ + tools/btinfo \ + tools/btsnoop \ + tools/btproxy \ + tools/btiotest \ + tools/bneptest \ + tools/mcaptest \ + tools/cltest \ + tools/oobtest \ + tools/advtest \ + tools/seq2bseq \ + tools/nokfw \ + tools/create-image \ + tools/eddystone \ + tools/ibeacon \ + tools/btgatt-client \ + tools/btgatt-server \ + tools/test-runner \ + tools/check-selftest \ + tools/gatt-service \ + profiles/iap/iapd \ +" -- cgit v1.2.3-54-g00ecf