1*7c478bd9Sstevel@tonic-gate /*
2*7c478bd9Sstevel@tonic-gate  * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
3*7c478bd9Sstevel@tonic-gate  * Use is subject to license terms.
4*7c478bd9Sstevel@tonic-gate  */
5*7c478bd9Sstevel@tonic-gate 
6*7c478bd9Sstevel@tonic-gate #include <locale.h>
7*7c478bd9Sstevel@tonic-gate const char *
ovk_error_table(long errorno)8*7c478bd9Sstevel@tonic-gate ovk_error_table(long errorno) {
9*7c478bd9Sstevel@tonic-gate 
10*7c478bd9Sstevel@tonic-gate switch (errorno) {
11*7c478bd9Sstevel@tonic-gate 	case 0:
12*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
13*7c478bd9Sstevel@tonic-gate 			"Operation failed for unspecified reason"));
14*7c478bd9Sstevel@tonic-gate 	case 1:
15*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
16*7c478bd9Sstevel@tonic-gate 			"Operation requires ``get'' privilege"));
17*7c478bd9Sstevel@tonic-gate 	case 2:
18*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
19*7c478bd9Sstevel@tonic-gate 			"Operation requires ``add'' privilege"));
20*7c478bd9Sstevel@tonic-gate 	case 3:
21*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
22*7c478bd9Sstevel@tonic-gate 			"Operation requires ``modify'' privilege"));
23*7c478bd9Sstevel@tonic-gate 	case 4:
24*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
25*7c478bd9Sstevel@tonic-gate 			"Operation requires ``delete'' privilege"));
26*7c478bd9Sstevel@tonic-gate 	case 5:
27*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
28*7c478bd9Sstevel@tonic-gate 			"Insufficient authorization for operation"));
29*7c478bd9Sstevel@tonic-gate 	case 6:
30*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
31*7c478bd9Sstevel@tonic-gate 			"Database inconsistency detected"));
32*7c478bd9Sstevel@tonic-gate 	case 7:
33*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
34*7c478bd9Sstevel@tonic-gate 			"Principal or policy already exists"));
35*7c478bd9Sstevel@tonic-gate 	case 8:
36*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
37*7c478bd9Sstevel@tonic-gate 			"Communication failure with server"));
38*7c478bd9Sstevel@tonic-gate 	case 9:
39*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
40*7c478bd9Sstevel@tonic-gate 			"No administration server found for realm"));
41*7c478bd9Sstevel@tonic-gate 	case 10:
42*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
43*7c478bd9Sstevel@tonic-gate 			"Password history principal key version mismatch"));
44*7c478bd9Sstevel@tonic-gate 	case 11:
45*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
46*7c478bd9Sstevel@tonic-gate 			"Connection to server not initialized"));
47*7c478bd9Sstevel@tonic-gate 	case 12:
48*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
49*7c478bd9Sstevel@tonic-gate 			"Principal does not exist"));
50*7c478bd9Sstevel@tonic-gate 	case 13:
51*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
52*7c478bd9Sstevel@tonic-gate 			"Policy does not exist"));
53*7c478bd9Sstevel@tonic-gate 	case 14:
54*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
55*7c478bd9Sstevel@tonic-gate 			"Invalid field mask for operation"));
56*7c478bd9Sstevel@tonic-gate 	case 15:
57*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
58*7c478bd9Sstevel@tonic-gate 			"Invalid number of character classes"));
59*7c478bd9Sstevel@tonic-gate 	case 16:
60*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
61*7c478bd9Sstevel@tonic-gate 			"Invalid password length"));
62*7c478bd9Sstevel@tonic-gate 	case 17:
63*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
64*7c478bd9Sstevel@tonic-gate 			"Illegal policy name"));
65*7c478bd9Sstevel@tonic-gate 	case 18:
66*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
67*7c478bd9Sstevel@tonic-gate 			"Illegal principal name"));
68*7c478bd9Sstevel@tonic-gate 	case 19:
69*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
70*7c478bd9Sstevel@tonic-gate 			"Invalid auxillary attributes"));
71*7c478bd9Sstevel@tonic-gate 	case 20:
72*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
73*7c478bd9Sstevel@tonic-gate 			"Invalid password history count"));
74*7c478bd9Sstevel@tonic-gate 	case 21:
75*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
76*7c478bd9Sstevel@tonic-gate 			"Password minimum life is greater than password maximum life"));
77*7c478bd9Sstevel@tonic-gate 	case 22:
78*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
79*7c478bd9Sstevel@tonic-gate 			"Password is too short"));
80*7c478bd9Sstevel@tonic-gate 	case 23:
81*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
82*7c478bd9Sstevel@tonic-gate 			"Password does not contain enough character classes"));
83*7c478bd9Sstevel@tonic-gate 	case 24:
84*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
85*7c478bd9Sstevel@tonic-gate 			"Password is in the password dictionary"));
86*7c478bd9Sstevel@tonic-gate 	case 25:
87*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
88*7c478bd9Sstevel@tonic-gate 			"Cannot reuse password"));
89*7c478bd9Sstevel@tonic-gate 	case 26:
90*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
91*7c478bd9Sstevel@tonic-gate 			"Current password's minimum life has not expired"));
92*7c478bd9Sstevel@tonic-gate 	case 27:
93*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
94*7c478bd9Sstevel@tonic-gate 			"Policy is in use"));
95*7c478bd9Sstevel@tonic-gate 	case 28:
96*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
97*7c478bd9Sstevel@tonic-gate 			"Connection to server already initialized"));
98*7c478bd9Sstevel@tonic-gate 	case 29:
99*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
100*7c478bd9Sstevel@tonic-gate 			"Incorrect password"));
101*7c478bd9Sstevel@tonic-gate 	case 30:
102*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
103*7c478bd9Sstevel@tonic-gate 			"Cannot change protected principal"));
104*7c478bd9Sstevel@tonic-gate 	case 31:
105*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
106*7c478bd9Sstevel@tonic-gate 			"Programmer error! Bad Admin server handle"));
107*7c478bd9Sstevel@tonic-gate 	case 32:
108*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
109*7c478bd9Sstevel@tonic-gate 			"Programmer error! Bad API structure version"));
110*7c478bd9Sstevel@tonic-gate 	case 33:
111*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
112*7c478bd9Sstevel@tonic-gate 			"API structure version specified by application is no longer supported (to fix, recompile application against current KADM5 API header files and libraries)"));
113*7c478bd9Sstevel@tonic-gate 	case 34:
114*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
115*7c478bd9Sstevel@tonic-gate 			"API structure version specified by application is unknown to libraries (to fix, obtain current KADM5 API header files and libraries and recompile application)"));
116*7c478bd9Sstevel@tonic-gate 	case 35:
117*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
118*7c478bd9Sstevel@tonic-gate 			"Programmer error! Bad API version"));
119*7c478bd9Sstevel@tonic-gate 	case 36:
120*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
121*7c478bd9Sstevel@tonic-gate 			"API version specified by application is no longer supported by libraries (to fix, update application to adhere to current API version and recompile)"));
122*7c478bd9Sstevel@tonic-gate 	case 37:
123*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
124*7c478bd9Sstevel@tonic-gate 			"API version specified by application is no longer supported by server (to fix, update application to adhere to current API version and recompile)"));
125*7c478bd9Sstevel@tonic-gate 	case 38:
126*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
127*7c478bd9Sstevel@tonic-gate 			"API version specified by application is unknown to libraries (to fix, obtain current KADM5 API header files and libraries and recompile application)"));
128*7c478bd9Sstevel@tonic-gate 	case 39:
129*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
130*7c478bd9Sstevel@tonic-gate 			"API version specified by application is unknown to server (to fix, obtain and install newest KADM5 Admin Server)"));
131*7c478bd9Sstevel@tonic-gate 	case 40:
132*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
133*7c478bd9Sstevel@tonic-gate 			"Database error! Required KADM5 principal missing"));
134*7c478bd9Sstevel@tonic-gate 	case 41:
135*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
136*7c478bd9Sstevel@tonic-gate 			"The salt type of the specified principal does not support renaming"));
137*7c478bd9Sstevel@tonic-gate 	case 42:
138*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
139*7c478bd9Sstevel@tonic-gate 			"Illegal configuration parameter for remote KADM5 client"));
140*7c478bd9Sstevel@tonic-gate 	case 43:
141*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
142*7c478bd9Sstevel@tonic-gate 			"Illegal configuration parameter for local KADM5 client"));
143*7c478bd9Sstevel@tonic-gate 	case 44:
144*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
145*7c478bd9Sstevel@tonic-gate 			"Operation requires ``list'' privilege"));
146*7c478bd9Sstevel@tonic-gate 	case 45:
147*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
148*7c478bd9Sstevel@tonic-gate 			"Operation requires ``change-password'' privilege"));
149*7c478bd9Sstevel@tonic-gate 	case 46:
150*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
151*7c478bd9Sstevel@tonic-gate 			"GSS-API (or Kerberos) error"));
152*7c478bd9Sstevel@tonic-gate 	case 47:
153*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
154*7c478bd9Sstevel@tonic-gate 			"Programmer error! Illegal tagged data list type"));
155*7c478bd9Sstevel@tonic-gate 	case 48:
156*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
157*7c478bd9Sstevel@tonic-gate 			"Required parameters in kdc.conf missing"));
158*7c478bd9Sstevel@tonic-gate 	case 49:
159*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
160*7c478bd9Sstevel@tonic-gate 			"Bad krb5 admin server hostname"));
161*7c478bd9Sstevel@tonic-gate 	case 50:
162*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
163*7c478bd9Sstevel@tonic-gate 			"Operation requires ``set-key'' privilege"));
164*7c478bd9Sstevel@tonic-gate 	case 51:
165*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
166*7c478bd9Sstevel@tonic-gate 			"Multiple values for single or folded enctype"));
167*7c478bd9Sstevel@tonic-gate 	case 52:
168*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
169*7c478bd9Sstevel@tonic-gate 			"Invalid enctype for setv4key"));
170*7c478bd9Sstevel@tonic-gate 	case 53:
171*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
172*7c478bd9Sstevel@tonic-gate 			"Mismatched enctypes for setkey3"));
173*7c478bd9Sstevel@tonic-gate 	case 54:
174*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
175*7c478bd9Sstevel@tonic-gate 			" RPC client cannot encode arguments."));
176*7c478bd9Sstevel@tonic-gate 	case 55:
177*7c478bd9Sstevel@tonic-gate 		return(dgettext(TEXT_DOMAIN,
178*7c478bd9Sstevel@tonic-gate 			" RPC server cannot decode arguments."));
179*7c478bd9Sstevel@tonic-gate 	default:
180*7c478bd9Sstevel@tonic-gate 		return("unknown error");
181*7c478bd9Sstevel@tonic-gate 	}
182*7c478bd9Sstevel@tonic-gate }
183