summaryrefslogtreecommitdiff
path: root/packages/busybox/busybox-1.9.2/adduser-longops.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/busybox/busybox-1.9.2/adduser-longops.patch')
-rw-r--r--packages/busybox/busybox-1.9.2/adduser-longops.patch55
1 files changed, 55 insertions, 0 deletions
diff --git a/packages/busybox/busybox-1.9.2/adduser-longops.patch b/packages/busybox/busybox-1.9.2/adduser-longops.patch
new file mode 100644
index 0000000000..f221d30895
--- /dev/null
+++ b/packages/busybox/busybox-1.9.2/adduser-longops.patch
@@ -0,0 +1,55 @@
+upstream: http://bugs.busybox.net/view.php?id=2134
+status: accepted in rev. 21031 on Feb 15 2008
+comment: fixes OE bug 3781, applied by mickeyl
+
+diff -Nuar busybox-1.9.1.old/loginutils/Config.in busybox-1.9.1/loginutils/Config.in
+--- busybox-1.9.1.old/loginutils/Config.in Tue Feb 12 10:03:11 2008
++++ busybox-1.9.1/loginutils/Config.in Thu Feb 14 11:48:31 2008
+@@ -88,6 +88,13 @@
+ help
+ Utility for creating a new user account.
+
++config FEATURE_ADDUSER_LONG_OPTIONS
++ bool "Enable long options"
++ default n
++ depends on ADDUSER && GETOPT_LONG
++ help
++ Support long options for the adduser applet.
++
+ config DELUSER
+ bool "deluser"
+ default n
+diff -Nuar busybox-1.9.1.old/loginutils/adduser.c busybox-1.9.1/loginutils/adduser.c
+--- busybox-1.9.1.old/loginutils/adduser.c Thu Feb 14 10:25:33 2008
++++ busybox-1.9.1/loginutils/adduser.c Thu Feb 14 13:32:47 2008
+@@ -66,6 +66,19 @@
+ bb_error_msg_and_die("cannot execute %s, you must set password manually", prog);
+ }
+
++#if ENABLE_FEATURE_ADDUSER_LONG_OPTIONS
++static const char adduser_longopts[] ALIGN1 =
++ "home\0" Required_argument "h"
++ "gecos\0" Required_argument "g"
++ "shell\0" Required_argument "s"
++ "ingroup\0" Required_argument "G"
++ "disabled-password\0" No_argument "D"
++ "empty-password\0" No_argument "D"
++ "system\0" No_argument "S"
++ "no-create-home\0" No_argument "H"
++ ;
++#endif
++
+ /*
+ * adduser will take a login_name as its first parameter.
+ * home, shell, gecos:
+@@ -77,6 +90,10 @@
+ struct passwd pw;
+ const char *usegroup = NULL;
+ FILE *file;
++
++#if ENABLE_FEATURE_ADDUSER_LONG_OPTIONS
++ applet_long_options = adduser_longopts;
++#endif
+
+ /* got root? */
+ if (geteuid()) {