X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=loginutils%2FConfig.in;h=c3c8dd513dbedda50cf757af9836942b13ba6998;hb=57c899e4c2be4d0bddeaaca9c34ea0f484f92ad8;hp=919091ec6e7b09d2ba49f72ce2a9f661ab205ec8;hpb=7e84e539de530b2060f0e570fc8f063ed0aaad2f;p=oweals%2Fbusybox.git diff --git a/loginutils/Config.in b/loginutils/Config.in index 919091ec6..c3c8dd513 100644 --- a/loginutils/Config.in +++ b/loginutils/Config.in @@ -13,45 +13,71 @@ config FEATURE_SHADOWPASSWDS readable by root and thus the encrypted passwords are no longer publicly readable. +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 USE_BB_SHADOW - bool " Use busybox shadow password functions" + bool "Use internal shadow password functions" default y depends on USE_BB_PWD_GRP && 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. - - 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 USE_BB_PWD_GRP - bool "Use internal password and group functions rather than system functions" - default n + 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 USE_BB_CRYPT + bool "Use internal DES and MD5 crypt functions" + default y 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. + Busybox has internal DES and MD5 crypt functions. + They produce results which are identical to corresponding + standard C library functions. - 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 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. - If you enable this option, it will add about 1.5k to busybox. + 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 ADDGROUP bool "addgroup" @@ -79,15 +105,34 @@ config FEATURE_DEL_USER_FROM_GROUP default n depends on DELGROUP help - If called with two non-option arguments, deluser + If called with two non-option arguments, deluser or delgroup will remove an user from a specified group. +config FEATURE_CHECK_NAMES + bool "Enable sanity check on user/group names in adduser and addgroup" + default n + depends on ADDUSER || 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 ADDUSER bool "adduser" default n 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 @@ -128,6 +173,13 @@ config LOGIN Note that Busybox binary must be setuid root for this applet to work properly. +config PAM + bool "Support for PAM (Pluggable Authentication Modules)" + default n + depends on LOGIN + help + Use PAM in login(1) instead of direct access to password database. + config LOGIN_SCRIPTS bool "Support for login scripts" depends on LOGIN @@ -136,12 +188,20 @@ config LOGIN_SCRIPTS Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT just prior to switching from root to logged-in user. +config FEATURE_NOLOGIN + bool "Support for /etc/nologin" + default y + depends on LOGIN + help + The file /etc/nologin is used by (some versions of) login(1). + If it exists, non-root logins are prohibited. + config FEATURE_SECURETTY bool "Support for /etc/securetty" default y depends on LOGIN help - The file /etc/securetty is used by (some versions of) login(1). + The file /etc/securetty is used by (some versions of) login(1). The file contains the device names of tty lines (one per line, without leading /dev/) on which root is allowed to login. @@ -172,6 +232,14 @@ config CRYPTPW help Applet for crypting a string. +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. + config SU bool "su" default n @@ -213,4 +281,3 @@ config VLOCK work properly. endmenu -