X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/e8b81c92e78dc781a9569d7d51bd4f98d89237f8..e9c2d71d9206568fa901119d1ed697915aa539f3:/package/busybox/config/loginutils/Config.in diff --git a/package/busybox/config/loginutils/Config.in b/package/busybox/config/loginutils/Config.in index 15019c125..029884062 100644 --- a/package/busybox/config/loginutils/Config.in +++ b/package/busybox/config/loginutils/Config.in @@ -5,53 +5,144 @@ menu "Login/Password Management Utilities" +config BUSYBOX_CONFIG_ADD_SHELL + bool "add-shell" + default n if BUSYBOX_CONFIG_DESKTOP + help + Add shells to /etc/shells. + +config BUSYBOX_CONFIG_REMOVE_SHELL + bool "remove-shell" + default n if BUSYBOX_CONFIG_DESKTOP + help + Remove shells from /etc/shells. + config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS bool "Support for shadow passwords" default n help - Build support for shadow password in /etc/shadow. This file is only + Build support for shadow password in /etc/shadow. This file is only readable by root and thus the encrypted passwords are no longer publicly readable. +config BUSYBOX_CONFIG_USE_BB_PWD_GRP + bool "Use internal password and group functions rather than system functions" + default n + help + If you leave this disabled, busybox will use the system's password + and group functions. And if you are using the GNU C library + (glibc), you will then need to install the /etc/nsswitch.conf + configuration file and the required /lib/libnss_* libraries in + order for the password and group functions to work. This generally + makes your embedded system quite a bit larger. + + Enabling this option will cause busybox to directly access the + system's /etc/password, /etc/group files (and your system will be + smaller, and I will get fewer emails asking about how glibc NSS + works). When this option is enabled, you will not be able to use + PAM to access remote LDAP password servers and whatnot. And if you + want hostname resolution to work with glibc, you still need the + /lib/libnss_* libraries. + + If you need to use glibc's nsswitch.conf mechanism + (e.g. if user/group database is NOT stored in /etc/passwd etc), + you must NOT use this option. + + If you enable this option, it will add about 1.5k. + config BUSYBOX_CONFIG_USE_BB_SHADOW - bool " Use busybox shadow password functions" + bool "Use internal shadow password functions" default n depends on BUSYBOX_CONFIG_USE_BB_PWD_GRP && BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS help - If you leave this disabled, busybox will use the system's shadow - password handling functions. And if you are using the GNU C library - (glibc), you will then need to install the /etc/nsswitch.conf - configuration file and the required /lib/libnss_* libraries in - order for the shadow password functions to work. This generally - makes your embedded system quite a bit larger. + If you leave this disabled, busybox will use the system's shadow + password handling functions. And if you are using the GNU C library + (glibc), you will then need to install the /etc/nsswitch.conf + configuration file and the required /lib/libnss_* libraries in + order for the shadow password functions to work. This generally + makes your embedded system quite a bit larger. + + Enabling this option will cause busybox to directly access the + system's /etc/shadow file when handling shadow passwords. This + makes your system smaller (and I will get fewer emails asking about + how glibc NSS works). When this option is enabled, you will not be + able to use PAM to access shadow passwords from remote LDAP + password servers and whatnot. + +config BUSYBOX_CONFIG_USE_BB_CRYPT + bool "Use internal crypt functions" + default n + help + Busybox has internal DES and MD5 crypt functions. + They produce results which are identical to corresponding + standard C library functions. + + If you leave this disabled, busybox will use the system's + crypt functions. Most C libraries use large (~70k) + static buffers there, and also combine them with more general + DES encryption/decryption. + + For busybox, having large static buffers is undesirable, + especially on NOMMU machines. Busybox also doesn't need + DES encryption/decryption and can do with smaller code. + + If you enable this option, it will add about 4.8k of code + if you are building dynamically linked executable. + In static build, it makes code _smaller_ by about 1.2k, + and likely many kilobytes less of bss. + +config BUSYBOX_CONFIG_USE_BB_CRYPT_SHA + bool "Enable SHA256/512 crypt functions" + default n + depends on BUSYBOX_CONFIG_USE_BB_CRYPT + help + Enable this if you have passwords starting with "$5$" or "$6$" + in your /etc/passwd or /etc/shadow files. These passwords + are hashed using SHA256 and SHA512 algorithms. Support for them + was added to glibc in 2008. + With this option off, login will fail password check for any + user which has password encrypted with these algorithms. - Enabling this option will cause busybox to directly access the - system's /etc/shadow file when handling shadow passwords. This - makes your system smaller and I will get fewer emails asking about - how glibc NSS works). When this option is enabled, you will not be - able to use PAM to access shadow passwords from remote LDAP - password servers and whatnot. +config BUSYBOX_CONFIG_ADDUSER + bool "adduser" + default n + help + Utility for creating a new user account. -config BUSYBOX_CONFIG_USE_BB_PWD_GRP - bool "Use internal password and group functions rather than system functions" +config BUSYBOX_CONFIG_FEATURE_ADDUSER_LONG_OPTIONS + bool "Enable long options" default n + depends on BUSYBOX_CONFIG_ADDUSER && BUSYBOX_CONFIG_LONG_OPTS help - If you leave this disabled, busybox will use the system's password - and group functions. And if you are using the GNU C library - (glibc), you will then need to install the /etc/nsswitch.conf - configuration file and the required /lib/libnss_* libraries in - order for the password and group functions to work. This generally - makes your embedded system quite a bit larger. + Support long options for the adduser applet. - Enabling this option will cause busybox to directly access the - system's /etc/password, /etc/group files (and your system will be - smaller, and I will get fewer emails asking about how glibc NSS - works). When this option is enabled, you will not be able to use - PAM to access remote LDAP password servers and whatnot. And if you - want hostname resolution to work with glibc, you still need the - /lib/libnss_* libraries. +config BUSYBOX_CONFIG_FEATURE_CHECK_NAMES + bool "Enable sanity check on user/group names in adduser and addgroup" + default n + depends on BUSYBOX_CONFIG_ADDUSER || BUSYBOX_CONFIG_ADDGROUP + help + Enable sanity check on user and group names in adduser and addgroup. + To avoid problems, the user or group name should consist only of + letters, digits, underscores, periods, at signs and dashes, + and not start with a dash (as defined by IEEE Std 1003.1-2001). + For compatibility with Samba machine accounts "$" is also supported + at the end of the user or group name. + +config BUSYBOX_CONFIG_FIRST_SYSTEM_ID + int "First valid system uid or gid for adduser and addgroup" + depends on BUSYBOX_CONFIG_ADDUSER || BUSYBOX_CONFIG_ADDGROUP + range 0 64900 + default 100 + help + First valid system uid or gid for adduser and addgroup - If you enable this option, it will add about 1.5k to busybox. +config BUSYBOX_CONFIG_LAST_SYSTEM_ID + int "Last valid system uid or gid for adduser and addgroup" + depends on BUSYBOX_CONFIG_ADDUSER || BUSYBOX_CONFIG_ADDGROUP + range 0 64900 + default 999 + help + Last valid system uid or gid for adduser and addgroup config BUSYBOX_CONFIG_ADDGROUP bool "addgroup" @@ -59,6 +150,13 @@ config BUSYBOX_CONFIG_ADDGROUP help Utility for creating a new group account. +config BUSYBOX_CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS + bool "Enable long options" + default n + depends on BUSYBOX_CONFIG_ADDGROUP && BUSYBOX_CONFIG_LONG_OPTS + help + Support long options for the addgroup applet. + config BUSYBOX_CONFIG_FEATURE_ADDUSER_TO_GROUP bool "Support for adding users to groups" default n @@ -68,6 +166,12 @@ config BUSYBOX_CONFIG_FEATURE_ADDUSER_TO_GROUP addgroup will add an existing user to an existing group. +config BUSYBOX_CONFIG_DELUSER + bool "deluser" + default n + help + Utility for deleting a user account. + config BUSYBOX_CONFIG_DELGROUP bool "delgroup" default n @@ -75,25 +179,13 @@ config BUSYBOX_CONFIG_DELGROUP Utility for deleting a group account. config BUSYBOX_CONFIG_FEATURE_DEL_USER_FROM_GROUP - bool "Support for removing users from groups." + bool "Support for removing users from groups" default n depends on BUSYBOX_CONFIG_DELGROUP help If called with two non-option arguments, deluser or delgroup will remove an user from a specified group. -config BUSYBOX_CONFIG_ADDUSER - bool "adduser" - default n - help - Utility for creating a new user account. - -config BUSYBOX_CONFIG_DELUSER - bool "deluser" - default n - help - Utility for deleting a user account. - config BUSYBOX_CONFIG_GETTY bool "getty" default n @@ -101,26 +193,9 @@ config BUSYBOX_CONFIG_GETTY help getty lets you log in on a tty, it is normally invoked by init. -config BUSYBOX_CONFIG_FEATURE_UTMP - bool "Support utmp file" - depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_WHO - default n - help - The file /var/run/utmp is used to track who is currently logged in. - -config BUSYBOX_CONFIG_FEATURE_WTMP - bool "Support wtmp file" - depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_LAST - default n - select BUSYBOX_CONFIG_FEATURE_UTMP - help - The file /var/run/wtmp is used to track when user's have logged into - and logged out of the system. - config BUSYBOX_CONFIG_LOGIN bool "login" default n - select BUSYBOX_CONFIG_FEATURE_SUID select BUSYBOX_CONFIG_FEATURE_SYSLOG help login is used when signing onto a system. @@ -163,12 +238,11 @@ config BUSYBOX_CONFIG_FEATURE_SECURETTY config BUSYBOX_CONFIG_PASSWD bool "passwd" default y - select BUSYBOX_CONFIG_FEATURE_SUID select BUSYBOX_CONFIG_FEATURE_SYSLOG help - passwd changes passwords for user and group accounts. A normal user + passwd changes passwords for user and group accounts. A normal user may only change the password for his/her own account, the super user - may change the password for any account. The administrator of a group + may change the password for any account. The administrator of a group may change the password for the group. Note that Busybox binary must be setuid root for this applet to @@ -185,20 +259,20 @@ config BUSYBOX_CONFIG_CRYPTPW bool "cryptpw" default n help - Applet for crypting a string. + Encrypts the given password with the crypt(3) libc function + using the given salt. Debian has this utility under mkpasswd + name. Busybox provides mkpasswd as an alias for cryptpw. config BUSYBOX_CONFIG_CHPASSWD - bool "chpasswd" - default n - help - chpasswd reads a file of user name and password pairs from - standard input and uses this information to update a group of - existing users. + bool "chpasswd" + default n + help + Reads a file of user name and password pairs from standard input + and uses this information to update a group of existing users. config BUSYBOX_CONFIG_SU bool "su" default n - select BUSYBOX_CONFIG_FEATURE_SUID select BUSYBOX_CONFIG_FEATURE_SYSLOG help su is used to become another user during a login session. @@ -228,7 +302,6 @@ config BUSYBOX_CONFIG_SULOGIN config BUSYBOX_CONFIG_VLOCK bool "vlock" default n - select BUSYBOX_CONFIG_FEATURE_SUID help Build the "vlock" applet which allows you to lock (virtual) terminals. @@ -236,4 +309,3 @@ config BUSYBOX_CONFIG_VLOCK work properly. endmenu -