Print this page
    
NEX-13644 File access audit logging
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/lib/libbsm/audit_event.txt
          +++ new/usr/src/lib/libbsm/audit_event.txt
   1    1  #
   2    2  # Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved.
        3 +# Copyright 2018 Nexenta Systems, Inc.  All rights reserved.
   3    4  #
   4    5  #
   5    6  # CDDL HEADER START
   6    7  #
   7    8  # The contents of this file are subject to the terms of the
   8    9  # Common Development and Distribution License (the "License").
   9   10  # You may not use this file except in compliance with the License.
  10   11  #
  11   12  # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  12   13  # or http://www.opensolaris.org/os/licensing.
  13   14  # See the License for the specific language governing permissions
  14   15  # and limitations under the License.
  15   16  #
  16   17  # When distributing Covered Code, include this CDDL HEADER in each
  17   18  # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  18   19  # If applicable, add the following below this CDDL HEADER, with the
  19   20  # fields enclosed by brackets "[]" replaced with your own identifying
  20   21  # information: Portions Copyright [yyyy] [name of copyright owner]
  21   22  #
  22   23  # CDDL HEADER END
  23   24  #
  24   25  # Audit Event Database
  25   26  #
  26   27  # File Format:
  27   28  #
  28   29  # event number:event name:event description:event classes (comma separated)
  29   30  #
  30   31  # Used to map audit events to audit classes for preselection and post-selection.
  31   32  # Used by TCB programs that write audit records to preselect audit events
  32   33  #     based on event to class mappings.
  33   34  #
  34   35  # NOTE: several events are obsolete but must continue to be defined here for
  35   36  # compatibility reasons. Obsolete events are defined in the "no" (invalid)
  36   37  # class to indicate they will not be generated.  Other events in the "no"
  37   38  # class which are not obsolete (but are in this class for other reasons),
  38   39  # are individually noted with a comment for explanation.
  39   40  #
  40   41  # System Adminstrators: Do NOT modify or add events with an event number less
  41   42  #   than 32768. These are reserved by the system.
  42   43  #
  43   44  #     0         Reserved as an invalid event number.
  44   45  #     1 - 2047  Reserved for the Solaris Kernel events.
  45   46  #  2048 - 32767 Reserved for the Solaris TCB programs.
  46   47  # 32768 - 65535 Available for third party TCB applications.
  47   48  #
  48   49  #
  49   50  # Allocation of reserved kernel events:
  50   51  # (NOTE: the kernel event table, and possibly MAX_KEVENTS, must be updated
  51   52  # in audit_kevents.h when changes are made to kernel events.)
  52   53  #           1 -   511   allocated for Solaris
  53   54  #         512 -  2047   (reserved but not allocated)
  54   55  #
  55   56  # Allocation of user level audit events:
  56   57  #        2048 -  5999   (reserved but not allocated)
  57   58  #        6000 -  9999   allocated for Solaris
  58   59  #       10000 - 32767   (reserved but not allocated)
  59   60  #       32768 - 65535   (Available for third party TCB applications)
  60   61  #
  61   62  #
  62   63  # kernel audit events
  63   64  #           1 -   511   allocated for Solaris
  64   65  #
  65   66  0:AUE_NULL:indir system call:no
  66   67  1:AUE_EXIT:exit(2):ps
  67   68  2:AUE_FORKALL:forkall(2):ps
  68   69  # AUE_OPEN is a placeholder and will not be generated
  69   70  3:AUE_OPEN:open(2) - place holder:no
  70   71  4:AUE_CREAT:creat(2):no
  71   72  5:AUE_LINK:link(2):fc
  72   73  6:AUE_UNLINK:unlink(2):fd
  73   74  7:AUE_EXEC:exec(2):no
  74   75  8:AUE_CHDIR:chdir(2):pm
  75   76  9:AUE_MKNOD:mknod(2):fc
  76   77  10:AUE_CHMOD:chmod(2):fm
  77   78  11:AUE_CHOWN:chown(2):fm
  78   79  12:AUE_UMOUNT:umount(2) - old version:as
  79   80  13:AUE_JUNK:junk:no
  80   81  14:AUE_ACCESS:access(2):fa
  81   82  15:AUE_KILL:kill(2):pm
  82   83  16:AUE_STAT:stat(2):fa
  83   84  17:AUE_LSTAT:lstat(2):fa
  84   85  18:AUE_ACCT:acct(2):as
  85   86  19:AUE_MCTL:mctl(2):no
  86   87  20:AUE_REBOOT:reboot(2):no
  87   88  21:AUE_SYMLINK:symlink(2):fc
  88   89  22:AUE_READLINK:readlink(2):fr
  89   90  23:AUE_EXECVE:execve(2):ps,ex
  90   91  24:AUE_CHROOT:chroot(2):pm
  91   92  25:AUE_VFORK:vfork(2):ps
  92   93  26:AUE_SETGROUPS:setgroups(2):pm
  93   94  27:AUE_SETPGRP:setpgrp(2):pm
  94   95  28:AUE_SWAPON:swapon(2):no
  95   96  29:AUE_SETHOSTNAME:sethostname(2):no
  96   97  30:AUE_FCNTL:fcntl(2):fm
  97   98  31:AUE_SETPRIORITY:setpriority(2):no
  98   99  32:AUE_CONNECT:connect(2):nt
  99  100  33:AUE_ACCEPT:accept(2):nt
 100  101  34:AUE_BIND:bind(2):nt
 101  102  35:AUE_SETSOCKOPT:setsockopt(2):nt
 102  103  36:AUE_VTRACE:vtrace(2):no
 103  104  37:AUE_SETTIMEOFDAY:settimeofday(2):no
 104  105  38:AUE_FCHOWN:fchown(2):fm
 105  106  39:AUE_FCHMOD:fchmod(2):fm
 106  107  40:AUE_SETREUID:setreuid(2):pm
 107  108  41:AUE_SETREGID:setregid(2):pm
 108  109  42:AUE_RENAME:rename(2):fc,fd
 109  110  43:AUE_TRUNCATE:truncate(2):no
 110  111  44:AUE_FTRUNCATE:ftruncate(2):no
 111  112  45:AUE_FLOCK:flock(2):no
 112  113  46:AUE_SHUTDOWN:shutdown(2):nt
 113  114  47:AUE_MKDIR:mkdir(2):fc
 114  115  48:AUE_RMDIR:rmdir(2):fd
 115  116  49:AUE_UTIMES:utimes(2):fm
 116  117  50:AUE_ADJTIME:adjtime(2):as
 117  118  51:AUE_SETRLIMIT:setrlimit(2):ua
 118  119  52:AUE_KILLPG:killpg(2):no
 119  120  53:AUE_NFS_SVC:nfs_svc(2):no
 120  121  54:AUE_STATFS:statfs(2):fa
 121  122  55:AUE_FSTATFS:fstatfs(2):fa
 122  123  56:AUE_UNMOUNT:unmount(2):no
 123  124  57:AUE_ASYNC_DAEMON:async_daemon(2):no
 124  125  58:AUE_NFS_GETFH:nfs_getfh(2):no
 125  126  59:AUE_SETDOMAINNAME:setdomainname(2):no
 126  127  60:AUE_QUOTACTL:quotactl(2):no
 127  128  61:AUE_EXPORTFS:exportfs(2):no
 128  129  62:AUE_MOUNT:mount(2):as
 129  130  # AUE_SEMSYS is a placeholder and will not be generated
 130  131  63:AUE_SEMSYS:semsys(2) - place holder:no
 131  132  # AUE_MSGSYS is a placeholder and will not be generated
 132  133  64:AUE_MSGSYS:msgsys(2) - place holder:no
 133  134  # AUE_SHMSYS is a placeholder and will not be generated
 134  135  65:AUE_SHMSYS:shmsys(2) - place holder:no
 135  136  66:AUE_BSMSYS:bsmsys(2) - place holder:no
 136  137  67:AUE_RFSSYS:rfssys(2) - place holder:no
 137  138  68:AUE_FCHDIR:fchdir(2):pm
 138  139  69:AUE_FCHROOT:fchroot(2):pm
 139  140  70:AUE_VPIXSYS:vpixsys(2) - place holder:no
 140  141  71:AUE_PATHCONF:pathconf(2):fa
 141  142  72:AUE_OPEN_R:open(2) - read:fr
 142  143  73:AUE_OPEN_RC:open(2) - read,creat:fc,fr
 143  144  74:AUE_OPEN_RT:open(2) - read,trunc:fd,fr
 144  145  75:AUE_OPEN_RTC:open(2) - read,creat,trunc:fc,fd,fr
 145  146  76:AUE_OPEN_W:open(2) - write:fw
 146  147  77:AUE_OPEN_WC:open(2) - write,creat:fc,fw
 147  148  78:AUE_OPEN_WT:open(2) - write,trunc:fd,fw
 148  149  79:AUE_OPEN_WTC:open(2) - write,creat,trunc:fc,fd,fw
 149  150  80:AUE_OPEN_RW:open(2) - read,write:fr,fw
 150  151  81:AUE_OPEN_RWC:open(2) - read,write,creat:fc,fw,fr
 151  152  82:AUE_OPEN_RWT:open(2) - read,write,trunc:fd,fr,fw
 152  153  83:AUE_OPEN_RWTC:open(2) - read,write,creat,trunc:fc,fd,fw,fr
 153  154  84:AUE_MSGCTL:msgctl(2) - illegal command:ip
 154  155  85:AUE_MSGCTL_RMID:msgctl(2) - IPC_RMID command:ip
 155  156  86:AUE_MSGCTL_SET:msgctl(2) - IPC_SET command:ip
 156  157  87:AUE_MSGCTL_STAT:msgctl(2) - IPC_STAT command:ip
 157  158  88:AUE_MSGGET:msgget(2):ip
 158  159  89:AUE_MSGRCV:msgrcv(2):ip
 159  160  90:AUE_MSGSND:msgsnd(2):ip
 160  161  91:AUE_SHMCTL:shmctl(2) - illegal command:ip
 161  162  92:AUE_SHMCTL_RMID:shmctl(2) - IPC_RMID command:ip
 162  163  93:AUE_SHMCTL_SET:shmctl(2) - IPC_SET command:ip
 163  164  94:AUE_SHMCTL_STAT:shmctl(2) - IPC_STAT command:ip
 164  165  95:AUE_SHMGET:shmget(2):ip
 165  166  96:AUE_SHMAT:shmat(2):ip
 166  167  97:AUE_SHMDT:shmdt(2):ip
 167  168  98:AUE_SEMCTL:semctl(2) - illegal command:ip
 168  169  99:AUE_SEMCTL_RMID:semctl(2) - IPC_RMID command:ip
 169  170  100:AUE_SEMCTL_SET:semctl(2) - IPC_SET command:ip
 170  171  101:AUE_SEMCTL_STAT:semctl(2) - IPC_STAT command:ip
 171  172  102:AUE_SEMCTL_GETNCNT:semctl(2) - GETNCNT command:ip
 172  173  103:AUE_SEMCTL_GETPID:semctl(2) - GETPID command:ip
 173  174  104:AUE_SEMCTL_GETVAL:semctl(2) - GETVAL command:ip
 174  175  105:AUE_SEMCTL_GETALL:semctl(2) - GETALL command:ip
 175  176  106:AUE_SEMCTL_GETZCNT:semctl(2) - GETZCNT command:ip
 176  177  107:AUE_SEMCTL_SETVAL:semctl(2) - SETVAL command:ip
 177  178  108:AUE_SEMCTL_SETALL:semctl(2) - SETALL command:ip
 178  179  109:AUE_SEMGET:semget(2):ip
 179  180  110:AUE_SEMOP:semop(2):ip
 180  181  111:AUE_CORE:process dumped core:fc
 181  182  112:AUE_CLOSE:close(2):cl
 182  183  113:AUE_SYSTEMBOOT:system booted:na
 183  184  114:AUE_ASYNC_DAEMON_EXIT:async_daemon(2) exited:no
 184  185  115:AUE_NFSSVC_EXIT:nfssvc(2) exited:no
 185  186  116:AUE_PFEXEC:execve(2) with pfexec enabled:ps,ex,ua,as
 186  187  117:AUE_OPEN_S:open(2) - search:fr
 187  188  118:AUE_OPEN_E:open(2) - exec:fr
 188  189  
 189  190  130:AUE_GETAUID:getauid(2):aa
 190  191  131:AUE_SETAUID:setauid(2):aa
 191  192  132:AUE_GETAUDIT:getaudit(2):aa
 192  193  133:AUE_SETAUDIT:setaudit(2):aa
 193  194  134:AUE_GETUSERAUDIT:getuseraudit(2):no
 194  195  135:AUE_SETUSERAUDIT:setuseraudit(2):no
 195  196  # AUE_AUDITSVC is a placeholder and will not be generated
 196  197  136:AUE_AUDITSVC:auditsvc(2) - place holder:no
 197  198  # AUE_AUDITON is a placeholder and will not be generated
 198  199  138:AUE_AUDITON:auditon(2) - place holder:no
 199  200  139:AUE_AUDITON_GTERMID:auditon(2) - GETTERMID command:no
 200  201  140:AUE_AUDITON_STERMID:auditon(2) - SETTERMID command:no
 201  202  141:AUE_AUDITON_GPOLICY:auditon(2) - get audit policy flags:aa
 202  203  142:AUE_AUDITON_SPOLICY:auditon(2) - set audit policy flags:as
 203  204  143:AUE_AUDITON_GESTATE:auditon(2) - GESTATE command:no
 204  205  144:AUE_AUDITON_SESTATE:auditon(2) - SESTATE command:no
 205  206  145:AUE_AUDITON_GQCTRL:auditon(2) - get queue control parameters:as
 206  207  146:AUE_AUDITON_SQCTRL:auditon(2) - set queue control parameters:as
 207  208  147:AUE_GETKERNSTATE:getkernstate(2):no
 208  209  148:AUE_SETKERNSTATE:setkernstate(2):no
 209  210  149:AUE_GETPORTAUDIT:getportaudit(2):no
 210  211  150:AUE_AUDITSTAT:auditstat(2):no
 211  212  153:AUE_ENTERPROM:enter prom:na
 212  213  154:AUE_EXITPROM:exit prom:na
 213  214  158:AUE_IOCTL:ioctl(2):io
 214  215  173:AUE_ONESIDE:one-sided session record:no
 215  216  174:AUE_MSGGETL:msggetl(2):no
 216  217  175:AUE_MSGRCVL:msgrcvl(2):no
 217  218  176:AUE_MSGSNDL:msgsndl(2):no
 218  219  177:AUE_SEMGETL:semgetl(2):no
 219  220  178:AUE_SHMGETL:shmgetl(2):no
 220  221  183:AUE_SOCKET:socket(2):nt
 221  222  184:AUE_SENDTO:sendto(2):nt
 222  223  # AUE_PIPE is a potentially very high-volume event, use with caution
 223  224  185:AUE_PIPE:pipe(2):no
 224  225  186:AUE_SOCKETPAIR:socketpair(2):no
 225  226  187:AUE_SEND:send(2):no
 226  227  188:AUE_SENDMSG:sendmsg(2):nt
 227  228  189:AUE_RECV:recv(2):no
 228  229  190:AUE_RECVMSG:recvmsg(2):nt
 229  230  191:AUE_RECVFROM:recvfrom(2):nt
 230  231  # AUE_READ is a potentially very high-volume event, use with caution
 231  232  192:AUE_READ:read(2):no
 232  233  193:AUE_GETDENTS:getdents(2):no
 233  234  194:AUE_LSEEK:lseek(2):no
 234  235  # AUE_WRITE is a potentially very high-volume event, use with caution
 235  236  195:AUE_WRITE:write(2):no
 236  237  196:AUE_WRITEV:writev(2):no
 237  238  197:AUE_NFS:nfs server:no
 238  239  198:AUE_READV:readv(2):no
 239  240  199:AUE_OSTAT:old stat(2):no
 240  241  200:AUE_SETUID:setuid(2):pm
 241  242  201:AUE_STIME:old stime(2):as
 242  243  202:AUE_UTIME:old utime(2):no
 243  244  203:AUE_NICE:old nice(2):pm
 244  245  204:AUE_OSETPGRP:old setpgrp(2):no
 245  246  205:AUE_SETGID:old setgid(2):pm
 246  247  206:AUE_READL:readl(2):no
 247  248  207:AUE_READVL:readvl(2):no
 248  249  208:AUE_FSTAT:fstat(2):no
 249  250  209:AUE_DUP2:dup2(2):no
 250  251  # AUE_MMAP is a potentially very high-volume event, use with caution
 251  252  210:AUE_MMAP:mmap(2):no
 252  253  # AUE_AUDIT is a potentially very high-volume event, use with caution
 253  254  211:AUE_AUDIT:audit(2):no
 254  255  212:AUE_PRIOCNTLSYS:priocntlsys(2):pm
 255  256  213:AUE_MUNMAP:munmap(2):cl
 256  257  214:AUE_SETEGID:setegid(2):pm
 257  258  215:AUE_SETEUID:seteuid(2):pm
 258  259  216:AUE_PUTMSG:putmsg(2):nt
 259  260  217:AUE_GETMSG:getmsg(2):nt
 260  261  218:AUE_PUTPMSG:putpmsg(2):nt
 261  262  219:AUE_GETPMSG:getpmsg(2):nt
 262  263  # AUE_AUDITSYS is a placeholder and will not be generated
 263  264  220:AUE_AUDITSYS:audit system calls place holder:no
 264  265  221:AUE_AUDITON_GETKMASK:auditon(2) - get kernel mask:aa
 265  266  222:AUE_AUDITON_SETKMASK:auditon(2) - set kernel mask:as
 266  267  223:AUE_AUDITON_GETCWD:auditon(2) - get current working directory:aa,as
 267  268  224:AUE_AUDITON_GETCAR:auditon(2) - get current active root:aa,as
 268  269  225:AUE_AUDITON_GETSTAT:auditon(2) - get audit statistics:as
 269  270  226:AUE_AUDITON_SETSTAT:auditon(2) - reset audit statistics:as
 270  271  227:AUE_AUDITON_SETUMASK:auditon(2) - set mask per audit uid:as
 271  272  228:AUE_AUDITON_SETSMASK:auditon(2) - set mask per session ID:as
 272  273  229:AUE_AUDITON_GETCOND:auditon(2) - get audit state:aa
 273  274  230:AUE_AUDITON_SETCOND:auditon(2) - set audit state:as
 274  275  231:AUE_AUDITON_GETCLASS:auditon(2) - get event class:aa,as
 275  276  232:AUE_AUDITON_SETCLASS:auditon(2) - set event class:as
 276  277  233:AUE_FUSERS:utssys(2) - fusers:fa
 277  278  234:AUE_STATVFS:statvfs(2):fa
 278  279  235:AUE_XSTAT:xstat(2):no
 279  280  236:AUE_LXSTAT:lxstat(2):no
 280  281  237:AUE_LCHOWN:lchown(2):fm
 281  282  238:AUE_MEMCNTL:memcntl(2):ot
 282  283  239:AUE_SYSINFO:sysinfo(2):as
 283  284  240:AUE_XMKNOD:xmknod(2):no
 284  285  241:AUE_FORK1:fork1(2):ps
 285  286  # AUE_MODCTL is a placeholder and will not be generated
 286  287  242:AUE_MODCTL:modctl(2) system call place holder:no
 287  288  243:AUE_MODLOAD:modctl(2) - load module:as
 288  289  244:AUE_MODUNLOAD:modctl(2) - unload module:as
 289  290  # AUE_MODCONFIG is a place holder and will not be generated
 290  291  245:AUE_MODCONFIG:modctl(2) - no longer generated:no
 291  292  246:AUE_MODADDMAJ:modctl(2) - bind module:as
 292  293  247:AUE_SOCKACCEPT:getmsg-accept:nt
 293  294  248:AUE_SOCKCONNECT:putmsg-connect:nt
 294  295  249:AUE_SOCKSEND:putmsg-send:nt
 295  296  250:AUE_SOCKRECEIVE:getmsg-receive:nt
 296  297  251:AUE_ACLSET:acl(2) - SETACL command:fm
 297  298  252:AUE_FACLSET:facl(2) - SETACL command:fm
 298  299  # AUE_DOORFS is a placeholder and will not be generated
 299  300  253:AUE_DOORFS:doorfs(2) - system call place holder:no
 300  301  254:AUE_DOORFS_DOOR_CALL:doorfs(2) - DOOR_CALL:ip
 301  302  255:AUE_DOORFS_DOOR_RETURN:doorfs(2) - DOOR_RETURN:ip
 302  303  256:AUE_DOORFS_DOOR_CREATE:doorfs(2) - DOOR_CREATE:ip
 303  304  257:AUE_DOORFS_DOOR_REVOKE:doorfs(2) - DOOR_REVOKE:ip
 304  305  258:AUE_DOORFS_DOOR_INFO:doorfs(2) - DOOR_INFO:ip
 305  306  259:AUE_DOORFS_DOOR_CRED:doorfs(2) - DOOR_CRED:ip
 306  307  260:AUE_DOORFS_DOOR_BIND:doorfs(2) - DOOR_BIND:ip
 307  308  261:AUE_DOORFS_DOOR_UNBIND:doorfs(2) - DOOR_UNBIND:ip
 308  309  262:AUE_P_ONLINE:p_online(2):as
 309  310  263:AUE_PROCESSOR_BIND:processor_bind(2):as
 310  311  264:AUE_INST_SYNC:inst_sync(2):as
 311  312  265:AUE_SOCKCONFIG:configure socket:nt
 312  313  266:AUE_SETAUDIT_ADDR:setaudit_addr(2):aa
 313  314  267:AUE_GETAUDIT_ADDR:getaudit_addr(2):aa
 314  315  268:AUE_UMOUNT2:umount2(2):as
 315  316  # AUE_FSAT and all AUE_OPENAT_* codes are obsolete and will not be generated
 316  317  269:AUE_FSAT:fsat(2) - place holder:no
 317  318  270:AUE_OPENAT_R:openat(2) - read:no
 318  319  271:AUE_OPENAT_RC:openat(2) - read,creat:no
 319  320  272:AUE_OPENAT_RT:openat(2) - read,trunc:no
 320  321  273:AUE_OPENAT_RTC:openat(2) - read,creat,trunc:no
 321  322  274:AUE_OPENAT_W:openat(2) - write:no
 322  323  275:AUE_OPENAT_WC:openat(2) - write,creat:no
 323  324  276:AUE_OPENAT_WT:openat(2) - write,trunc:no
 324  325  277:AUE_OPENAT_WTC:openat(2) - write,creat,trunc:no
 325  326  278:AUE_OPENAT_RW:openat(2) - read,write:no
 326  327  279:AUE_OPENAT_RWC:openat(2) - read,write,creat:no
 327  328  280:AUE_OPENAT_RWT:openat(2) - read,write,trunc:no
 328  329  281:AUE_OPENAT_RWTC:openat(2) - read,write,creat,trunc:no
 329  330  282:AUE_RENAMEAT:renameat(2):no
 330  331  283:AUE_FSTATAT:fstatat(2):no
 331  332  284:AUE_FCHOWNAT:fchownat(2):no
 332  333  285:AUE_FUTIMESAT:futimesat(2):no
 333  334  286:AUE_UNLINKAT:unlinkat(2):no
 334  335  287:AUE_CLOCK_SETTIME:clock_settime(3RT):as
 335  336  288:AUE_NTP_ADJTIME:ntp_adjtime(2):as
 336  337  289:AUE_SETPPRIV:setppriv(2):pm
 337  338  290:AUE_MODDEVPLCY:modctl(2) - configure device policy:as
 338  339  291:AUE_MODADDPRIV:modctl(2) - configure additional privilege:as
 339  340  292:AUE_CRYPTOADM:kernel cryptographic framework:as
 340  341  293:AUE_CONFIGKSSL:configure kernel SSL:as
 341  342  294:AUE_BRANDSYS:brandsys(2):ot
 342  343  295:AUE_PF_POLICY_ADDRULE:Add IPsec policy rule:as
 343  344  296:AUE_PF_POLICY_DELRULE:Delete IPsec policy rule:as
 344  345  297:AUE_PF_POLICY_CLONE:Clone IPsec policy:as
 345  346  298:AUE_PF_POLICY_FLIP:Flip IPsec policy:as
 346  347  299:AUE_PF_POLICY_FLUSH:Flush IPsec policy rules:as
 347  348  300:AUE_PF_POLICY_ALGS:Update IPsec algorithms:as
 348  349  # AUE_PORTFS is a placeholder and won't be generated.
 349  350  301:AUE_PORTFS:portfs(2) - file events source - place holder:no
 350  351  #
 351  352  302:AUE_LABELSYS_TNRH:tnrh(2) - config TN remote host cache:as
 352  353  303:AUE_LABELSYS_TNRHTP:tnrhtp(2) - config TN remote host template cache:as
 353  354  304:AUE_LABELSYS_TNMLP:tnmlp(2) - config TN multi-level port entry:as
  
    | 
      ↓ open down ↓ | 
    341 lines elided | 
    
      ↑ open up ↑ | 
  
 354  355  #
 355  356  305:AUE_PORTFS_ASSOCIATE:portfs(2) - file events source - PORT_ASSOCIATE:fa
 356  357  306:AUE_PORTFS_DISSOCIATE:portfs(2) - file events source - PORT_DISSOCIATE:fa
 357  358  #
 358  359  307:AUE_SETSID:setsid(2):pm
 359  360  308:AUE_SETPGID:setpgid(2):pm
 360  361  309:AUE_FACCESSAT:faccessat(2):no
 361  362  310:AUE_AUDITON_GETAMASK:auditon(2) - get default user preselection mask:aa
 362  363  311:AUE_AUDITON_SETAMASK:auditon(2) - set default user preselection mask:as
 363  364  312:AUE_PSECFLAGS:psecflags(2) - set process security flags:pm
      365 +313:AUE_SACL:SACL-based File Access Auditing:sa
 364  366  #
 365  367  # user level audit events
 366  368  #       2048 -  6143    Reserved
 367  369  #
 368  370  #       6000 -  7999    allocated for Solaris
 369  371  #
 370  372  6144:AUE_at_create:at-create atjob:ua
 371  373  6145:AUE_at_delete:at-delete atjob (at or atrm):ua
 372  374  6146:AUE_at_perm:at-permission:no
 373  375  6147:AUE_cron_invoke:cron-invoke:ua
 374  376  6148:AUE_crontab_create:crontab-crontab created:ua
 375  377  6149:AUE_crontab_delete:crontab-crontab deleted:ua
 376  378  6150:AUE_crontab_perm:crontab-persmisson:no
 377  379  6151:AUE_inetd_connect:inetd connect:na
 378  380  6152:AUE_login:login - local:lo
 379  381  6153:AUE_logout:logout:lo
 380  382  6154:AUE_telnet:login - telnet:lo
 381  383  6155:AUE_rlogin:login - rlogin:lo
 382  384  6156:AUE_mountd_mount:mount:na
 383  385  6157:AUE_mountd_umount:unmount:na
 384  386  6158:AUE_rshd:rsh access:lo
 385  387  6159:AUE_su:su:lo
 386  388  6160:AUE_halt_solaris:halt(1m):ss
 387  389  6161:AUE_reboot_solaris:reboot(1m):ss
 388  390  6162:AUE_rexecd:rexecd:lo
 389  391  6163:AUE_passwd:passwd:lo
 390  392  6164:AUE_rexd:rexd:lo
 391  393  6165:AUE_ftpd:ftp access:lo
 392  394  6166:AUE_init_solaris:init(1m):ss
 393  395  6167:AUE_uadmin_solaris:uadmin(1m):no
 394  396  6168:AUE_shutdown_solaris:shutdown(1b):ss
 395  397  6169:AUE_poweroff_solaris:poweroff(1m):ss
 396  398  6170:AUE_crontab_mod:crontab-modify:ua
 397  399  6171:AUE_ftpd_logout:ftp logout:lo
 398  400  6172:AUE_ssh:login - ssh:lo
 399  401  6173:AUE_role_login:role login:lo
 400  402  6180:AUE_prof_cmd:profile command:ua,as
 401  403  6181:AUE_filesystem_add:add filesystem:as
 402  404  6182:AUE_filesystem_delete:delete filesystem:as
 403  405  6183:AUE_filesystem_modify:modify filesystem:as
 404  406  6184:AUE_network_add:add network attributes:as
 405  407  6185:AUE_network_delete:delete network attributes:as
 406  408  6186:AUE_network_modify:modify network attributes:as
 407  409  6187:AUE_printer_add:add printer:as
 408  410  6188:AUE_printer_delete:delete printer:as
 409  411  6189:AUE_printer_modify:modify printer:as
 410  412  6190:AUE_scheduledjob_add:add scheduled job:ua
 411  413  6191:AUE_scheduledjob_delete:delete scheduled job:ua
 412  414  6192:AUE_scheduledjob_modify:modify scheduled job:ua
 413  415  6193:AUE_serialport_add:add serial port:as
 414  416  6194:AUE_serialport_delete:delete serial port:as
 415  417  6195:AUE_serialport_modify:modify serial port:as
 416  418  6196:AUE_usermgr_add:add user/user attributes:ua
 417  419  6197:AUE_usermgr_delete:delete user/user attributes:ua
 418  420  6198:AUE_usermgr_modify:modify user/user attributes:ua
 419  421  6199:AUE_uauth:authorization used:ua,as
 420  422  6200:AUE_allocate_succ:allocate-device success:ot
 421  423  6201:AUE_allocate_fail:allocate-device failure:ot
 422  424  6202:AUE_deallocate_succ:deallocate-device success:ot
 423  425  6203:AUE_deallocate_fail:deallocate-device failure:ot
 424  426  6205:AUE_listdevice_succ:allocate-list devices success:ot
 425  427  6206:AUE_listdevice_fail:allocate-list devices failure:ot
 426  428  6207:AUE_create_user:create user:no
 427  429  6208:AUE_modify_user:modify user:no
 428  430  6209:AUE_delete_user:delete user:no
 429  431  6210:AUE_disable_user:disable user:no
 430  432  6211:AUE_enable_user:enable user:no
 431  433  6212:AUE_newgrp_login:newgrp login:lo
 432  434  6213:AUE_admin_authenticate:admin login:lo
 433  435  6214:AUE_kadmind_auth:authenticated kadmind request:ua
 434  436  6215:AUE_kadmind_unauth:unauthenticated kadmind req:ua
 435  437  6216:AUE_krb5kdc_as_req:kdc authentication svc request:ap
 436  438  6217:AUE_krb5kdc_tgs_req:kdc tkt-grant svc request:ap
 437  439  6218:AUE_krb5kdc_tgs_req_2ndtktmm:kdc tgs 2ndtkt mismtch:ap
 438  440  6219:AUE_krb5kdc_tgs_req_alt_tgt:kdc tgs issue alt tgt:ap
 439  441  6220:AUE_smserverd:smserverd:ot
 440  442  6221:AUE_screenlock:screenlock - lock:lo
 441  443  6222:AUE_screenunlock:screenlock - unlock:lo
 442  444  6223:AUE_zone_state:zoneadmd:ss
 443  445  6224:AUE_inetd_copylimit:inetd copylimit:na
 444  446  6225:AUE_inetd_failrate:inetd failrate:na
 445  447  6226:AUE_inetd_ratelimit:inetd ratelimit:na
 446  448  6227:AUE_zlogin:login - zlogin:lo
 447  449  6228:AUE_su_logout:su logout:lo
 448  450  6229:AUE_role_logout:role logout:lo
 449  451  6230:AUE_attach:attach device:ot
 450  452  6231:AUE_detach:detach device:ot
 451  453  6232:AUE_remove:remove/eject device:ot
 452  454  6233:AUE_pool_import:import device into pool:ot
 453  455  6234:AUE_pool_export:export device from pool:ot
 454  456  6235:AUE_dladm_create_secobj:create network security object:as,cy
 455  457  6236:AUE_dladm_delete_secobj:delete network security object:as,cy
 456  458  6237:AUE_uadmin_shutdown:uadmin(1m) - shutdown:ss
 457  459  6238:AUE_uadmin_reboot:uadmin(1m) - reboot:ss
 458  460  6239:AUE_uadmin_dump:uadmin(1m) - dump:ss
 459  461  6240:AUE_uadmin_freeze:uadmin(1m) - freeze:ss
 460  462  6241:AUE_uadmin_remount:uadmin(1m) - remount:ss
 461  463  6242:AUE_uadmin_ftrace:uadmin(1m) - ftrace:ss
 462  464  6243:AUE_uadmin_swapctl:uadmin(1m) - swapctl:ss
 463  465  6244:AUE_smbd_session:smbd(1m) session setup:lo
 464  466  6245:AUE_smbd_logoff:smbd(1m) session logoff:lo
 465  467  6246:AUE_vscan_quarantine:vscand(1m) quarantine infected file:na
 466  468  6247:AUE_ndmp_connect:ndmp connect:na
 467  469  6248:AUE_ndmp_disconnect:ndmp disconnect:na
 468  470  6249:AUE_ndmp_backup:ndmp backup:na
 469  471  6250:AUE_ndmp_restore:ndmp restore:na
 470  472  6251:AUE_cpu_ondemand:set ondemand CPU freq governor:ss
 471  473  6252:AUE_cpu_performance:set max CPU freq governor:ss
 472  474  6253:AUE_cpu_threshold:set CPU freq threshold:ss
 473  475  6254:AUE_uadmin_thaw:uadmin(1m) - thaw after freeze:ss,na
 474  476  6255:AUE_uadmin_config:uadmin(1m) - config:ss
 475  477  
 476  478  #
 477  479  # SMF(5) svc.configd events (svcadm(1M) related)
 478  480  #
 479  481  6260:AUE_smf_enable:persistently enable service instance:ss
 480  482  6261:AUE_smf_tmp_enable:temporarily enable service instance:ss
 481  483  6262:AUE_smf_disable:persistently disable service instance:ss
 482  484  6263:AUE_smf_tmp_disable:temporarily disable service instance:ss
 483  485  6264:AUE_smf_restart:restart service instance:ss
 484  486  6265:AUE_smf_refresh:refresh service instance:ss
 485  487  6266:AUE_smf_clear:clear service instance state:ss
 486  488  6267:AUE_smf_degrade:set service instance degraded state:ss
 487  489  6268:AUE_smf_immediate_degrade:immediately set service instance degraded state:ss
 488  490  6269:AUE_smf_maintenance:set service instance persistent maintenance state:ss
 489  491  6270:AUE_smf_immediate_maintenance:immediately set service instance persistent maintenance state:ss
 490  492  6271:AUE_smf_immtmp_maintenance:immediately set service instance temporary maintenance state:ss
 491  493  6272:AUE_smf_tmp_maintenance:set service instance maintenance temporary state:ss
 492  494  6273:AUE_smf_milestone:set service management facility milestone:ss
 493  495  #
 494  496  # SMF(5) svc.configd miscellaneous events
 495  497  #
 496  498  6275:AUE_smf_read_prop:read restricted access property value:as
 497  499  #
 498  500  # SMF(5) svc.configd events (svccfg(1M) related)
 499  501  #
 500  502  6280:AUE_smf_create:create service instance object:as
 501  503  6281:AUE_smf_delete:delete service instance object:as
 502  504  6282:AUE_smf_create_pg:create persistent service property group:as
 503  505  6283:AUE_smf_create_npg:create non-persistent service property group:as
 504  506  6284:AUE_smf_delete_pg:delete persistent service property group:as
 505  507  6285:AUE_smf_delete_npg:delete non-persistent service property group:as
 506  508  6286:AUE_smf_create_snap:create repository snapshot:as
 507  509  6287:AUE_smf_delete_snap:delete repository snapshot:as
 508  510  6288:AUE_smf_attach_snap:attach repository snapshot:as
 509  511  6289:AUE_smf_annotation:annotate transaction:as,ss
 510  512  6290:AUE_smf_create_prop:create service instance property:as
 511  513  6291:AUE_smf_change_prop:change service instance property:as
 512  514  6292:AUE_smf_delete_prop:delete service instance property:as
 513  515  #
 514  516  # nwamd(1M) events
 515  517  #
 516  518  6300:AUE_nwam_enable:enable nwam profile object:ss
 517  519  6301:AUE_nwam_disable:disable nwam profile object:ss
 518  520  #
 519  521  # ilbd(1M) events
 520  522  #
 521  523  6310:AUE_ilb_create_healthcheck:create ILB health check:as
 522  524  6311:AUE_ilb_delete_healthcheck:delete ILB health check:as
 523  525  6312:AUE_ilb_create_rule:create ILB rule:as
 524  526  6313:AUE_ilb_delete_rule:delete ILB rule:as
 525  527  6314:AUE_ilb_disable_rule:disable ILB rule:as
 526  528  6315:AUE_ilb_enable_rule:enable ILB rule:as
 527  529  6316:AUE_ilb_add_server:add ILB server:as
 528  530  6317:AUE_ilb_disable_server:disable ILB server:as
 529  531  6318:AUE_ilb_enable_server:enable ILB server:as
 530  532  6319:AUE_ilb_remove_server:remove ILB server:as
 531  533  6320:AUE_ilb_create_servergroup:create ILB server group:as
 532  534  6321:AUE_ilb_delete_servergroup:delete ILB server group:as
 533  535  #
 534  536  # netcfgd(1M) events
 535  537  #
 536  538  6330:AUE_netcfg_update:create or modify configuration object:ss
 537  539  6331:AUE_netcfg_remove:remove configuration object from repository:ss
 538  540  #
 539  541  # TCSD(8) events
 540  542  #
 541  543  6400:AUE_tpm_takeownership:take ownership of TPM:as
 542  544  6401:AUE_tpm_clearowner:clear ownership of TPM:as
 543  545  6402:AUE_tpm_setoperatorauth:set TPM operator authorization:as
 544  546  6403:AUE_tpm_setownerinstall:set TPM ownership flag:as
 545  547  6404:AUE_tpm_selftestfull:test all TPM protected capabilities:as
 546  548  6405:AUE_tpm_certifyselftest:perform full TPM self-test:as
 547  549  6406:AUE_tpm_continueselftest:complete TPM self-test:as
 548  550  6407:AUE_tpm_ownersetdisable:change the status of TPM disable flag:as
 549  551  6408:AUE_tpm_ownerclear:perform the clear operation under TPM owner auth:as
 550  552  6409:AUE_tpm_disableownerclear:disable TPM_OwnerClear command permanently:as
 551  553  6410:AUE_tpm_forceclear:perform TPM clear operation under physical access:as
 552  554  6411:AUE_tpm_disableforceclear:disable ForceClear execution until next startup:as
 553  555  6412:AUE_tpm_physicaldisable:disable TPM physical presence:as
 554  556  6413:AUE_tpm_physicalenable:enable TPM physical presence:as
 555  557  6414:AUE_tpm_physicaldeactivate:set TPM deactivated flag:as
 556  558  6415:AUE_tpm_settempdeactivated:set volatile TPM deactivated flag to TRUE:as
 557  559  6416:AUE_tpm_settempdeactivated2:set volatile TPM deactivated flag TRUE with auth:as
 558  560  6417:AUE_tpm_physicalpresence:set the TPM physical presence flag:as
 559  561  6418:AUE_tpm_fieldupgrade:update TPM protected capabilities:as
 560  562  6419:AUE_tpm_resetlockvalue:reset TPM failed authorization attempt lock:as
 561  563  #
 562  564  # hotplugd(1m) events
 563  565  #
 564  566  6500:AUE_hotplug_state:change hotplug connection state:ss
 565  567  6501:AUE_hotplug_set:set hotplug bus private options:ss
 566  568  
 567  569  #
 568  570  # sudo event
 569  571  #
 570  572  6650:AUE_sudo:sudo(1m):lo,ua,as
 571  573  
 572  574  #
 573  575  # Trusted Extensions events:
 574  576  #
 575  577  9035:AUE_sl_change:Workspace label change:ap
 576  578  9036:AUE_file_relabel:relabel file:fm
 577  579  9037:AUE_file_copy:file copy:fm
 578  580  9038:AUE_file_move:file move:no
 579  581  9039:AUE_sel_mgr_xfer:selection manager transfer:fm
 580  582  9101:AUE_ClientConnect:client connection to x server:lo
 581  583  9102:AUE_ClientDisconnect:client disconn. from x server:lo
 582  584  9120:AUE_ChangeProperty:XChangeProperty(3X11):xc
 583  585  9121:AUE_DeleteProperty:XDeleteProperty(3X11):xc
 584  586  9137:AUE_GrabServer:XGrabServer(3X11):ot
 585  587  9138:AUE_UngrabServer:XUngrabServer(3X11):ot
 586  588  9146:AUE_SetFontPath:XSetFontPath(3X11):ot
 587  589  9173:AUE_InstallColormap:XInstallColormap(3X11):ot
 588  590  9174:AUE_UninstallColormap:XUninstallColormap(3X11):xp
 589  591  9193:AUE_SetScreenSaver:XSetScreenSaver(3X11):xp
 590  592  9194:AUE_ChangeHosts:XChangeHosts(3X11):ot
 591  593  9195:AUE_SetAccessControl:XSetAccessControl(3X11):xp
 592  594  9196:AUE_SetCloseDownMode:XSetCloseDownMode(3X11):xs
 593  595  9197:AUE_KillClient:XKillClient(3X11):xc
 594  596  9202:AUE_XExtensions:X server extensions:xp
 595  597  9103:AUE_CreateWindow:XCreateWindow(3X11):xc
 596  598  9104:AUE_ChangeWindowAttributes:XChangeWindowAttributes(3X11):xp
 597  599  9105:AUE_GetWindowAttributes:XGetWindowAttributes(3X11):xp
 598  600  9106:AUE_DestroyWindow:XDestroyWindow(3X11):xc
 599  601  9107:AUE_DestroySubwindows:XDestroySubwindows(3X11):xc
 600  602  9108:AUE_ChangeSaveSet:XChangeSaveSet(3X11):xp
 601  603  9109:AUE_ReparentWindow:XReparentWindow(3X11):xp
 602  604  9110:AUE_MapWindow:XMapWindow(3X11):xp
 603  605  9111:AUE_MapSubwindows:XMapSubwindows(3X11):xp
 604  606  9112:AUE_UnmapWindow:XUnmapWindow(3X11):xp
 605  607  9113:AUE_UnmapSubwindows:XUnmapSubwindows(3X11):xp
 606  608  9114:AUE_ConfigureWindow:XConfigureWindow(3X11):xp
 607  609  9115:AUE_CirculateWindow:XCirculateWindow(3X11):xp
 608  610  9116:AUE_GetGeometry:XGetGeometry(3X11):xp
 609  611  9117:AUE_QueryTree:XQueryTree(3X11):xp
 610  612  9118:AUE_InternAtom:XInternAtom(3X11):xs
 611  613  9119:AUE_GetAtomName:XGetAtomName(3X11):xs
 612  614  9122:AUE_GetProperty:XGetProperty(3X11):xp
 613  615  9123:AUE_ListProperties:XListProperties(3X11):xp
 614  616  9124:AUE_SetSelectionOwner:XSetSelectionOwner(3X11):xp
 615  617  9125:AUE_GetSelectionOwner:XGetSelectionOwner(3X11):xs
 616  618  9126:AUE_ConvertSelection:XConvertSelection(3X11):xs
 617  619  9127:AUE_SendEvent:XSendEvent(3X11):xs
 618  620  9128:AUE_GrabPointer:XGrabPointer(3X11):xs
 619  621  9129:AUE_UngrabPointer:XUngrabPointer(3X11):xs
 620  622  9130:AUE_GrabButton:XGrabButton(3X11):xp
 621  623  9131:AUE_UngrabButton:XUngrabButton(3X11):xs
 622  624  9132:AUE_ChangeActivePointerGrab:XChangeActivePointerGrab(3X11):xs
 623  625  9133:AUE_GrabKeyboard:XGrabKeyboard(3X11):xp
 624  626  9134:AUE_UngrabKeyboard:XUngrabKeyboard(3X11):xs
 625  627  9135:AUE_GrabKey:XGrabKey(3X11):xp
 626  628  9136:AUE_UngrabKey:XUngrabKey(3X11):xp
 627  629  9139:AUE_QueryPointer:XQueryPointer(3X11):xp
 628  630  9140:AUE_GetMotionEvents:XGetMotionEvents(3X11):xp
 629  631  9141:AUE_TranslateCoords:XTranslateCoords(3X11):xp
 630  632  9142:AUE_WarpPointer:XWarpPointer(3X11):xs
 631  633  9143:AUE_SetInputFocus:XSetInputFocus(3X11):xs
 632  634  9144:AUE_GetInputFocus:XGetInputFocus(3X11):xs
 633  635  9145:AUE_QueryKeymap:XQueryKeymap(3X11):xp
 634  636  9147:AUE_FreePixmap:XFreePixmap(3X11):xc
 635  637  9148:AUE_ChangeGC:XChangeGC(3X11):xp
 636  638  9149:AUE_CopyGC:XCopyGC(3X11):xp
 637  639  9150:AUE_SetDashes:XSetDashes(3X11):xp
 638  640  9151:AUE_SetClipRectangles:XSetClipRectangles(3X11):xp
 639  641  9152:AUE_FreeGC:XFreeGC(3X11):xc
 640  642  9153:AUE_ClearArea:XClearArea(3X11):xp
 641  643  9154:AUE_CopyArea:XCopyArea(3X11):xs
 642  644  9155:AUE_CopyPlane:XCopyPlane(3X11):xs
 643  645  9156:AUE_PolyPoint:XPolyPoint(3X11):xp
 644  646  9157:AUE_PolyLine:XPolyLine(3X11):xp
 645  647  9158:AUE_PolySegment:XPolySegment(3X11):xp
 646  648  9159:AUE_PolyRectangle:XPolyRectangle(3X11):xs
 647  649  9160:AUE_PolyArc:XPolyArc(3X11):xp
 648  650  9161:AUE_FillPolygon:XFillPolygon(3X11):xp
 649  651  9162:AUE_PolyFillRectangle:XPolyFillRectangle(3X11):xp
 650  652  9163:AUE_PolyFillArc:XPolyFillArc(3X11):xp
 651  653  9164:AUE_PutImage:XPutImage(3X11):xp
 652  654  9165:AUE_GetImage:XGetImage(3X11):xs
 653  655  9166:AUE_PolyText8:XPolyText8(3X11):xp
 654  656  9167:AUE_PolyText16:XPolyText16(3X11):xp
 655  657  9168:AUE_ImageText8:XImageText8(3X11):xp
 656  658  9169:AUE_ImageText16:XImageText16(3X11):xp
 657  659  9170:AUE_CreateColormap:XCreateColormap(3X11):xc
 658  660  9171:AUE_FreeColormap:XFreeColormap(3X11):xc
 659  661  9172:AUE_CopyColormapAndFree:XCopyColormapAndFree(3X11):xp
 660  662  9175:AUE_ListInstalledColormaps:XListInstalledColormaps(3X11):xs
 661  663  9176:AUE_AllocColor:XAllocColor(3X11):xc
 662  664  9177:AUE_AllocNamedColor:XAllocNamedColor(3X11):xc
 663  665  9178:AUE_AllocColorCells:XAllocColorCells(3X11):xc
 664  666  9179:AUE_AllocColorPlanes:XAllocColorPlanes(3X11):xc
 665  667  9180:AUE_FreeColors:XFreeColors(3X11):xc
 666  668  9181:AUE_StoreColors:XStoreColors(3X11):xp
 667  669  9182:AUE_StoreNamedColor:XStoreNamedColor(3X11):xp
 668  670  9183:AUE_QueryColors:XQueryColors(3X11):xp
 669  671  9184:AUE_LookupColor:XLookupColor(3X11):xp
 670  672  9185:AUE_CreateCursor:XCreateCursor(3X11):xc
 671  673  9186:AUE_CreateGlyphCursor:XCreateGlyphCursor(3X11):xc
 672  674  9187:AUE_FreeCursor:XFreeCursor(3X11):xc
 673  675  9188:AUE_RecolorCursor:XRecolorCursor(3X11):xp
 674  676  9189:AUE_ChangeKeyboardMapping:XChangeKeyboardMapping(3X11):xs
 675  677  9190:AUE_ChangeKeyboardControl:XChangeKeyboardControl(3X11):xs
 676  678  9191:AUE_Bell:XBell(3X11):xs
 677  679  9192:AUE_ChangePointerControl:XChangePointerControl(3X11):xs
 678  680  9198:AUE_RotateProperties:XRotateProperties(3X11):xp
 679  681  9199:AUE_ForceScreenSaver:XForceScreenSaver(3X11):xp
 680  682  9200:AUE_SetPointerMapping:XSetPointerMapping(3X11):xs
 681  683  9201:AUE_SetModifierMapping:XSetModifierMapping(3X11):xs
  
    | 
      ↓ open down ↓ | 
    308 lines elided | 
    
      ↑ open up ↑ | 
  
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX