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 /* 22 * adt_xlate.c 23 * 24 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 25 * Use is subject to license terms. 26 * 27 * AUTOMATICALLY GENERATED CODE; DO NOT EDIT; CONTACT AUDIT PROJECT 28 */ 29 30 #pragma ident "%Z%%M% %I% %E% SMI" 31 32 #include <bsm/libbsm.h> 33 #include <adt_xlate.h> 34 #include <libintl.h> 35 36 #ifndef _PRAUDIT 37 /* Internal data type definitions */ 38 39 static datadef adr0[1] = {{ADT_MSG, ADT_LIST_LOGIN_TEXT}}; 40 static datadef adr1[1] = {{ADT_CHARSTAR, sizeof (char *)}}; 41 static datadef adr2[3] = {{ADT_INT, sizeof (int)}, 42 {ADT_CHAR2STAR, sizeof (char **)}, 43 {ADT_CHAR2STAR, sizeof (char **)}}; 44 static datadef adr3[8] = {{ADT_UID, sizeof (uid_t)}, 45 {ADT_UID, sizeof (uid_t)}, 46 {ADT_GID, sizeof (gid_t)}, 47 {ADT_UID, sizeof (uid_t)}, 48 {ADT_GID, sizeof (gid_t)}, 49 {ADT_PID, sizeof (pid_t)}, 50 {ADT_UINT32, sizeof (au_asid_t)}, 51 {ADT_TERMIDSTAR, sizeof (au_tid_addr_t *)}}; 52 static datadef adr4[1] = {{ADT_PRIVSTAR, sizeof (priv_set_t *)}}; 53 static datadef adr5[4] = {{ADT_UINT32, sizeof (uint32_t)}, 54 {ADT_UINT16, sizeof (uint16_t)}, 55 {ADT_UINT16, sizeof (uint16_t)}, 56 {ADT_UINT32ARRAY, 4 * sizeof (uint32_t)}}; 57 58 /* External event structure to internal event structure */ 59 60 static struct entry XX_admin_authenticate[3] = { 61 {AUT_SUBJECT, 1, NULL, &(XX_admin_authenticate[1]), 62 0, 0, 0, NULL}, 63 {AUT_TEXT, 1, &adr0[0], &(XX_admin_authenticate[2]), 64 0, 0, 0, NULL}, 65 {AUT_RETURN, 1, NULL, NULL, 66 0, 0, 0, NULL} 67 }; 68 static struct translation X_admin_authenticate = { 69 0, 70 ADT_admin_authenticate, 71 AUE_admin_authenticate, 72 3, 73 &XX_admin_authenticate[0], 74 &XX_admin_authenticate[0] 75 }; 76 static struct entry XX_attach[6] = { 77 {AUT_SUBJECT, 1, NULL, &(XX_attach[1]), 78 0, 0, 0, NULL}, 79 {AUT_UAUTH, 1, &adr1[0], &(XX_attach[2]), 80 0, 1, 0, NULL}, 81 {AUT_PATH, 1, &adr1[0], &(XX_attach[3]), 82 0, 1, 0, NULL}, 83 {AUT_PATH, 1, &adr1[0], &(XX_attach[4]), 84 0, 1, 0, NULL}, 85 {AUT_TEXT, 1, &adr1[0], &(XX_attach[5]), 86 0, 0, 0, NULL}, 87 {AUT_RETURN, 1, NULL, NULL, 88 0, 0, 0, NULL} 89 }; 90 static struct translation X_attach = { 91 0, 92 ADT_attach, 93 AUE_attach, 94 6, 95 &XX_attach[0], 96 &XX_attach[0] 97 }; 98 static struct entry XX_detach[6] = { 99 {AUT_SUBJECT, 1, NULL, &(XX_detach[1]), 100 0, 0, 0, NULL}, 101 {AUT_UAUTH, 1, &adr1[0], &(XX_detach[2]), 102 0, 1, 0, NULL}, 103 {AUT_PATH, 1, &adr1[0], &(XX_detach[3]), 104 0, 1, 0, NULL}, 105 {AUT_PATH, 1, &adr1[0], &(XX_detach[4]), 106 0, 1, 0, NULL}, 107 {AUT_TEXT, 1, &adr1[0], &(XX_detach[5]), 108 0, 0, 0, NULL}, 109 {AUT_RETURN, 1, NULL, NULL, 110 0, 0, 0, NULL} 111 }; 112 static struct translation X_detach = { 113 0, 114 ADT_detach, 115 AUE_detach, 116 6, 117 &XX_detach[0], 118 &XX_detach[0] 119 }; 120 static struct entry XX_dladm_create_secobj[5] = { 121 {AUT_SUBJECT, 1, NULL, &(XX_dladm_create_secobj[1]), 122 0, 0, 0, NULL}, 123 {AUT_UAUTH, 1, &adr1[0], &(XX_dladm_create_secobj[2]), 124 0, 1, 0, NULL}, 125 {AUT_TEXT, 1, &adr1[0], &(XX_dladm_create_secobj[3]), 126 0, 1, 0, NULL}, 127 {AUT_TEXT, 1, &adr1[0], &(XX_dladm_create_secobj[4]), 128 0, 1, 0, NULL}, 129 {AUT_RETURN, 1, NULL, NULL, 130 0, 0, 0, NULL} 131 }; 132 static struct translation X_dladm_create_secobj = { 133 0, 134 ADT_dladm_create_secobj, 135 AUE_dladm_create_secobj, 136 5, 137 &XX_dladm_create_secobj[0], 138 &XX_dladm_create_secobj[0] 139 }; 140 static struct entry XX_dladm_delete_secobj[5] = { 141 {AUT_SUBJECT, 1, NULL, &(XX_dladm_delete_secobj[1]), 142 0, 0, 0, NULL}, 143 {AUT_UAUTH, 1, &adr1[0], &(XX_dladm_delete_secobj[2]), 144 0, 1, 0, NULL}, 145 {AUT_TEXT, 1, &adr1[0], &(XX_dladm_delete_secobj[3]), 146 0, 1, 0, NULL}, 147 {AUT_TEXT, 1, &adr1[0], &(XX_dladm_delete_secobj[4]), 148 0, 1, 0, NULL}, 149 {AUT_RETURN, 1, NULL, NULL, 150 0, 0, 0, NULL} 151 }; 152 static struct translation X_dladm_delete_secobj = { 153 0, 154 ADT_dladm_delete_secobj, 155 AUE_dladm_delete_secobj, 156 5, 157 &XX_dladm_delete_secobj[0], 158 &XX_dladm_delete_secobj[0] 159 }; 160 static struct entry XX_filesystem_add[7] = { 161 {AUT_SUBJECT, 1, NULL, &(XX_filesystem_add[1]), 162 0, 0, 0, NULL}, 163 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_add[2]), 164 0, 1, 0, NULL}, 165 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_add[3]), 166 0, 0, 0, NULL}, 167 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_add[4]), 168 0, 1, 0, NULL}, 169 {AUT_UAUTH, 1, &adr1[0], &(XX_filesystem_add[5]), 170 0, 0, 0, NULL}, 171 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_add[6]), 172 0, 1, 0, NULL}, 173 {AUT_RETURN, 1, NULL, NULL, 174 0, 0, 0, NULL} 175 }; 176 static struct translation X_filesystem_add = { 177 0, 178 ADT_filesystem_add, 179 AUE_filesystem_add, 180 7, 181 &XX_filesystem_add[0], 182 &XX_filesystem_add[0] 183 }; 184 static struct entry XX_filesystem_delete[7] = { 185 {AUT_SUBJECT, 1, NULL, &(XX_filesystem_delete[1]), 186 0, 0, 0, NULL}, 187 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_delete[2]), 188 0, 1, 0, NULL}, 189 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_delete[3]), 190 0, 0, 0, NULL}, 191 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_delete[4]), 192 0, 1, 0, NULL}, 193 {AUT_UAUTH, 1, &adr1[0], &(XX_filesystem_delete[5]), 194 0, 0, 0, NULL}, 195 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_delete[6]), 196 0, 1, 0, NULL}, 197 {AUT_RETURN, 1, NULL, NULL, 198 0, 0, 0, NULL} 199 }; 200 static struct translation X_filesystem_delete = { 201 0, 202 ADT_filesystem_delete, 203 AUE_filesystem_delete, 204 7, 205 &XX_filesystem_delete[0], 206 &XX_filesystem_delete[0] 207 }; 208 static struct entry XX_filesystem_modify[7] = { 209 {AUT_SUBJECT, 1, NULL, &(XX_filesystem_modify[1]), 210 0, 0, 0, NULL}, 211 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_modify[2]), 212 0, 1, 0, NULL}, 213 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_modify[3]), 214 0, 0, 0, NULL}, 215 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_modify[4]), 216 0, 1, 0, NULL}, 217 {AUT_UAUTH, 1, &adr1[0], &(XX_filesystem_modify[5]), 218 0, 0, 0, NULL}, 219 {AUT_TEXT, 1, &adr1[0], &(XX_filesystem_modify[6]), 220 0, 1, 0, NULL}, 221 {AUT_RETURN, 1, NULL, NULL, 222 0, 0, 0, NULL} 223 }; 224 static struct translation X_filesystem_modify = { 225 0, 226 ADT_filesystem_modify, 227 AUE_filesystem_modify, 228 7, 229 &XX_filesystem_modify[0], 230 &XX_filesystem_modify[0] 231 }; 232 static struct entry XX_inetd_connect[6] = { 233 {AUT_SUBJECT, 1, NULL, &(XX_inetd_connect[1]), 234 0, 0, 0, NULL}, 235 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_connect[2]), 236 0, 0, 0, NULL}, 237 {AUT_TID, 4, &adr5[0], &(XX_inetd_connect[3]), 238 0, 1, 0, NULL}, 239 {ADT_CMD_ALT, 1, &adr1[0], &(XX_inetd_connect[4]), 240 0, 1, 0, NULL}, 241 {ADT_AUT_PRIV_E, 1, &adr4[0], &(XX_inetd_connect[5]), 242 0, 1, 0, NULL}, 243 {AUT_RETURN, 1, NULL, NULL, 244 0, 0, 0, NULL} 245 }; 246 static struct translation X_inetd_connect = { 247 0, 248 ADT_inetd_connect, 249 AUE_inetd_connect, 250 6, 251 &XX_inetd_connect[0], 252 &XX_inetd_connect[0] 253 }; 254 static struct entry XX_inetd_copylimit[4] = { 255 {AUT_SUBJECT, 1, NULL, &(XX_inetd_copylimit[1]), 256 0, 0, 0, NULL}, 257 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_copylimit[2]), 258 0, 0, 0, NULL}, 259 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_copylimit[3]), 260 0, 1, 0, NULL}, 261 {AUT_RETURN, 1, NULL, NULL, 262 0, 0, 0, NULL} 263 }; 264 static struct translation X_inetd_copylimit = { 265 0, 266 ADT_inetd_copylimit, 267 AUE_inetd_copylimit, 268 4, 269 &XX_inetd_copylimit[0], 270 &XX_inetd_copylimit[0] 271 }; 272 static struct entry XX_inetd_failrate[4] = { 273 {AUT_SUBJECT, 1, NULL, &(XX_inetd_failrate[1]), 274 0, 0, 0, NULL}, 275 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_failrate[2]), 276 0, 0, 0, NULL}, 277 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_failrate[3]), 278 0, 1, 0, NULL}, 279 {AUT_RETURN, 1, NULL, NULL, 280 0, 0, 0, NULL} 281 }; 282 static struct translation X_inetd_failrate = { 283 0, 284 ADT_inetd_failrate, 285 AUE_inetd_failrate, 286 4, 287 &XX_inetd_failrate[0], 288 &XX_inetd_failrate[0] 289 }; 290 static struct entry XX_inetd_ratelimit[4] = { 291 {AUT_SUBJECT, 1, NULL, &(XX_inetd_ratelimit[1]), 292 0, 0, 0, NULL}, 293 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_ratelimit[2]), 294 0, 0, 0, NULL}, 295 {AUT_TEXT, 1, &adr1[0], &(XX_inetd_ratelimit[3]), 296 0, 1, 0, NULL}, 297 {AUT_RETURN, 1, NULL, NULL, 298 0, 0, 0, NULL} 299 }; 300 static struct translation X_inetd_ratelimit = { 301 0, 302 ADT_inetd_ratelimit, 303 AUE_inetd_ratelimit, 304 4, 305 &XX_inetd_ratelimit[0], 306 &XX_inetd_ratelimit[0] 307 }; 308 static struct entry XX_init_solaris[3] = { 309 {AUT_SUBJECT, 1, NULL, &(XX_init_solaris[1]), 310 0, 0, 0, NULL}, 311 {AUT_TEXT, 1, &adr1[0], &(XX_init_solaris[2]), 312 0, 0, 0, NULL}, 313 {AUT_RETURN, 1, NULL, NULL, 314 0, 0, 0, NULL} 315 }; 316 static struct translation X_init_solaris = { 317 0, 318 ADT_init_solaris, 319 AUE_init_solaris, 320 3, 321 &XX_init_solaris[0], 322 &XX_init_solaris[0] 323 }; 324 static struct entry XX_login[3] = { 325 {AUT_SUBJECT, 1, NULL, &(XX_login[1]), 326 0, 0, 0, NULL}, 327 {AUT_TEXT, 1, &adr0[0], &(XX_login[2]), 328 0, 0, 0, NULL}, 329 {AUT_RETURN, 1, NULL, NULL, 330 0, 0, 0, NULL} 331 }; 332 static struct translation X_login = { 333 0, 334 ADT_login, 335 AUE_login, 336 3, 337 &XX_login[0], 338 &XX_login[0] 339 }; 340 static struct entry XX_logout[3] = { 341 {AUT_SUBJECT, 1, NULL, &(XX_logout[1]), 342 0, 0, 0, NULL}, 343 {AUT_TEXT, 1, &adr1[0], &(XX_logout[2]), 344 0, 0, 0, "logout %s"}, 345 {AUT_RETURN, 1, NULL, NULL, 346 0, 0, 0, NULL} 347 }; 348 static struct translation X_logout = { 349 0, 350 ADT_logout, 351 AUE_logout, 352 3, 353 &XX_logout[0], 354 &XX_logout[0] 355 }; 356 static struct entry XX_network_add[7] = { 357 {AUT_SUBJECT, 1, NULL, &(XX_network_add[1]), 358 0, 0, 0, NULL}, 359 {AUT_TEXT, 1, &adr1[0], &(XX_network_add[2]), 360 0, 1, 0, NULL}, 361 {AUT_TEXT, 1, &adr1[0], &(XX_network_add[3]), 362 0, 0, 0, NULL}, 363 {AUT_TEXT, 1, &adr1[0], &(XX_network_add[4]), 364 0, 1, 0, NULL}, 365 {AUT_UAUTH, 1, &adr1[0], &(XX_network_add[5]), 366 0, 0, 0, NULL}, 367 {AUT_TEXT, 1, &adr1[0], &(XX_network_add[6]), 368 0, 1, 0, NULL}, 369 {AUT_RETURN, 1, NULL, NULL, 370 0, 0, 0, NULL} 371 }; 372 static struct translation X_network_add = { 373 0, 374 ADT_network_add, 375 AUE_network_add, 376 7, 377 &XX_network_add[0], 378 &XX_network_add[0] 379 }; 380 static struct entry XX_network_delete[7] = { 381 {AUT_SUBJECT, 1, NULL, &(XX_network_delete[1]), 382 0, 0, 0, NULL}, 383 {AUT_TEXT, 1, &adr1[0], &(XX_network_delete[2]), 384 0, 1, 0, NULL}, 385 {AUT_TEXT, 1, &adr1[0], &(XX_network_delete[3]), 386 0, 0, 0, NULL}, 387 {AUT_TEXT, 1, &adr1[0], &(XX_network_delete[4]), 388 0, 1, 0, NULL}, 389 {AUT_UAUTH, 1, &adr1[0], &(XX_network_delete[5]), 390 0, 0, 0, NULL}, 391 {AUT_TEXT, 1, &adr1[0], &(XX_network_delete[6]), 392 0, 1, 0, NULL}, 393 {AUT_RETURN, 1, NULL, NULL, 394 0, 0, 0, NULL} 395 }; 396 static struct translation X_network_delete = { 397 0, 398 ADT_network_delete, 399 AUE_network_delete, 400 7, 401 &XX_network_delete[0], 402 &XX_network_delete[0] 403 }; 404 static struct entry XX_network_modify[7] = { 405 {AUT_SUBJECT, 1, NULL, &(XX_network_modify[1]), 406 0, 0, 0, NULL}, 407 {AUT_TEXT, 1, &adr1[0], &(XX_network_modify[2]), 408 0, 1, 0, NULL}, 409 {AUT_TEXT, 1, &adr1[0], &(XX_network_modify[3]), 410 0, 0, 0, NULL}, 411 {AUT_TEXT, 1, &adr1[0], &(XX_network_modify[4]), 412 0, 1, 0, NULL}, 413 {AUT_UAUTH, 1, &adr1[0], &(XX_network_modify[5]), 414 0, 0, 0, NULL}, 415 {AUT_TEXT, 1, &adr1[0], &(XX_network_modify[6]), 416 0, 1, 0, NULL}, 417 {AUT_RETURN, 1, NULL, NULL, 418 0, 0, 0, NULL} 419 }; 420 static struct translation X_network_modify = { 421 0, 422 ADT_network_modify, 423 AUE_network_modify, 424 7, 425 &XX_network_modify[0], 426 &XX_network_modify[0] 427 }; 428 static struct entry XX_newgrp_login[3] = { 429 {AUT_SUBJECT, 1, NULL, &(XX_newgrp_login[1]), 430 0, 0, 0, NULL}, 431 {AUT_TEXT, 1, &adr1[0], &(XX_newgrp_login[2]), 432 0, 1, 0, NULL}, 433 {AUT_RETURN, 1, NULL, NULL, 434 0, 0, 0, NULL} 435 }; 436 static struct translation X_newgrp_login = { 437 0, 438 ADT_newgrp_login, 439 AUE_newgrp_login, 440 3, 441 &XX_newgrp_login[0], 442 &XX_newgrp_login[0] 443 }; 444 static struct entry XX_passwd[3] = { 445 {AUT_SUBJECT, 1, NULL, &(XX_passwd[1]), 446 0, 0, 0, NULL}, 447 {AUT_TEXT, 1, &adr1[0], &(XX_passwd[2]), 448 0, 0, 0, NULL}, 449 {AUT_RETURN, 1, NULL, NULL, 450 0, 0, 0, NULL} 451 }; 452 static struct translation X_passwd = { 453 0, 454 ADT_passwd, 455 AUE_passwd, 456 3, 457 &XX_passwd[0], 458 &XX_passwd[0] 459 }; 460 static struct entry XX_pool_export[5] = { 461 {AUT_SUBJECT, 1, NULL, &(XX_pool_export[1]), 462 0, 0, 0, NULL}, 463 {AUT_UAUTH, 1, &adr1[0], &(XX_pool_export[2]), 464 0, 1, 0, NULL}, 465 {AUT_TEXT, 1, &adr1[0], &(XX_pool_export[3]), 466 0, 1, 0, NULL}, 467 {AUT_PATH, 1, &adr1[0], &(XX_pool_export[4]), 468 0, 1, 0, NULL}, 469 {AUT_RETURN, 1, NULL, NULL, 470 0, 0, 0, NULL} 471 }; 472 static struct translation X_pool_export = { 473 0, 474 ADT_pool_export, 475 AUE_pool_export, 476 5, 477 &XX_pool_export[0], 478 &XX_pool_export[0] 479 }; 480 static struct entry XX_pool_import[5] = { 481 {AUT_SUBJECT, 1, NULL, &(XX_pool_import[1]), 482 0, 0, 0, NULL}, 483 {AUT_UAUTH, 1, &adr1[0], &(XX_pool_import[2]), 484 0, 1, 0, NULL}, 485 {AUT_TEXT, 1, &adr1[0], &(XX_pool_import[3]), 486 0, 1, 0, NULL}, 487 {AUT_PATH, 1, &adr1[0], &(XX_pool_import[4]), 488 0, 1, 0, NULL}, 489 {AUT_RETURN, 1, NULL, NULL, 490 0, 0, 0, NULL} 491 }; 492 static struct translation X_pool_import = { 493 0, 494 ADT_pool_import, 495 AUE_pool_import, 496 5, 497 &XX_pool_import[0], 498 &XX_pool_import[0] 499 }; 500 static struct entry XX_printer_add[7] = { 501 {AUT_SUBJECT, 1, NULL, &(XX_printer_add[1]), 502 0, 0, 0, NULL}, 503 {AUT_TEXT, 1, &adr1[0], &(XX_printer_add[2]), 504 0, 1, 0, NULL}, 505 {AUT_TEXT, 1, &adr1[0], &(XX_printer_add[3]), 506 0, 0, 0, NULL}, 507 {AUT_TEXT, 1, &adr1[0], &(XX_printer_add[4]), 508 0, 1, 0, NULL}, 509 {AUT_UAUTH, 1, &adr1[0], &(XX_printer_add[5]), 510 0, 0, 0, NULL}, 511 {AUT_TEXT, 1, &adr1[0], &(XX_printer_add[6]), 512 0, 1, 0, NULL}, 513 {AUT_RETURN, 1, NULL, NULL, 514 0, 0, 0, NULL} 515 }; 516 static struct translation X_printer_add = { 517 0, 518 ADT_printer_add, 519 AUE_printer_add, 520 7, 521 &XX_printer_add[0], 522 &XX_printer_add[0] 523 }; 524 static struct entry XX_printer_delete[7] = { 525 {AUT_SUBJECT, 1, NULL, &(XX_printer_delete[1]), 526 0, 0, 0, NULL}, 527 {AUT_TEXT, 1, &adr1[0], &(XX_printer_delete[2]), 528 0, 1, 0, NULL}, 529 {AUT_TEXT, 1, &adr1[0], &(XX_printer_delete[3]), 530 0, 0, 0, NULL}, 531 {AUT_TEXT, 1, &adr1[0], &(XX_printer_delete[4]), 532 0, 1, 0, NULL}, 533 {AUT_UAUTH, 1, &adr1[0], &(XX_printer_delete[5]), 534 0, 0, 0, NULL}, 535 {AUT_TEXT, 1, &adr1[0], &(XX_printer_delete[6]), 536 0, 1, 0, NULL}, 537 {AUT_RETURN, 1, NULL, NULL, 538 0, 0, 0, NULL} 539 }; 540 static struct translation X_printer_delete = { 541 0, 542 ADT_printer_delete, 543 AUE_printer_delete, 544 7, 545 &XX_printer_delete[0], 546 &XX_printer_delete[0] 547 }; 548 static struct entry XX_printer_modify[7] = { 549 {AUT_SUBJECT, 1, NULL, &(XX_printer_modify[1]), 550 0, 0, 0, NULL}, 551 {AUT_TEXT, 1, &adr1[0], &(XX_printer_modify[2]), 552 0, 1, 0, NULL}, 553 {AUT_TEXT, 1, &adr1[0], &(XX_printer_modify[3]), 554 0, 0, 0, NULL}, 555 {AUT_TEXT, 1, &adr1[0], &(XX_printer_modify[4]), 556 0, 1, 0, NULL}, 557 {AUT_UAUTH, 1, &adr1[0], &(XX_printer_modify[5]), 558 0, 0, 0, NULL}, 559 {AUT_TEXT, 1, &adr1[0], &(XX_printer_modify[6]), 560 0, 1, 0, NULL}, 561 {AUT_RETURN, 1, NULL, NULL, 562 0, 0, 0, NULL} 563 }; 564 static struct translation X_printer_modify = { 565 0, 566 ADT_printer_modify, 567 AUE_printer_modify, 568 7, 569 &XX_printer_modify[0], 570 &XX_printer_modify[0] 571 }; 572 static struct entry XX_prof_cmd[8] = { 573 {AUT_SUBJECT, 1, NULL, &(XX_prof_cmd[1]), 574 0, 0, 0, NULL}, 575 {AUT_PATH, 1, &adr1[0], &(XX_prof_cmd[2]), 576 0, 1, 0, NULL}, 577 {AUT_PATH, 1, &adr1[0], &(XX_prof_cmd[3]), 578 0, 1, 0, NULL}, 579 {AUT_CMD, 3, &adr2[0], &(XX_prof_cmd[4]), 580 0, 1, 0, NULL}, 581 {AUT_PROCESS, 8, &adr3[0], &(XX_prof_cmd[5]), 582 0, 1, 0, NULL}, 583 {ADT_AUT_PRIV_L, 1, &adr4[0], &(XX_prof_cmd[6]), 584 0, 0, 0, NULL}, 585 {ADT_AUT_PRIV_I, 1, &adr4[0], &(XX_prof_cmd[7]), 586 0, 0, 0, NULL}, 587 {AUT_RETURN, 1, NULL, NULL, 588 0, 0, 0, NULL} 589 }; 590 static struct translation X_prof_cmd = { 591 0, 592 ADT_prof_cmd, 593 AUE_prof_cmd, 594 8, 595 &XX_prof_cmd[0], 596 &XX_prof_cmd[0] 597 }; 598 static struct entry XX_remove[5] = { 599 {AUT_SUBJECT, 1, NULL, &(XX_remove[1]), 600 0, 0, 0, NULL}, 601 {AUT_UAUTH, 1, &adr1[0], &(XX_remove[2]), 602 0, 1, 0, NULL}, 603 {AUT_PATH, 1, &adr1[0], &(XX_remove[3]), 604 0, 0, 0, NULL}, 605 {AUT_PATH, 1, &adr1[0], &(XX_remove[4]), 606 0, 1, 0, NULL}, 607 {AUT_RETURN, 1, NULL, NULL, 608 0, 0, 0, NULL} 609 }; 610 static struct translation X_remove = { 611 0, 612 ADT_remove, 613 AUE_remove, 614 5, 615 &XX_remove[0], 616 &XX_remove[0] 617 }; 618 static struct entry XX_rlogin[3] = { 619 {AUT_SUBJECT, 1, NULL, &(XX_rlogin[1]), 620 0, 0, 0, NULL}, 621 {AUT_TEXT, 1, &adr0[0], &(XX_rlogin[2]), 622 0, 0, 0, NULL}, 623 {AUT_RETURN, 1, NULL, NULL, 624 0, 0, 0, NULL} 625 }; 626 static struct translation X_rlogin = { 627 0, 628 ADT_rlogin, 629 AUE_rlogin, 630 3, 631 &XX_rlogin[0], 632 &XX_rlogin[0] 633 }; 634 static struct entry XX_role_login[3] = { 635 {AUT_SUBJECT, 1, NULL, &(XX_role_login[1]), 636 0, 0, 0, NULL}, 637 {AUT_TEXT, 1, &adr0[0], &(XX_role_login[2]), 638 0, 0, 0, NULL}, 639 {AUT_RETURN, 1, NULL, NULL, 640 0, 0, 0, NULL} 641 }; 642 static struct translation X_role_login = { 643 0, 644 ADT_role_login, 645 AUE_role_login, 646 3, 647 &XX_role_login[0], 648 &XX_role_login[0] 649 }; 650 static struct entry XX_role_logout[2] = { 651 {AUT_SUBJECT, 1, NULL, &(XX_role_logout[1]), 652 0, 0, 0, NULL}, 653 {AUT_RETURN, 1, NULL, NULL, 654 0, 0, 0, NULL} 655 }; 656 static struct translation X_role_logout = { 657 0, 658 ADT_role_logout, 659 AUE_role_logout, 660 2, 661 &XX_role_logout[0], 662 &XX_role_logout[0] 663 }; 664 static struct entry XX_scheduledjob_add[7] = { 665 {AUT_SUBJECT, 1, NULL, &(XX_scheduledjob_add[1]), 666 0, 0, 0, NULL}, 667 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_add[2]), 668 0, 1, 0, NULL}, 669 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_add[3]), 670 0, 0, 0, NULL}, 671 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_add[4]), 672 0, 1, 0, NULL}, 673 {AUT_UAUTH, 1, &adr1[0], &(XX_scheduledjob_add[5]), 674 0, 0, 0, NULL}, 675 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_add[6]), 676 0, 1, 0, NULL}, 677 {AUT_RETURN, 1, NULL, NULL, 678 0, 0, 0, NULL} 679 }; 680 static struct translation X_scheduledjob_add = { 681 0, 682 ADT_scheduledjob_add, 683 AUE_scheduledjob_add, 684 7, 685 &XX_scheduledjob_add[0], 686 &XX_scheduledjob_add[0] 687 }; 688 static struct entry XX_scheduledjob_delete[7] = { 689 {AUT_SUBJECT, 1, NULL, &(XX_scheduledjob_delete[1]), 690 0, 0, 0, NULL}, 691 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_delete[2]), 692 0, 1, 0, NULL}, 693 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_delete[3]), 694 0, 0, 0, NULL}, 695 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_delete[4]), 696 0, 1, 0, NULL}, 697 {AUT_UAUTH, 1, &adr1[0], &(XX_scheduledjob_delete[5]), 698 0, 0, 0, NULL}, 699 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_delete[6]), 700 0, 1, 0, NULL}, 701 {AUT_RETURN, 1, NULL, NULL, 702 0, 0, 0, NULL} 703 }; 704 static struct translation X_scheduledjob_delete = { 705 0, 706 ADT_scheduledjob_delete, 707 AUE_scheduledjob_delete, 708 7, 709 &XX_scheduledjob_delete[0], 710 &XX_scheduledjob_delete[0] 711 }; 712 static struct entry XX_scheduledjob_modify[7] = { 713 {AUT_SUBJECT, 1, NULL, &(XX_scheduledjob_modify[1]), 714 0, 0, 0, NULL}, 715 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_modify[2]), 716 0, 1, 0, NULL}, 717 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_modify[3]), 718 0, 0, 0, NULL}, 719 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_modify[4]), 720 0, 1, 0, NULL}, 721 {AUT_UAUTH, 1, &adr1[0], &(XX_scheduledjob_modify[5]), 722 0, 0, 0, NULL}, 723 {AUT_TEXT, 1, &adr1[0], &(XX_scheduledjob_modify[6]), 724 0, 1, 0, NULL}, 725 {AUT_RETURN, 1, NULL, NULL, 726 0, 0, 0, NULL} 727 }; 728 static struct translation X_scheduledjob_modify = { 729 0, 730 ADT_scheduledjob_modify, 731 AUE_scheduledjob_modify, 732 7, 733 &XX_scheduledjob_modify[0], 734 &XX_scheduledjob_modify[0] 735 }; 736 static struct entry XX_screenlock[2] = { 737 {AUT_SUBJECT, 1, NULL, &(XX_screenlock[1]), 738 0, 0, 0, NULL}, 739 {AUT_RETURN, 1, NULL, NULL, 740 0, 0, 0, NULL} 741 }; 742 static struct translation X_screenlock = { 743 0, 744 ADT_screenlock, 745 AUE_screenlock, 746 2, 747 &XX_screenlock[0], 748 &XX_screenlock[0] 749 }; 750 static struct entry XX_screenunlock[2] = { 751 {AUT_SUBJECT, 1, NULL, &(XX_screenunlock[1]), 752 0, 0, 0, NULL}, 753 {AUT_RETURN, 1, NULL, NULL, 754 0, 0, 0, NULL} 755 }; 756 static struct translation X_screenunlock = { 757 0, 758 ADT_screenunlock, 759 AUE_screenunlock, 760 2, 761 &XX_screenunlock[0], 762 &XX_screenunlock[0] 763 }; 764 static struct entry XX_serialport_add[7] = { 765 {AUT_SUBJECT, 1, NULL, &(XX_serialport_add[1]), 766 0, 0, 0, NULL}, 767 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_add[2]), 768 0, 1, 0, NULL}, 769 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_add[3]), 770 0, 0, 0, NULL}, 771 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_add[4]), 772 0, 1, 0, NULL}, 773 {AUT_UAUTH, 1, &adr1[0], &(XX_serialport_add[5]), 774 0, 0, 0, NULL}, 775 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_add[6]), 776 0, 1, 0, NULL}, 777 {AUT_RETURN, 1, NULL, NULL, 778 0, 0, 0, NULL} 779 }; 780 static struct translation X_serialport_add = { 781 0, 782 ADT_serialport_add, 783 AUE_serialport_add, 784 7, 785 &XX_serialport_add[0], 786 &XX_serialport_add[0] 787 }; 788 static struct entry XX_serialport_delete[7] = { 789 {AUT_SUBJECT, 1, NULL, &(XX_serialport_delete[1]), 790 0, 0, 0, NULL}, 791 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_delete[2]), 792 0, 1, 0, NULL}, 793 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_delete[3]), 794 0, 0, 0, NULL}, 795 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_delete[4]), 796 0, 1, 0, NULL}, 797 {AUT_UAUTH, 1, &adr1[0], &(XX_serialport_delete[5]), 798 0, 0, 0, NULL}, 799 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_delete[6]), 800 0, 1, 0, NULL}, 801 {AUT_RETURN, 1, NULL, NULL, 802 0, 0, 0, NULL} 803 }; 804 static struct translation X_serialport_delete = { 805 0, 806 ADT_serialport_delete, 807 AUE_serialport_delete, 808 7, 809 &XX_serialport_delete[0], 810 &XX_serialport_delete[0] 811 }; 812 static struct entry XX_serialport_modify[7] = { 813 {AUT_SUBJECT, 1, NULL, &(XX_serialport_modify[1]), 814 0, 0, 0, NULL}, 815 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_modify[2]), 816 0, 1, 0, NULL}, 817 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_modify[3]), 818 0, 0, 0, NULL}, 819 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_modify[4]), 820 0, 1, 0, NULL}, 821 {AUT_UAUTH, 1, &adr1[0], &(XX_serialport_modify[5]), 822 0, 0, 0, NULL}, 823 {AUT_TEXT, 1, &adr1[0], &(XX_serialport_modify[6]), 824 0, 1, 0, NULL}, 825 {AUT_RETURN, 1, NULL, NULL, 826 0, 0, 0, NULL} 827 }; 828 static struct translation X_serialport_modify = { 829 0, 830 ADT_serialport_modify, 831 AUE_serialport_modify, 832 7, 833 &XX_serialport_modify[0], 834 &XX_serialport_modify[0] 835 }; 836 static struct entry XX_ssh[3] = { 837 {AUT_SUBJECT, 1, NULL, &(XX_ssh[1]), 838 0, 0, 0, NULL}, 839 {AUT_TEXT, 1, &adr0[0], &(XX_ssh[2]), 840 0, 0, 0, NULL}, 841 {AUT_RETURN, 1, NULL, NULL, 842 0, 0, 0, NULL} 843 }; 844 static struct translation X_ssh = { 845 0, 846 ADT_ssh, 847 AUE_ssh, 848 3, 849 &XX_ssh[0], 850 &XX_ssh[0] 851 }; 852 static struct entry XX_su[3] = { 853 {AUT_SUBJECT, 1, NULL, &(XX_su[1]), 854 0, 0, 0, NULL}, 855 {AUT_TEXT, 1, &adr1[0], &(XX_su[2]), 856 0, 0, 0, NULL}, 857 {AUT_RETURN, 1, NULL, NULL, 858 0, 0, 0, NULL} 859 }; 860 static struct translation X_su = { 861 0, 862 ADT_su, 863 AUE_su, 864 3, 865 &XX_su[0], 866 &XX_su[0] 867 }; 868 static struct entry XX_su_logout[2] = { 869 {AUT_SUBJECT, 1, NULL, &(XX_su_logout[1]), 870 0, 0, 0, NULL}, 871 {AUT_RETURN, 1, NULL, NULL, 872 0, 0, 0, NULL} 873 }; 874 static struct translation X_su_logout = { 875 0, 876 ADT_su_logout, 877 AUE_su_logout, 878 2, 879 &XX_su_logout[0], 880 &XX_su_logout[0] 881 }; 882 static struct entry XX_telnet[3] = { 883 {AUT_SUBJECT, 1, NULL, &(XX_telnet[1]), 884 0, 0, 0, NULL}, 885 {AUT_TEXT, 1, &adr0[0], &(XX_telnet[2]), 886 0, 0, 0, NULL}, 887 {AUT_RETURN, 1, NULL, NULL, 888 0, 0, 0, NULL} 889 }; 890 static struct translation X_telnet = { 891 0, 892 ADT_telnet, 893 AUE_telnet, 894 3, 895 &XX_telnet[0], 896 &XX_telnet[0] 897 }; 898 static struct entry XX_uauth[4] = { 899 {AUT_SUBJECT, 1, NULL, &(XX_uauth[1]), 900 0, 0, 0, NULL}, 901 {AUT_UAUTH, 1, &adr1[0], &(XX_uauth[2]), 902 0, 1, 0, NULL}, 903 {AUT_TEXT, 1, &adr1[0], &(XX_uauth[3]), 904 0, 1, 0, NULL}, 905 {AUT_RETURN, 1, NULL, NULL, 906 0, 0, 0, NULL} 907 }; 908 static struct translation X_uauth = { 909 0, 910 ADT_uauth, 911 AUE_uauth, 912 4, 913 &XX_uauth[0], 914 &XX_uauth[0] 915 }; 916 static struct entry XX_usermgr_add[7] = { 917 {AUT_SUBJECT, 1, NULL, &(XX_usermgr_add[1]), 918 0, 0, 0, NULL}, 919 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_add[2]), 920 0, 1, 0, NULL}, 921 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_add[3]), 922 0, 0, 0, NULL}, 923 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_add[4]), 924 0, 1, 0, NULL}, 925 {AUT_UAUTH, 1, &adr1[0], &(XX_usermgr_add[5]), 926 0, 0, 0, NULL}, 927 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_add[6]), 928 0, 1, 0, NULL}, 929 {AUT_RETURN, 1, NULL, NULL, 930 0, 0, 0, NULL} 931 }; 932 static struct translation X_usermgr_add = { 933 0, 934 ADT_usermgr_add, 935 AUE_usermgr_add, 936 7, 937 &XX_usermgr_add[0], 938 &XX_usermgr_add[0] 939 }; 940 static struct entry XX_usermgr_delete[7] = { 941 {AUT_SUBJECT, 1, NULL, &(XX_usermgr_delete[1]), 942 0, 0, 0, NULL}, 943 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_delete[2]), 944 0, 1, 0, NULL}, 945 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_delete[3]), 946 0, 0, 0, NULL}, 947 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_delete[4]), 948 0, 1, 0, NULL}, 949 {AUT_UAUTH, 1, &adr1[0], &(XX_usermgr_delete[5]), 950 0, 0, 0, NULL}, 951 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_delete[6]), 952 0, 1, 0, NULL}, 953 {AUT_RETURN, 1, NULL, NULL, 954 0, 0, 0, NULL} 955 }; 956 static struct translation X_usermgr_delete = { 957 0, 958 ADT_usermgr_delete, 959 AUE_usermgr_delete, 960 7, 961 &XX_usermgr_delete[0], 962 &XX_usermgr_delete[0] 963 }; 964 static struct entry XX_usermgr_modify[7] = { 965 {AUT_SUBJECT, 1, NULL, &(XX_usermgr_modify[1]), 966 0, 0, 0, NULL}, 967 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_modify[2]), 968 0, 1, 0, NULL}, 969 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_modify[3]), 970 0, 0, 0, NULL}, 971 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_modify[4]), 972 0, 1, 0, NULL}, 973 {AUT_UAUTH, 1, &adr1[0], &(XX_usermgr_modify[5]), 974 0, 0, 0, NULL}, 975 {AUT_TEXT, 1, &adr1[0], &(XX_usermgr_modify[6]), 976 0, 1, 0, NULL}, 977 {AUT_RETURN, 1, NULL, NULL, 978 0, 0, 0, NULL} 979 }; 980 static struct translation X_usermgr_modify = { 981 0, 982 ADT_usermgr_modify, 983 AUE_usermgr_modify, 984 7, 985 &XX_usermgr_modify[0], 986 &XX_usermgr_modify[0] 987 }; 988 static struct entry XX_zlogin[3] = { 989 {AUT_SUBJECT, 1, NULL, &(XX_zlogin[1]), 990 0, 0, 0, NULL}, 991 {AUT_TEXT, 1, &adr1[0], &(XX_zlogin[2]), 992 0, 0, 0, NULL}, 993 {AUT_RETURN, 1, NULL, NULL, 994 0, 0, 0, NULL} 995 }; 996 static struct translation X_zlogin = { 997 0, 998 ADT_zlogin, 999 AUE_zlogin, 1000 3, 1001 &XX_zlogin[0], 1002 &XX_zlogin[0] 1003 }; 1004 static struct entry XX_zone_state[4] = { 1005 {AUT_SUBJECT, 1, NULL, &(XX_zone_state[1]), 1006 0, 0, 0, NULL}, 1007 {AUT_TEXT, 1, &adr1[0], &(XX_zone_state[2]), 1008 0, 1, 0, NULL}, 1009 {AUT_ZONENAME, 1, &adr1[0], &(XX_zone_state[3]), 1010 0, 1, 0, NULL}, 1011 {AUT_RETURN, 1, NULL, NULL, 1012 0, 0, 0, NULL} 1013 }; 1014 static struct translation X_zone_state = { 1015 0, 1016 ADT_zone_state, 1017 AUE_zone_state, 1018 4, 1019 &XX_zone_state[0], 1020 &XX_zone_state[0] 1021 }; 1022 struct translation *xlate_table[49] = { 1023 &X_admin_authenticate, 1024 &X_attach, 1025 &X_detach, 1026 &X_dladm_create_secobj, 1027 &X_dladm_delete_secobj, 1028 &X_filesystem_add, 1029 &X_filesystem_delete, 1030 &X_filesystem_modify, 1031 &X_inetd_connect, 1032 &X_inetd_copylimit, 1033 &X_inetd_failrate, 1034 &X_inetd_ratelimit, 1035 &X_init_solaris, 1036 &X_login, 1037 &X_logout, 1038 &X_network_add, 1039 &X_network_delete, 1040 &X_network_modify, 1041 &X_newgrp_login, 1042 &X_passwd, 1043 &X_pool_export, 1044 &X_pool_import, 1045 &X_printer_add, 1046 &X_printer_delete, 1047 &X_printer_modify, 1048 &X_prof_cmd, 1049 &X_remove, 1050 &X_rlogin, 1051 &X_role_login, 1052 &X_role_logout, 1053 &X_scheduledjob_add, 1054 &X_scheduledjob_delete, 1055 &X_scheduledjob_modify, 1056 &X_screenlock, 1057 &X_screenunlock, 1058 &X_serialport_add, 1059 &X_serialport_delete, 1060 &X_serialport_modify, 1061 &X_ssh, 1062 &X_su, 1063 &X_su_logout, 1064 &X_telnet, 1065 &X_uauth, 1066 &X_usermgr_add, 1067 &X_usermgr_delete, 1068 &X_usermgr_modify, 1069 &X_zlogin, 1070 &X_zone_state, 1071 NULL 1072 }; 1073 1074 void 1075 adt_preload(au_event_t event_id, adt_event_data_t *event_data) 1076 { 1077 switch (event_id) { 1078 case ADT_prof_cmd: 1079 event_data->adt_prof_cmd.proc_auid = AU_NOAUDITID; 1080 event_data->adt_prof_cmd.proc_euid = AU_NOAUDITID; 1081 event_data->adt_prof_cmd.proc_egid = AU_NOAUDITID; 1082 event_data->adt_prof_cmd.proc_ruid = AU_NOAUDITID; 1083 event_data->adt_prof_cmd.proc_rgid = AU_NOAUDITID; 1084 break; 1085 default: 1086 break; 1087 } 1088 } 1089 #endif 1090 1091 /* message lists */ 1092 1093 static char *msg_fail_value[24] = { 1094 "Attribute update", 1095 "Password update", 1096 "bad username", 1097 "authorization failed", 1098 "bad uid", 1099 "unknown failure", 1100 "password expired", 1101 "Account is locked", 1102 "Bad dial up", 1103 "Invalid ID", 1104 "Invalid password", 1105 "Not on console", 1106 "Too many failed attempts", 1107 "Protocol failure", 1108 "Excluded user", 1109 "No anonymous", 1110 "Invalid command", 1111 "Standard input not a tty line", 1112 "Program failure", 1113 "chdir to home directory", 1114 "Input line too long.", 1115 "login device override", 1116 "authorization bypass", 1117 "login disabled" 1118 }; 1119 /* Deprecated message list */ 1120 static char *msg_login_text[10] = { 1121 NULL, 1122 "Account is locked", 1123 "Bad dial up", 1124 "Invalid ID", 1125 "Invalid password", 1126 "Not on console", 1127 "Too many failed attempts", 1128 "Protocol failure", 1129 "Excluded user", 1130 "No anonymous" 1131 }; 1132 1133 struct msg_text adt_msg_text[3] = { 1134 {0, -1, NULL, -2000}, 1135 {0, 23, msg_fail_value, -1000}, 1136 {0, 9, msg_login_text, 0} 1137 }; 1138