[package] busybox: update to v1.14.4 (closes: #5619)
[openwrt.git] / package / busybox / config / loginutils / Config.in
1 #
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
4 #
5
6 menu "Login/Password Management Utilities"
7
8 config BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS
9         bool "Support for shadow passwords"
10         default n
11         help
12           Build support for shadow password in /etc/shadow. This file is only
13           readable by root and thus the encrypted passwords are no longer
14           publicly readable.
15
16 config BUSYBOX_CONFIG_USE_BB_PWD_GRP
17         bool "Use internal password and group functions rather than system functions"
18         default n
19         help
20           If you leave this disabled, busybox will use the system's password
21           and group functions. And if you are using the GNU C library
22           (glibc), you will then need to install the /etc/nsswitch.conf
23           configuration file and the required /lib/libnss_* libraries in
24           order for the password and group functions to work. This generally
25           makes your embedded system quite a bit larger.
26
27           Enabling this option will cause busybox to directly access the
28           system's /etc/password, /etc/group files (and your system will be
29           smaller, and I will get fewer emails asking about how glibc NSS
30           works). When this option is enabled, you will not be able to use
31           PAM to access remote LDAP password servers and whatnot. And if you
32           want hostname resolution to work with glibc, you still need the
33           /lib/libnss_* libraries.
34
35           If you need to use glibc's nsswitch.conf mechanism
36           (e.g. if user/group database is NOT stored in /etc/passwd etc),
37           you must NOT use this option.
38
39           If you enable this option, it will add about 1.5k.
40
41 config BUSYBOX_CONFIG_USE_BB_SHADOW
42         bool "Use internal shadow password functions"
43         default n
44         depends on BUSYBOX_CONFIG_USE_BB_PWD_GRP && BUSYBOX_CONFIG_FEATURE_SHADOWPASSWDS
45         help
46           If you leave this disabled, busybox will use the system's shadow
47           password handling functions. And if you are using the GNU C library
48           (glibc), you will then need to install the /etc/nsswitch.conf
49           configuration file and the required /lib/libnss_* libraries in
50           order for the shadow password functions to work. This generally
51           makes your embedded system quite a bit larger.
52
53           Enabling this option will cause busybox to directly access the
54           system's /etc/shadow file when handling shadow passwords. This
55           makes your system smaller (and I will get fewer emails asking about
56           how glibc NSS works). When this option is enabled, you will not be
57           able to use PAM to access shadow passwords from remote LDAP
58           password servers and whatnot.
59
60 config BUSYBOX_CONFIG_USE_BB_CRYPT
61         bool "Use internal crypt functions"
62         default n
63         help
64           Busybox has internal DES and MD5 crypt functions.
65           They produce results which are identical to corresponding
66           standard C library functions.
67
68           If you leave this disabled, busybox will use the system's
69           crypt functions. Most C libraries use large (~70k)
70           static buffers there, and also combine them with more general
71           DES encryption/decryption.
72
73           For busybox, having large static buffers is undesirable,
74           especially on NOMMU machines. Busybox also doesn't need
75           DES encryption/decryption and can do with smaller code.
76
77           If you enable this option, it will add about 4.8k of code
78           if you are building dynamically linked executable.
79           In static build, it makes code _smaller_ by about 1.2k,
80           and likely many kilobytes less of bss.
81
82 config BUSYBOX_CONFIG_USE_BB_CRYPT_SHA
83         bool "Enable SHA256/512 crypt functions"
84         default n
85         depends on BUSYBOX_CONFIG_USE_BB_CRYPT
86         help
87           Enable this if you have passwords starting with "$5$" or "$6$"
88           in your /etc/passwd or /etc/shadow files. These passwords
89           are hashed using SHA256 and SHA512 algorithms. Support for them
90           was added to glibc in 2008.
91           With this option off, login will fail password check for any
92           user which has password encrypted with these algorithms.
93
94 config BUSYBOX_CONFIG_ADDGROUP
95         bool "addgroup"
96         default n
97         help
98           Utility for creating a new group account.
99
100 config BUSYBOX_CONFIG_FEATURE_ADDUSER_TO_GROUP
101         bool "Support for adding users to groups"
102         default n
103         depends on BUSYBOX_CONFIG_ADDGROUP
104         help
105           If  called  with two non-option arguments,
106           addgroup will add an existing user to an
107           existing group.
108
109 config BUSYBOX_CONFIG_DELGROUP
110         bool "delgroup"
111         default n
112         help
113           Utility for deleting a group account.
114
115 config BUSYBOX_CONFIG_FEATURE_DEL_USER_FROM_GROUP
116         bool "Support for removing users from groups"
117         default n
118         depends on BUSYBOX_CONFIG_DELGROUP
119         help
120           If called with two non-option arguments, deluser
121           or delgroup will remove an user from a specified group.
122
123 config BUSYBOX_CONFIG_FEATURE_CHECK_NAMES
124         bool "Enable sanity check on user/group names in adduser and addgroup"
125         default n
126         depends on BUSYBOX_CONFIG_ADDUSER || BUSYBOX_CONFIG_ADDGROUP
127         help
128           Enable sanity check on user and group names in adduser and addgroup.
129           To avoid problems, the user or group name should consist only of
130           letters, digits, underscores, periods, at signs and dashes,
131           and not start with a dash (as defined by IEEE Std 1003.1-2001).
132           For compatibility with Samba machine accounts "$" is also supported
133           at the end of the user or group name.
134
135 config BUSYBOX_CONFIG_ADDUSER
136         bool "adduser"
137         default n
138         help
139           Utility for creating a new user account.
140
141 config BUSYBOX_CONFIG_FEATURE_ADDUSER_LONG_OPTIONS
142         bool "Enable long options"
143         default n
144         depends on BUSYBOX_CONFIG_ADDUSER && BUSYBOX_CONFIG_GETOPT_LONG
145         help
146           Support long options for the adduser applet.
147
148 config BUSYBOX_CONFIG_DELUSER
149         bool "deluser"
150         default n
151         help
152           Utility for deleting a user account.
153
154 config BUSYBOX_CONFIG_GETTY
155         bool "getty"
156         default n
157         select BUSYBOX_CONFIG_FEATURE_SYSLOG
158         help
159           getty lets you log in on a tty, it is normally invoked by init.
160
161 config BUSYBOX_CONFIG_FEATURE_UTMP
162         bool "Support utmp file"
163         depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_WHO
164         default n
165         help
166           The file /var/run/utmp is used to track who is currently logged in.
167
168 config BUSYBOX_CONFIG_FEATURE_WTMP
169         bool "Support wtmp file"
170         depends on BUSYBOX_CONFIG_GETTY || BUSYBOX_CONFIG_LOGIN || BUSYBOX_CONFIG_SU || BUSYBOX_CONFIG_LAST
171         default n
172         select BUSYBOX_CONFIG_FEATURE_UTMP
173         help
174           The file /var/run/wtmp is used to track when user's have logged into
175           and logged out of the system.
176
177 config BUSYBOX_CONFIG_LOGIN
178         bool "login"
179         default n
180         select BUSYBOX_CONFIG_FEATURE_SUID
181         select BUSYBOX_CONFIG_FEATURE_SYSLOG
182         help
183           login is used when signing onto a system.
184
185           Note that Busybox binary must be setuid root for this applet to
186           work properly.
187
188 config BUSYBOX_CONFIG_PAM
189         bool "Support for PAM (Pluggable Authentication Modules)"
190         default n
191         depends on BUSYBOX_CONFIG_LOGIN
192         help
193           Use PAM in login(1) instead of direct access to password database.
194
195 config BUSYBOX_CONFIG_LOGIN_SCRIPTS
196         bool "Support for login scripts"
197         depends on BUSYBOX_CONFIG_LOGIN
198         default n
199         help
200           Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT
201           just prior to switching from root to logged-in user.
202
203 config BUSYBOX_CONFIG_FEATURE_NOLOGIN
204         bool "Support for /etc/nologin"
205         default n
206         depends on BUSYBOX_CONFIG_LOGIN
207         help
208           The file /etc/nologin is used by (some versions of) login(1).
209           If it exists, non-root logins are prohibited.
210
211 config BUSYBOX_CONFIG_FEATURE_SECURETTY
212         bool "Support for /etc/securetty"
213         default n
214         depends on BUSYBOX_CONFIG_LOGIN
215         help
216           The file /etc/securetty is used by (some versions of) login(1).
217           The file contains the device names of tty lines (one per line,
218           without leading /dev/) on which root is allowed to login.
219
220 config BUSYBOX_CONFIG_PASSWD
221         bool "passwd"
222         default y
223         select BUSYBOX_CONFIG_FEATURE_SUID
224         select BUSYBOX_CONFIG_FEATURE_SYSLOG
225         help
226           passwd changes passwords for user and group accounts. A normal user
227           may only change the password for his/her own account, the super user
228           may change the password for any account. The administrator of a group
229           may change the password for the group.
230
231           Note that Busybox binary must be setuid root for this applet to
232           work properly.
233
234 config BUSYBOX_CONFIG_FEATURE_PASSWD_WEAK_CHECK
235         bool "Check new passwords for weakness"
236         default y
237         depends on BUSYBOX_CONFIG_PASSWD
238         help
239           With this option passwd will refuse new passwords which are "weak".
240
241 config BUSYBOX_CONFIG_CRYPTPW
242         bool "cryptpw"
243         default n
244         help
245           Encrypts the given password with the crypt(3) libc function
246           using the given salt. Debian has this utility under mkpasswd
247           name. Busybox provides mkpasswd as an alias for cryptpw.
248
249 config BUSYBOX_CONFIG_CHPASSWD
250         bool "chpasswd"
251         default n
252         help
253           Reads a file of user name and password pairs from standard input
254           and uses this information to update a group of existing users.
255
256 config BUSYBOX_CONFIG_SU
257         bool "su"
258         default n
259         select BUSYBOX_CONFIG_FEATURE_SUID
260         select BUSYBOX_CONFIG_FEATURE_SYSLOG
261         help
262           su is used to become another user during a login session.
263           Invoked without a username, su defaults to becoming the super user.
264
265           Note that Busybox binary must be setuid root for this applet to
266           work properly.
267
268 config BUSYBOX_CONFIG_FEATURE_SU_SYSLOG
269         bool "Enable su to write to syslog"
270         default n
271         depends on BUSYBOX_CONFIG_SU
272
273 config BUSYBOX_CONFIG_FEATURE_SU_CHECKS_SHELLS
274         bool "Enable su to check user's shell to be listed in /etc/shells"
275         depends on BUSYBOX_CONFIG_SU
276         default n
277
278 config BUSYBOX_CONFIG_SULOGIN
279         bool "sulogin"
280         default n
281         select BUSYBOX_CONFIG_FEATURE_SYSLOG
282         help
283           sulogin is invoked when the system goes into single user
284           mode (this is done through an entry in inittab).
285
286 config BUSYBOX_CONFIG_VLOCK
287         bool "vlock"
288         default n
289         select BUSYBOX_CONFIG_FEATURE_SUID
290         help
291           Build the "vlock" applet which allows you to lock (virtual) terminals.
292
293           Note that Busybox binary must be setuid root for this applet to
294           work properly.
295
296 endmenu