projects
/
systemd.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
172b455
)
sd-device: fix segfault when error occurs in device_new_from_{nulstr,strv}()
author
Yu Watanabe
<watanabe.yu+github@gmail.com>
Sat, 22 Dec 2018 18:06:47 +0000
(
03:06
+0900)
committer
Michael Biebl
<biebl@debian.org>
Sat, 12 Jan 2019 20:49:44 +0000
(20:49 +0000)
As devpath may not be set yet.
When debug logging is enabled, log_device_*() calls
sd_device_get_sysname(). So, we should not assume that devpath is always
set.
Fixes #11258.
(cherry picked from commit
18fee12a2d489378a2a9b647db0d0eb8c43f5362
)
(cherry picked from commit
9ae73a6273461361eef7e83d48aadee111d6616e
)
Gbp-Pq: Name sd-device-fix-segfault-when-error-occurs-in-device_new_fr.patch
src/libsystemd/sd-device/sd-device.c
patch
|
blob
|
history
diff --git
a/src/libsystemd/sd-device/sd-device.c
b/src/libsystemd/sd-device/sd-device.c
index db58615df53df64109360cdd469ac5d17ad5fcbf..9b1ef4448030c417654f978f2b8a46e01260f411 100644
(file)
--- a/
src/libsystemd/sd-device/sd-device.c
+++ b/
src/libsystemd/sd-device/sd-device.c
@@
-1002,6
+1002,9
@@
static int device_set_sysname(sd_device *device) {
const char *pos;
size_t len = 0;
+ if (!device->devpath)
+ return -EINVAL;
+
pos = strrchr(device->devpath, '/');
if (!pos)
return -EINVAL;