1 /* 2 * This file and its contents are supplied under the terms of the 3 * Common Development and Distribution License ("CDDL"), version 1.0. 4 * You may only use this file in accordance with the terms of version 5 * 1.0 of the CDDL. 6 * 7 * A full copy of the text of the CDDL should have accompanied this 8 * source. A copy of the CDDL is also available via the Internet at 9 * http://www.illumos.org/license/CDDL. 10 */ 11 12 /* 13 * Copyright 2015 Joyent, Inc. 14 */ 15 16 #ifndef _SYS_OVERLAY_COMMON_H 17 #define _SYS_OVERLAY_COMMON_H 18 19 /* 20 * Common overlay definitions 21 */ 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 typedef enum overlay_target_mode { 28 OVERLAY_TARGET_NONE = 0x0, 29 OVERLAY_TARGET_POINT, 30 OVERLAY_TARGET_DYNAMIC 31 } overlay_target_mode_t; 32 33 typedef enum overlay_plugin_dest { 34 OVERLAY_PLUGIN_D_INVALID = 0x0, 35 OVERLAY_PLUGIN_D_ETHERNET = 0x1, 36 OVERLAY_PLUGIN_D_IP = 0x2, 37 OVERLAY_PLUGIN_D_PORT = 0x4, 38 OVERLAY_PLUGIN_D_MASK = 0x7 39 } overlay_plugin_dest_t; 40 41 typedef enum overlay_prop_type { 42 OVERLAY_PROP_T_INT = 0x1, /* signed int */ 43 OVERLAY_PROP_T_UINT, /* unsigned int */ 44 OVERLAY_PROP_T_IP, /* sinaddr6 */ 45 OVERLAY_PROP_T_STRING /* OVERLAY_PROP_SIZEMAX */ 46 } overlay_prop_type_t; 47 48 typedef enum overlay_prop_prot { 49 OVERLAY_PROP_PERM_REQ = 0x1, 50 OVERLAY_PROP_PERM_READ = 0x2, 51 OVERLAY_PROP_PERM_WRITE = 0x4, 52 OVERLAY_PROP_PERM_RW = 0x6, 53 OVERLAY_PROP_PERM_RRW = 0x7, 54 OVERLAY_PROP_PERM_MASK = 0x7 55 } overlay_prop_prot_t; 56 57 #define OVERLAY_PROP_NAMELEN 64 58 #define OVERLAY_PROP_SIZEMAX 256 59 #define OVERLAY_STATUS_BUFLEN 256 60 61 #ifdef __cplusplus 62 } 63 #endif 64 65 #endif /* _SYS_OVERLAY_COMMON_H */ 66