1 /* 2 * Private IPP definitions for CUPS. 3 * 4 * Copyright 2007-2014 by Apple Inc. 5 * Copyright 1997-2006 by Easy Software Products. 6 * 7 * These coded instructions, statements, and computer programs are the 8 * property of Apple Inc. and are protected by Federal copyright 9 * law. Distribution and use rights are outlined in the file "LICENSE.txt" 10 * which should have been included with this file. If this file is 11 * missing or damaged, see the license at "http://www.cups.org/". 12 * 13 * This file is subject to the Apple OS-Developed Software exception. 14 */ 15 16 #ifndef _CUPS_IPP_PRIVATE_H_ 17 # define _CUPS_IPP_PRIVATE_H_ 18 19 /* 20 * Include necessary headers... 21 */ 22 23 # include <cups/ipp.h> 24 25 26 /* 27 * C++ magic... 28 */ 29 30 # ifdef __cplusplus 31 extern "C" { 32 # endif /* __cplusplus */ 33 34 35 /* 36 * Constants... 37 */ 38 39 # define IPP_BUF_SIZE (IPP_MAX_LENGTH + 2) 40 /* Size of buffer */ 41 42 43 /* 44 * Structures... 45 */ 46 47 typedef struct /**** Attribute mapping data ****/ 48 { 49 int multivalue; /* Option has multiple values? */ 50 const char *name; /* Option/attribute name */ 51 ipp_tag_t value_tag; /* Value tag for this attribute */ 52 ipp_tag_t group_tag; /* Group tag for this attribute */ 53 ipp_tag_t alt_group_tag; /* Alternate group tag for this 54 * attribute */ 55 const ipp_op_t *operations; /* Allowed operations for this attr */ 56 } _ipp_option_t; 57 58 59 /* 60 * Prototypes for private functions... 61 */ 62 63 #ifdef DEBUG 64 extern const char *_ippCheckOptions(void); 65 #endif /* DEBUG */ 66 extern _ipp_option_t *_ippFindOption(const char *name); 67 68 /* 69 * C++ magic... 70 */ 71 72 # ifdef __cplusplus 73 } 74 # endif /* __cplusplus */ 75 #endif /* !_CUPS_IPP_H_ */ 76