summaryrefslogtreecommitdiffstats
path: root/package/busybox/busybox-1.10.1-mdev.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/busybox/busybox-1.10.1-mdev.patch')
-rw-r--r--package/busybox/busybox-1.10.1-mdev.patch38
1 files changed, 20 insertions, 18 deletions
diff --git a/package/busybox/busybox-1.10.1-mdev.patch b/package/busybox/busybox-1.10.1-mdev.patch
index b5788829a..33a9a0d61 100644
--- a/package/busybox/busybox-1.10.1-mdev.patch
+++ b/package/busybox/busybox-1.10.1-mdev.patch
@@ -1,5 +1,5 @@
--- busybox-1.10.1/util-linux/mdev.c Sat Apr 19 05:50:39 2008
-+++ busybox-1.10.1-mdev/util-linux/mdev.c Sat Apr 26 17:15:54 2008
++++ busybox-1.10.1-mdev/util-linux/mdev.c Fri May 2 14:48:06 2008
@@ -12,6 +12,8 @@
#include "libbb.h"
#include "xregex.h"
@@ -40,7 +40,7 @@
char *command = NULL;
char *alias = NULL;
-@@ -42,156 +58,177 @@
+@@ -42,156 +58,178 @@
* also depend on path having writeable space after it.
*/
if (!delete) {
@@ -204,13 +204,19 @@
+ if (ENABLE_FEATURE_MDEV_RENAME) {
+ if (!next)
+ break;
-+ val = next;
-+ next = next_field(val);
-+ if (*val == '>') {
++ if (*next == '>') {
+#if ENABLE_FEATURE_MDEV_RENAME_REGEXP
-+ /* substitute %1..9 with off[1..9], if any */
+ char *s, *p;
+ unsigned i, n;
++#endif
++ val = next;
++ next = next_field(val);
++#if ENABLE_FEATURE_MDEV_RENAME_REGEXP
++ /* substitute %1..9 with off[1..9], if any */
++ n = 0;
++ s = val;
++ while (*s && *s++ == '%')
++ n++;
- /* parse GID */
- grp = getgrnam(str_gid);
@@ -218,11 +224,7 @@
- gid = grp->gr_gid;
- else
- gid = strtoul(str_gid, NULL, 10);
-+ n = 0;
-+ s = val;
-+ while (*s && *s++ == '%')
-+ n++;
-
+-
- } else if (field == 2) {
-
- /* Mode device permissions */
@@ -327,7 +329,7 @@
if (ENABLE_FEATURE_MDEV_RENAME)
unlink(device_name);
-@@ -208,39 +245,44 @@
+@@ -208,39 +246,44 @@
if (ENABLE_FEATURE_MDEV_RENAME && alias) {
char *dest;
@@ -389,7 +391,7 @@
}
/* File callback for /sys/ traversal */
-@@ -249,14 +291,15 @@
+@@ -249,14 +292,15 @@
void *userData,
int depth ATTRIBUTE_UNUSED)
{
@@ -408,7 +410,7 @@
make_device(scratch, 0);
return TRUE;
-@@ -287,12 +330,6 @@
+@@ -287,12 +331,6 @@
int cnt;
int firmware_fd, loading_fd, data_fd;
@@ -421,7 +423,7 @@
/* check for /lib/firmware/$FIRMWARE */
xchdir("/lib/firmware");
firmware_fd = xopen(firmware, O_RDONLY);
-@@ -304,16 +341,15 @@
+@@ -304,16 +342,15 @@
xchdir(sysfs_path);
for (cnt = 0; cnt < 30; ++cnt) {
loading_fd = open("loading", O_WRONLY);
@@ -444,7 +446,7 @@
goto out;
/* load firmware by `cat /lib/firmware/$FIRMWARE > /sys/$DEVPATH/data */
-@@ -324,9 +360,9 @@
+@@ -324,9 +361,9 @@
/* tell kernel result by `echo [0|-1] > /sys/$DEVPATH/loading` */
if (cnt > 0)
@@ -456,7 +458,7 @@
out:
if (ENABLE_FEATURE_CLEAN_UP) {
-@@ -341,16 +377,14 @@
+@@ -341,16 +378,14 @@
{
char *action;
char *env_path;
@@ -475,7 +477,7 @@
struct stat st;
xstat("/", &st);
-@@ -366,26 +400,27 @@
+@@ -366,26 +401,27 @@
fileAction, dirAction, temp, 0);
} else {