@helm2/poc_jenki_rce 0.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of @helm2/poc_jenki_rce might be problematic. Click here for more details.

Files changed (160) hide show
  1. package/LICENSE +19 -0
  2. package/Makefile +18 -0
  3. package/README.md +52 -0
  4. package/binding.gyp +81 -0
  5. package/index.d.ts +273 -0
  6. package/index.js +45 -0
  7. package/lib/bindings.js +1 -0
  8. package/lib/document.js +118 -0
  9. package/lib/element.js +82 -0
  10. package/lib/sax_parser.js +38 -0
  11. package/package.json +70 -0
  12. package/src/html_document.cc +7 -0
  13. package/src/html_document.h +18 -0
  14. package/src/libxmljs.cc +252 -0
  15. package/src/libxmljs.h +53 -0
  16. package/src/xml_attribute.cc +173 -0
  17. package/src/xml_attribute.h +40 -0
  18. package/src/xml_comment.cc +117 -0
  19. package/src/xml_comment.h +30 -0
  20. package/src/xml_document.cc +810 -0
  21. package/src/xml_document.h +67 -0
  22. package/src/xml_element.cc +565 -0
  23. package/src/xml_element.h +61 -0
  24. package/src/xml_namespace.cc +158 -0
  25. package/src/xml_namespace.h +39 -0
  26. package/src/xml_node.cc +761 -0
  27. package/src/xml_node.h +73 -0
  28. package/src/xml_pi.cc +161 -0
  29. package/src/xml_pi.h +34 -0
  30. package/src/xml_sax_parser.cc +424 -0
  31. package/src/xml_sax_parser.h +73 -0
  32. package/src/xml_syntax_error.cc +66 -0
  33. package/src/xml_syntax_error.h +25 -0
  34. package/src/xml_text.cc +320 -0
  35. package/src/xml_text.h +48 -0
  36. package/src/xml_textwriter.cc +315 -0
  37. package/src/xml_textwriter.h +62 -0
  38. package/src/xml_xpath_context.cc +70 -0
  39. package/src/xml_xpath_context.h +23 -0
  40. package/vendor/libxml/Copyright +23 -0
  41. package/vendor/libxml/DOCBparser.c +305 -0
  42. package/vendor/libxml/HTMLparser.c +7287 -0
  43. package/vendor/libxml/HTMLtree.c +1200 -0
  44. package/vendor/libxml/Makefile +2983 -0
  45. package/vendor/libxml/SAX.c +180 -0
  46. package/vendor/libxml/SAX2.c +3036 -0
  47. package/vendor/libxml/buf.c +1351 -0
  48. package/vendor/libxml/buf.h +72 -0
  49. package/vendor/libxml/c14n.c +2234 -0
  50. package/vendor/libxml/catalog.c +3828 -0
  51. package/vendor/libxml/chvalid.c +336 -0
  52. package/vendor/libxml/config.h +294 -0
  53. package/vendor/libxml/config.h.gch +0 -0
  54. package/vendor/libxml/debugXML.c +3423 -0
  55. package/vendor/libxml/dict.c +1298 -0
  56. package/vendor/libxml/elfgcchack.h +17818 -0
  57. package/vendor/libxml/enc.h +32 -0
  58. package/vendor/libxml/encoding.c +3975 -0
  59. package/vendor/libxml/entities.c +1163 -0
  60. package/vendor/libxml/error.c +998 -0
  61. package/vendor/libxml/globals.c +1126 -0
  62. package/vendor/libxml/hash.c +1146 -0
  63. package/vendor/libxml/include/libxml/DOCBparser.h +96 -0
  64. package/vendor/libxml/include/libxml/HTMLparser.h +306 -0
  65. package/vendor/libxml/include/libxml/HTMLtree.h +147 -0
  66. package/vendor/libxml/include/libxml/Makefile +725 -0
  67. package/vendor/libxml/include/libxml/Makefile.am +54 -0
  68. package/vendor/libxml/include/libxml/Makefile.in +725 -0
  69. package/vendor/libxml/include/libxml/SAX.h +173 -0
  70. package/vendor/libxml/include/libxml/SAX2.h +178 -0
  71. package/vendor/libxml/include/libxml/c14n.h +128 -0
  72. package/vendor/libxml/include/libxml/catalog.h +182 -0
  73. package/vendor/libxml/include/libxml/chvalid.h +230 -0
  74. package/vendor/libxml/include/libxml/debugXML.h +217 -0
  75. package/vendor/libxml/include/libxml/dict.h +79 -0
  76. package/vendor/libxml/include/libxml/encoding.h +245 -0
  77. package/vendor/libxml/include/libxml/entities.h +151 -0
  78. package/vendor/libxml/include/libxml/globals.h +508 -0
  79. package/vendor/libxml/include/libxml/hash.h +236 -0
  80. package/vendor/libxml/include/libxml/list.h +137 -0
  81. package/vendor/libxml/include/libxml/nanoftp.h +163 -0
  82. package/vendor/libxml/include/libxml/nanohttp.h +81 -0
  83. package/vendor/libxml/include/libxml/parser.h +1243 -0
  84. package/vendor/libxml/include/libxml/parserInternals.h +644 -0
  85. package/vendor/libxml/include/libxml/pattern.h +100 -0
  86. package/vendor/libxml/include/libxml/relaxng.h +217 -0
  87. package/vendor/libxml/include/libxml/schemasInternals.h +958 -0
  88. package/vendor/libxml/include/libxml/schematron.h +142 -0
  89. package/vendor/libxml/include/libxml/threads.h +89 -0
  90. package/vendor/libxml/include/libxml/tree.h +1311 -0
  91. package/vendor/libxml/include/libxml/uri.h +94 -0
  92. package/vendor/libxml/include/libxml/valid.h +458 -0
  93. package/vendor/libxml/include/libxml/xinclude.h +129 -0
  94. package/vendor/libxml/include/libxml/xlink.h +189 -0
  95. package/vendor/libxml/include/libxml/xmlIO.h +368 -0
  96. package/vendor/libxml/include/libxml/xmlautomata.h +146 -0
  97. package/vendor/libxml/include/libxml/xmlerror.h +945 -0
  98. package/vendor/libxml/include/libxml/xmlexports.h +77 -0
  99. package/vendor/libxml/include/libxml/xmlmemory.h +224 -0
  100. package/vendor/libxml/include/libxml/xmlmodule.h +57 -0
  101. package/vendor/libxml/include/libxml/xmlreader.h +428 -0
  102. package/vendor/libxml/include/libxml/xmlregexp.h +222 -0
  103. package/vendor/libxml/include/libxml/xmlsave.h +88 -0
  104. package/vendor/libxml/include/libxml/xmlschemas.h +246 -0
  105. package/vendor/libxml/include/libxml/xmlschemastypes.h +151 -0
  106. package/vendor/libxml/include/libxml/xmlstring.h +140 -0
  107. package/vendor/libxml/include/libxml/xmlunicode.h +202 -0
  108. package/vendor/libxml/include/libxml/xmlversion.h +484 -0
  109. package/vendor/libxml/include/libxml/xmlwin32version.h +239 -0
  110. package/vendor/libxml/include/libxml/xmlwriter.h +488 -0
  111. package/vendor/libxml/include/libxml/xpath.h +564 -0
  112. package/vendor/libxml/include/libxml/xpathInternals.h +632 -0
  113. package/vendor/libxml/include/libxml/xpointer.h +114 -0
  114. package/vendor/libxml/include/win32config.h +122 -0
  115. package/vendor/libxml/include/wsockcompat.h +54 -0
  116. package/vendor/libxml/legacy.c +1343 -0
  117. package/vendor/libxml/libxml.h +134 -0
  118. package/vendor/libxml/list.c +779 -0
  119. package/vendor/libxml/nanoftp.c +2118 -0
  120. package/vendor/libxml/nanohttp.c +1899 -0
  121. package/vendor/libxml/parser.c +15553 -0
  122. package/vendor/libxml/parserInternals.c +2164 -0
  123. package/vendor/libxml/pattern.c +2621 -0
  124. package/vendor/libxml/relaxng.c +11101 -0
  125. package/vendor/libxml/rngparser.c +1595 -0
  126. package/vendor/libxml/runsuite.c +1157 -0
  127. package/vendor/libxml/save.h +36 -0
  128. package/vendor/libxml/schematron.c +1787 -0
  129. package/vendor/libxml/threads.c +1049 -0
  130. package/vendor/libxml/timsort.h +601 -0
  131. package/vendor/libxml/tree.c +10183 -0
  132. package/vendor/libxml/trio.c +6895 -0
  133. package/vendor/libxml/trio.h +230 -0
  134. package/vendor/libxml/triodef.h +228 -0
  135. package/vendor/libxml/trionan.c +914 -0
  136. package/vendor/libxml/trionan.h +84 -0
  137. package/vendor/libxml/triop.h +150 -0
  138. package/vendor/libxml/triostr.c +2112 -0
  139. package/vendor/libxml/triostr.h +144 -0
  140. package/vendor/libxml/uri.c +2561 -0
  141. package/vendor/libxml/valid.c +7138 -0
  142. package/vendor/libxml/xinclude.c +2657 -0
  143. package/vendor/libxml/xlink.c +183 -0
  144. package/vendor/libxml/xmlIO.c +4135 -0
  145. package/vendor/libxml/xmlcatalog.c +624 -0
  146. package/vendor/libxml/xmllint.c +3796 -0
  147. package/vendor/libxml/xmlmemory.c +1163 -0
  148. package/vendor/libxml/xmlmodule.c +468 -0
  149. package/vendor/libxml/xmlreader.c +6033 -0
  150. package/vendor/libxml/xmlregexp.c +8271 -0
  151. package/vendor/libxml/xmlsave.c +2735 -0
  152. package/vendor/libxml/xmlschemas.c +29173 -0
  153. package/vendor/libxml/xmlschemastypes.c +6276 -0
  154. package/vendor/libxml/xmlstring.c +1050 -0
  155. package/vendor/libxml/xmlunicode.c +3179 -0
  156. package/vendor/libxml/xmlwriter.c +4738 -0
  157. package/vendor/libxml/xpath.c +14734 -0
  158. package/vendor/libxml/xpointer.c +2969 -0
  159. package/vendor/libxml/xzlib.c +815 -0
  160. package/vendor/libxml/xzlib.h +19 -0
@@ -0,0 +1,230 @@
1
+ /*************************************************************************
2
+ *
3
+ * $Id$
4
+ *
5
+ * Copyright (C) 1998 Bjorn Reese and Daniel Stenberg.
6
+ *
7
+ * Permission to use, copy, modify, and distribute this software for any
8
+ * purpose with or without fee is hereby granted, provided that the above
9
+ * copyright notice and this permission notice appear in all copies.
10
+ *
11
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
12
+ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
13
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND
14
+ * CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER.
15
+ *
16
+ *************************************************************************
17
+ *
18
+ * http://ctrio.sourceforge.net/
19
+ *
20
+ ************************************************************************/
21
+
22
+ #ifndef TRIO_TRIO_H
23
+ #define TRIO_TRIO_H
24
+
25
+ #if !defined(WITHOUT_TRIO)
26
+
27
+ /*
28
+ * Use autoconf defines if present. Packages using trio must define
29
+ * HAVE_CONFIG_H as a compiler option themselves.
30
+ */
31
+ #if defined(TRIO_HAVE_CONFIG_H)
32
+ # include "config.h"
33
+ #endif
34
+
35
+ #include "triodef.h"
36
+
37
+ #include <stdio.h>
38
+ #include <stdlib.h>
39
+ #if defined(TRIO_COMPILER_ANCIENT)
40
+ # include <varargs.h>
41
+ #else
42
+ # include <stdarg.h>
43
+ #endif
44
+
45
+ #ifdef __cplusplus
46
+ extern "C" {
47
+ #endif
48
+
49
+ /*
50
+ * Error codes.
51
+ *
52
+ * Remember to add a textual description to trio_strerror.
53
+ */
54
+ enum {
55
+ TRIO_EOF = 1,
56
+ TRIO_EINVAL = 2,
57
+ TRIO_ETOOMANY = 3,
58
+ TRIO_EDBLREF = 4,
59
+ TRIO_EGAP = 5,
60
+ TRIO_ENOMEM = 6,
61
+ TRIO_ERANGE = 7,
62
+ TRIO_ERRNO = 8,
63
+ TRIO_ECUSTOM = 9
64
+ };
65
+
66
+ /* Error macros */
67
+ #define TRIO_ERROR_CODE(x) ((-(x)) & 0x00FF)
68
+ #define TRIO_ERROR_POSITION(x) ((-(x)) >> 8)
69
+ #define TRIO_ERROR_NAME(x) trio_strerror(x)
70
+
71
+ typedef int (*trio_outstream_t) TRIO_PROTO((trio_pointer_t, int));
72
+ typedef int (*trio_instream_t) TRIO_PROTO((trio_pointer_t));
73
+
74
+ TRIO_CONST char *trio_strerror TRIO_PROTO((int));
75
+
76
+ /*************************************************************************
77
+ * Print Functions
78
+ */
79
+
80
+ int trio_printf TRIO_PROTO((TRIO_CONST char *format, ...));
81
+ int trio_vprintf TRIO_PROTO((TRIO_CONST char *format, va_list args));
82
+ int trio_printfv TRIO_PROTO((TRIO_CONST char *format, void **args));
83
+
84
+ int trio_fprintf TRIO_PROTO((FILE *file, TRIO_CONST char *format, ...));
85
+ int trio_vfprintf TRIO_PROTO((FILE *file, TRIO_CONST char *format, va_list args));
86
+ int trio_fprintfv TRIO_PROTO((FILE *file, TRIO_CONST char *format, void **args));
87
+
88
+ int trio_dprintf TRIO_PROTO((int fd, TRIO_CONST char *format, ...));
89
+ int trio_vdprintf TRIO_PROTO((int fd, TRIO_CONST char *format, va_list args));
90
+ int trio_dprintfv TRIO_PROTO((int fd, TRIO_CONST char *format, void **args));
91
+
92
+ int trio_cprintf TRIO_PROTO((trio_outstream_t stream, trio_pointer_t closure,
93
+ TRIO_CONST char *format, ...));
94
+ int trio_vcprintf TRIO_PROTO((trio_outstream_t stream, trio_pointer_t closure,
95
+ TRIO_CONST char *format, va_list args));
96
+ int trio_cprintfv TRIO_PROTO((trio_outstream_t stream, trio_pointer_t closure,
97
+ TRIO_CONST char *format, void **args));
98
+
99
+ int trio_sprintf TRIO_PROTO((char *buffer, TRIO_CONST char *format, ...));
100
+ int trio_vsprintf TRIO_PROTO((char *buffer, TRIO_CONST char *format, va_list args));
101
+ int trio_sprintfv TRIO_PROTO((char *buffer, TRIO_CONST char *format, void **args));
102
+
103
+ int trio_snprintf TRIO_PROTO((char *buffer, size_t max, TRIO_CONST char *format, ...));
104
+ int trio_vsnprintf TRIO_PROTO((char *buffer, size_t bufferSize, TRIO_CONST char *format,
105
+ va_list args));
106
+ int trio_snprintfv TRIO_PROTO((char *buffer, size_t bufferSize, TRIO_CONST char *format,
107
+ void **args));
108
+
109
+ int trio_snprintfcat TRIO_PROTO((char *buffer, size_t max, TRIO_CONST char *format, ...));
110
+ int trio_vsnprintfcat TRIO_PROTO((char *buffer, size_t bufferSize, TRIO_CONST char *format,
111
+ va_list args));
112
+
113
+ char *trio_aprintf TRIO_PROTO((TRIO_CONST char *format, ...));
114
+ char *trio_vaprintf TRIO_PROTO((TRIO_CONST char *format, va_list args));
115
+
116
+ int trio_asprintf TRIO_PROTO((char **ret, TRIO_CONST char *format, ...));
117
+ int trio_vasprintf TRIO_PROTO((char **ret, TRIO_CONST char *format, va_list args));
118
+
119
+ /*************************************************************************
120
+ * Scan Functions
121
+ */
122
+ int trio_scanf TRIO_PROTO((TRIO_CONST char *format, ...));
123
+ int trio_vscanf TRIO_PROTO((TRIO_CONST char *format, va_list args));
124
+ int trio_scanfv TRIO_PROTO((TRIO_CONST char *format, void **args));
125
+
126
+ int trio_fscanf TRIO_PROTO((FILE *file, TRIO_CONST char *format, ...));
127
+ int trio_vfscanf TRIO_PROTO((FILE *file, TRIO_CONST char *format, va_list args));
128
+ int trio_fscanfv TRIO_PROTO((FILE *file, TRIO_CONST char *format, void **args));
129
+
130
+ int trio_dscanf TRIO_PROTO((int fd, TRIO_CONST char *format, ...));
131
+ int trio_vdscanf TRIO_PROTO((int fd, TRIO_CONST char *format, va_list args));
132
+ int trio_dscanfv TRIO_PROTO((int fd, TRIO_CONST char *format, void **args));
133
+
134
+ int trio_cscanf TRIO_PROTO((trio_instream_t stream, trio_pointer_t closure,
135
+ TRIO_CONST char *format, ...));
136
+ int trio_vcscanf TRIO_PROTO((trio_instream_t stream, trio_pointer_t closure,
137
+ TRIO_CONST char *format, va_list args));
138
+ int trio_cscanfv TRIO_PROTO((trio_instream_t stream, trio_pointer_t closure,
139
+ TRIO_CONST char *format, void **args));
140
+
141
+ int trio_sscanf TRIO_PROTO((TRIO_CONST char *buffer, TRIO_CONST char *format, ...));
142
+ int trio_vsscanf TRIO_PROTO((TRIO_CONST char *buffer, TRIO_CONST char *format, va_list args));
143
+ int trio_sscanfv TRIO_PROTO((TRIO_CONST char *buffer, TRIO_CONST char *format, void **args));
144
+
145
+ /*************************************************************************
146
+ * Locale Functions
147
+ */
148
+ void trio_locale_set_decimal_point TRIO_PROTO((char *decimalPoint));
149
+ void trio_locale_set_thousand_separator TRIO_PROTO((char *thousandSeparator));
150
+ void trio_locale_set_grouping TRIO_PROTO((char *grouping));
151
+
152
+ /*************************************************************************
153
+ * Renaming
154
+ */
155
+ #ifdef TRIO_REPLACE_STDIO
156
+ /* Replace the <stdio.h> functions */
157
+ #ifndef HAVE_PRINTF
158
+ # undef printf
159
+ # define printf trio_printf
160
+ #endif
161
+ #ifndef HAVE_VPRINTF
162
+ # undef vprintf
163
+ # define vprintf trio_vprintf
164
+ #endif
165
+ #ifndef HAVE_FPRINTF
166
+ # undef fprintf
167
+ # define fprintf trio_fprintf
168
+ #endif
169
+ #ifndef HAVE_VFPRINTF
170
+ # undef vfprintf
171
+ # define vfprintf trio_vfprintf
172
+ #endif
173
+ #ifndef HAVE_SPRINTF
174
+ # undef sprintf
175
+ # define sprintf trio_sprintf
176
+ #endif
177
+ #ifndef HAVE_VSPRINTF
178
+ # undef vsprintf
179
+ # define vsprintf trio_vsprintf
180
+ #endif
181
+ #ifndef HAVE_SNPRINTF
182
+ # undef snprintf
183
+ # define snprintf trio_snprintf
184
+ #endif
185
+ #ifndef HAVE_VSNPRINTF
186
+ # undef vsnprintf
187
+ # define vsnprintf trio_vsnprintf
188
+ #endif
189
+ #ifndef HAVE_SCANF
190
+ # undef scanf
191
+ # define scanf trio_scanf
192
+ #endif
193
+ #ifndef HAVE_VSCANF
194
+ # undef vscanf
195
+ # define vscanf trio_vscanf
196
+ #endif
197
+ #ifndef HAVE_FSCANF
198
+ # undef fscanf
199
+ # define fscanf trio_fscanf
200
+ #endif
201
+ #ifndef HAVE_VFSCANF
202
+ # undef vfscanf
203
+ # define vfscanf trio_vfscanf
204
+ #endif
205
+ #ifndef HAVE_SSCANF
206
+ # undef sscanf
207
+ # define sscanf trio_sscanf
208
+ #endif
209
+ #ifndef HAVE_VSSCANF
210
+ # undef vsscanf
211
+ # define vsscanf trio_vsscanf
212
+ #endif
213
+ /* These aren't stdio functions, but we make them look similar */
214
+ #define dprintf trio_dprintf
215
+ #define vdprintf trio_vdprintf
216
+ #define aprintf trio_aprintf
217
+ #define vaprintf trio_vaprintf
218
+ #define asprintf trio_asprintf
219
+ #define vasprintf trio_vasprintf
220
+ #define dscanf trio_dscanf
221
+ #define vdscanf trio_vdscanf
222
+ #endif
223
+
224
+ #ifdef __cplusplus
225
+ } /* extern "C" */
226
+ #endif
227
+
228
+ #endif /* WITHOUT_TRIO */
229
+
230
+ #endif /* TRIO_TRIO_H */
@@ -0,0 +1,228 @@
1
+ /*************************************************************************
2
+ *
3
+ * $Id$
4
+ *
5
+ * Copyright (C) 2001 Bjorn Reese <breese@users.sourceforge.net>
6
+ *
7
+ * Permission to use, copy, modify, and distribute this software for any
8
+ * purpose with or without fee is hereby granted, provided that the above
9
+ * copyright notice and this permission notice appear in all copies.
10
+ *
11
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
12
+ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
13
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND
14
+ * CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER.
15
+ *
16
+ ************************************************************************/
17
+
18
+ #ifndef TRIO_TRIODEF_H
19
+ #define TRIO_TRIODEF_H
20
+
21
+ /*************************************************************************
22
+ * Platform and compiler support detection
23
+ */
24
+ #if defined(__GNUC__)
25
+ # define TRIO_COMPILER_GCC
26
+ #elif defined(__SUNPRO_C)
27
+ # define TRIO_COMPILER_SUNPRO
28
+ #elif defined(__SUNPRO_CC)
29
+ # define TRIO_COMPILER_SUNPRO
30
+ # define __SUNPRO_C __SUNPRO_CC
31
+ #elif defined(__xlC__) || defined(__IBMC__) || defined(__IBMCPP__)
32
+ # define TRIO_COMPILER_XLC
33
+ #elif defined(_AIX) && !defined(__GNUC__)
34
+ # define TRIO_COMPILER_XLC /* Workaround for old xlc */
35
+ #elif defined(__DECC) || defined(__DECCXX)
36
+ # define TRIO_COMPILER_DECC
37
+ #elif defined(__osf__) && defined(__LANGUAGE_C__)
38
+ # define TRIO_COMPILER_DECC /* Workaround for old DEC C compilers */
39
+ #elif defined(_MSC_VER)
40
+ # define TRIO_COMPILER_MSVC
41
+ #elif defined(__BORLANDC__)
42
+ # define TRIO_COMPILER_BCB
43
+ #endif
44
+
45
+ #if defined(VMS) || defined(__VMS)
46
+ /*
47
+ * VMS is placed first to avoid identifying the platform as Unix
48
+ * based on the DECC compiler later on.
49
+ */
50
+ # define TRIO_PLATFORM_VMS
51
+ #elif defined(__OS400__)
52
+ # define TRIO_PLATFORM_OS400
53
+ #elif defined(unix) || defined(__unix) || defined(__unix__)
54
+ # define TRIO_PLATFORM_UNIX
55
+ #elif defined(TRIO_COMPILER_XLC) || defined(_AIX)
56
+ # define TRIO_PLATFORM_UNIX
57
+ #elif defined(TRIO_COMPILER_DECC) || defined(__osf___)
58
+ # define TRIO_PLATFORM_UNIX
59
+ #elif defined(__NetBSD__)
60
+ # define TRIO_PLATFORM_UNIX
61
+ #elif defined(__Lynx__)
62
+ # define TRIO_PLATFORM_UNIX
63
+ #elif defined(__QNX__)
64
+ # define TRIO_PLATFORM_UNIX
65
+ # define TRIO_PLATFORM_QNX
66
+ #elif defined(__CYGWIN__)
67
+ # define TRIO_PLATFORM_UNIX
68
+ #elif defined(AMIGA) && defined(TRIO_COMPILER_GCC)
69
+ # define TRIO_PLATFORM_UNIX
70
+ #elif defined(TRIO_COMPILER_MSVC) || defined(WIN32) || defined(_WIN32)
71
+ # define TRIO_PLATFORM_WIN32
72
+ #elif defined(mpeix) || defined(__mpexl)
73
+ # define TRIO_PLATFORM_MPEIX
74
+ #endif
75
+
76
+ #if defined(_AIX)
77
+ # define TRIO_PLATFORM_AIX
78
+ #elif defined(__hpux)
79
+ # define TRIO_PLATFORM_HPUX
80
+ #elif defined(sun) || defined(__sun__)
81
+ # if defined(__SVR4) || defined(__svr4__)
82
+ # define TRIO_PLATFORM_SOLARIS
83
+ # else
84
+ # define TRIO_PLATFORM_SUNOS
85
+ # endif
86
+ #endif
87
+
88
+ #if defined(__STDC__) || defined(TRIO_COMPILER_MSVC) || defined(TRIO_COMPILER_BCB)
89
+ # define TRIO_COMPILER_SUPPORTS_C89
90
+ # if defined(__STDC_VERSION__)
91
+ # define TRIO_COMPILER_SUPPORTS_C90
92
+ # if (__STDC_VERSION__ >= 199409L)
93
+ # define TRIO_COMPILER_SUPPORTS_C94
94
+ # endif
95
+ # if (__STDC_VERSION__ >= 199901L)
96
+ # define TRIO_COMPILER_SUPPORTS_C99
97
+ # endif
98
+ # elif defined(TRIO_COMPILER_SUNPRO)
99
+ # if (__SUNPRO_C >= 0x420)
100
+ # define TRIO_COMPILER_SUPPORTS_C94
101
+ # endif
102
+ # endif
103
+ #elif defined(TRIO_COMPILER_XLC) && defined(__EXTENDED__)
104
+ # define TRIO_COMPILER_SUPPORTS_C89
105
+ # define TRIO_COMPILER_SUPPORTS_C90
106
+ # define TRIO_COMPILER_SUPPORTS_C94
107
+ #endif
108
+
109
+ #if defined(_XOPEN_SOURCE)
110
+ # if defined(_XOPEN_SOURCE_EXTENDED)
111
+ # define TRIO_COMPILER_SUPPORTS_UNIX95
112
+ # endif
113
+ # if (_XOPEN_VERSION >= 500)
114
+ # define TRIO_COMPILER_SUPPORTS_UNIX98
115
+ # endif
116
+ # if (_XOPEN_VERSION >= 600)
117
+ # define TRIO_COMPILER_SUPPORTS_UNIX01
118
+ # endif
119
+ #endif
120
+
121
+ /*************************************************************************
122
+ * Generic defines
123
+ */
124
+
125
+ #if !defined(TRIO_PUBLIC)
126
+ # define TRIO_PUBLIC
127
+ #endif
128
+ #if !defined(TRIO_PRIVATE)
129
+ # define TRIO_PRIVATE static
130
+ #endif
131
+
132
+ #if !(defined(TRIO_COMPILER_SUPPORTS_C89) || defined(__cplusplus))
133
+ # define TRIO_COMPILER_ANCIENT
134
+ #endif
135
+
136
+ #if defined(TRIO_COMPILER_ANCIENT)
137
+ # define TRIO_CONST
138
+ # define TRIO_VOLATILE
139
+ # define TRIO_SIGNED
140
+ typedef double trio_long_double_t;
141
+ typedef char * trio_pointer_t;
142
+ # define TRIO_SUFFIX_LONG(x) x
143
+ # define TRIO_PROTO(x) ()
144
+ # define TRIO_NOARGS
145
+ # define TRIO_ARGS1(list,a1) list a1;
146
+ # define TRIO_ARGS2(list,a1,a2) list a1; a2;
147
+ # define TRIO_ARGS3(list,a1,a2,a3) list a1; a2; a3;
148
+ # define TRIO_ARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4;
149
+ # define TRIO_ARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5;
150
+ # define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) list a1; a2; a3; a4; a5; a6;
151
+ # define TRIO_VARGS2(list,a1,a2) list a1; a2
152
+ # define TRIO_VARGS3(list,a1,a2,a3) list a1; a2; a3
153
+ # define TRIO_VARGS4(list,a1,a2,a3,a4) list a1; a2; a3; a4
154
+ # define TRIO_VARGS5(list,a1,a2,a3,a4,a5) list a1; a2; a3; a4; a5
155
+ # define TRIO_VA_DECL va_dcl
156
+ # define TRIO_VA_START(x,y) va_start(x)
157
+ # define TRIO_VA_END(x) va_end(x)
158
+ #else /* ANSI C */
159
+ # define TRIO_CONST const
160
+ # define TRIO_VOLATILE volatile
161
+ # define TRIO_SIGNED signed
162
+ typedef long double trio_long_double_t;
163
+ typedef void * trio_pointer_t;
164
+ # define TRIO_SUFFIX_LONG(x) x ## L
165
+ # define TRIO_PROTO(x) x
166
+ # define TRIO_NOARGS void
167
+ # define TRIO_ARGS1(list,a1) (a1)
168
+ # define TRIO_ARGS2(list,a1,a2) (a1,a2)
169
+ # define TRIO_ARGS3(list,a1,a2,a3) (a1,a2,a3)
170
+ # define TRIO_ARGS4(list,a1,a2,a3,a4) (a1,a2,a3,a4)
171
+ # define TRIO_ARGS5(list,a1,a2,a3,a4,a5) (a1,a2,a3,a4,a5)
172
+ # define TRIO_ARGS6(list,a1,a2,a3,a4,a5,a6) (a1,a2,a3,a4,a5,a6)
173
+ # define TRIO_VARGS2 TRIO_ARGS2
174
+ # define TRIO_VARGS3 TRIO_ARGS3
175
+ # define TRIO_VARGS4 TRIO_ARGS4
176
+ # define TRIO_VARGS5 TRIO_ARGS5
177
+ # define TRIO_VA_DECL ...
178
+ # define TRIO_VA_START(x,y) va_start(x,y)
179
+ # define TRIO_VA_END(x) va_end(x)
180
+ #endif
181
+
182
+ #if defined(TRIO_COMPILER_SUPPORTS_C99) || defined(__cplusplus)
183
+ # define TRIO_INLINE inline
184
+ #elif defined(TRIO_COMPILER_GCC)
185
+ # define TRIO_INLINE __inline__
186
+ #elif defined(TRIO_COMPILER_MSVC)
187
+ # define TRIO_INLINE _inline
188
+ #elif defined(TRIO_COMPILER_BCB)
189
+ # define TRIO_INLINE __inline
190
+ #else
191
+ # define TRIO_INLINE
192
+ #endif
193
+
194
+ /*************************************************************************
195
+ * Workarounds
196
+ */
197
+
198
+ #if defined(TRIO_PLATFORM_VMS)
199
+ /*
200
+ * Computations done with constants at compile time can trigger these
201
+ * even when compiling with IEEE enabled.
202
+ */
203
+ # pragma message disable (UNDERFLOW, FLOATOVERFL)
204
+
205
+ # if (__CRTL_VER < 80000000)
206
+ /*
207
+ * Although the compiler supports C99 language constructs, the C
208
+ * run-time library does not contain all C99 functions.
209
+ *
210
+ * This was the case for 70300022. Update the 80000000 value when
211
+ * it has been accurately determined what version of the library
212
+ * supports C99.
213
+ */
214
+ # if defined(TRIO_COMPILER_SUPPORTS_C99)
215
+ # undef TRIO_COMPILER_SUPPORTS_C99
216
+ # endif
217
+ # endif
218
+ #endif
219
+
220
+ /*
221
+ * Not all preprocessors supports the LL token.
222
+ */
223
+ #if defined(TRIO_COMPILER_BCB)
224
+ #else
225
+ # define TRIO_COMPILER_SUPPORTS_LL
226
+ #endif
227
+
228
+ #endif /* TRIO_TRIODEF_H */