]> git.ipfire.org Git - thirdparty/cups.git/blob - cups/ipp-private.h
Merge changes from CUPS 1.5svn-r9049 (private header support)
[thirdparty/cups.git] / cups / ipp-private.h
1 /*
2 * "$Id: ipp-private.h 7259 2008-01-28 22:26:04Z mike $"
3 *
4 * Private IPP definitions for CUPS.
5 *
6 * Copyright 2007-2010 by Apple Inc.
7 * Copyright 1997-2006 by Easy Software Products.
8 *
9 * These coded instructions, statements, and computer programs are the
10 * property of Apple Inc. and are protected by Federal copyright
11 * law. Distribution and use rights are outlined in the file "LICENSE.txt"
12 * which should have been included with this file. If this file is
13 * file is missing or damaged, see the license at "http://www.cups.org/".
14 *
15 * This file is subject to the Apple OS-Developed Software exception.
16 */
17
18 #ifndef _CUPS_IPP_PRIVATE_H_
19 # define _CUPS_IPP_PRIVATE_H_
20
21 /*
22 * Include necessary headers...
23 */
24
25 # include <cups/ipp.h>
26
27
28 /*
29 * C++ magic...
30 */
31
32 # ifdef __cplusplus
33 extern "C" {
34 # endif /* __cplusplus */
35
36
37 /*
38 * Constants...
39 */
40
41 # define IPP_BUF_SIZE (IPP_MAX_LENGTH + 2)
42 /* Size of buffer */
43
44
45 /*
46 * Structures...
47 */
48
49 typedef struct _ipp_buffer_s /**** Read/write buffer ****/
50 {
51 unsigned char d[IPP_BUF_SIZE];/* Data buffer */
52 struct _ipp_buffer_s *next; /* Next buffer in list */
53 int used; /* Is this buffer used? */
54 } _ipp_buffer_t;
55
56 typedef struct /**** Attribute mapping data ****/
57 {
58 int multivalue; /* Option has multiple values? */
59 const char *name; /* Option/attribute name */
60 ipp_tag_t value_tag; /* Value tag for this attribute */
61 ipp_tag_t group_tag; /* Group tag for this attribute */
62 } _ipp_option_t;
63
64
65 /*
66 * Prototypes for private functions...
67 */
68
69 extern ipp_attribute_t *_ippAddAttr(ipp_t *, int);
70 extern _ipp_option_t *_ippFindOption(const char *name);
71 extern void _ippFreeAttr(ipp_attribute_t *);
72
73
74 /*
75 * C++ magic...
76 */
77
78 # ifdef __cplusplus
79 }
80 # endif /* __cplusplus */
81 #endif /* !_CUPS_IPP_H_ */
82
83 /*
84 * End of "$Id: ipp-private.h 7259 2008-01-28 22:26:04Z mike $".
85 */