diff options
author | Peter Korsgaard <jacmet@sunsite.dk> | 2009-05-13 09:19:27 +0200 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2009-05-13 09:20:10 +0200 |
commit | 8b8d3ff6c1fb3d175d2b76a145cec15965cefb15 (patch) | |
tree | 59bbedf05a7f764a4e18f38f67a37377804bb4d0 | |
parent | 9e114500d500ade3472db9d8663cf6013a5f928b (diff) |
busybox: additional 1.14.0 patches
The original mdev patch was buggy.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r-- | package/busybox/busybox-1.14.0-mdev.patch | 14 | ||||
-rw-r--r-- | package/busybox/busybox-1.14.0-sysctl.patch | 18 |
2 files changed, 19 insertions, 13 deletions
diff --git a/package/busybox/busybox-1.14.0-mdev.patch b/package/busybox/busybox-1.14.0-mdev.patch index 4cefd0dd4..21535b037 100644 --- a/package/busybox/busybox-1.14.0-mdev.patch +++ b/package/busybox/busybox-1.14.0-mdev.patch @@ -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); diff --git a/package/busybox/busybox-1.14.0-sysctl.patch b/package/busybox/busybox-1.14.0-sysctl.patch new file mode 100644 index 000000000..67383864f --- /dev/null +++ b/package/busybox/busybox-1.14.0-sysctl.patch @@ -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); |