fix enable-dbus-broker-to-reexecute.patch and backport-launch-config-use-AT_RANDOM-for-XML-hash-salt.patch
(cherry picked from commit e14ca780e3b7fe9abb3b747db6f5ed30a075d75b)
This commit is contained in:
parent
0d3d4af282
commit
007153d3fd
@ -1,3 +1,11 @@
|
||||
From dd2a42a4b882fff63c4c68b8b6a724394270ed3f Mon Sep 17 00:00:00 2001
|
||||
From: David Rheinsberg <david@readahead.eu>
|
||||
Date: Wed, 5 Jul 2023 09:54:12 +0200
|
||||
Subject: [PATCH] launch/config: use AT_RANDOM for XML hash salt
|
||||
|
||||
Forward the entropy from AT_RANDOM to the hash-salt used by expat. Use
|
||||
XML_SetHashSalt() for this (available and fixed since expat-2.1).
|
||||
|
||||
This fixes an issue where libexpat might read from `/dev/urandom` and
|
||||
thus block until the entropy pool is initialized. This hidden
|
||||
dependency is very hard to debug. Instead, we require the service
|
||||
@ -43,7 +51,7 @@ index 85521bd..4a6a11e 100644
|
||||
+ * service manager to order processes accordingly.
|
||||
+ */
|
||||
+ random = (void *)getauxval(AT_RANDOM);
|
||||
+ assert(random);
|
||||
+ c_assert(random);
|
||||
+ memcpy(&parser->salt, random, sizeof(parser->salt));
|
||||
}
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Name: dbus-broker
|
||||
Version: 29
|
||||
Release: 9
|
||||
Release: 10
|
||||
Summary: Linux D-Bus Message Broker
|
||||
License: Apache License 2.0
|
||||
URL: https://github.com/bus1/dbus-broker
|
||||
@ -95,6 +95,9 @@ fi
|
||||
%{_userunitdir}/dbus-broker.service
|
||||
|
||||
%changelog
|
||||
* Fri May 24 2024 huyubiao<huyubiao@huawei.com> - 29-10
|
||||
- fix enable-dbus-broker-to-reexecute.patch and backport-launch-config-use-AT_RANDOM-for-XML-hash-salt.patch
|
||||
|
||||
* Sat Oct 7 2023 hongjinghao<hongjinghao@huawei.com> - 29-9
|
||||
- Fix buffer leakage
|
||||
|
||||
|
||||
@ -1922,7 +1922,7 @@ index 0000000..c027999
|
||||
+ r = log_commitf(&broker->log, "NameOwner string %s is invalid, skipping.\n",
|
||||
+ nameowner_ship_str);
|
||||
+ if (r < 0)
|
||||
+ return error_fold(r);
|
||||
+ return error_fold(r);
|
||||
+ close(peeri->connection.socket.fd);
|
||||
+ continue;
|
||||
+ }
|
||||
@ -1937,7 +1937,6 @@ index 0000000..c027999
|
||||
+ if (arg0 && !strncmp(arg0 + strlen("arg0"), "=':1", strlen("=':1"))) {
|
||||
+ continue;
|
||||
+ }
|
||||
+ rule_str_list_cur = stpcpy(rule_str_list_cur, rule_str);
|
||||
+ left_length -= strlen(rule_str);
|
||||
+ /* Besides the next rule_str, we should also keep MATCH_RULE_LENGTH_MAX
|
||||
+ * bytes for sasl_str. sasl_str usually doesn't need that much space,
|
||||
@ -1946,6 +1945,7 @@ index 0000000..c027999
|
||||
+ skip_this_peer = true;
|
||||
+ break;
|
||||
+ }
|
||||
+ rule_str_list_cur = stpcpy(rule_str_list_cur, rule_str);
|
||||
+ }
|
||||
+
|
||||
+ if (skip_this_peer) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user