Compare commits
	
		
			No commits in common. "c8" and "c9-beta" have entirely different histories.
		
	
	
		
	
		
| @ -1 +1 @@ | ||||
| c5137186e7cc60652eed44cff0067ef749e49eff SOURCES/bluez-5.63.tar.xz | ||||
| ad4823acf2906e38b77305a329654e1f0bce0263 SOURCES/bluez-5.83.tar.xz | ||||
|  | ||||
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -1 +1 @@ | ||||
| SOURCES/bluez-5.63.tar.xz | ||||
| SOURCES/bluez-5.83.tar.xz | ||||
|  | ||||
							
								
								
									
										125
									
								
								SOURCES/0001-Add-missing-mesh-gatt-JSON-files.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										125
									
								
								SOURCES/0001-Add-missing-mesh-gatt-JSON-files.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,125 @@ | ||||
| From 669de134aa19fbd6b7ac59575446a064bbf27565 Mon Sep 17 00:00:00 2001 | ||||
| From: Bastien Nocera <hadess@hadess.net> | ||||
| Date: Wed, 14 Feb 2024 16:51:14 +0100 | ||||
| Subject: [PATCH] Add missing mesh-gatt JSON files | ||||
| 
 | ||||
| ---
 | ||||
|  tools/mesh-gatt/local_node.json | 61 +++++++++++++++++++++++++++++++++ | ||||
|  tools/mesh-gatt/prov_db.json    | 37 ++++++++++++++++++++ | ||||
|  2 files changed, 98 insertions(+) | ||||
|  create mode 100644 tools/mesh-gatt/local_node.json | ||||
|  create mode 100644 tools/mesh-gatt/prov_db.json | ||||
| 
 | ||||
| diff --git a/tools/mesh-gatt/local_node.json b/tools/mesh-gatt/local_node.json
 | ||||
| new file mode 100644 | ||||
| index 000000000000..5ffa7ada1f65
 | ||||
| --- /dev/null
 | ||||
| +++ b/tools/mesh-gatt/local_node.json
 | ||||
| @@ -0,0 +1,61 @@
 | ||||
| +{
 | ||||
| +  "$schema":"file:\/\/\/BlueZ\/Mesh\/local_schema\/mesh.jsonschema",
 | ||||
| +  "meshName":"BT Mesh",
 | ||||
| +  "netKeys":[
 | ||||
| +    {
 | ||||
| +      "index": 0,
 | ||||
| +      "keyRefresh": 0
 | ||||
| +    }
 | ||||
| +  ],
 | ||||
| +  "appKeys":[
 | ||||
| +    {
 | ||||
| +      "index": 0,
 | ||||
| +      "boundNetKey": 0
 | ||||
| +    },
 | ||||
| +    {
 | ||||
| +      "index": 1,
 | ||||
| +      "boundNetKey": 0
 | ||||
| +    }
 | ||||
| +  ],
 | ||||
| +"node": {
 | ||||
| +	"IVindex":"00000005",
 | ||||
| +	"IVupdate":"0",
 | ||||
| +	"sequenceNumber": 0,
 | ||||
| +    "composition": {
 | ||||
| +        "cid": "0002",
 | ||||
| +        "pid": "0010",
 | ||||
| +        "vid": "0001",
 | ||||
| +        "crpl": "000a",
 | ||||
| +        "features": {
 | ||||
| +            "relay": false,
 | ||||
| +            "proxy": true,
 | ||||
| +            "friend": false,
 | ||||
| +            "lowPower": false
 | ||||
| +        },
 | ||||
| +        "elements": [
 | ||||
| +            {
 | ||||
| +                "elementIndex": 0,
 | ||||
| +                "location": "0001",
 | ||||
| +                "models": ["0000", "0001", "1001"]
 | ||||
| +            }
 | ||||
| +        ]
 | ||||
| +    },
 | ||||
| +    "configuration":{
 | ||||
| +        "netKeys": [0],
 | ||||
| +        "appKeys": [ 0, 1],
 | ||||
| +        "defaultTTL": 10,
 | ||||
| +        "elements": [
 | ||||
| +          {
 | ||||
| +            "elementIndex": 0,
 | ||||
| +            "unicastAddress":"0077",
 | ||||
| +            "models": [
 | ||||
| +               {
 | ||||
| +                 "modelId": "1001",
 | ||||
| +                 "bind": [1]
 | ||||
| +                }
 | ||||
| +            ]
 | ||||
| +          }
 | ||||
| +        ]
 | ||||
| +    }
 | ||||
| +  }
 | ||||
| +}
 | ||||
| diff --git a/tools/mesh-gatt/prov_db.json b/tools/mesh-gatt/prov_db.json
 | ||||
| new file mode 100644 | ||||
| index 000000000000..74a03128d4d5
 | ||||
| --- /dev/null
 | ||||
| +++ b/tools/mesh-gatt/prov_db.json
 | ||||
| @@ -0,0 +1,37 @@
 | ||||
| +{
 | ||||
| +  "$schema":"file:\/\/\/BlueZ\/Mesh\/schema\/mesh.jsonschema",
 | ||||
| +  "meshName":"BT Mesh",
 | ||||
| +  "IVindex":5,
 | ||||
| +  "IVupdate":0,
 | ||||
| +  "netKeys":[
 | ||||
| +    {
 | ||||
| +      "index":0,
 | ||||
| +      "keyRefresh":0,
 | ||||
| +      "key":"18eed9c2a56add85049ffc3c59ad0e12"
 | ||||
| +    }
 | ||||
| +  ],
 | ||||
| +  "appKeys":[
 | ||||
| +    {
 | ||||
| +      "index":0,
 | ||||
| +      "boundNetKey":0,
 | ||||
| +      "key":"4f68ad85d9f48ac8589df665b6b49b8a"
 | ||||
| +    },
 | ||||
| +    {
 | ||||
| +      "index":1,
 | ||||
| +      "boundNetKey":0,
 | ||||
| +      "key":"2aa2a6ded5a0798ceab5787ca3ae39fc"
 | ||||
| +    }
 | ||||
| +  ],
 | ||||
| +  "provisioners":[
 | ||||
| +    {
 | ||||
| +      "provisionerName":"BT Mesh Provisioner",
 | ||||
| +      "unicastAddress":"0077",
 | ||||
| +      "allocatedUnicastRange":[
 | ||||
| +        {
 | ||||
| +          "lowAddress":"0100",
 | ||||
| +          "highAddress":"7fff"
 | ||||
| +        }
 | ||||
| +      ]
 | ||||
| +    }
 | ||||
| +  ],
 | ||||
| +}
 | ||||
| -- 
 | ||||
| 2.43.0 | ||||
| 
 | ||||
| @ -1,54 +0,0 @@ | ||||
| From: David Marlin <dmarlin@redhat.com> | ||||
| 
 | ||||
| Subject: input.conf: Change default of ClassicBondedOnly | ||||
| 
 | ||||
| Resolves: RHEL-18429 | ||||
| 
 | ||||
| CVE: CVE-2023-45866 | ||||
| 
 | ||||
| commit 25a471a83e02e1effb15d5a488b3f0085eaeb675 | ||||
| Author: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | ||||
| Date:   Tue Oct 10 13:03:12 2023 -0700 | ||||
| 
 | ||||
|     input.conf: Change default of ClassicBondedOnly | ||||
|      | ||||
|     This changes the default of ClassicBondedOnly since defaulting to false | ||||
|     is not inline with HID specification which mandates the of Security Mode | ||||
|     4: | ||||
|      | ||||
|     BLUETOOTH SPECIFICATION Page 84 of 123 | ||||
|     Human Interface Device (HID) Profile: | ||||
|      | ||||
|       5.4.3.4.2 Security Modes | ||||
|       Bluetooth HID Hosts shall use Security Mode 4 when interoperating with | ||||
|       Bluetooth HID devices that are compliant to the Bluetooth Core | ||||
|       Specification v2.1+EDR[6]. | ||||
| 
 | ||||
| Signed-off-by: David Marlin <dmarlin@redhat.com> | ||||
| 
 | ||||
| diff --git a/profiles/input/device.c b/profiles/input/device.c
 | ||||
| index 4a50ea9921a97751a94547c0e73177d58184a75d..4310dd192e113f9875c07117d523167655cef954 100644
 | ||||
| --- a/profiles/input/device.c
 | ||||
| +++ b/profiles/input/device.c
 | ||||
| @@ -81,7 +81,7 @@ struct input_device {
 | ||||
|   | ||||
|  static int idle_timeout = 0; | ||||
|  static bool uhid_enabled = false; | ||||
| -static bool classic_bonded_only = false;
 | ||||
| +static bool classic_bonded_only = true;
 | ||||
|   | ||||
|  void input_set_idle_timeout(int timeout) | ||||
|  { | ||||
| diff --git a/profiles/input/input.conf b/profiles/input/input.conf
 | ||||
| index 4c70bc561f05429442c6fe0a183584ad1536fa4b..d8645f3dd664e2d671791878462f8a0dc74e04a5 100644
 | ||||
| --- a/profiles/input/input.conf
 | ||||
| +++ b/profiles/input/input.conf
 | ||||
| @@ -17,7 +17,7 @@
 | ||||
|  # platforms may want to make sure that input connections only come from bonded | ||||
|  # device connections. Several older mice have been known for not supporting | ||||
|  # pairing/encryption. | ||||
| -# Defaults to false to maximize device compatibility.
 | ||||
| +# Defaults to true for security.
 | ||||
|  #ClassicBondedOnly=true | ||||
|   | ||||
|  # LE upgrade security | ||||
| @ -1,54 +0,0 @@ | ||||
| From: David Marlin <dmarlin@redhat.com> | ||||
| 
 | ||||
| Subject: avrcp: Fix crash while handling unsupported events | ||||
| 
 | ||||
| Resolves: RHEL-35371 | ||||
| Resolves: RHEL-35492 | ||||
| 
 | ||||
| Fixes CVE-2023-27349 | ||||
| Fixes CVE-2023-51589 | ||||
| 
 | ||||
| commit f54299a850676d92c3dafd83e9174fcfe420ccc9 | ||||
| Author: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | ||||
| Date:   Wed Mar 22 11:34:24 2023 -0700 | ||||
| 
 | ||||
|     avrcp: Fix crash while handling unsupported events | ||||
|      | ||||
|     The following crash can be observed if the remote peer send and | ||||
|     unsupported event: | ||||
|      | ||||
|     ERROR: AddressSanitizer: heap-use-after-free on address 0x60b000148f11 | ||||
|      at pc 0x559644552088 bp 0x7ffe28b3c7b0 sp 0x7ffe28b3c7a0 | ||||
|      WRITE of size 1 at 0x60b000148f11 thread T0 | ||||
|          #0 0x559644552087 in avrcp_handle_event profiles/audio/avrcp.c:3907 | ||||
|          #1 0x559644536c22 in control_response profiles/audio/avctp.c:939 | ||||
|          #2 0x5596445379ab in session_cb profiles/audio/avctp.c:1108 | ||||
|          #3 0x7fbcb3e51c43 in g_main_context_dispatch (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x55c43) | ||||
|          #4 0x7fbcb3ea66c7  (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0xaa6c7) | ||||
|          #5 0x7fbcb3e512b2 in g_main_loop_run (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x552b2) | ||||
|          #6 0x559644754ab6 in mainloop_run src/shared/mainloop-glib.c:66 | ||||
|          #7 0x559644755606 in mainloop_run_with_signal src/shared/mainloop-notify.c:188 | ||||
|          #8 0x5596445bb963 in main src/main.c:1289 | ||||
|          #9 0x7fbcb3bafd8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 | ||||
|          #10 0x7fbcb3bafe3f in __libc_start_main_impl ../csu/libc-start.c:392 | ||||
|          #11 0x5596444e8224 in _start (/usr/local/libexec/bluetooth/bluetoothd+0xf0224) | ||||
| 
 | ||||
| Signed-off-by: David Marlin <dmarlin@redhat.com> | ||||
| 
 | ||||
| diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
 | ||||
| index 80f34c7a77a17ddad89abe62e8a7a028c6fecf3c..dda9a303fb711ca009258ba671dc47b7fdd15f94 100644
 | ||||
| --- a/profiles/audio/avrcp.c
 | ||||
| +++ b/profiles/audio/avrcp.c
 | ||||
| @@ -3901,6 +3901,12 @@ static gboolean avrcp_handle_event(struct avctp *conn, uint8_t code,
 | ||||
|  	case AVRCP_EVENT_UIDS_CHANGED: | ||||
|  		avrcp_uids_changed(session, pdu); | ||||
|  		break; | ||||
| +	default:
 | ||||
| +		if (event > AVRCP_EVENT_LAST) {
 | ||||
| +			warn("Unsupported event: %u", event);
 | ||||
| +			return FALSE;
 | ||||
| +		}
 | ||||
| +		break;
 | ||||
|  	} | ||||
|   | ||||
|  	session->registered_events |= (1 << event); | ||||
| @ -1,35 +0,0 @@ | ||||
| From 5744f79d84ecee3929a682166034c5bbc36c0ef5 Mon Sep 17 00:00:00 2001 | ||||
| From: Bastien Nocera <hadess@hadess.net> | ||||
| Date: Wed, 20 Sep 2017 12:49:10 +0200 | ||||
| Subject: [PATCH 1/4] build: Always define confdir and statedir | ||||
| 
 | ||||
| As we will need those paths to lock down on them. | ||||
| ---
 | ||||
|  Makefile.am | 6 +++--- | ||||
|  1 file changed, 3 insertions(+), 3 deletions(-) | ||||
| 
 | ||||
| diff --git a/Makefile.am b/Makefile.am
 | ||||
| index 9d25a815b..ac88c12e0 100644
 | ||||
| --- a/Makefile.am
 | ||||
| +++ b/Makefile.am
 | ||||
| @@ -28,14 +28,14 @@
 | ||||
|  				$(LIBEDATASERVER_CFLAGS) $(ell_cflags) | ||||
|  AM_LDFLAGS = $(MISC_LDFLAGS) | ||||
|   | ||||
| +confdir = $(sysconfdir)/bluetooth
 | ||||
| +statedir = $(localstatedir)/lib/bluetooth
 | ||||
| +
 | ||||
|  if DATAFILES | ||||
|  dbusdir = $(DBUS_CONFDIR)/dbus-1/system.d | ||||
|  dbus_DATA = src/bluetooth.conf | ||||
|   | ||||
| -confdir = $(sysconfdir)/bluetooth
 | ||||
|  conf_DATA = | ||||
| -
 | ||||
| -statedir = $(localstatedir)/lib/bluetooth
 | ||||
|  state_DATA = | ||||
|  endif | ||||
|   | ||||
| -- 
 | ||||
| 2.21.0 | ||||
| 
 | ||||
| @ -1,36 +0,0 @@ | ||||
| From 4c3eedcb96bd4795dd5c25c688005fc12f364aeb Mon Sep 17 00:00:00 2001 | ||||
| From: Gopal Tiwari <gtiwari@redhat.com> | ||||
| Date: Wed, 20 Apr 2022 12:19:05 +0530 | ||||
| Subject: [PATCH BlueZ] gdbus: Emit InterfacesAdded of parents objects first | ||||
| 
 | ||||
| This makes InterfacesAdded respect the object hierarchy in case its | ||||
| parent has pending interfaces to be added. | ||||
| 
 | ||||
| Fixes: #272 | ||||
| Fixes: #284 | ||||
| Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1534857 | ||||
| Fixes: https://bugs.archlinux.org/task/57464 | ||||
| ---
 | ||||
|  gdbus/object.c | 6 ++++++ | ||||
|  1 file changed, 6 insertions(+) | ||||
| 
 | ||||
| diff --git a/gdbus/object.c b/gdbus/object.c
 | ||||
| index 50a8b4ff1..f7c8c2be5 100644
 | ||||
| --- a/gdbus/object.c
 | ||||
| +++ b/gdbus/object.c
 | ||||
| @@ -551,6 +551,12 @@ static void emit_interfaces_added(struct generic_data *data)
 | ||||
|  	if (root == NULL || data == root) | ||||
|  		return; | ||||
|   | ||||
| +	/* Emit InterfacesAdded on the parent first so it appears first on the
 | ||||
| +	 * bus as child objects may point to it.
 | ||||
| +	 */
 | ||||
| +	if (data->parent && data->parent->added)
 | ||||
| +		emit_interfaces_added(data->parent);
 | ||||
| +
 | ||||
|  	signal = dbus_message_new_signal(root->path, | ||||
|  					DBUS_INTERFACE_OBJECT_MANAGER, | ||||
|  					"InterfacesAdded"); | ||||
| -- 
 | ||||
| 2.26.2 | ||||
| 
 | ||||
| @ -1,38 +0,0 @@ | ||||
| From cba55944f76ad0f01bb7c8976fd6699f058c68cd Mon Sep 17 00:00:00 2001 | ||||
| From: Bastien Nocera <hadess@hadess.net> | ||||
| Date: Wed, 20 Sep 2017 14:42:14 +0200 | ||||
| Subject: [PATCH] hostname: Fix "BlueZ 5.XX" adapter name on startup | ||||
| 
 | ||||
| The hostname plugin listens to property changes from systemd-hostnamed | ||||
| but doesn't fetch initial values. This means that unless the | ||||
| PrettyHostname or StaticHostname changes, the default adapter will be | ||||
| called "BlueZ 5.XX" matching the version number. | ||||
| 
 | ||||
| This is the case since the hostname plugin replaced the adaptername | ||||
| plugin in 2012. | ||||
| 
 | ||||
| Fetch the initial values for PrettyHostname, StaticHostname and | ||||
| Chassis when the plugin is initiated, so as to make the values | ||||
| available for adapter setup. | ||||
| ---
 | ||||
|  plugins/hostname.c | 4 ++++ | ||||
|  1 file changed, 4 insertions(+) | ||||
| 
 | ||||
| diff --git a/plugins/hostname.c b/plugins/hostname.c
 | ||||
| index f876d0afb..db9187378 100644
 | ||||
| --- a/plugins/hostname.c
 | ||||
| +++ b/plugins/hostname.c
 | ||||
| @@ -307,6 +307,10 @@ static int hostname_init(void)
 | ||||
|  		hostname_proxy = NULL; | ||||
|  		g_dbus_client_unref(hostname_client); | ||||
|  		hostname_client = NULL; | ||||
| +	} else {
 | ||||
| +		g_dbus_proxy_refresh_property(hostname_proxy, "PrettyHostname");
 | ||||
| +		g_dbus_proxy_refresh_property(hostname_proxy, "StaticHostname");
 | ||||
| +		g_dbus_proxy_refresh_property(hostname_proxy, "Chassis");
 | ||||
|  	} | ||||
|   | ||||
|  	return err; | ||||
| -- 
 | ||||
| 2.14.1 | ||||
| 
 | ||||
| @ -1,19 +1,29 @@ | ||||
| From 90b72b787a6ae6b9b0bf8ece238e108e8607a433 Mon Sep 17 00:00:00 2001 | ||||
| From 873e49357081e5c5d8d3d23759f1723db7292bf6 Mon Sep 17 00:00:00 2001 | ||||
| From: Bastien Nocera <hadess@hadess.net> | ||||
| Date: Sat, 9 Nov 2013 18:13:43 +0100 | ||||
| Subject: [PATCH 1/2] obex: Use GLib helper function to manipulate paths | ||||
| Date: Mon, 12 Feb 2024 20:02:45 +0000 | ||||
| Subject: [PATCH] obex: Use GLib helper function to manipulate paths | ||||
| 
 | ||||
| Instead of trying to do it by hand. This also makes sure that | ||||
| relative paths aren't used by the agent. | ||||
| 
 | ||||
| [Emil Velikov] | ||||
| Originally this patch was posted in 2013, but deferred since bluez was | ||||
| planning to move away from glib. Presently there's no obvious action | ||||
| towards that goal, so I think we can safely land this. | ||||
| 
 | ||||
| As mentioned by the author, current code allows for relative paths and | ||||
| considering that obexd service runs without meaningful sandboxing and on | ||||
| some distributions it is ran as root, we should plug the whole before | ||||
| anyone (ab)uses it. | ||||
| ---
 | ||||
|  obexd/src/manager.c | 10 +++++----- | ||||
|  1 file changed, 5 insertions(+), 5 deletions(-) | ||||
|  obexd/src/manager.c | 15 +++++---------- | ||||
|  1 file changed, 5 insertions(+), 10 deletions(-) | ||||
| 
 | ||||
| diff --git a/obexd/src/manager.c b/obexd/src/manager.c
 | ||||
| index f84384ae4..285c07c37 100644
 | ||||
| index 73fd6b9aff15..cc1de7ae2ed3 100644
 | ||||
| --- a/obexd/src/manager.c
 | ||||
| +++ b/obexd/src/manager.c
 | ||||
| @@ -650,14 +650,14 @@ static void agent_reply(DBusPendingCall *call, void *user_data)
 | ||||
| @@ -644,18 +644,13 @@ static void agent_reply(DBusPendingCall *call, void *user_data)
 | ||||
|  				DBUS_TYPE_STRING, &name, | ||||
|  				DBUS_TYPE_INVALID)) { | ||||
|  		/* Splits folder and name */ | ||||
| @ -22,17 +32,21 @@ index f84384ae4..285c07c37 100644 | ||||
|  		DBG("Agent replied with %s", name); | ||||
| -		if (!slash) {
 | ||||
| -			agent->new_name = g_strdup(name);
 | ||||
| +		if (is_relative) {
 | ||||
| +		agent->new_name = g_path_get_basename(name);
 | ||||
| +		if (is_relative)
 | ||||
|  			agent->new_folder = NULL; | ||||
|  		} else { | ||||
| -		} else {
 | ||||
| -			if (strlen(slash) == 1)
 | ||||
| -				agent->new_name = NULL;
 | ||||
| -			else
 | ||||
| -				agent->new_name = g_strdup(slash + 1);
 | ||||
| -			agent->new_folder = g_strndup(name, slash - name);
 | ||||
| +			agent->new_name = g_path_get_basename(name);
 | ||||
| -		}
 | ||||
| +		else
 | ||||
| +			agent->new_folder = g_path_get_dirname(name);
 | ||||
|  	} | ||||
|  	} | ||||
|   | ||||
|  	dbus_message_unref(reply); | ||||
| -- 
 | ||||
| 2.14.1 | ||||
| 2.43.0 | ||||
| 
 | ||||
|  | ||||
| @ -1,73 +0,0 @@ | ||||
| From: David Marlin <dmarlin@redhat.com> | ||||
| 
 | ||||
| Subject: pbap: Fix not checking Primary/Secundary Counter length | ||||
| 
 | ||||
| Resolves: RHEL-35501 | ||||
| Resolves: RHEL-35504 | ||||
| 
 | ||||
| CVE: CVE-2023-50230 | ||||
| CVE: CVE-2023-50229 | ||||
| 
 | ||||
| commit 5ab5352531a9cc7058cce569607f3a6831464443 | ||||
| Author: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | ||||
| Date:   Tue Sep 19 12:14:01 2023 -0700 | ||||
| 
 | ||||
|     pbap: Fix not checking Primary/Secundary Counter length | ||||
|      | ||||
|     Primary/Secundary Counters are supposed to be 16 bytes values, if the | ||||
|     server has implemented them incorrectly it may lead to the following | ||||
|     crash: | ||||
|      | ||||
|     ================================================================= | ||||
|     ==31860==ERROR: AddressSanitizer: heap-buffer-overflow on address | ||||
|     0x607000001878 at pc 0x7f95a1575638 bp 0x7fff58c6bb80 sp 0x7fff58c6b328 | ||||
|      | ||||
|      READ of size 48 at 0x607000001878 thread T0 | ||||
|          #0 0x7f95a1575637 in MemcmpInterceptorCommon(void*, int (*)(void const*, void const*, unsigned long), void const*, void const*, unsigned long) ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:860 | ||||
|          #1 0x7f95a1575ba6 in __interceptor_memcmp ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:892 | ||||
|          #2 0x7f95a1575ba6 in __interceptor_memcmp ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:887 | ||||
|          #3 0x564df69c77a0 in read_version obexd/client/pbap.c:288 | ||||
|          #4 0x564df69c77a0 in read_return_apparam obexd/client/pbap.c:352 | ||||
|          #5 0x564df69c77a0 in phonebook_size_callback obexd/client/pbap.c:374 | ||||
|          #6 0x564df69bea3c in session_terminate_transfer obexd/client/session.c:921 | ||||
|          #7 0x564df69d56b0 in get_xfer_progress_first obexd/client/transfer.c:729 | ||||
|          #8 0x564df698b9ee in handle_response gobex/gobex.c:1140 | ||||
|          #9 0x564df698cdea in incoming_data gobex/gobex.c:1385 | ||||
|          #10 0x7f95a12fdc43 in g_main_context_dispatch (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x55c43) | ||||
|          #11 0x7f95a13526c7  (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0xaa6c7) | ||||
|          #12 0x7f95a12fd2b2 in g_main_loop_run (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x552b2) | ||||
|          #13 0x564df6977d41 in main obexd/src/main.c:307 | ||||
|          #14 0x7f95a10a7d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58 | ||||
|          #15 0x7f95a10a7e3f in __libc_start_main_impl ../csu/libc-start.c:392 | ||||
|          #16 0x564df6978704 in _start (/usr/local/libexec/bluetooth/obexd+0x8b704) | ||||
|      0x607000001878 is located 0 bytes to the right of 72-byte region [0x607000001830,0x607000001878) | ||||
|      | ||||
|      allocated by thread T0 here: | ||||
|          #0 0x7f95a1595a37 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154 | ||||
|          #1 0x564df69c8b6a in pbap_probe obexd/client/pbap.c:1259 | ||||
| 
 | ||||
| Signed-off-by: David Marlin <dmarlin@redhat.com> | ||||
| 
 | ||||
| diff --git a/obexd/client/pbap.c b/obexd/client/pbap.c
 | ||||
| index 1ed8c68eccd00097a8539aaa9ede9feed9b6d060..2d2aa950898c38984d544e7708610d4c2af43b59 100644
 | ||||
| --- a/obexd/client/pbap.c
 | ||||
| +++ b/obexd/client/pbap.c
 | ||||
| @@ -285,7 +285,7 @@ static void read_version(struct pbap_data *pbap, GObexApparam *apparam)
 | ||||
|  		data = value; | ||||
|  	} | ||||
|   | ||||
| -	if (memcmp(pbap->primary, data, len)) {
 | ||||
| +	if (len == sizeof(pbap->primary) && memcmp(pbap->primary, data, len)) {
 | ||||
|  		memcpy(pbap->primary, data, len); | ||||
|  		g_dbus_emit_property_changed(conn, | ||||
|  					obc_session_get_path(pbap->session), | ||||
| @@ -299,7 +299,8 @@ static void read_version(struct pbap_data *pbap, GObexApparam *apparam)
 | ||||
|  		data = value; | ||||
|  	} | ||||
|   | ||||
| -	if (memcmp(pbap->secondary, data, len)) {
 | ||||
| +	if (len == sizeof(pbap->secondary) &&
 | ||||
| +			memcmp(pbap->secondary, data, len)) {
 | ||||
|  		memcpy(pbap->secondary, data, len); | ||||
|  		g_dbus_emit_property_changed(conn, | ||||
|  					obc_session_get_path(pbap->session), | ||||
| @ -1,44 +0,0 @@ | ||||
| From 98826d0717fe831265256f996c9e90d15262bef1 Mon Sep 17 00:00:00 2001 | ||||
| From: Gopal Tiwari <gtiwari@redhat.com> | ||||
| Date: Mon, 8 Jun 2020 19:54:24 +0530 | ||||
| Subject: [PATCH BlueZ 2/4] systemd: Add PrivateTmp and NoNewPrivileges options | ||||
| 
 | ||||
| From 4570164f0c90603bd07eb9e7c07e17bbafb5b5da Mon Sep 17 00:00:00 2001 | ||||
| From: Craig Andrews <candrews@integralblue.com> | ||||
| Date: Wed, 13 Sep 2017 15:23:09 +0200 | ||||
| 
 | ||||
| systemd: Add PrivateTmp and NoNewPrivileges options | ||||
| 
 | ||||
| PrivateTmp makes bluetoothd's /tmp and /var/tmp be inside a different | ||||
| namespace. This is useful to secure access to temporary files of the | ||||
| process. | ||||
| 
 | ||||
| NoNewPrivileges ensures that service process and all its children | ||||
| can never gain new privileges through execve(), lowering the risk of | ||||
| possible privilege escalations. | ||||
| ---
 | ||||
|  src/bluetooth.service.in | 6 ++++++ | ||||
|  1 file changed, 6 insertions(+) | ||||
| 
 | ||||
| diff --git a/src/bluetooth.service.in b/src/bluetooth.service.in
 | ||||
| index f9faaa452..7c2f60bb4 100644
 | ||||
| --- a/src/bluetooth.service.in
 | ||||
| +++ b/src/bluetooth.service.in
 | ||||
| @@ -12,8 +12,14 @@ NotifyAccess=main
 | ||||
|  #Restart=on-failure | ||||
|  CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE | ||||
|  LimitNPROC=1 | ||||
| +
 | ||||
| +# Filesystem lockdown
 | ||||
|  ProtectHome=true | ||||
|  ProtectSystem=full | ||||
| +PrivateTmp=true
 | ||||
| +
 | ||||
| +# Privilege escalation
 | ||||
| +NoNewPrivileges=true
 | ||||
|   | ||||
|  [Install] | ||||
|  WantedBy=bluetooth.target | ||||
| -- 
 | ||||
| 2.21.1 | ||||
| 
 | ||||
| @ -1,44 +0,0 @@ | ||||
| From 13a348670fef0047555395ce6977e86e0005f8bd Mon Sep 17 00:00:00 2001 | ||||
| From: Bastien Nocera <hadess@hadess.net> | ||||
| Date: Wed, 13 Sep 2017 15:37:11 +0200 | ||||
| Subject: [PATCH 3/4] systemd: Add more filesystem lockdown | ||||
| 
 | ||||
| We can only access the configuration file as read-only and read-write | ||||
| to the Bluetooth cache directory and sub-directories. | ||||
| ---
 | ||||
|  Makefile.am              | 3 +++ | ||||
|  src/bluetooth.service.in | 4 ++++ | ||||
|  2 files changed, 7 insertions(+) | ||||
| 
 | ||||
| diff --git a/Makefile.am b/Makefile.am
 | ||||
| index ac88c12e0..0a6d09847 100644
 | ||||
| --- a/Makefile.am
 | ||||
| +++ b/Makefile.am
 | ||||
| @@ -617,6 +617,9 @@
 | ||||
|   | ||||
|  SED_PROCESS = $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \ | ||||
|  		$(SED) -e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \ | ||||
| +		       -e 's,@libexecdir\@,$(libexecdir),g' \
 | ||||
| +		       -e 's,@statedir\@,$(statedir),g' \
 | ||||
| +		       -e 's,@confdir\@,$(confdir),g' \
 | ||||
|  		< $< > $@ | ||||
|   | ||||
|  if RUN_RST2MAN | ||||
| diff --git a/src/bluetooth.service.in b/src/bluetooth.service.in
 | ||||
| index 7c2f60bb4..4daedef2a 100644
 | ||||
| --- a/src/bluetooth.service.in
 | ||||
| +++ b/src/bluetooth.service.in
 | ||||
| @@ -17,6 +17,10 @@ LimitNPROC=1
 | ||||
|  ProtectHome=true | ||||
|  ProtectSystem=full | ||||
|  PrivateTmp=true | ||||
| +ProtectKernelTunables=true
 | ||||
| +ProtectControlGroups=true
 | ||||
| +ReadWritePaths=@statedir@
 | ||||
| +ReadOnlyPaths=@confdir@
 | ||||
|   | ||||
|  # Privilege escalation | ||||
|  NoNewPrivileges=true | ||||
| -- 
 | ||||
| 2.21.0 | ||||
| 
 | ||||
| @ -1,40 +0,0 @@ | ||||
| From 9a7872f04cb748e8de743d9136ecd91539d13cb7 Mon Sep 17 00:00:00 2001 | ||||
| From: Gopal Tiwari <gtiwari@redhat.com> | ||||
| Date: Mon, 8 Jun 2020 19:56:42 +0530 | ||||
| Subject: [PATCH BlueZ 4/4] systemd: More lockdown | ||||
| 
 | ||||
| From 171d812218883281fed57b57fafd5c18eac441ac Mon Sep 17 00:00:00 2001 | ||||
| From: Bastien Nocera <hadess@hadess.net> | ||||
| Date: Wed, 13 Sep 2017 15:38:26 +0200 | ||||
| 
 | ||||
| systemd: More lockdown | ||||
| 
 | ||||
| bluetoothd does not need to execute mapped memory, or real-time | ||||
| access, so block those. | ||||
| ---
 | ||||
|  src/bluetooth.service.in | 6 ++++++ | ||||
|  1 file changed, 6 insertions(+) | ||||
| 
 | ||||
| diff --git a/src/bluetooth.service.in b/src/bluetooth.service.in
 | ||||
| index 4daedef2a..f18801866 100644
 | ||||
| --- a/src/bluetooth.service.in
 | ||||
| +++ b/src/bluetooth.service.in
 | ||||
| @@ -22,9 +22,15 @@ ProtectControlGroups=true
 | ||||
|  ReadWritePaths=@statedir@ | ||||
|  ReadOnlyPaths=@confdir@ | ||||
|   | ||||
| +# Execute Mappings
 | ||||
| +MemoryDenyWriteExecute=true
 | ||||
| +
 | ||||
|  # Privilege escalation | ||||
|  NoNewPrivileges=true | ||||
|   | ||||
| +# Real-time
 | ||||
| +RestrictRealtime=true
 | ||||
| +
 | ||||
|  [Install] | ||||
|  WantedBy=bluetooth.target | ||||
|  Alias=dbus-org.bluez.service | ||||
| -- 
 | ||||
| 2.21.1 | ||||
| 
 | ||||
							
								
								
									
										174
									
								
								SOURCES/5.83-fixes.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										174
									
								
								SOURCES/5.83-fixes.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,174 @@ | ||||
| From a3a1298c0f4e2387694ad7ecd952cbd0a0b82c83 Mon Sep 17 00:00:00 2001 | ||||
| From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | ||||
| Date: Thu, 3 Jul 2025 13:30:22 -0400 | ||||
| Subject: [PATCH 1/2] shared/shell: Fix not calling pre_run for main menu | ||||
| 
 | ||||
| When calling bt_shell_run the main menu pre_run was not being called | ||||
| which cause tools with just one menu to not work as intended. | ||||
| 
 | ||||
| Fixes: https://github.com/bluez/bluez/issues/1319 | ||||
| ---
 | ||||
|  src/shared/shell.c | 3 +++ | ||||
|  1 file changed, 3 insertions(+) | ||||
| 
 | ||||
| diff --git a/src/shared/shell.c b/src/shared/shell.c
 | ||||
| index 3e5959fc1868..c69748594955 100644
 | ||||
| --- a/src/shared/shell.c
 | ||||
| +++ b/src/shared/shell.c
 | ||||
| @@ -1449,6 +1449,9 @@ int bt_shell_run(void)
 | ||||
|  	int status; | ||||
|  	const struct queue_entry *submenu; | ||||
|   | ||||
| +	if (data.menu && data.menu->pre_run)
 | ||||
| +		data.menu->pre_run(data.menu);
 | ||||
| +
 | ||||
|  	for (submenu = queue_get_entries(data.submenus); submenu; | ||||
|  	     submenu = submenu->next) { | ||||
|  		struct bt_shell_menu *menu = submenu->data; | ||||
| -- 
 | ||||
| 2.50.1 | ||||
| 
 | ||||
| 
 | ||||
| From a7ce88a861a0a26b50987ff455f0bb61379aa89c Mon Sep 17 00:00:00 2001 | ||||
| From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | ||||
| Date: Mon, 7 Jul 2025 09:39:43 -0400 | ||||
| Subject: [PATCH 2/2] shared/shell: Fix not running pre_run on | ||||
|  MODE_NON_INTERACTIVE | ||||
| 
 | ||||
| If a command is given to be run in non-interactive mode the code would | ||||
| not attempt to execute .pre_run first since some (sub)menus requires that | ||||
| in order to properly initialize things. | ||||
| 
 | ||||
| Fixes: https://github.com/bluez/bluez/issues/1394 | ||||
| Fixes: https://github.com/bluez/bluez/issues/1317 | ||||
| ---
 | ||||
|  src/shared/shell.c | 33 +++++++++++++++++++++++---------- | ||||
|  1 file changed, 23 insertions(+), 10 deletions(-) | ||||
| 
 | ||||
| diff --git a/src/shared/shell.c b/src/shared/shell.c
 | ||||
| index c69748594955..694ddc0007f5 100644
 | ||||
| --- a/src/shared/shell.c
 | ||||
| +++ b/src/shared/shell.c
 | ||||
| @@ -423,7 +423,8 @@ static void cmd_script(int argc, char *argv[])
 | ||||
|  	return bt_shell_noninteractive_quit(EXIT_SUCCESS); | ||||
|  } | ||||
|   | ||||
| -static const struct bt_shell_menu_entry default_menu[] = {
 | ||||
| +static const struct bt_shell_menu default_menu = {
 | ||||
| +	.entries = {
 | ||||
|  	{ "back",         NULL,       cmd_back, "Return to main menu", NULL, | ||||
|  							NULL, cmd_back_exists }, | ||||
|  	{ "menu",         "<name>",   cmd_menu, "Select submenu", | ||||
| @@ -437,7 +438,7 @@ static const struct bt_shell_menu_entry default_menu[] = {
 | ||||
|  	{ "export",       NULL,       cmd_export, | ||||
|  						"Print environment variables" }, | ||||
|  	{ "script",       "<filename>", cmd_script, "Run script" }, | ||||
| -	{ }
 | ||||
| +	{} },
 | ||||
|  }; | ||||
|   | ||||
|  static void shell_print_help(void) | ||||
| @@ -480,7 +481,7 @@ static void shell_print_menu(void)
 | ||||
|  		print_menu(entry->cmd, entry->arg ? : "", entry->desc ? : ""); | ||||
|  	} | ||||
|   | ||||
| -	for (entry = default_menu; entry->cmd; entry++) {
 | ||||
| +	for (entry = default_menu.entries; entry->cmd; entry++) {
 | ||||
|  		if (entry->exists && !entry->exists(data.menu)) | ||||
|  			continue; | ||||
|   | ||||
| @@ -495,7 +496,7 @@ static void shell_print_menu_zsh_complete(void)
 | ||||
|  	for (entry = data.menu->entries; entry->cmd; entry++) | ||||
|  		printf("%s:%s\n", entry->cmd, entry->desc ? : ""); | ||||
|   | ||||
| -	for (entry = default_menu; entry->cmd; entry++) {
 | ||||
| +	for (entry = default_menu.entries; entry->cmd; entry++) {
 | ||||
|  		if (entry->exists && !entry->exists(data.menu)) | ||||
|  			continue; | ||||
|   | ||||
| @@ -627,9 +628,11 @@ fail:
 | ||||
|  	return -EINVAL; | ||||
|  } | ||||
|   | ||||
| -static int menu_exec(const struct bt_shell_menu_entry *entry,
 | ||||
| +static int menu_exec(const struct bt_shell_menu *menu,
 | ||||
|  					int argc, char *argv[]) | ||||
|  { | ||||
| +	const struct bt_shell_menu_entry *entry = menu->entries;
 | ||||
| +
 | ||||
|  	for (; entry->cmd; entry++) { | ||||
|  		if (strcmp(argv[0], entry->cmd)) | ||||
|  			continue; | ||||
| @@ -642,6 +645,9 @@ static int menu_exec(const struct bt_shell_menu_entry *entry,
 | ||||
|  		if (data.menu == data.main && !strcmp(entry->cmd, "back")) | ||||
|  			continue; | ||||
|   | ||||
| +		if (data.mode == MODE_NON_INTERACTIVE && menu->pre_run)
 | ||||
| +			menu->pre_run(menu);
 | ||||
| +
 | ||||
|  		return cmd_exec(entry, argc, argv); | ||||
|  	} | ||||
|   | ||||
| @@ -673,7 +679,7 @@ static int submenu_exec(int argc, char *argv[])
 | ||||
|  	memmove(argv[0], argv[0] + len + 1, tlen - len - 1); | ||||
|  	memset(argv[0] + tlen - len - 1, 0, len + 1); | ||||
|   | ||||
| -	return menu_exec(submenu->entries, argc, argv);
 | ||||
| +	return menu_exec(submenu, argc, argv);
 | ||||
|  } | ||||
|   | ||||
|  static int shell_exec(int argc, char *argv[]) | ||||
| @@ -686,9 +692,9 @@ static int shell_exec(int argc, char *argv[])
 | ||||
|  	if (!argsisutf8(argc, argv)) | ||||
|  		return -EINVAL; | ||||
|   | ||||
| -	err  = menu_exec(default_menu, argc, argv);
 | ||||
| +	err  = menu_exec(&default_menu, argc, argv);
 | ||||
|  	if (err == -ENOENT) { | ||||
| -		err  = menu_exec(data.menu->entries, argc, argv);
 | ||||
| +		err  = menu_exec(data.menu, argc, argv);
 | ||||
|  		if (err == -ENOENT) { | ||||
|  			err = submenu_exec(argc, argv); | ||||
|  			if (err == -ENOENT) { | ||||
| @@ -980,7 +986,7 @@ static char *cmd_generator(const char *text, int state)
 | ||||
|  	} | ||||
|   | ||||
|  	if (default_menu_enabled) { | ||||
| -		cmd = find_cmd(text, default_menu, &index);
 | ||||
| +		cmd = find_cmd(text, default_menu.entries, &index);
 | ||||
|  		if (cmd) { | ||||
|  			return cmd; | ||||
|  		} else { | ||||
| @@ -1171,7 +1177,7 @@ static char **shell_completion(const char *text, int start, int end)
 | ||||
|  		if (wordexp(rl_line_buffer, &w, WRDE_NOCMD)) | ||||
|  			return NULL; | ||||
|   | ||||
| -		matches = menu_completion(default_menu, text, w.we_wordc,
 | ||||
| +		matches = menu_completion(default_menu.entries, text, w.we_wordc,
 | ||||
|  							w.we_wordv[0]); | ||||
|  		if (!matches) { | ||||
|  			matches = menu_completion(data.menu->entries, text, | ||||
| @@ -1449,6 +1455,12 @@ int bt_shell_run(void)
 | ||||
|  	int status; | ||||
|  	const struct queue_entry *submenu; | ||||
|   | ||||
| +	/* Check if on non-interactive mode skip pre-run since that is on-demand
 | ||||
| +	 * by shell_exec() only for the menu in use.
 | ||||
| +	 */
 | ||||
| +	if (data.mode == MODE_NON_INTERACTIVE)
 | ||||
| +		goto done;
 | ||||
| +
 | ||||
|  	if (data.menu && data.menu->pre_run) | ||||
|  		data.menu->pre_run(data.menu); | ||||
|   | ||||
| @@ -1460,6 +1472,7 @@ int bt_shell_run(void)
 | ||||
|  			menu->pre_run(menu); | ||||
|  	} | ||||
|   | ||||
| +done:
 | ||||
|  	status = mainloop_run_with_signal(signal_callback, NULL); | ||||
|   | ||||
|  	bt_shell_cleanup(); | ||||
| -- 
 | ||||
| 2.50.1 | ||||
| 
 | ||||
| @ -1,33 +0,0 @@ | ||||
| # Some devices have a bluetooth HCI connected to an uart, these needs to be | ||||
| # setup by calling btattach. The systemd btattach-bcm.service takes care of | ||||
| # this. These udev rules hardware-activate that service when necessary. | ||||
| # | ||||
| # For now this only suports ACPI enumerated Broadcom BT HCIs. | ||||
| # This has been tested on Bay and Cherry Trail devices with both ACPI and | ||||
| # PCI enumerated UARTs. | ||||
| 
 | ||||
| # Note we check for the platform device not for the acpi device, because | ||||
| # some DSDTs list multiple bluetooth adapters, but only some (or none) | ||||
| # are enabled. Only enabled adapters get a platform device created. | ||||
| ACTION!="add", GOTO="btattach_bcm_rules_end" | ||||
| SUBSYSTEM!="platform", GOTO="btattach_bcm_rules_end" | ||||
| 
 | ||||
| KERNEL=="BCM2E1A:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E39:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E3A:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E3D:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E3F:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E40:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E54:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E55:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E64:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E65:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E67:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E71:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E7B:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E7C:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E7E:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E95:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| KERNEL=="BCM2E96:00", TAG+="systemd", ENV{SYSTEMD_WANTS}="btattach-bcm@%k.service" | ||||
| 
 | ||||
| LABEL="btattach_bcm_rules_end" | ||||
| @ -1,30 +0,0 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| # Simple shell script to wait for the tty for an uart using BT HCI to show up | ||||
| # and then invoke btattach with the right parameters, this is intended to be | ||||
| # invoked from a hardware-activated systemd service | ||||
| # | ||||
| # For now this only suports ACPI enumerated Broadcom BT HCIs. | ||||
| # This has been tested on Bay and Cherry Trail devices with both ACPI and | ||||
| # PCI enumerated UARTs. | ||||
| # | ||||
| # Note the kernel bt developers are working on solving this entirely in the | ||||
| # kernel, so it is not worth the trouble to write something better then this. | ||||
| 
 | ||||
| BT_DEV="/sys/bus/platform/devices/$1" | ||||
| BT_DEV="$(readlink -f $BT_DEV)" | ||||
| UART_DEV="$(dirname $BT_DEV)" | ||||
| 
 | ||||
| # Stupid GPD-pocket has USB BT with id 0000:0000, but still claims to have | ||||
| # an uart attached bt | ||||
| if [ "$1" = "BCM2E7E:00" ] && lsusb | grep -q "ID 0000:0000"; then | ||||
| 	exit 0 | ||||
| fi | ||||
| 
 | ||||
| while [ ! -d "$UART_DEV/tty" ]; do | ||||
| 	sleep .2 | ||||
| done | ||||
| 
 | ||||
| TTY="$(ls $UART_DEV/tty)" | ||||
| 
 | ||||
| exec btattach --bredr "/dev/$TTY" -P bcm | ||||
| @ -1,6 +0,0 @@ | ||||
| [Unit] | ||||
| Description=btattach for Broadcom devices | ||||
| 
 | ||||
| [Service] | ||||
| Type=simple | ||||
| ExecStart=/usr/libexec/bluetooth/btattach-bcm-service.sh %I | ||||
							
								
								
									
										476
									
								
								SPECS/bluez.spec
									
									
									
									
									
								
							
							
						
						
									
										476
									
								
								SPECS/bluez.spec
									
									
									
									
									
								
							| @ -1,63 +1,31 @@ | ||||
| %if 0%{?fedora} || 0%{?rhel} <= 8 | ||||
| %bcond_without deprecated | ||||
| %else | ||||
| %bcond_with deprecated | ||||
| %endif | ||||
| 
 | ||||
| Name:    bluez | ||||
| Version: 5.83 | ||||
| Release: 2%{?dist} | ||||
| Summary: Bluetooth utilities | ||||
| Version: 5.63 | ||||
| Release: 5%{?dist} | ||||
| License: GPLv2+ | ||||
| URL:     http://www.bluez.org/ | ||||
| 
 | ||||
| Source0: http://www.kernel.org/pub/linux/bluetooth/bluez-%{version}.tar.xz | ||||
| Source0: http://www.kernel.org/pub/linux/bluetooth/%{name}-%{version}.tar.xz | ||||
| Source1: bluez.gitignore | ||||
| 
 | ||||
| # Scripts for automatically btattach-ing serial ports connected to Broadcom HCIs | ||||
| # as found on some Atom based x86 hardware | ||||
| Source2: 69-btattach-bcm.rules | ||||
| Source3: btattach-bcm@.service | ||||
| Source4: btattach-bcm-service.sh | ||||
| 
 | ||||
| # https://github.com/hadess/bluez/commits/build-fixes-5.46 | ||||
| #Patch1: 0001-build-Enable-BIND_NOW.patch | ||||
| #Patch2: 0003-tools-csr_usb-Fix-compilation-failure.patch | ||||
| 
 | ||||
| # https://github.com/hadess/bluez/commits/obex-5.46 | ||||
| Patch3: 0001-obex-Use-GLib-helper-function-to-manipulate-paths.patch | ||||
| Patch1: 0001-obex-Use-GLib-helper-function-to-manipulate-paths.patch | ||||
| # https://patchwork.kernel.org/project/bluetooth/patch/20240214155019.325715-1-hadess@hadess.net/ | ||||
| Patch2: 0001-Add-missing-mesh-gatt-JSON-files.patch | ||||
| # Upstream fixes | ||||
| Patch3: 5.83-fixes.patch | ||||
| 
 | ||||
| # https://github.com/hadess/bluez/commits/hostname-plugin-5.47 | ||||
| Patch4: 0001-hostname-Fix-BlueZ-5.XX-adapter-name-on-startup.patch | ||||
| 
 | ||||
| # https://github.com/hadess/bluez/commits/systemd-hardening | ||||
| Patch20: 0001-build-Always-define-confdir-and-statedir.patch | ||||
| Patch21: 0002-systemd-Add-PrivateTmp-and-NoNewPrivileges-options.patch | ||||
| Patch22: 0003-systemd-Add-more-filesystem-lockdown.patch | ||||
| Patch23: 0004-systemd-More-lockdown.patch | ||||
| Patch25: 0001-gdbus-Emit-InterfacesAdded-of-parents-objects-first.patch  | ||||
| 
 | ||||
| # https://bugzilla.redhat.com/show_bug.cgi?id=1567622 | ||||
| #Patch24: 0001-adapter-Don-t-refresh-adv_manager-for-non-LE-devices.patch | ||||
| 
 | ||||
| #Patch25: 0001-core-Add-AlwaysPairable-to-main.conf.patch  | ||||
| #Patch26: 0002-agent-Make-the-first-agent-to-register-the-default.patch  | ||||
| 
 | ||||
| #Patch27: 0001-HOGP-must-only-accept-data-from-bonded-devices.patch | ||||
| #Patch28: 0002-HID-accepts-bonded-device-connections-only.patch | ||||
| #Patch29: 0001-shared-att-Fix-possible-crash-on-disconnect.patch | ||||
| 
 | ||||
| #https://bugzilla.redhat.com/show_bug.cgi?id=1961511 | ||||
| #Patch30: 0001-input-hog-Attempt-to-set-security-level-if-not-bonde.patch | ||||
| 
 | ||||
| # fixing https://bugzilla.redhat.com/show_bug.cgi?id=1965057 | ||||
| #Patch31: 0001-shared-gatt-server-Fix-not-properly-checking-for-sec.patch | ||||
| 
 | ||||
| #Patch32: 0001-sdpd-Fix-leaking-buffers-stored-in-cstates-cache.patch | ||||
| 
 | ||||
| Patch40: 0001-Change-default-of-ClassicBondedOnly.patch | ||||
| 
 | ||||
| Patch50: 0001-pbap-Fix-not-checking-Primary_Secundary-Counter-lengt.patch | ||||
| Patch51: 0001-avrcp-Fix-crash-while-handling-unsupported-events.patch | ||||
| 
 | ||||
| BuildRequires: git-core | ||||
| BuildRequires: dbus-devel >= 1.6 | ||||
| BuildRequires: glib2-devel | ||||
| BuildRequires: libell-devel >= 0.37 | ||||
| BuildRequires: libical-devel | ||||
| BuildRequires: make | ||||
| BuildRequires: readline-devel | ||||
| # For bluetooth mesh | ||||
| BuildRequires: json-c-devel | ||||
| @ -67,65 +35,77 @@ BuildRequires: systemd-devel | ||||
| BuildRequires: cups-devel | ||||
| # For autoreconf | ||||
| BuildRequires: libtool automake autoconf | ||||
| # For man pages | ||||
| BuildRequires: python3-docutils | ||||
| BuildRequires: python3-pygments | ||||
| 
 | ||||
| Requires: dbus >= 1.6 | ||||
| 
 | ||||
| Requires(post): systemd | ||||
| Requires(preun): systemd | ||||
| Requires(postun): systemd | ||||
| 
 | ||||
| %description | ||||
| Utilities for use in Bluetooth applications: | ||||
| 	- hcitool | ||||
| 	- hciattach | ||||
| 	- hciconfig | ||||
| 	- bluetoothd | ||||
| 	- l2ping | ||||
| 	- rfcomm | ||||
| 	- sdptool | ||||
| 	- avinfo | ||||
| 	- bluemoon | ||||
| 	- bluetoothctl | ||||
| 	- bluetoothd | ||||
| 	- btattach | ||||
| 	- btmon | ||||
| 	- hcidump | ||||
| 	- hex2hcd | ||||
| 	- l2ping | ||||
| 	- l2test | ||||
| 	- mpris-proxy | ||||
| 	- rctest | ||||
| 	- gatttool | ||||
| 	- start scripts (Red Hat) | ||||
| 	- pcmcia configuration files | ||||
| 
 | ||||
| The BLUETOOTH trademarks are owned by Bluetooth SIG, Inc., U.S.A. | ||||
| 
 | ||||
| %package libs | ||||
| Summary: Libraries for use in Bluetooth applications | ||||
| 
 | ||||
| %package libs-devel | ||||
| Summary: Development libraries for Bluetooth applications | ||||
| Requires: bluez-libs%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %package cups | ||||
| Summary: CUPS printer backend for Bluetooth printers | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| Requires: cups | ||||
| 
 | ||||
| %package hid2hci | ||||
| Summary: Put HID proxying bluetooth HCI's into HCI mode | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %package obexd | ||||
| Summary: Object Exchange daemon for sharing content | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| Requires: bluez-libs%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %description cups | ||||
| This package contains the CUPS backend | ||||
| 
 | ||||
| %if %{with deprecated} | ||||
| %package deprecated | ||||
| Summary: Deprecated Bluetooth applications | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| Obsoletes: bluez < 5.55-2 | ||||
| 
 | ||||
| %description deprecated | ||||
| Bluetooth applications that have bee deprecated by upstream. They have been | ||||
| replaced by funcationality in the core bluetoothctl and will eventually | ||||
| be dropped by upstream. Utilities include: | ||||
| 	- ciptool | ||||
| 	- gatttool | ||||
| 	- hciattach | ||||
| 	- hciconfig | ||||
| 	- hcidump | ||||
| 	- hcitool | ||||
| 	- rfcomm | ||||
| 	- sdptool | ||||
| %endif | ||||
| 
 | ||||
| %package libs | ||||
| Summary: Libraries for use in Bluetooth applications | ||||
| 
 | ||||
| %description libs | ||||
| Libraries for use in Bluetooth applications. | ||||
| 
 | ||||
| %package libs-devel | ||||
| Summary: Development libraries for Bluetooth applications | ||||
| Requires: bluez-libs%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %description libs-devel | ||||
| bluez-libs-devel contains development libraries and headers for | ||||
| use in Bluetooth applications. | ||||
| 
 | ||||
| %package hid2hci | ||||
| Summary: Put HID proxying bluetooth HCI's into HCI mode | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %description hid2hci | ||||
| Most allinone PC's and bluetooth keyboard / mouse sets which include a | ||||
| bluetooth dongle, ship with a so called HID proxying bluetooth HCI. | ||||
| @ -145,31 +125,59 @@ them again. Since you cannot use your bluetooth keyboard and mouse until | ||||
| they are paired, this will require the use of a regular (wired) USB keyboard | ||||
| and mouse. | ||||
| 
 | ||||
| %package mesh | ||||
| Summary: Bluetooth mesh | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| Requires: bluez-libs%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %description mesh | ||||
| Services for bluetooth mesh | ||||
| 
 | ||||
| %package obexd | ||||
| Summary: Object Exchange daemon for sharing content | ||||
| Requires: bluez%{?_isa} = %{version}-%{release} | ||||
| Requires: bluez-libs%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %description obexd | ||||
| Object Exchange daemon for sharing files, contacts etc over bluetooth | ||||
| 
 | ||||
| %prep | ||||
| %autosetup -S git | ||||
| %autosetup -p1 | ||||
| 
 | ||||
| %build | ||||
| libtoolize -f | ||||
| autoreconf -f -i | ||||
| %configure --enable-tools --enable-library --enable-deprecated \ | ||||
|            --enable-sixaxis --enable-cups --enable-nfc --enable-hid2hci \ | ||||
| autoreconf -vif | ||||
| %configure --enable-tools --enable-library --disable-optimization \ | ||||
|            --enable-deprecated \ | ||||
|            --enable-sixaxis --enable-cups --enable-nfc --enable-mesh \ | ||||
|            --enable-hid2hci --enable-testing \ | ||||
|            --with-systemdsystemunitdir=%{_unitdir} \ | ||||
|            --with-systemduserunitdir=%{_userunitdir} | ||||
| 
 | ||||
| make %{?_smp_mflags} V=1 | ||||
| %{make_build} | ||||
| 
 | ||||
| %install | ||||
| make install DESTDIR=$RPM_BUILD_ROOT | ||||
| %{make_install} | ||||
| 
 | ||||
| %if %{with deprecated} | ||||
| # "make install" fails to install gatttool, necessary for Bluetooth Low Energy | ||||
| # Red Hat Bugzilla bug #1141909 | ||||
| # Debian bug #720486 | ||||
| # Red Hat Bugzilla bug #1141909, Debian bug #720486 | ||||
| install -m0755 attrib/gatttool $RPM_BUILD_ROOT%{_bindir} | ||||
| %else | ||||
| for i in ciptool gatttool hciattach hciconfig hcidump hcitool rfcomm sdptool ; do \ | ||||
| 	rm -f $RPM_BUILD_ROOT%{_bindir}/$i $RPM_BUILD_ROOT%{_mandir}/man1/$i*.1* ; \ | ||||
| done | ||||
| %endif | ||||
| 
 | ||||
| # Remove autocrap and libtool droppings | ||||
| # "make install" fails to install avinfo | ||||
| # Red Hat Bugzilla bug #1699680 | ||||
| install -m0755 tools/avinfo $RPM_BUILD_ROOT%{_bindir} | ||||
| 
 | ||||
| # btmgmt is not installed by "make install", but it is useful for debugging | ||||
| # some issues and to set the MAC address on HCIs which don't have their | ||||
| # MAC address configured  | ||||
| install -m0755 tools/btmgmt $RPM_BUILD_ROOT%{_bindir} | ||||
| 
 | ||||
| # Remove libtool archive | ||||
| find $RPM_BUILD_ROOT -name '*.la' -delete | ||||
| 
 | ||||
| # Remove the cups backend from libdir, and install it in /usr/lib whatever the install | ||||
| @ -182,20 +190,20 @@ rm -f ${RPM_BUILD_ROOT}/%{_sysconfdir}/udev/*.rules ${RPM_BUILD_ROOT}/usr/lib/ud | ||||
| install -D -p -m0644 tools/hid2hci.rules ${RPM_BUILD_ROOT}/%{_udevrulesdir}/97-hid2hci.rules | ||||
| 
 | ||||
| install -d -m0755 $RPM_BUILD_ROOT/%{_localstatedir}/lib/bluetooth | ||||
| install -d -m0755 $RPM_BUILD_ROOT/%{_localstatedir}/lib/bluetooth/mesh | ||||
| 
 | ||||
| mkdir -p $RPM_BUILD_ROOT/%{_libdir}/bluetooth/ | ||||
| 
 | ||||
| #copy bluetooth config file and setup auto enable | ||||
| install -D -p -m0644 src/main.conf ${RPM_BUILD_ROOT}/etc/bluetooth/main.conf | ||||
| install -D -p -m0644 mesh/mesh-main.conf ${RPM_BUILD_ROOT}/etc/bluetooth/mesh-main.conf | ||||
| sed -i 's/#\[Policy\]$/\[Policy\]/; s/#AutoEnable=false/AutoEnable=true/' ${RPM_BUILD_ROOT}/%{_sysconfdir}/bluetooth/main.conf | ||||
| 
 | ||||
| #serial port connected Broadcom HCIs scripts | ||||
| install -D -p -m0644 %{SOURCE2} ${RPM_BUILD_ROOT}/%{_udevrulesdir}/ | ||||
| install -D -p -m0644 %{SOURCE3} ${RPM_BUILD_ROOT}/%{_unitdir}/ | ||||
| install -D -p -m0755 %{SOURCE4} ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/ | ||||
| # Install the HCI emulator, useful for testing | ||||
| install emulator/btvirt ${RPM_BUILD_ROOT}/%{_libexecdir}/bluetooth/ | ||||
| 
 | ||||
| %check | ||||
| make check | ||||
| #check | ||||
| #make check | ||||
| 
 | ||||
| %ldconfig_scriptlets libs | ||||
| 
 | ||||
| @ -211,6 +219,12 @@ make check | ||||
| %post hid2hci | ||||
| /sbin/udevadm trigger --subsystem-match=usb | ||||
| 
 | ||||
| %post mesh | ||||
| %systemd_user_post bluetooth-mesh.service | ||||
| 
 | ||||
| %preun mesh | ||||
| %systemd_user_preun bluetooth-mesh.service | ||||
| 
 | ||||
| %post obexd | ||||
| %systemd_user_post obex.service | ||||
| 
 | ||||
| @ -218,50 +232,58 @@ make check | ||||
| %systemd_user_preun obex.service | ||||
| 
 | ||||
| %files | ||||
| %{!?_licensedir:%global license %%doc} | ||||
| %license COPYING | ||||
| %doc AUTHORS ChangeLog | ||||
| %config %{_sysconfdir}/dbus-1/system.d/bluetooth.conf | ||||
| # bluetooth.service expects configuration directory to be read only | ||||
| # https://github.com/bluez/bluez/issues/329#issuecomment-1102459104 | ||||
| %attr(0555, root, root) %dir %{_sysconfdir}/bluetooth | ||||
| %config %{_sysconfdir}/bluetooth/main.conf | ||||
| %{_bindir}/btattach | ||||
| %{_bindir}/ciptool | ||||
| %{_bindir}/hcitool | ||||
| %{_bindir}/l2ping | ||||
| %{_bindir}/rfcomm | ||||
| %{_bindir}/sdptool | ||||
| %{_bindir}/bluetoothctl | ||||
| %config(noreplace) %{_sysconfdir}/bluetooth/input.conf | ||||
| %config(noreplace) %{_sysconfdir}/bluetooth/network.conf | ||||
| %{_bindir}/avinfo | ||||
| %{_bindir}/bluemoon | ||||
| %{_bindir}/bluetoothctl | ||||
| %{_bindir}/btattach | ||||
| %{_bindir}/btmgmt | ||||
| %{_bindir}/btmon | ||||
| %{_bindir}/hciattach | ||||
| %{_bindir}/hciconfig | ||||
| %{_bindir}/hcidump | ||||
| %{_bindir}/l2test | ||||
| %{_bindir}/hex2hcd | ||||
| %{_bindir}/l2ping | ||||
| %{_bindir}/mpris-proxy | ||||
| %{_bindir}/gatttool | ||||
| %{_bindir}/rctest | ||||
| %{_datadir}/zsh/site-functions/_bluetoothctl | ||||
| %{_mandir}/man1/btattach.1.gz | ||||
| %{_mandir}/man1/bluetoothctl.1.* | ||||
| %{_mandir}/man1/bluetoothctl-*.1.* | ||||
| %{_mandir}/man1/btattach.1.* | ||||
| %{_mandir}/man1/btmgmt.1.* | ||||
| %{_mandir}/man1/btmon.1.* | ||||
| %{_mandir}/man1/ciptool.1.gz | ||||
| %{_mandir}/man1/hcitool.1.gz | ||||
| %{_mandir}/man1/rfcomm.1.gz | ||||
| %{_mandir}/man1/sdptool.1.gz | ||||
| %{_mandir}/man1/hciattach.1.* | ||||
| %{_mandir}/man1/hciconfig.1.* | ||||
| %{_mandir}/man1/hcidump.1.* | ||||
| %{_mandir}/man1/l2ping.1.* | ||||
| %{_mandir}/man1/rctest.1.* | ||||
| %{_mandir}/man8/* | ||||
| %{_mandir}/man8/bluetoothd.8.* | ||||
| %dir %{_libexecdir}/bluetooth | ||||
| %{_libexecdir}/bluetooth/bluetoothd | ||||
| %{_libexecdir}/bluetooth/btattach-bcm-service.sh | ||||
| %{_libdir}/bluetooth/ | ||||
| %{_localstatedir}/lib/bluetooth | ||||
| %{_datadir}/dbus-1/system-services/org.bluez.service | ||||
| %{_datadir}/dbus-1/system.d/bluetooth.conf | ||||
| %{_unitdir}/bluetooth.service | ||||
| %{_unitdir}/btattach-bcm@.service | ||||
| %{_udevrulesdir}/69-btattach-bcm.rules | ||||
| %{_userunitdir}/mpris-proxy.service | ||||
| %{_datadir}/zsh/site-functions/_bluetoothctl | ||||
| 
 | ||||
| %if %{with deprecated} | ||||
| %files deprecated | ||||
| %{_bindir}/ciptool | ||||
| %{_bindir}/gatttool | ||||
| %{_bindir}/hciattach | ||||
| %{_bindir}/hciconfig | ||||
| %{_bindir}/hcidump | ||||
| %{_bindir}/hcitool | ||||
| %{_bindir}/rfcomm | ||||
| %{_bindir}/sdptool | ||||
| %{_mandir}/man1/ciptool.1.* | ||||
| %{_mandir}/man1/hciattach.1.* | ||||
| %{_mandir}/man1/hciconfig.1.* | ||||
| %{_mandir}/man1/hcidump.1.* | ||||
| %{_mandir}/man1/hcitool.1.* | ||||
| %{_mandir}/man1/rfcomm.1.* | ||||
| %{_mandir}/man1/sdptool.1.* | ||||
| %endif | ||||
| 
 | ||||
| %files libs | ||||
| %{!?_licensedir:%global license %%doc} | ||||
| @ -270,9 +292,22 @@ make check | ||||
| 
 | ||||
| %files libs-devel | ||||
| %doc doc/*txt | ||||
| %{_bindir}/isotest | ||||
| %{_bindir}/l2test | ||||
| %{_bindir}/rctest | ||||
| %{_libdir}/libbluetooth.so | ||||
| %{_includedir}/bluetooth | ||||
| %{_mandir}/man1/isotest.1.* | ||||
| %{_mandir}/man1/rctest.1.* | ||||
| %{_mandir}/man5/org.bluez.*.5.* | ||||
| %{_mandir}/man7/hci.7.* | ||||
| %{_mandir}/man7/l2cap.7.* | ||||
| %{_mandir}/man7/mgmt.7.* | ||||
| %{_mandir}/man7/rfcomm.7.* | ||||
| %{_mandir}/man7/sco.7.* | ||||
| %{_libdir}/pkgconfig/bluez.pc | ||||
| %dir %{_libexecdir}/bluetooth | ||||
| %{_libexecdir}/bluetooth/btvirt | ||||
| 
 | ||||
| %files cups | ||||
| %_cups_serverbin/backend/bluetooth | ||||
| @ -282,98 +317,163 @@ make check | ||||
| %{_mandir}/man1/hid2hci.1* | ||||
| %{_udevrulesdir}/97-hid2hci.rules | ||||
| 
 | ||||
| %files mesh | ||||
| %doc tools/mesh-gatt/*.json | ||||
| %config %{_sysconfdir}/bluetooth/mesh-main.conf | ||||
| %{_bindir}/meshctl | ||||
| %{_bindir}/mesh-cfgclient | ||||
| %{_bindir}/mesh-cfgtest | ||||
| %{_datadir}/dbus-1/system-services/org.bluez.mesh.service | ||||
| %{_datadir}/dbus-1/system.d/bluetooth-mesh.conf | ||||
| %{_libexecdir}/bluetooth/bluetooth-meshd | ||||
| %{_unitdir}/bluetooth-mesh.service | ||||
| %{_localstatedir}/lib/bluetooth/mesh | ||||
| %{_mandir}/man8/bluetooth-meshd.8* | ||||
| 
 | ||||
| %files obexd | ||||
| %{_libexecdir}/bluetooth/obexd | ||||
| %{_datadir}/dbus-1/services/org.bluez.obex.service | ||||
| /usr/lib/systemd/user/dbus-org.bluez.obex.service | ||||
| %{_datadir}/dbus-1/system.d/obex.conf | ||||
| %{_userunitdir}/obex.service | ||||
| 
 | ||||
| %changelog | ||||
| * Mon Dec 09 2024 David Marlin <dmarlin@redhat.com> - 5.63-5 | ||||
| + bluez-5.63-5 | ||||
| - Resolves: RHEL-35371 | ||||
| - Fixing CVE-2023-27349 | ||||
| - Resolves: RHEL-35492 | ||||
| - Fixing CVE-2023-51589 | ||||
| * Mon Aug 18 2025 Bastien Nocera <bnocera@redhat.com> - 5.83-1 | ||||
| - Fix problem with menu handling | ||||
|   Resolves: RHEL-103966 | ||||
| 
 | ||||
| * Mon Aug 05 2024 David Marlin <dmarlin@redhat.com> - 5.63-4 | ||||
| + bluez-5.63-4 | ||||
| - Resolves: RHEL-35501 | ||||
| - Fixing CVE-2023-50230 | ||||
| - Resolves: RHEL-35504 | ||||
| - Fixing CVE-2023-50229 | ||||
| * Fri Jun 13 2025 Bastien Nocera <bnocera@redhat.com> - 5.83-1 | ||||
| - Update to 5.83 | ||||
|   Resolves: RHEL-94819 | ||||
|   Resolves: RHEL-56073 | ||||
|   Resolves: RHEL-1924 | ||||
| 
 | ||||
| * Thu Jun 06 2024 David Marlin <dmarlin@redhat.com> - 5.63-3 | ||||
| + bluez-5.63-3 | ||||
| - Add back the tests for OSCI. | ||||
| * Fri Jan 24 2025 Bastien Nocera <bnocera@redhat.com> - 5.72-4 | ||||
| - Fix plugin_init() startup warnings | ||||
|   Related: RHEL-68934 | ||||
| 
 | ||||
| * Wed May 29 2024 David Marlin <dmarlin@redhat.com> - 5.63-2 | ||||
| + bluez-5.63-2 | ||||
| - Change default of ClassicBondedOnly to true to align with HID specification. | ||||
| - Resolves: RHEL-18429 | ||||
| * Wed Jan 22 2025 Bastien Nocera <bnocera@redhat.com> - 5.72-3 | ||||
| - Fix ConfigurationDirectory startup warning | ||||
|   Related: RHEL-71798 | ||||
| 
 | ||||
| * Mon Jul 15 2024 David Marlin <dmarlin@redhat.com> - 5.72-2 | ||||
| - Bump release to rebuild for RHEL-9.5 | ||||
| 
 | ||||
| * Thu Feb 15 2024 Bastien Nocera <bnocera@redhat.com> - 5.72-1 | ||||
| - Update to 5.72 | ||||
| 
 | ||||
| * Thu Jun 9 2022 Gopal Tiwari <gtiwari@redhat.com> - 5.64-2 | ||||
| - Coverity fixes for bluez. | ||||
| 
 | ||||
| * Thu May 5 2022 Gopal Tiwari <gtiwari@redhat.com> - 5.64-1 | ||||
| - Update to 5.64 | ||||
| 
 | ||||
| * Thu Dec 16 2021 Gopal Tiwari <gtiwari@redhat.com> - 5.56-8 | ||||
| - Fixing Gating and version | ||||
|   Related: rhbz#2027435 | ||||
| 
 | ||||
| * Tue Dec 14 2021 Gopal Tiwari <gtiwari@redhat.com> - 5.56-7 | ||||
| - Fixing CVE-2021-41229 | ||||
|   Related: rhbz#2027435 | ||||
| 
 | ||||
| * Tue May 17 2022 Gopal Tiwari <gtiwari@redhat.com> - 5.63-1 | ||||
| + bluez-5.63-1 | ||||
| - Fixing (#) | ||||
| * Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 5.56-6 | ||||
| - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags | ||||
|   Related: rhbz#1991688 | ||||
| 
 | ||||
| * Mon Dec 13 2021 Gopal Tiwari <gtiwari@redhat.com> - 5.56-3 | ||||
| + bluez-5.56-3 | ||||
| - Fixing (#2027434) | ||||
| - Fixing CVE-2021-41229 | ||||
| * Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 5.56-5 | ||||
| - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 | ||||
| 
 | ||||
| * Mon Jun 7 2021 Gopal Tiwari <gtiwari@redhat.com> - 5.56-2 | ||||
| + bluez-5.56-2 | ||||
| - Fixing (#1968392) | ||||
| - Removing bccmd check from tests | ||||
| * Sun Mar 14 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 5.56-4 | ||||
| - Fix for avdtp audio disconnexts | ||||
| 
 | ||||
| * Wed Jun 2 2021 Gopal Tiwari <gtiwari@redhat.com> - 5.56-1 | ||||
| + bluez-5.56-1 | ||||
| - Fixing (#1965057) | ||||
| - Removing bccmd, enabling hid2hci as upstream removed the support in bluez-5.56  | ||||
| * Sun Mar 14 2021 Hans de Goede <hdegoede@redhat.com> - 5.56-3 | ||||
| - Drop obsolete udev rule + systemd service to call btattach on BT-HCIs | ||||
|   connected via UART from userspace, this is all handled in the kernel now | ||||
| - Add the btmgmt util to the packaged files | ||||
| 
 | ||||
| * Wed May 26 2021 Gopal Tiwari <gtiwari@redhat.com> - 5.52-5 | ||||
| + bluez-5.52-5 | ||||
| - Fixing (#1961511) | ||||
| * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 5.56-2 | ||||
| - Rebuilt for updated systemd-rpm-macros | ||||
|   See https://pagure.io/fesco/issue/2583. | ||||
| 
 | ||||
| * Thu Oct 22 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.52-4 | ||||
| + bluez-5.52-4 | ||||
| - Fixing (#1885378) | ||||
| * Sat Feb 27 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 5.56-1 | ||||
| - Update to 5.56 | ||||
| 
 | ||||
| * Thu Oct 22 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.52-3 | ||||
| + bluez-5.52-3 | ||||
| - Revering the 5.52-2 patch due some mismatch with upsream patch.  | ||||
| * Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.55-3 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild | ||||
| 
 | ||||
| * Tue Oct 20 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.52-2 | ||||
| + bluez-5.52-2 | ||||
| - Fixing (#1885378) | ||||
| * Sun Sep 13 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 5.55-2 | ||||
| - Split tools marked as deprecated to separate sub package (rhbz #1887569) | ||||
| 
 | ||||
| * Tue Jun 9 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.52-1 | ||||
| + bluez-5.52-1 | ||||
| - Fixing (#1830397) | ||||
| * Sun Sep 06 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 5.55-1 | ||||
| - Update to 5.55 | ||||
| 
 | ||||
| * Fri Apr 24 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.50-4 | ||||
| + bluez-5.50-4 | ||||
| - Fixing CVE-2020-0556 | ||||
| * Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.54-4 | ||||
| - Second attempt - Rebuilt for | ||||
|   https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild | ||||
| 
 | ||||
| * Mon Jan 13 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.50-3 | ||||
| + bluez-5.50-3 | ||||
| - Bump the version  | ||||
| * Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.54-3 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild | ||||
| 
 | ||||
| * Mon Jan 13 2020 Gopal Tiwari <gtiwari@redhat.com> - 5.50-2 | ||||
| * Tue Apr 21 2020 Björn Esser <besser82@fedoraproject.org> - 5.54-2 | ||||
| - Rebuild (json-c) | ||||
| 
 | ||||
| * Sun Mar 15 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 5.54-1 | ||||
| - bluez 5.54 | ||||
| 
 | ||||
| * Sun Feb 16 2020 Peter Robinson <pbrobinson@fedoraproject.org> 5.53-2 | ||||
| - Minor mesh updates | ||||
| 
 | ||||
| * Sun Feb 16 2020 Peter Robinson <pbrobinson@fedoraproject.org> 5.53-1 | ||||
| - bluez 5.53 | ||||
| 
 | ||||
| * Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.52-4 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild | ||||
| 
 | ||||
| * Thu Dec 12 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.52-3 | ||||
| - Minor bluetooth mesh improvements | ||||
| 
 | ||||
| * Mon Dec 02 2019 Lubomir Rintel <lkundrak@v3.sk> - 5.52-2 | ||||
| - Package the btvirt binary | ||||
| 
 | ||||
| * Sun Nov  3 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.52-1 | ||||
| - bluez 5.52 | ||||
| 
 | ||||
| * Fri Sep 20 2019 Peter Robinson <pbrobinson@fedoraproject.org> 5.51-1 | ||||
| - bluez 5.51 | ||||
| 
 | ||||
| * Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.50-9 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild | ||||
| 
 | ||||
| * Thu Jun 06 2019 Bastien Nocera <bnocera@redhat.com> - 5.50-8 | ||||
| + bluez-5.50-8 | ||||
| - Backport loads of fixes from upstream, including: | ||||
|   - dbus-broker support (#1711594) | ||||
|   - a2dp codecs discovery | ||||
|   - discoverability filter support (used in gnome-bluetooth, #1583442) | ||||
|   - sixaxis pairing fixes | ||||
| 
 | ||||
| * Tue Apr 16 2019 Eduardo Minguez <edu@linux.com> - 5.50-7 | ||||
| - Added avinfo | ||||
| 
 | ||||
| * Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.50-6 | ||||
| - Disable tests temporarily | ||||
| 
 | ||||
| * Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.50-5 | ||||
| - Rebuild for readline 8.0 | ||||
| 
 | ||||
| * Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.50-4 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild | ||||
| 
 | ||||
| * Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.50-3 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild | ||||
| 
 | ||||
| * Wed Jun 27 2018 Bastien Nocera <bnocera@redhat.com> - 5.50-2 | ||||
| + bluez-5.50-2 | ||||
| - Fixing CVE-2018-10910 (#1606373) | ||||
| - Fix A2DP disconnections with some headsets | ||||
| 
 | ||||
| * Fri Sep 7 2018 Gopal Tiwari <gtiwari@redhat.com> - 5.50-1 | ||||
| * Mon Jun 04 2018 Bastien Nocera <bnocera@redhat.com> - 5.50-1 | ||||
| + bluez-5.50-1 | ||||
| - Update to 5.50 (#1504689) | ||||
| 
 | ||||
| * Fri Aug 24 2018 Gopal Tiwari <gtiwari@redhat.com> - 5.49-6 | ||||
| + bluez-5.49-6 | ||||
| - Disabling Mesh Networking for crypto issue while code reviewing.  | ||||
| 
 | ||||
| * Tue Aug 14 2018 Gopal Tiwari <gtiwari@redhat.com> - 5.49-5 | ||||
| + bluez-5.49-5 | ||||
| - Fix accessing NULL adv_manager (#1602779) | ||||
| - Update to 5.50 | ||||
| 
 | ||||
| * Fri Apr 20 2018 Bastien Nocera <bnocera@redhat.com> - 5.49-3 | ||||
| + bluez-5.49-3 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user