]> git.ipfire.org Git - thirdparty/cups.git/blob - cups/ipp-private.h
License change: Apache License, Version 2.0.
[thirdparty/cups.git] / cups / ipp-private.h
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 * Licensed under Apache License v2.0. See the file "LICENSE" for more information.
8 */
9
10 #ifndef _CUPS_IPP_PRIVATE_H_
11 # define _CUPS_IPP_PRIVATE_H_
12
13 /*
14 * Include necessary headers...
15 */
16
17 # include <cups/ipp.h>
18
19
20 /*
21 * C++ magic...
22 */
23
24 # ifdef __cplusplus
25 extern "C" {
26 # endif /* __cplusplus */
27
28
29 /*
30 * Constants...
31 */
32
33 # define IPP_BUF_SIZE (IPP_MAX_LENGTH + 2)
34 /* Size of buffer */
35
36
37 /*
38 * Structures...
39 */
40
41 typedef struct /**** Attribute mapping data ****/
42 {
43 int multivalue; /* Option has multiple values? */
44 const char *name; /* Option/attribute name */
45 ipp_tag_t value_tag; /* Value tag for this attribute */
46 ipp_tag_t group_tag; /* Group tag for this attribute */
47 ipp_tag_t alt_group_tag; /* Alternate group tag for this
48 * attribute */
49 const ipp_op_t *operations; /* Allowed operations for this attr */
50 } _ipp_option_t;
51
52
53 /*
54 * Prototypes for private functions...
55 */
56
57 #ifdef DEBUG
58 extern const char *_ippCheckOptions(void);
59 #endif /* DEBUG */
60 extern _ipp_option_t *_ippFindOption(const char *name);
61
62 /*
63 * C++ magic...
64 */
65
66 # ifdef __cplusplus
67 }
68 # endif /* __cplusplus */
69 #endif /* !_CUPS_IPP_H_ */