1 /*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
22 /* All Rights Reserved */
23
24
25 /*
26 * Copyright (c) 2013 Gary Mills
27 *
28 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
29 * Use is subject to license terms.
30 */
31
32 char *errmsgs[] = {
33 "WARNING: uid %ld is reserved.\n",
34 "WARNING: more than NGROUPS_MAX(%d) groups specified.\n",
35 "ERROR: invalid syntax.\n"
36 "usage: useradd [-u uid [-o] | -g group | -G group[[,group]...] |"
37 "-d dir | -b base_dir |\n"
38 "\t\t-s shell | -c comment | -m [-k skel_dir] | -f inactive |\n"
39 "\t\t-e expire | -A authorization [, authorization ...] |\n"
40 "\t\t-P profile [, profile ...] | -R role [, role ...] |\n"
41 "\t\t-K key=value | -p project [, project ...]] login\n"
42 "\tuseradd -D [-g group | -b base_dir | -f inactive | -e expire\n"
43 "\t\t-A authorization [, authorization ...] |\n"
44 "\t\t-P profile [, profile ...] | -R role [, role ...] |\n"
45 "\t\t-K key=value ... -p project] | [-s shell] | [-k skel_dir]\n",
46 "ERROR: Invalid syntax.\nusage: userdel [-r] login\n",
47 "ERROR: Invalid syntax.\n"
48 "usage: usermod -u uid [-o] | -g group | -G group[[,group]...] |\n"
49 "\t\t-d dir [-m] | -s shell | -c comment |\n"
50 "\t\t-l new_logname | -f inactive | -e expire |\n"
51 "\t\t-A authorization [, authorization ...] | -K key=value ... |\n"
52 "\t\t-P profile [, profile ...] | -R role [, role ...] login\n",
53 "ERROR: Unexpected failure. Defaults unchanged.\n",
54 "ERROR: Unable to remove files from home directory.\n",
55 "ERROR: Unable to remove home directory.\n",
56 "ERROR: Cannot update system files - login cannot be %s.\n",
57 "ERROR: uid %ld is already in use. Choose another.\n",
58 "ERROR: %s is already in use. Choose another.\n",
59 "ERROR: %s does not exist.\n",
60 "ERROR: %s is not a valid %s. Choose another.\n",
61 "ERROR: %s is in use. Cannot %s it.\n",
62 "WARNING: %s has no permissions to use %s.\n",
63 "ERROR: There is not sufficient space to move %s home directory to %s"
64 "\n",
65 "ERROR: %s %ld is too big. Choose another.\n",
66 "ERROR: group %s does not exist. Choose another.\n",
67 "ERROR: Unable to %s: %s.\n",
68 "ERROR: %s is not a full path name. Choose another.\n",
69 "ERROR: %s is the primary group name. Choose another.\n",
70 "ERROR: Inconsistent password files. See pwconv(1M).\n",
71 "ERROR: %s is not a local user.\n",
72 "ERROR: Permission denied.\n",
73 "WARNING: Group entry exceeds 2048 char: /etc/group entry truncated.\n",
74 "ERROR: invalid syntax.\n"
75 "usage: roleadd [-u uid [-o] | -g group | -G group[[,group]...] |"
76 "-d dir |\n"
77 "\t\t-s shell | -c comment | -m [-k skel_dir] | -f inactive |\n"
78 "\t\t-e expire | -A authorization [, authorization ...] |\n"
79 "\t\t-P profile [, profile ...] | -K key=value ] login\n"
80 "\troleadd -D [-g group | -b base_dir | -f inactive | -e expire\n"
81 "\t\t-A authorization [, authorization ...] |\n"
82 "\t\t-P profile [, profile ...]]\n",
83 "ERROR: Invalid syntax.\nusage: roledel [-r] login\n",
84 "ERROR: Invalid syntax.\n"
85 "usage: rolemod -u uid [-o] | -g group | -G group[[,group]...] |\n"
86 "\t\t-d dir [-m] | -s shell | -c comment |\n"
87 "\t\t-l new_logname | -f inactive | -e expire |\n"
88 "\t\t-A authorization [, authorization ...] | -K key=value |\n"
89 "\t\t-P profile [, profile ...] login\n",
90 "ERROR: project %s does not exist. Choose another.\n",
91 "WARNING: more than NPROJECTS_MAX(%d) projects specified.\n",
92 "WARNING: Project entry exceeds %d char: /etc/project entry truncated."
93 "\n",
94 "ERROR: Invalid key.\n",
95 "ERROR: Missing value specification.\n",
96 "ERROR: Multiple definitions of key ``%s''.\n",
97 "ERROR: Roles must be modified with ``rolemod''.\n",
98 "ERROR: Users must be modified with ``usermod''.\n",
99 "WARNING: gid %ld is reserved.\n",
100 "ERROR: Failed to read /etc/group file due to invalid entry or"
101 " read error.\n",
102 "ERROR: %s is too long. Choose another.\n",
103 };
104
105 int lasterrmsg = sizeof (errmsgs) / sizeof (char *);