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 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 26 #ifndef _SYS_SYSEVENT_DEV_H 27 #define _SYS_SYSEVENT_DEV_H 28 29 #pragma ident "%Z%%M% %I% %E% SMI" 30 31 #include <sys/sysevent/eventdefs.h> 32 33 #ifdef __cplusplus 34 extern "C" { 35 #endif 36 37 /* 38 * Event schema for EC_DEV_ADD/ESC_DISK 39 * 40 * Event Class - EC_DEV_ADD 41 * Event Sub-Class - ESC_DISK 42 * 43 * Attribute Name - EV_VERSION 44 * Attribute Type - DATA_TYPE_INT32 45 * Attribute Value - event version number 46 * 47 * Attribute Name - DEV_NAME 48 * Attribute Type - DATA_TYPE_STRING 49 * Attribute Value - /dev name to the raw device. 50 * The name does not include the slice number component. 51 * 52 * Attribute Name - DEV_PHYS_PATH 53 * Attribute Type - DATA_TYPE_STRING 54 * Attribute Value - physical path of the device without the "/devices" 55 * prefix. 56 * 57 * Attribute Name - DEV_DRIVER_NAME 58 * Attribute Type - DATA_TYPE_STRING 59 * Attribute Value - driver name 60 * 61 * Attribute Name - DEV_INSTANCE 62 * Attribute Type - DATA_TYPE_INT32 63 * Attribute Value - driver instance number 64 * 65 * Attribute Name - DEV_PROP_PREFIX<devinfo_node_property> 66 * Attribute Type - data type of the devinfo_node_property 67 * Attribute Value - value of the devinfo_node_property 68 * 69 * 70 * Event schema for EC_DEV_ADD/ESC_NETWORK 71 * 72 * Event Class - EC_DEV_ADD 73 * Event Sub-Class - ESC_NETWORK 74 * 75 * Attribute Name - EV_VERSION 76 * Attribute Type - DATA_TYPE_INT32 77 * Attribute Value - event version number 78 * 79 * Attribute Name - DEV_NAME 80 * Attribute Type - DATA_TYPE_STRING 81 * Attribute Value - /dev name associated with the device if exists. 82 * /dev name associated with the driver for DLPI 83 * Style-2 only drivers. 84 * 85 * Attribute Name - DEV_PHYS_PATH 86 * Attribute Type - DATA_TYPE_STRING 87 * Attribute Value - physical path of the device without the "/devices" 88 * prefix. 89 * 90 * Attribute Name - DEV_DRIVER_NAME 91 * Attribute Type - DATA_TYPE_STRING 92 * Attribute Value - driver name 93 * 94 * Attribute Name - DEV_INSTANCE 95 * Attribute Type - DATA_TYPE_INT32 96 * Attribute Value - driver instance number 97 * 98 * Attribute Name - DEV_PROP_PREFIX<devinfo_node_property> 99 * Attribute Type - data type of the devinfo_node_property 100 * Attribute Value - value of the devinfo_node_property 101 * 102 * 103 * Event schema for EC_DEV_ADD/ESC_PRINTER 104 * 105 * Event Class - EC_DEV_ADD 106 * Event Sub-Class - ESC_PRINTER 107 * 108 * Attribute Name - EV_VERSION 109 * Attribute Type - DATA_TYPE_INT32 110 * Attribute Value - event version number 111 * 112 * Attribute Name - DEV_NAME 113 * Attribute Type - DATA_TYPE_STRING 114 * Attribute Value - /dev/printers name associated with the device 115 * if exists. 116 * /dev name associated with the device if it exists 117 * 118 * Attribute Name - DEV_PHYS_PATH 119 * Attribute Type - DATA_TYPE_STRING 120 * Attribute Value - physical path of the device without the "/devices" 121 * prefix. 122 * 123 * Attribute Name - DEV_DRIVER_NAME 124 * Attribute Type - DATA_TYPE_STRING 125 * Attribute Value - driver name 126 * 127 * Attribute Name - DEV_INSTANCE 128 * Attribute Type - DATA_TYPE_INT32 129 * Attribute Value - driver instance number 130 * 131 * Attribute Name - DEV_PROP_PREFIX<devinfo_node_property> 132 * Attribute Type - data type of the devinfo_node_property 133 * Attribute Value - value of the devinfo_node_property 134 * 135 * 136 * Event schema for EC_DEV_REMOVE/ESC_DISK 137 * 138 * Event Class - EC_DEV_REMOVE 139 * Event Sub-Class - ESC_DISK 140 * 141 * Attribute Name - EV_VERSION 142 * Attribute Type - DATA_TYPE_INT32 143 * Attribute Value - event version number 144 * 145 * Attribute Name - DEV_NAME 146 * Attribute Type - DATA_TYPE_STRING 147 * Attribute Value - /dev name to the raw device. 148 * The name does not include the slice number component. 149 * 150 * Attribute Name - DEV_PHYS_PATH 151 * Attribute Type - DATA_TYPE_STRING 152 * Attribute Value - physical path of the device without the "/devices" 153 * prefix. 154 * 155 * Attribute Name - DEV_DRIVER_NAME 156 * Attribute Type - DATA_TYPE_STRING 157 * Attribute Value - driver name 158 * 159 * Attribute Name - DEV_INSTANCE 160 * Attribute Type - DATA_TYPE_INT32 161 * Attribute Value - driver instance number 162 * 163 * 164 * Event schema for EC_DEV_REMOVE/ESC_NETWORK 165 * 166 * Event Class - EC_DEV_REMOVE 167 * Event Sub-Class - ESC_NETWORK 168 * 169 * Attribute Name - EV_VERSION 170 * Attribute Type - DATA_TYPE_INT32 171 * Attribute Value - event version number 172 * 173 * Attribute Name - DEV_NAME 174 * Attribute Type - DATA_TYPE_STRING 175 * Attribute Value - /dev name associated with the device if exists. 176 * /dev name associated with the driver for DLPI 177 * Style-2 only drivers. 178 * 179 * Attribute Name - DEV_PHYS_PATH 180 * Attribute Type - DATA_TYPE_STRING 181 * Attribute Value - physical path of the device without the "/devices" 182 * prefix. 183 * 184 * Attribute Name - DEV_DRIVER_NAME 185 * Attribute Type - DATA_TYPE_STRING 186 * Attribute Value - driver name 187 * 188 * Attribute Name - DEV_INSTANCE 189 * Attribute Type - DATA_TYPE_INT32 190 * Attribute Value - driver instance number 191 * 192 * 193 * Event schema for EC_DEV_REMOVE/ESC_PRINTER 194 * 195 * Event Class - EC_DEV_REMOVE 196 * Event Sub-Class - ESC_PRINTER 197 * 198 * Attribute Name - EV_VERSION 199 * Attribute Type - DATA_TYPE_INT32 200 * Attribute Value - event version number 201 * 202 * Attribute Name - DEV_NAME 203 * Attribute Type - DATA_TYPE_STRING 204 * Attribute Value - /dev/printers name associated with the device 205 * if exists. 206 * /dev name associated with the device if it exists 207 * 208 * Attribute Name - DEV_PHYS_PATH 209 * Attribute Type - DATA_TYPE_STRING 210 * Attribute Value - physical path of the device without the "/devices" 211 * prefix. 212 * 213 * Attribute Name - DEV_DRIVER_NAME 214 * Attribute Type - DATA_TYPE_STRING 215 * Attribute Value - driver name 216 * 217 * Attribute Name - DEV_INSTANCE 218 * Attribute Type - DATA_TYPE_INT32 219 * Attribute Value - driver instance number 220 * 221 * 222 * Event schema for EC_DEV_BRANCH/ESC_DEV_BRANCH_ADD or ESC_DEV_BRANCH_REMOVE 223 * 224 * Event Class - EC_DEV_BRANCH 225 * Event Sub-Class - ESC_DEV_BRANCH_ADD or ESC_DEV_BRANCH_REMOVE 226 * 227 * Attribute Name - EV_VERSION 228 * Attribute Type - DATA_TYPE_INT32 229 * Attribute Value - event version number 230 * 231 * Attribute Name - DEV_PHYS_PATH 232 * Attribute Type - DATA_TYPE_STRING 233 * Attribute Value - physical path to the root node of the device subtree 234 * without the "/devices" prefix. 235 */ 236 237 #define EV_VERSION "version" 238 #define DEV_PHYS_PATH "phys_path" 239 #define DEV_NAME "dev_name" 240 #define DEV_DRIVER_NAME "driver_name" 241 #define DEV_INSTANCE "instance" 242 #define DEV_PROP_PREFIX "prop-" 243 244 #define EV_V1 1 245 246 /* maximum number of devinfo node properties added to the event */ 247 #define MAX_PROP_COUNT 100 248 249 /* only properties with size less than PROP_LEN_LIMIT are added to the event */ 250 #define PROP_LEN_LIMIT 1024 251 252 #ifdef __cplusplus 253 } 254 #endif 255 256 #endif /* _SYS_SYSEVENT_DEV_H */ 257