svn commit: trunk/busybox/loginutils
vda at busybox.net
vda at busybox.net
Fri Feb 15 15:17:24 UTC 2008
Author: vda
Date: 2008-02-15 07:17:23 -0800 (Fri, 15 Feb 2008)
New Revision: 21031
Log:
adduser: optional support for long options. +110 bytes.
closes bug 2134.
Modified:
trunk/busybox/loginutils/Config.in
trunk/busybox/loginutils/adduser.c
Changeset:
Modified: trunk/busybox/loginutils/Config.in
===================================================================
--- trunk/busybox/loginutils/Config.in 2008-02-15 15:02:15 UTC (rev 21030)
+++ trunk/busybox/loginutils/Config.in 2008-02-15 15:17:23 UTC (rev 21031)
@@ -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
Modified: trunk/busybox/loginutils/adduser.c
===================================================================
--- trunk/busybox/loginutils/adduser.c 2008-02-15 15:02:15 UTC (rev 21030)
+++ trunk/busybox/loginutils/adduser.c 2008-02-15 15:17:23 UTC (rev 21031)
@@ -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:
@@ -78,6 +91,10 @@
const char *usegroup = NULL;
FILE *file;
+#if ENABLE_FEATURE_ADDUSER_LONG_OPTIONS
+ applet_long_options = adduser_longopts;
+#endif
+
/* got root? */
if (geteuid()) {
bb_error_msg_and_die(bb_msg_perm_denied_are_you_root);
More information about the busybox-cvs
mailing list