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, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22 /* 23 * Copyright 2002 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27 #ifndef _IPP_IPPCTL_H 28 #define _IPP_IPPCTL_H 29 30 /* 31 * Header file for the IPP Policy Framework Configuration Driver 32 * 33 * WARNING: Everything in this file is private, belonging to the IPP 34 * subsystem. The interfaces and declarations made here are subject 35 * to change. 36 */ 37 38 #ifdef __cplusplus 39 extern "C" { 40 #endif 41 42 /* 43 * nvpair keys 44 */ 45 46 #define IPPCTL_OP "ippctl.op" 47 #define IPPCTL_MODNAME "ippctl.modname" 48 #define IPPCTL_MODNAME_ARRAY "ippctl.modname_array" 49 #define IPPCTL_ANAME "ippctl.aname" 50 #define IPPCTL_ANAME_ARRAY "ippctl.aname_array" 51 #define IPPCTL_FLAGS "ippctl.flags" 52 #define IPPCTL_RC "ippctl.rc" 53 54 /* 55 * ioctl values 56 */ 57 58 #define IPPCTL_BASE ('I' << 24 | 'P' << 16 | 'P' << 8) 59 60 #define IPPCTL_CMD (IPPCTL_BASE | 0x01) 61 #define IPPCTL_DATA (IPPCTL_BASE | 0x02) 62 63 /* 64 * op values 65 */ 66 67 #define IPPCTL_OP_ACTION_CREATE 0x00 68 #define IPPCTL_OP_ACTION_MODIFY 0x01 69 #define IPPCTL_OP_ACTION_DESTROY 0x02 70 #define IPPCTL_OP_ACTION_INFO 0x03 71 #define IPPCTL_OP_ACTION_MOD 0x04 72 #define IPPCTL_OP_LIST_MODS 0x05 73 #define IPPCTL_OP_MOD_LIST_ACTIONS 0x06 74 75 /* 76 * ioctl structure 77 */ 78 79 typedef struct ippctl_ioctl { 80 caddr_t ii_buf; 81 size_t ii_buflen; 82 } ippctl_ioctl_t; 83 84 #ifdef _SYSCALL32 85 typedef struct ippctl_ioctl32 { 86 caddr32_t ii32_buf; 87 size32_t ii32_buflen; 88 } ippctl_ioctl32_t; 89 #endif /* _SYSCALL32 */ 90 91 #ifdef __cplusplus 92 } 93 #endif 94 95 #endif /* _IPP_IPPCTL_H */ 96