1 /*
2  * Copyright (c) 1997-2001 by The XFree86 Project, Inc.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Software"),
6  * to deal in the Software without restriction, including without limitation
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice shall be included in
12  * all copies or substantial portions of the Software.
13  *
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17  * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
18  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20  * OTHER DEALINGS IN THE SOFTWARE.
21  *
22  * Except as contained in this notice, the name of the copyright holder(s)
23  * and author(s) shall not be used in advertising or otherwise to promote
24  * the sale, use or other dealings in this Software without prior written
25  * authorization from the copyright holder(s) and author(s).
26  */
27 
28 /* Private procs.  Public procs are in xf86Parser.h and xf86Optrec.h */
29 
30 /* exported functions are/were used by the X Server */
31 
32 /* Device.c */
33 XF86ConfDevicePtr xf86parseDeviceSection(void);
34 void xf86printDeviceSection(FILE * cf, XF86ConfDevicePtr ptr);
35 void xf86freeDeviceList(XF86ConfDevicePtr ptr);
36 int xf86validateDevice(XF86ConfigPtr p);
37 
38 /* Files.c */
39 XF86ConfFilesPtr xf86parseFilesSection(void);
40 void xf86printFileSection(FILE * cf, XF86ConfFilesPtr ptr);
41 void xf86freeFiles(XF86ConfFilesPtr p);
42 
43 /* Flags.c */
44 XF86ConfFlagsPtr xf86parseFlagsSection(void);
45 void xf86printServerFlagsSection(FILE * f, XF86ConfFlagsPtr flags);
46 void xf86freeFlags(XF86ConfFlagsPtr flags);
47 
48 /* Input.c */
49 XF86ConfInputPtr xf86parseInputSection(void);
50 void xf86printInputSection(FILE * f, XF86ConfInputPtr ptr);
51 void xf86freeInputList(XF86ConfInputPtr ptr);
52 int xf86validateInput(XF86ConfigPtr p);
53 
54 /* InputClass.c */
55 XF86ConfInputClassPtr xf86parseInputClassSection(void);
56 void xf86printInputClassSection(FILE * f, XF86ConfInputClassPtr ptr);
57 
58 /* OutputClass.c */
59 XF86ConfOutputClassPtr xf86parseOutputClassSection(void);
60 void xf86printOutputClassSection(FILE * f, XF86ConfOutputClassPtr ptr);
61 
62 /* Layout.c */
63 XF86ConfLayoutPtr xf86parseLayoutSection(void);
64 void xf86printLayoutSection(FILE * cf, XF86ConfLayoutPtr ptr);
65 void xf86freeLayoutList(XF86ConfLayoutPtr ptr);
66 int xf86validateLayout(XF86ConfigPtr p);
67 
68 /* Module.c */
69 XF86ConfModulePtr xf86parseModuleSection(void);
70 void xf86printModuleSection(FILE * cf, XF86ConfModulePtr ptr);
71 extern _X_EXPORT XF86LoadPtr xf86addNewLoadDirective(XF86LoadPtr head,
72                                                      const char *name, int type,
73                                                      XF86OptionPtr opts);
74 void xf86freeModules(XF86ConfModulePtr ptr);
75 
76 /* Monitor.c */
77 XF86ConfMonitorPtr xf86parseMonitorSection(void);
78 XF86ConfModesPtr xf86parseModesSection(void);
79 void xf86printMonitorSection(FILE * cf, XF86ConfMonitorPtr ptr);
80 void xf86printModesSection(FILE * cf, XF86ConfModesPtr ptr);
81 extern _X_EXPORT void xf86freeMonitorList(XF86ConfMonitorPtr ptr);
82 void xf86freeModesList(XF86ConfModesPtr ptr);
83 int xf86validateMonitor(XF86ConfigPtr p, XF86ConfScreenPtr screen);
84 
85 /* Pointer.c */
86 XF86ConfInputPtr xf86parsePointerSection(void);
87 
88 /* Screen.c */
89 XF86ConfScreenPtr xf86parseScreenSection(void);
90 void xf86printScreenSection(FILE * cf, XF86ConfScreenPtr ptr);
91 extern _X_EXPORT void xf86freeScreenList(XF86ConfScreenPtr ptr);
92 int xf86validateScreen(XF86ConfigPtr p);
93 
94 /* Vendor.c */
95 XF86ConfVendorPtr xf86parseVendorSection(void);
96 void xf86freeVendorList(XF86ConfVendorPtr p);
97 void xf86printVendorSection(FILE * cf, XF86ConfVendorPtr ptr);
98 
99 /* Video.c */
100 XF86ConfVideoAdaptorPtr xf86parseVideoAdaptorSection(void);
101 void xf86printVideoAdaptorSection(FILE * cf, XF86ConfVideoAdaptorPtr ptr);
102 void xf86freeVideoAdaptorList(XF86ConfVideoAdaptorPtr ptr);
103 
104 /* scan.c */
105 int xf86getToken(const xf86ConfigSymTabRec * tab);
106 int xf86getSubToken(char **comment);
107 int xf86getSubTokenWithTab(char **comment, const xf86ConfigSymTabRec * tab);
108 void xf86unGetToken(int token);
109 char *xf86tokenString(void);
110 void
111 xf86parseError(const char *format, ...)
112 _X_ATTRIBUTE_PRINTF(1, 2);
113 void
114 xf86validationError(const char *format, ...)
115 _X_ATTRIBUTE_PRINTF(1, 2);
116 void
117 xf86setSection(const char *section);
118 int
119 xf86getStringToken(const xf86ConfigSymTabRec * tab);
120 
121 /* write.c */
122 /* DRI.c */
123 XF86ConfDRIPtr
124 xf86parseDRISection(void);
125 void
126 xf86printDRISection(FILE * cf, XF86ConfDRIPtr ptr);
127 void
128 xf86freeDRI(XF86ConfDRIPtr ptr);
129 
130 /* Extensions.c */
131 XF86ConfExtensionsPtr
132 xf86parseExtensionsSection(void);
133 void
134 xf86printExtensionsSection(FILE * cf, XF86ConfExtensionsPtr ptr);
135 void
136 xf86freeExtensions(XF86ConfExtensionsPtr ptr);
137 
138 #ifdef HAVE_XORG_CONFIG_H
139 #include <xorg-config.h>
140 #endif
141 
142 #ifndef HAVE_XORG_CONFIG_H
143 /* Externally provided functions */
144 void
145 ErrorF(const char *f, ...);
146 void
147 VErrorF(const char *f, va_list args);
148 #endif
149