*: add -Wunused-parameter; fix resulting breakage
[oweals/busybox.git] / 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 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 USE_BB_SHADOW
17         bool "  Use busybox shadow password functions"
18         default y
19         depends on USE_BB_PWD_GRP && FEATURE_SHADOWPASSWDS
20         help
21             If you leave this disabled, busybox will use the system's shadow
22             password handling functions.  And if you are using the GNU C library
23             (glibc), you will then need to install the /etc/nsswitch.conf
24             configuration file and the required /lib/libnss_* libraries in
25             order for the shadow password functions to work.  This generally
26             makes your embedded system quite a bit larger.
27
28             Enabling this option will cause busybox to directly access the
29             system's /etc/shadow file when handling shadow passwords.  This
30             makes your system smaller and I will get fewer emails asking about
31             how glibc NSS works).  When this option is enabled, you will not be
32             able to use PAM to access shadow passwords from remote LDAP
33             password servers and whatnot.
34
35 config USE_BB_PWD_GRP
36         bool "Use internal password and group functions rather than system functions"
37         default n
38         help
39             If you leave this disabled, busybox will use the system's password
40             and group functions.  And if you are using the GNU C library
41             (glibc), you will then need to install the /etc/nsswitch.conf
42             configuration file and the required /lib/libnss_* libraries in
43             order for the password and group functions to work.  This generally
44             makes your embedded system quite a bit larger.
45
46             Enabling this option will cause busybox to directly access the
47             system's /etc/password, /etc/group files (and your system will be
48             smaller, and I will get fewer emails asking about how glibc NSS
49             works).  When this option is enabled, you will not be able to use
50             PAM to access remote LDAP password servers and whatnot.  And if you
51             want hostname resolution to work with glibc, you still need the
52             /lib/libnss_* libraries.
53
54             If you enable this option, it will add about 1.5k to busybox.
55
56 config ADDGROUP
57         bool "addgroup"
58         default n
59         help
60           Utility for creating a new group account.
61
62 config FEATURE_ADDUSER_TO_GROUP
63         bool "Support for adding users to groups"
64         default n
65         depends on ADDGROUP
66         help
67           If  called  with two non-option arguments,
68           addgroup will add an existing user to an
69           existing group.
70
71 config DELGROUP
72         bool "delgroup"
73         default n
74         help
75           Utility for deleting a group account.
76
77 config FEATURE_DEL_USER_FROM_GROUP
78         bool "Support for removing users from groups."
79         default n
80         depends on DELGROUP
81         help
82           If called with two non-option arguments, deluser
83           or delgroup will remove an user from a specified group.
84
85 config ADDUSER
86         bool "adduser"
87         default n
88         help
89           Utility for creating a new user account.
90
91 config FEATURE_ADDUSER_LONG_OPTIONS
92         bool "Enable long options"
93         default n
94         depends on ADDUSER && GETOPT_LONG
95         help
96           Support long options for the adduser applet.
97
98 config DELUSER
99         bool "deluser"
100         default n
101         help
102           Utility for deleting a user account.
103
104 config GETTY
105         bool "getty"
106         default n
107         select FEATURE_SYSLOG
108         help
109           getty lets you log in on a tty, it is normally invoked by init.
110
111 config FEATURE_UTMP
112         bool "Support utmp file"
113         depends on GETTY || LOGIN || SU || WHO
114         default n
115         help
116           The file /var/run/utmp is used to track who is currently logged in.
117
118 config FEATURE_WTMP
119         bool "Support wtmp file"
120         depends on GETTY || LOGIN || SU || LAST
121         default n
122         select FEATURE_UTMP
123         help
124           The file /var/run/wtmp is used to track when user's have logged into
125           and logged out of the system.
126
127 config LOGIN
128         bool "login"
129         default n
130         select FEATURE_SUID
131         select FEATURE_SYSLOG
132         help
133           login is used when signing onto a system.
134
135           Note that Busybox binary must be setuid root for this applet to
136           work properly.
137
138 config PAM
139         bool "Support for PAM (Pluggable Authentication Modules)"
140         default n
141         depends on LOGIN
142         help
143           Use PAM in login(1) instead of direct access to password database.
144
145 config LOGIN_SCRIPTS
146         bool "Support for login scripts"
147         depends on LOGIN
148         default n
149         help
150           Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT
151           just prior to switching from root to logged-in user.
152
153 config FEATURE_NOLOGIN
154         bool "Support for /etc/nologin"
155         default y
156         depends on LOGIN
157         help
158           The file /etc/nologin is used by (some versions of) login(1).
159           If it exists, non-root logins are prohibited.
160
161 config FEATURE_SECURETTY
162         bool "Support for /etc/securetty"
163         default y
164         depends on LOGIN
165         help
166           The file /etc/securetty is used by (some versions of) login(1).
167           The file contains the device names of tty lines (one per line,
168           without leading /dev/) on which root is allowed to login.
169
170 config PASSWD
171         bool "passwd"
172         default n
173         select FEATURE_SUID
174         select FEATURE_SYSLOG
175         help
176           passwd changes passwords for user and group accounts.  A normal user
177           may only change the password for his/her own account, the super user
178           may change the password for any account.  The administrator of a group
179           may change the password for the group.
180
181           Note that Busybox binary must be setuid root for this applet to
182           work properly.
183
184 config FEATURE_PASSWD_WEAK_CHECK
185         bool "Check new passwords for weakness"
186         default y
187         depends on PASSWD
188         help
189           With this option passwd will refuse new passwords which are "weak".
190
191 config CRYPTPW
192         bool "cryptpw"
193         default n
194         help
195           Applet for crypting a string.
196
197 config CHPASSWD
198        bool "chpasswd"
199        default n
200        help
201          chpasswd  reads  a  file  of user name and password pairs from
202          standard input and uses this information to update a group of
203          existing users.
204
205 config SU
206         bool "su"
207         default n
208         select FEATURE_SUID
209         select FEATURE_SYSLOG
210         help
211           su is used to become another user during a login session.
212           Invoked without a username, su defaults to becoming the super user.
213
214           Note that Busybox binary must be setuid root for this applet to
215           work properly.
216
217 config FEATURE_SU_SYSLOG
218         bool "Enable su to write to syslog"
219         default y
220         depends on SU
221
222 config FEATURE_SU_CHECKS_SHELLS
223         bool "Enable su to check user's shell to be listed in /etc/shells"
224         depends on SU
225         default y
226
227 config SULOGIN
228         bool "sulogin"
229         default n
230         select FEATURE_SYSLOG
231         help
232           sulogin is invoked when the system goes into single user
233           mode (this is done through an entry in inittab).
234
235 config VLOCK
236         bool "vlock"
237         default n
238         select FEATURE_SUID
239         help
240           Build the "vlock" applet which allows you to lock (virtual) terminals.
241
242           Note that Busybox binary must be setuid root for this applet to
243           work properly.
244
245 endmenu
246