summaryrefslogtreecommitdiff
path: root/package/busybox/busybox-1.14.0-mdev.patch
blob: 4cefd0dd49ec3c0ec83b4f302244e795d1dd05af (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
--- busybox-1.14.0/util-linux/mdev.c	Tue Apr 14 23:23:04 2009
+++ busybox-1.14.0-mdev/util-linux/mdev.c	Sat May  2 16:31:34 2009
@@ -181,7 +181,8 @@
 		 * the rest of fields unless keep_matching == 1 */
 
 		/* 2nd field: uid:gid - device ownership */
-		parse_chown_usergroup_or_die(&ugid, tokens[1]);
+		if (get_uidgid(&ugid, tokens[1], 1) == 0)
+			bb_error_msg("unknown user/group %s", tokens[1]);
 
 		/* 3rd field: mode - device permissions */
 		mode = strtoul(tokens[2], NULL, 8);
@@ -524,7 +525,10 @@
 				make_device(temp, 1);
 		}
 		else if (strcmp(action, "add") == 0) {
-			make_device(temp, 0);
+			/* N.B. make_device() mangles the device path, so save it */
+			char *s = xstrdup(temp);
+			make_device(s, 0);
+			free(s);
 			if (ENABLE_FEATURE_MDEV_LOAD_FIRMWARE) {
 				if (fw)
 					load_firmware(fw, temp);