busybox: additional 1.14.0 patches

The original mdev patch was buggy.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Peter Korsgaard 2009-05-13 09:19:27 +02:00
parent 9e114500d5
commit 8b8d3ff6c1
2 changed files with 19 additions and 13 deletions

View File

@ -1,5 +1,5 @@
--- 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
+++ busybox-1.14.0-mdev/util-linux/mdev.c Mon May 4 19:58:47 2009
@@ -181,7 +181,8 @@
* the rest of fields unless keep_matching == 1 */
@ -10,15 +10,3 @@
/* 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);

View File

@ -0,0 +1,18 @@
--- busybox-1.14.0/procps/sysctl.c Tue Apr 14 01:43:09 2009
+++ busybox-1.14.0-sysctl/procps/sysctl.c Sun May 10 23:40:52 2009
@@ -214,11 +214,11 @@
// (but _whitespace_ from ends should be trimmed first (and we do it right))
//TODO: "var==1" is mishandled (must use "=1" as a value, but uses "1")
while (config_read(parser, token, 2, 2, "# \t=", PARSE_NORMAL)) {
+ char *tp;
sysctl_dots_to_slashes(token[0]);
- /* Save ~4 bytes by using parser internals */
- /* parser->line is big enough for sprintf */
- sprintf(parser->line, "%s=%s", token[0], token[1]);
- sysctl_act_recursive(parser->line);
+ tp = xasprintf("%s=%s", token[0], token[1]);
+ sysctl_act_recursive(tp);
+ free(tp);
}
if (ENABLE_FEATURE_CLEAN_UP)
config_close(parser);