rubyfb 0.5.2-x86-linux → 0.5.3-x86-linux

Sign up to get free protection for your applications and to get access to all the features.
data/mswin32fb/ibase.h ADDED
@@ -0,0 +1,2555 @@
1
+ /*
2
+ * MODULE: ibase.h
3
+ * DESCRIPTION: OSRI entrypoints and defines
4
+ *
5
+ * The contents of this file are subject to the Interbase Public
6
+ * License Version 1.0 (the "License"); you may not use this file
7
+ * except in compliance with the License. You may obtain a copy
8
+ * of the License at http://www.Inprise.com/IPL.html
9
+ *
10
+ * Software distributed under the License is distributed on an
11
+ * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
12
+ * or implied. See the License for the specific language governing
13
+ * rights and limitations under the License.
14
+ *
15
+ * The Original Code was created by Inprise Corporation
16
+ * and its predecessors. Portions created by Inprise Corporation are
17
+ * Copyright (C) Inprise Corporation.
18
+ *
19
+ * All Rights Reserved.
20
+ * Contributor(s): ______________________________________.
21
+ *
22
+ * 2001.07.28: John Bellardo: Added blr_skip
23
+ * 2001.09.18: Ann Harrison: New info codes
24
+ * 17-Oct-2001 Mike Nordell: CPU affinity
25
+ * 2001-04-16 Paul Beach: ISC_TIME_SECONDS_PRECISION_SCALE modified for HP10
26
+ * Compiler Compatibility
27
+ * 2002.02.15 Sean Leyne - Code Cleanup, removed obsolete ports:
28
+ * - EPSON, XENIX, MAC (MAC_AUX), Cray and OS/2
29
+ * 2002.10.29 Nickolay Samofatov: Added support for savepoints
30
+ *
31
+ * 2002.10.29 Sean Leyne - Removed support for obsolete IPX/SPX Protocol
32
+ *
33
+ * 2006.09.06 Steve Boyd - Added various prototypes required by Cobol ESQL
34
+ * isc_embed_dsql_length
35
+ * isc_event_block_a
36
+ * isc_sqlcode_s
37
+ * isc_embed_dsql_fetch_a
38
+ * isc_event_block_s
39
+ * isc_baddress
40
+ * isc_baddress_s
41
+ *
42
+ */
43
+
44
+ #ifndef JRD_IBASE_H
45
+ #define JRD_IBASE_H
46
+
47
+ #define FB_API_VER 21
48
+ #define isc_version4
49
+
50
+ #define ISC_TRUE 1
51
+ #define ISC_FALSE 0
52
+ #if !(defined __cplusplus)
53
+ #define ISC__TRUE ISC_TRUE
54
+ #define ISC__FALSE ISC_FALSE
55
+ #endif
56
+
57
+ #define ISC_FAR
58
+
59
+ #if defined _MSC_VER && _MSC_VER >= 1300
60
+ #define FB_API_DEPRECATED __declspec(deprecated)
61
+ #elif defined __GNUC__ && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2))
62
+ #define FB_API_DEPRECATED __attribute__((__deprecated__))
63
+ #else
64
+ #define FB_API_DEPRECATED
65
+ #endif
66
+
67
+
68
+ #ifndef INCLUDE_TYPES_PUB_H
69
+ #define INCLUDE_TYPES_PUB_H
70
+
71
+ #include <stddef.h>
72
+
73
+ #if defined(__GNUC__)
74
+ #include <inttypes.h>
75
+ #else
76
+
77
+ #if !defined(_INTPTR_T_DEFINED)
78
+ #if defined(_WIN64)
79
+ typedef __int64 intptr_t;
80
+ typedef unsigned __int64 uintptr_t;
81
+ #else
82
+ typedef long intptr_t;
83
+ typedef unsigned long uintptr_t;
84
+ #endif
85
+ #endif
86
+
87
+ #endif
88
+
89
+ #if defined(_LP64) || defined(__LP64__) || defined(__arch64__) || defined(_WIN64)
90
+ typedef unsigned int FB_API_HANDLE;
91
+ #else
92
+ typedef void* FB_API_HANDLE;
93
+ #endif
94
+
95
+ typedef intptr_t ISC_STATUS;
96
+
97
+ #define ISC_STATUS_LENGTH 20
98
+ typedef ISC_STATUS ISC_STATUS_ARRAY[ISC_STATUS_LENGTH];
99
+
100
+ #if defined(WIN32) || defined(_WIN32) || defined(__WIN32__)
101
+ #define ISC_EXPORT __stdcall
102
+ #define ISC_EXPORT_VARARG __cdecl
103
+ #else
104
+ #define ISC_EXPORT
105
+ #define ISC_EXPORT_VARARG
106
+ #endif
107
+
108
+ #if defined(_LP64) || defined(__LP64__) || defined(__arch64__)
109
+ typedef int ISC_LONG;
110
+ typedef unsigned int ISC_ULONG;
111
+ #else
112
+ typedef signed long ISC_LONG;
113
+ typedef unsigned long ISC_ULONG;
114
+ #endif
115
+
116
+ typedef signed short ISC_SHORT;
117
+ typedef unsigned short ISC_USHORT;
118
+
119
+ typedef unsigned char ISC_UCHAR;
120
+ typedef char ISC_SCHAR;
121
+
122
+ #if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__)) && !defined(__GNUC__)
123
+ typedef __int64 ISC_INT64;
124
+ typedef unsigned __int64 ISC_UINT64;
125
+ #else
126
+ typedef long long int ISC_INT64;
127
+ typedef unsigned long long int ISC_UINT64;
128
+ #endif
129
+
130
+ #ifndef ISC_TIMESTAMP_DEFINED
131
+ typedef int ISC_DATE;
132
+ typedef unsigned int ISC_TIME;
133
+ typedef struct
134
+ {
135
+ ISC_DATE timestamp_date;
136
+ ISC_TIME timestamp_time;
137
+ } ISC_TIMESTAMP;
138
+ #define ISC_TIMESTAMP_DEFINED
139
+ #endif
140
+
141
+ struct GDS_QUAD_t {
142
+ ISC_LONG gds_quad_high;
143
+ ISC_ULONG gds_quad_low;
144
+ };
145
+
146
+ typedef struct GDS_QUAD_t GDS_QUAD;
147
+ typedef struct GDS_QUAD_t ISC_QUAD;
148
+
149
+ #define isc_quad_high gds_quad_high
150
+ #define isc_quad_low gds_quad_low
151
+
152
+ #endif
153
+
154
+ /********************************/
155
+ /* Firebird Handle Definitions */
156
+ /********************************/
157
+
158
+ typedef FB_API_HANDLE isc_att_handle;
159
+ typedef FB_API_HANDLE isc_blob_handle;
160
+ typedef FB_API_HANDLE isc_db_handle;
161
+ typedef FB_API_HANDLE isc_req_handle;
162
+ typedef FB_API_HANDLE isc_stmt_handle;
163
+ typedef FB_API_HANDLE isc_svc_handle;
164
+ typedef FB_API_HANDLE isc_tr_handle;
165
+ typedef void (* isc_callback) ();
166
+ typedef ISC_LONG isc_resv_handle;
167
+
168
+ typedef void (*ISC_PRINT_CALLBACK) (void*, ISC_SHORT, const char*);
169
+ typedef void (*ISC_VERSION_CALLBACK)(void*, const char*);
170
+ typedef void (*ISC_EVENT_CALLBACK)(void*, ISC_USHORT, const ISC_UCHAR*);
171
+
172
+ /*******************************************************************/
173
+ /* Blob id structure */
174
+ /*******************************************************************/
175
+
176
+ #if !(defined __cplusplus)
177
+ typedef GDS_QUAD GDS__QUAD;
178
+ #endif /* !(defined __cplusplus) */
179
+
180
+ typedef struct
181
+ {
182
+ short array_bound_lower;
183
+ short array_bound_upper;
184
+ } ISC_ARRAY_BOUND;
185
+
186
+ typedef struct
187
+ {
188
+ ISC_UCHAR array_desc_dtype;
189
+ ISC_SCHAR array_desc_scale;
190
+ unsigned short array_desc_length;
191
+ ISC_SCHAR array_desc_field_name[32];
192
+ ISC_SCHAR array_desc_relation_name[32];
193
+ short array_desc_dimensions;
194
+ short array_desc_flags;
195
+ ISC_ARRAY_BOUND array_desc_bounds[16];
196
+ } ISC_ARRAY_DESC;
197
+
198
+ typedef struct
199
+ {
200
+ short blob_desc_subtype;
201
+ short blob_desc_charset;
202
+ short blob_desc_segment_size;
203
+ ISC_UCHAR blob_desc_field_name[32];
204
+ ISC_UCHAR blob_desc_relation_name[32];
205
+ } ISC_BLOB_DESC;
206
+
207
+ /***************************/
208
+ /* Blob control structure */
209
+ /***************************/
210
+
211
+ typedef struct isc_blob_ctl
212
+ {
213
+ ISC_STATUS (* ctl_source)(); /* Source filter */
214
+ struct isc_blob_ctl* ctl_source_handle; /* Argument to pass to source filter */
215
+ short ctl_to_sub_type; /* Target type */
216
+ short ctl_from_sub_type; /* Source type */
217
+ unsigned short ctl_buffer_length; /* Length of buffer */
218
+ unsigned short ctl_segment_length; /* Length of current segment */
219
+ unsigned short ctl_bpb_length; /* Length of blob parameter block */
220
+ /* Internally, this is const UCHAR*, but this public struct probably can't change. */
221
+ ISC_SCHAR* ctl_bpb; /* Address of blob parameter block */
222
+ ISC_UCHAR* ctl_buffer; /* Address of segment buffer */
223
+ ISC_LONG ctl_max_segment; /* Length of longest segment */
224
+ ISC_LONG ctl_number_segments; /* Total number of segments */
225
+ ISC_LONG ctl_total_length; /* Total length of blob */
226
+ ISC_STATUS* ctl_status; /* Address of status vector */
227
+ long ctl_data[8]; /* Application specific data */
228
+ } * ISC_BLOB_CTL;
229
+
230
+ /***************************/
231
+ /* Blob stream definitions */
232
+ /***************************/
233
+
234
+ typedef struct bstream
235
+ {
236
+ isc_blob_handle bstr_blob; /* Blob handle */
237
+ ISC_SCHAR * bstr_buffer; /* Address of buffer */
238
+ ISC_SCHAR * bstr_ptr; /* Next character */
239
+ short bstr_length; /* Length of buffer */
240
+ short bstr_cnt; /* Characters in buffer */
241
+ char bstr_mode; /* (mode) ? OUTPUT : INPUT */
242
+ } BSTREAM;
243
+
244
+ /* Three ugly macros, one even using octal radix... sigh... */
245
+ #define getb(p) (--(p)->bstr_cnt >= 0 ? *(p)->bstr_ptr++ & 0377: BLOB_get (p))
246
+ #define putb(x,p) (((x) == '\n' || (!(--(p)->bstr_cnt))) ? BLOB_put ((x),p) : ((int) (*(p)->bstr_ptr++ = (unsigned) (x))))
247
+ #define putbx(x,p) ((!(--(p)->bstr_cnt)) ? BLOB_put ((x),p) : ((int) (*(p)->bstr_ptr++ = (unsigned) (x))))
248
+
249
+ /********************************************************************/
250
+ /* CVC: Public blob interface definition held in val.h. */
251
+ /* For some unknown reason, it was only documented in langRef */
252
+ /* and being the structure passed by the engine to UDFs it never */
253
+ /* made its way into this public definitions file. */
254
+ /* Being its original name "blob", I renamed it blobcallback here. */
255
+ /* I did the full definition with the proper parameters instead of */
256
+ /* the weak C declaration with any number and type of parameters. */
257
+ /* Since the first parameter -BLB- is unknown outside the engine, */
258
+ /* it's more accurate to use void* than int* as the blob pointer */
259
+ /********************************************************************/
260
+
261
+ #if !defined(JRD_VAL_H) && !defined(REQUESTER)
262
+ /* Blob passing structure */
263
+
264
+ /* This enum applies to parameter "mode" in blob_lseek */
265
+ enum blob_lseek_mode {blb_seek_relative = 1, blb_seek_from_tail = 2};
266
+ /* This enum applies to the value returned by blob_get_segment */
267
+ enum blob_get_result {blb_got_fragment = -1, blb_got_eof = 0, blb_got_full_segment = 1};
268
+
269
+ typedef struct blobcallback {
270
+ short (*blob_get_segment)
271
+ (void* hnd, ISC_UCHAR* buffer, ISC_USHORT buf_size, ISC_USHORT* result_len);
272
+ void* blob_handle;
273
+ ISC_LONG blob_number_segments;
274
+ ISC_LONG blob_max_segment;
275
+ ISC_LONG blob_total_length;
276
+ void (*blob_put_segment)
277
+ (void* hnd, const ISC_UCHAR* buffer, ISC_USHORT buf_size);
278
+ ISC_LONG (*blob_lseek)
279
+ (void* hnd, ISC_USHORT mode, ISC_LONG offset);
280
+ } *BLOBCALLBACK;
281
+ #endif /* !defined(JRD_VAL_H) && !defined(REQUESTER) */
282
+
283
+
284
+ /********************************************************************/
285
+ /* CVC: Public descriptor interface held in dsc2.h. */
286
+ /* We need it documented to be able to recognize NULL in UDFs. */
287
+ /* Being its original name "dsc", I renamed it paramdsc here. */
288
+ /* Notice that I adjust to the original definition: contrary to */
289
+ /* other cases, the typedef is the same struct not the pointer. */
290
+ /* I included the enumeration of dsc_dtype possible values. */
291
+ /* Ultimately, dsc2.h should be part of the public interface. */
292
+ /********************************************************************/
293
+
294
+ #if !defined(JRD_DSC_H)
295
+ /* This is the famous internal descriptor that UDFs can use, too. */
296
+ typedef struct paramdsc {
297
+ ISC_UCHAR dsc_dtype;
298
+ signed char dsc_scale;
299
+ ISC_USHORT dsc_length;
300
+ short dsc_sub_type;
301
+ ISC_USHORT dsc_flags;
302
+ ISC_UCHAR *dsc_address;
303
+ } PARAMDSC;
304
+
305
+ #if !defined(JRD_VAL_H)
306
+ /* This is a helper struct to work with varchars. */
307
+ typedef struct paramvary {
308
+ ISC_USHORT vary_length;
309
+ ISC_UCHAR vary_string[1];
310
+ } PARAMVARY;
311
+ #endif /* !defined(JRD_VAL_H) */
312
+
313
+
314
+ #ifndef JRD_DSC_PUB_H
315
+ #define JRD_DSC_PUB_H
316
+
317
+ #define DSC_null 1
318
+ #define DSC_no_subtype 2
319
+ #define DSC_nullable 4
320
+
321
+ #define dtype_unknown 0
322
+ #define dtype_text 1
323
+ #define dtype_cstring 2
324
+ #define dtype_varying 3
325
+
326
+ #define dtype_packed 6
327
+ #define dtype_byte 7
328
+ #define dtype_short 8
329
+ #define dtype_long 9
330
+ #define dtype_quad 10
331
+ #define dtype_real 11
332
+ #define dtype_double 12
333
+ #define dtype_d_float 13
334
+ #define dtype_sql_date 14
335
+ #define dtype_sql_time 15
336
+ #define dtype_timestamp 16
337
+ #define dtype_blob 17
338
+ #define dtype_array 18
339
+ #define dtype_int64 19
340
+ #define DTYPE_TYPE_MAX 20
341
+
342
+ #define ISC_TIME_SECONDS_PRECISION 10000
343
+ #define ISC_TIME_SECONDS_PRECISION_SCALE (-4)
344
+
345
+ #endif
346
+
347
+
348
+ #endif /* !defined(JRD_DSC_H) */
349
+
350
+ /***************************/
351
+ /* Dynamic SQL definitions */
352
+ /***************************/
353
+
354
+
355
+ #ifndef DSQL_SQLDA_PUB_H
356
+ #define DSQL_SQLDA_PUB_H
357
+
358
+ #define DSQL_close 1
359
+ #define DSQL_drop 2
360
+
361
+ typedef struct
362
+ {
363
+ ISC_SHORT sqltype;
364
+ ISC_SHORT sqlscale;
365
+ ISC_SHORT sqlsubtype;
366
+ ISC_SHORT sqllen;
367
+ ISC_SCHAR* sqldata;
368
+ ISC_SHORT* sqlind;
369
+ ISC_SHORT sqlname_length;
370
+ ISC_SCHAR sqlname[32];
371
+ ISC_SHORT relname_length;
372
+ ISC_SCHAR relname[32];
373
+ ISC_SHORT ownname_length;
374
+ ISC_SCHAR ownname[32];
375
+ ISC_SHORT aliasname_length;
376
+ ISC_SCHAR aliasname[32];
377
+ } XSQLVAR;
378
+
379
+ #define SQLDA_VERSION1 1
380
+
381
+ typedef struct
382
+ {
383
+ ISC_SHORT version;
384
+ ISC_SCHAR sqldaid[8];
385
+ ISC_LONG sqldabc;
386
+ ISC_SHORT sqln;
387
+ ISC_SHORT sqld;
388
+ XSQLVAR sqlvar[1];
389
+ } XSQLDA;
390
+
391
+ #define XSQLDA_LENGTH(n) (sizeof (XSQLDA) + (n - 1) * sizeof (XSQLVAR))
392
+
393
+ #define SQL_TEXT 452
394
+ #define SQL_VARYING 448
395
+ #define SQL_SHORT 500
396
+ #define SQL_LONG 496
397
+ #define SQL_FLOAT 482
398
+ #define SQL_DOUBLE 480
399
+ #define SQL_D_FLOAT 530
400
+ #define SQL_TIMESTAMP 510
401
+ #define SQL_BLOB 520
402
+ #define SQL_ARRAY 540
403
+ #define SQL_QUAD 550
404
+ #define SQL_TYPE_TIME 560
405
+ #define SQL_TYPE_DATE 570
406
+ #define SQL_INT64 580
407
+
408
+ #define SQL_DATE SQL_TIMESTAMP
409
+
410
+ #define SQL_DIALECT_V5 1
411
+ #define SQL_DIALECT_V6_TRANSITION 2
412
+ #define SQL_DIALECT_V6 3
413
+ #define SQL_DIALECT_CURRENT SQL_DIALECT_V6
414
+
415
+ #endif
416
+
417
+
418
+ /***************************/
419
+ /* OSRI database functions */
420
+ /***************************/
421
+
422
+ #ifdef __cplusplus
423
+ extern "C" {
424
+ #endif
425
+
426
+ ISC_STATUS ISC_EXPORT isc_attach_database(ISC_STATUS*,
427
+ short,
428
+ const ISC_SCHAR*,
429
+ isc_db_handle*,
430
+ short,
431
+ const ISC_SCHAR*);
432
+
433
+ ISC_STATUS ISC_EXPORT isc_array_gen_sdl(ISC_STATUS*,
434
+ const ISC_ARRAY_DESC*,
435
+ ISC_SHORT*,
436
+ ISC_UCHAR*,
437
+ ISC_SHORT*);
438
+
439
+ ISC_STATUS ISC_EXPORT isc_array_get_slice(ISC_STATUS*,
440
+ isc_db_handle*,
441
+ isc_tr_handle*,
442
+ ISC_QUAD*,
443
+ const ISC_ARRAY_DESC*,
444
+ void*,
445
+ ISC_LONG*);
446
+
447
+ ISC_STATUS ISC_EXPORT isc_array_lookup_bounds(ISC_STATUS*,
448
+ isc_db_handle*,
449
+ isc_tr_handle*,
450
+ const ISC_SCHAR*,
451
+ const ISC_SCHAR*,
452
+ ISC_ARRAY_DESC*);
453
+
454
+ ISC_STATUS ISC_EXPORT isc_array_lookup_desc(ISC_STATUS*,
455
+ isc_db_handle*,
456
+ isc_tr_handle*,
457
+ const ISC_SCHAR*,
458
+ const ISC_SCHAR*,
459
+ ISC_ARRAY_DESC*);
460
+
461
+ ISC_STATUS ISC_EXPORT isc_array_set_desc(ISC_STATUS*,
462
+ const ISC_SCHAR*,
463
+ const ISC_SCHAR*,
464
+ const short*,
465
+ const short*,
466
+ const short*,
467
+ ISC_ARRAY_DESC*);
468
+
469
+ ISC_STATUS ISC_EXPORT isc_array_put_slice(ISC_STATUS*,
470
+ isc_db_handle*,
471
+ isc_tr_handle*,
472
+ ISC_QUAD*,
473
+ const ISC_ARRAY_DESC*,
474
+ void*,
475
+ ISC_LONG *);
476
+
477
+ void ISC_EXPORT isc_blob_default_desc(ISC_BLOB_DESC*,
478
+ const ISC_UCHAR*,
479
+ const ISC_UCHAR*);
480
+
481
+ ISC_STATUS ISC_EXPORT isc_blob_gen_bpb(ISC_STATUS*,
482
+ const ISC_BLOB_DESC*,
483
+ const ISC_BLOB_DESC*,
484
+ unsigned short,
485
+ ISC_UCHAR*,
486
+ unsigned short*);
487
+
488
+ ISC_STATUS ISC_EXPORT isc_blob_info(ISC_STATUS*,
489
+ isc_blob_handle*,
490
+ short,
491
+ const ISC_SCHAR*,
492
+ short,
493
+ ISC_SCHAR*);
494
+
495
+ ISC_STATUS ISC_EXPORT isc_blob_lookup_desc(ISC_STATUS*,
496
+ isc_db_handle*,
497
+ isc_tr_handle*,
498
+ const ISC_UCHAR*,
499
+ const ISC_UCHAR*,
500
+ ISC_BLOB_DESC*,
501
+ ISC_UCHAR*);
502
+
503
+ ISC_STATUS ISC_EXPORT isc_blob_set_desc(ISC_STATUS*,
504
+ const ISC_UCHAR*,
505
+ const ISC_UCHAR*,
506
+ short,
507
+ short,
508
+ short,
509
+ ISC_BLOB_DESC*);
510
+
511
+ ISC_STATUS ISC_EXPORT isc_cancel_blob(ISC_STATUS *,
512
+ isc_blob_handle *);
513
+
514
+ ISC_STATUS ISC_EXPORT isc_cancel_events(ISC_STATUS *,
515
+ isc_db_handle *,
516
+ ISC_LONG *);
517
+
518
+ ISC_STATUS ISC_EXPORT isc_close_blob(ISC_STATUS *,
519
+ isc_blob_handle *);
520
+
521
+ ISC_STATUS ISC_EXPORT isc_commit_retaining(ISC_STATUS *,
522
+ isc_tr_handle *);
523
+
524
+ ISC_STATUS ISC_EXPORT isc_commit_transaction(ISC_STATUS *,
525
+ isc_tr_handle *);
526
+
527
+ ISC_STATUS ISC_EXPORT isc_create_blob(ISC_STATUS*,
528
+ isc_db_handle*,
529
+ isc_tr_handle*,
530
+ isc_blob_handle*,
531
+ ISC_QUAD*);
532
+
533
+ ISC_STATUS ISC_EXPORT isc_create_blob2(ISC_STATUS*,
534
+ isc_db_handle*,
535
+ isc_tr_handle*,
536
+ isc_blob_handle*,
537
+ ISC_QUAD*,
538
+ short,
539
+ const ISC_SCHAR*);
540
+
541
+ ISC_STATUS ISC_EXPORT isc_create_database(ISC_STATUS*,
542
+ short,
543
+ const ISC_SCHAR*,
544
+ isc_db_handle*,
545
+ short,
546
+ const ISC_SCHAR*,
547
+ short);
548
+
549
+ ISC_STATUS ISC_EXPORT isc_database_info(ISC_STATUS*,
550
+ isc_db_handle*,
551
+ short,
552
+ const ISC_SCHAR*,
553
+ short,
554
+ ISC_SCHAR*);
555
+
556
+ void ISC_EXPORT isc_decode_date(const ISC_QUAD*,
557
+ void*);
558
+
559
+ void ISC_EXPORT isc_decode_sql_date(const ISC_DATE*,
560
+ void*);
561
+
562
+ void ISC_EXPORT isc_decode_sql_time(const ISC_TIME*,
563
+ void*);
564
+
565
+ void ISC_EXPORT isc_decode_timestamp(const ISC_TIMESTAMP*,
566
+ void*);
567
+
568
+ ISC_STATUS ISC_EXPORT isc_detach_database(ISC_STATUS *,
569
+ isc_db_handle *);
570
+
571
+ ISC_STATUS ISC_EXPORT isc_drop_database(ISC_STATUS *,
572
+ isc_db_handle *);
573
+
574
+ ISC_STATUS ISC_EXPORT isc_dsql_allocate_statement(ISC_STATUS *,
575
+ isc_db_handle *,
576
+ isc_stmt_handle *);
577
+
578
+ ISC_STATUS ISC_EXPORT isc_dsql_alloc_statement2(ISC_STATUS *,
579
+ isc_db_handle *,
580
+ isc_stmt_handle *);
581
+
582
+ ISC_STATUS ISC_EXPORT isc_dsql_describe(ISC_STATUS *,
583
+ isc_stmt_handle *,
584
+ unsigned short,
585
+ XSQLDA *);
586
+
587
+ ISC_STATUS ISC_EXPORT isc_dsql_describe_bind(ISC_STATUS *,
588
+ isc_stmt_handle *,
589
+ unsigned short,
590
+ XSQLDA *);
591
+
592
+ ISC_STATUS ISC_EXPORT isc_dsql_exec_immed2(ISC_STATUS*,
593
+ isc_db_handle*,
594
+ isc_tr_handle*,
595
+ unsigned short,
596
+ const ISC_SCHAR*,
597
+ unsigned short,
598
+ XSQLDA*,
599
+ XSQLDA*);
600
+
601
+ ISC_STATUS ISC_EXPORT isc_dsql_execute(ISC_STATUS*,
602
+ isc_tr_handle*,
603
+ isc_stmt_handle*,
604
+ unsigned short,
605
+ XSQLDA*);
606
+
607
+ ISC_STATUS ISC_EXPORT isc_dsql_execute2(ISC_STATUS*,
608
+ isc_tr_handle*,
609
+ isc_stmt_handle*,
610
+ unsigned short,
611
+ XSQLDA*,
612
+ XSQLDA*);
613
+
614
+ ISC_STATUS ISC_EXPORT isc_dsql_execute_immediate(ISC_STATUS*,
615
+ isc_db_handle*,
616
+ isc_tr_handle*,
617
+ unsigned short,
618
+ const ISC_SCHAR*,
619
+ unsigned short,
620
+ XSQLDA*);
621
+
622
+ ISC_STATUS ISC_EXPORT isc_dsql_fetch(ISC_STATUS *,
623
+ isc_stmt_handle *,
624
+ unsigned short,
625
+ XSQLDA *);
626
+
627
+ ISC_STATUS ISC_EXPORT isc_dsql_finish(isc_db_handle *);
628
+
629
+ ISC_STATUS ISC_EXPORT isc_dsql_free_statement(ISC_STATUS *,
630
+ isc_stmt_handle *,
631
+ unsigned short);
632
+
633
+ ISC_STATUS ISC_EXPORT isc_dsql_insert(ISC_STATUS*,
634
+ isc_stmt_handle*,
635
+ unsigned short,
636
+ XSQLDA*);
637
+
638
+ ISC_STATUS ISC_EXPORT isc_dsql_prepare(ISC_STATUS*,
639
+ isc_tr_handle*,
640
+ isc_stmt_handle*,
641
+ unsigned short,
642
+ const ISC_SCHAR*,
643
+ unsigned short,
644
+ XSQLDA*);
645
+
646
+ ISC_STATUS ISC_EXPORT isc_dsql_set_cursor_name(ISC_STATUS*,
647
+ isc_stmt_handle*,
648
+ const ISC_SCHAR*,
649
+ unsigned short);
650
+
651
+ ISC_STATUS ISC_EXPORT isc_dsql_sql_info(ISC_STATUS*,
652
+ isc_stmt_handle*,
653
+ short,
654
+ const ISC_SCHAR*,
655
+ short,
656
+ ISC_SCHAR*);
657
+
658
+ void ISC_EXPORT isc_encode_date(const void*,
659
+ ISC_QUAD*);
660
+
661
+ void ISC_EXPORT isc_encode_sql_date(const void*,
662
+ ISC_DATE*);
663
+
664
+ void ISC_EXPORT isc_encode_sql_time(const void*,
665
+ ISC_TIME*);
666
+
667
+ void ISC_EXPORT isc_encode_timestamp(const void*,
668
+ ISC_TIMESTAMP*);
669
+
670
+ ISC_LONG ISC_EXPORT_VARARG isc_event_block(ISC_UCHAR**,
671
+ ISC_UCHAR**,
672
+ ISC_USHORT, ...);
673
+
674
+ ISC_USHORT ISC_EXPORT isc_event_block_a(ISC_SCHAR**,
675
+ ISC_SCHAR**,
676
+ ISC_USHORT,
677
+ ISC_SCHAR**);
678
+
679
+ void ISC_EXPORT isc_event_block_s(ISC_SCHAR**,
680
+ ISC_SCHAR**,
681
+ ISC_USHORT,
682
+ ISC_SCHAR**,
683
+ ISC_USHORT*);
684
+
685
+ void ISC_EXPORT isc_event_counts(ISC_ULONG*,
686
+ short,
687
+ ISC_UCHAR*,
688
+ const ISC_UCHAR *);
689
+
690
+ /* 17 May 2001 - isc_expand_dpb is DEPRECATED */
691
+ void FB_API_DEPRECATED ISC_EXPORT_VARARG isc_expand_dpb(ISC_SCHAR**,
692
+ short*, ...);
693
+
694
+ int ISC_EXPORT isc_modify_dpb(ISC_SCHAR**,
695
+ short*,
696
+ unsigned short,
697
+ const ISC_SCHAR*,
698
+ short);
699
+
700
+ ISC_LONG ISC_EXPORT isc_free(ISC_SCHAR *);
701
+
702
+ ISC_STATUS ISC_EXPORT isc_get_segment(ISC_STATUS *,
703
+ isc_blob_handle *,
704
+ unsigned short *,
705
+ unsigned short,
706
+ ISC_SCHAR *);
707
+
708
+ ISC_STATUS ISC_EXPORT isc_get_slice(ISC_STATUS*,
709
+ isc_db_handle*,
710
+ isc_tr_handle*,
711
+ ISC_QUAD*,
712
+ short,
713
+ const ISC_SCHAR*,
714
+ short,
715
+ const ISC_LONG*,
716
+ ISC_LONG,
717
+ void*,
718
+ ISC_LONG*);
719
+
720
+ /* CVC: This non-const signature is needed for compatibility, see gds.cpp. */
721
+ ISC_LONG FB_API_DEPRECATED ISC_EXPORT isc_interprete(ISC_SCHAR*,
722
+ ISC_STATUS**);
723
+
724
+ /* This const params version used in the engine and other places. */
725
+ ISC_LONG ISC_EXPORT fb_interpret(ISC_SCHAR*,
726
+ unsigned int,
727
+ const ISC_STATUS**);
728
+
729
+ ISC_STATUS ISC_EXPORT isc_open_blob(ISC_STATUS*,
730
+ isc_db_handle*,
731
+ isc_tr_handle*,
732
+ isc_blob_handle*,
733
+ ISC_QUAD*);
734
+
735
+ ISC_STATUS ISC_EXPORT isc_open_blob2(ISC_STATUS*,
736
+ isc_db_handle*,
737
+ isc_tr_handle*,
738
+ isc_blob_handle*,
739
+ ISC_QUAD*,
740
+ ISC_USHORT,
741
+ const ISC_UCHAR*);
742
+
743
+ ISC_STATUS ISC_EXPORT isc_prepare_transaction2(ISC_STATUS*,
744
+ isc_tr_handle*,
745
+ ISC_USHORT,
746
+ const ISC_UCHAR*);
747
+
748
+ void ISC_EXPORT isc_print_sqlerror(ISC_SHORT,
749
+ const ISC_STATUS*);
750
+
751
+ ISC_STATUS ISC_EXPORT isc_print_status(const ISC_STATUS*);
752
+
753
+ ISC_STATUS ISC_EXPORT isc_put_segment(ISC_STATUS*,
754
+ isc_blob_handle*,
755
+ unsigned short,
756
+ const ISC_SCHAR*);
757
+
758
+ ISC_STATUS ISC_EXPORT isc_put_slice(ISC_STATUS*,
759
+ isc_db_handle*,
760
+ isc_tr_handle*,
761
+ ISC_QUAD*,
762
+ short,
763
+ const ISC_SCHAR*,
764
+ short,
765
+ const ISC_LONG*,
766
+ ISC_LONG,
767
+ void*);
768
+
769
+ ISC_STATUS ISC_EXPORT isc_que_events(ISC_STATUS*,
770
+ isc_db_handle*,
771
+ ISC_LONG*,
772
+ short,
773
+ const ISC_UCHAR*,
774
+ ISC_EVENT_CALLBACK,
775
+ void*);
776
+
777
+ ISC_STATUS ISC_EXPORT isc_rollback_retaining(ISC_STATUS *,
778
+ isc_tr_handle *);
779
+
780
+ ISC_STATUS ISC_EXPORT isc_rollback_transaction(ISC_STATUS *,
781
+ isc_tr_handle *);
782
+
783
+ ISC_STATUS ISC_EXPORT isc_start_multiple(ISC_STATUS *,
784
+ isc_tr_handle *,
785
+ short,
786
+ void *);
787
+
788
+ ISC_STATUS ISC_EXPORT_VARARG isc_start_transaction(ISC_STATUS *,
789
+ isc_tr_handle *,
790
+ short, ...);
791
+
792
+ ISC_LONG ISC_EXPORT isc_sqlcode(const ISC_STATUS*);
793
+
794
+ void ISC_EXPORT isc_sqlcode_s(const ISC_STATUS*,
795
+ ISC_ULONG*);
796
+
797
+ void ISC_EXPORT isc_sql_interprete(short,
798
+ ISC_SCHAR*,
799
+ short);
800
+
801
+ ISC_STATUS ISC_EXPORT isc_transaction_info(ISC_STATUS*,
802
+ isc_tr_handle*,
803
+ short,
804
+ const ISC_SCHAR*,
805
+ short,
806
+ ISC_SCHAR*);
807
+
808
+ ISC_STATUS ISC_EXPORT isc_transact_request(ISC_STATUS*,
809
+ isc_db_handle*,
810
+ isc_tr_handle*,
811
+ unsigned short,
812
+ const ISC_SCHAR*,
813
+ unsigned short,
814
+ ISC_SCHAR*,
815
+ unsigned short,
816
+ ISC_SCHAR*);
817
+
818
+ ISC_LONG ISC_EXPORT isc_vax_integer(const ISC_SCHAR*,
819
+ short);
820
+
821
+ ISC_INT64 ISC_EXPORT isc_portable_integer(const ISC_UCHAR*,
822
+ short);
823
+
824
+ /*************************************/
825
+ /* Security Functions and structures */
826
+ /*************************************/
827
+
828
+ #define sec_uid_spec 0x01
829
+ #define sec_gid_spec 0x02
830
+ #define sec_server_spec 0x04
831
+ #define sec_password_spec 0x08
832
+ #define sec_group_name_spec 0x10
833
+ #define sec_first_name_spec 0x20
834
+ #define sec_middle_name_spec 0x40
835
+ #define sec_last_name_spec 0x80
836
+ #define sec_dba_user_name_spec 0x100
837
+ #define sec_dba_password_spec 0x200
838
+
839
+ #define sec_protocol_tcpip 1
840
+ #define sec_protocol_netbeui 2
841
+ #define sec_protocol_spx 3 /* -- Deprecated Protocol. Declaration retained for compatibility */
842
+ #define sec_protocol_local 4
843
+
844
+ typedef struct {
845
+ short sec_flags; /* which fields are specified */
846
+ int uid; /* the user's id */
847
+ int gid; /* the user's group id */
848
+ int protocol; /* protocol to use for connection */
849
+ ISC_SCHAR *server; /* server to administer */
850
+ ISC_SCHAR *user_name; /* the user's name */
851
+ ISC_SCHAR *password; /* the user's password */
852
+ ISC_SCHAR *group_name; /* the group name */
853
+ ISC_SCHAR *first_name; /* the user's first name */
854
+ ISC_SCHAR *middle_name; /* the user's middle name */
855
+ ISC_SCHAR *last_name; /* the user's last name */
856
+ ISC_SCHAR *dba_user_name; /* the dba user name */
857
+ ISC_SCHAR *dba_password; /* the dba password */
858
+ } USER_SEC_DATA;
859
+
860
+ ISC_STATUS ISC_EXPORT isc_add_user(ISC_STATUS*, const USER_SEC_DATA*);
861
+
862
+ ISC_STATUS ISC_EXPORT isc_delete_user(ISC_STATUS*, const USER_SEC_DATA*);
863
+
864
+ ISC_STATUS ISC_EXPORT isc_modify_user(ISC_STATUS*, const USER_SEC_DATA*);
865
+
866
+ /**********************************/
867
+ /* Other OSRI functions */
868
+ /**********************************/
869
+
870
+ ISC_STATUS ISC_EXPORT isc_compile_request(ISC_STATUS*,
871
+ isc_db_handle*,
872
+ isc_req_handle*,
873
+ short,
874
+ const ISC_SCHAR*);
875
+
876
+ ISC_STATUS ISC_EXPORT isc_compile_request2(ISC_STATUS*,
877
+ isc_db_handle*,
878
+ isc_req_handle*,
879
+ short,
880
+ const ISC_SCHAR*);
881
+
882
+ ISC_STATUS ISC_EXPORT isc_ddl(ISC_STATUS*,
883
+ isc_db_handle*,
884
+ isc_tr_handle*,
885
+ short,
886
+ const ISC_SCHAR*);
887
+
888
+ ISC_STATUS ISC_EXPORT isc_prepare_transaction(ISC_STATUS*,
889
+ isc_tr_handle*);
890
+
891
+
892
+ ISC_STATUS ISC_EXPORT isc_receive(ISC_STATUS*,
893
+ isc_req_handle*,
894
+ short,
895
+ short,
896
+ void*,
897
+ short);
898
+
899
+ ISC_STATUS ISC_EXPORT isc_reconnect_transaction(ISC_STATUS*,
900
+ isc_db_handle*,
901
+ isc_tr_handle*,
902
+ short,
903
+ const ISC_SCHAR*);
904
+
905
+ ISC_STATUS ISC_EXPORT isc_release_request(ISC_STATUS*,
906
+ isc_req_handle*);
907
+
908
+ ISC_STATUS ISC_EXPORT isc_request_info(ISC_STATUS*,
909
+ isc_req_handle*,
910
+ short,
911
+ short,
912
+ const ISC_SCHAR*,
913
+ short,
914
+ ISC_SCHAR*);
915
+
916
+ ISC_STATUS ISC_EXPORT isc_seek_blob(ISC_STATUS*,
917
+ isc_blob_handle*,
918
+ short,
919
+ ISC_LONG,
920
+ ISC_LONG*);
921
+
922
+ ISC_STATUS ISC_EXPORT isc_send(ISC_STATUS*,
923
+ isc_req_handle*,
924
+ short,
925
+ short,
926
+ const void*,
927
+ short);
928
+
929
+ ISC_STATUS ISC_EXPORT isc_start_and_send(ISC_STATUS*,
930
+ isc_req_handle*,
931
+ isc_tr_handle*,
932
+ short,
933
+ short,
934
+ const void*,
935
+ short);
936
+
937
+ ISC_STATUS ISC_EXPORT isc_start_request(ISC_STATUS *,
938
+ isc_req_handle *,
939
+ isc_tr_handle *,
940
+ short);
941
+
942
+ ISC_STATUS ISC_EXPORT isc_unwind_request(ISC_STATUS *,
943
+ isc_tr_handle *,
944
+ short);
945
+
946
+ ISC_STATUS ISC_EXPORT isc_wait_for_event(ISC_STATUS*,
947
+ isc_db_handle*,
948
+ short,
949
+ const ISC_UCHAR*,
950
+ ISC_UCHAR*);
951
+
952
+
953
+ /*****************************/
954
+ /* Other Sql functions */
955
+ /*****************************/
956
+
957
+ ISC_STATUS ISC_EXPORT isc_close(ISC_STATUS*,
958
+ const ISC_SCHAR*);
959
+
960
+ ISC_STATUS ISC_EXPORT isc_declare(ISC_STATUS*,
961
+ const ISC_SCHAR*,
962
+ const ISC_SCHAR*);
963
+
964
+ ISC_STATUS ISC_EXPORT isc_describe(ISC_STATUS*,
965
+ const ISC_SCHAR*,
966
+ XSQLDA *);
967
+
968
+ ISC_STATUS ISC_EXPORT isc_describe_bind(ISC_STATUS*,
969
+ const ISC_SCHAR*,
970
+ XSQLDA*);
971
+
972
+ ISC_STATUS ISC_EXPORT isc_execute(ISC_STATUS*,
973
+ isc_tr_handle*,
974
+ const ISC_SCHAR*,
975
+ XSQLDA*);
976
+
977
+ ISC_STATUS ISC_EXPORT isc_execute_immediate(ISC_STATUS*,
978
+ isc_db_handle*,
979
+ isc_tr_handle*,
980
+ short*,
981
+ const ISC_SCHAR*);
982
+
983
+ ISC_STATUS ISC_EXPORT isc_fetch(ISC_STATUS*,
984
+ const ISC_SCHAR*,
985
+ XSQLDA*);
986
+
987
+ ISC_STATUS ISC_EXPORT isc_open(ISC_STATUS*,
988
+ isc_tr_handle*,
989
+ const ISC_SCHAR*,
990
+ XSQLDA*);
991
+
992
+ ISC_STATUS ISC_EXPORT isc_prepare(ISC_STATUS*,
993
+ isc_db_handle*,
994
+ isc_tr_handle*,
995
+ const ISC_SCHAR*,
996
+ short*,
997
+ const ISC_SCHAR*,
998
+ XSQLDA*);
999
+
1000
+
1001
+ /*************************************/
1002
+ /* Other Dynamic sql functions */
1003
+ /*************************************/
1004
+
1005
+ ISC_STATUS ISC_EXPORT isc_dsql_execute_m(ISC_STATUS*,
1006
+ isc_tr_handle*,
1007
+ isc_stmt_handle*,
1008
+ unsigned short,
1009
+ const ISC_SCHAR*,
1010
+ unsigned short,
1011
+ unsigned short,
1012
+ ISC_SCHAR*);
1013
+
1014
+ ISC_STATUS ISC_EXPORT isc_dsql_execute2_m(ISC_STATUS*,
1015
+ isc_tr_handle*,
1016
+ isc_stmt_handle*,
1017
+ unsigned short,
1018
+ const ISC_SCHAR*,
1019
+ unsigned short,
1020
+ unsigned short,
1021
+ const ISC_SCHAR*,
1022
+ unsigned short,
1023
+ ISC_SCHAR*,
1024
+ unsigned short,
1025
+ unsigned short,
1026
+ ISC_SCHAR*);
1027
+
1028
+ ISC_STATUS ISC_EXPORT isc_dsql_execute_immediate_m(ISC_STATUS*,
1029
+ isc_db_handle*,
1030
+ isc_tr_handle*,
1031
+ unsigned short,
1032
+ const ISC_SCHAR*,
1033
+ unsigned short,
1034
+ unsigned short,
1035
+ const ISC_SCHAR*,
1036
+ unsigned short,
1037
+ unsigned short,
1038
+ ISC_SCHAR*);
1039
+
1040
+ ISC_STATUS ISC_EXPORT isc_dsql_exec_immed3_m(ISC_STATUS*,
1041
+ isc_db_handle*,
1042
+ isc_tr_handle*,
1043
+ unsigned short,
1044
+ const ISC_SCHAR*,
1045
+ unsigned short,
1046
+ unsigned short,
1047
+ const ISC_SCHAR*,
1048
+ unsigned short,
1049
+ unsigned short,
1050
+ ISC_SCHAR*,
1051
+ unsigned short,
1052
+ ISC_SCHAR*,
1053
+ unsigned short,
1054
+ unsigned short,
1055
+ ISC_SCHAR*);
1056
+
1057
+ ISC_STATUS ISC_EXPORT isc_dsql_fetch_m(ISC_STATUS*,
1058
+ isc_stmt_handle*,
1059
+ unsigned short,
1060
+ const ISC_SCHAR*,
1061
+ unsigned short,
1062
+ unsigned short,
1063
+ ISC_SCHAR*);
1064
+
1065
+ ISC_STATUS ISC_EXPORT isc_dsql_insert_m(ISC_STATUS*,
1066
+ isc_stmt_handle*,
1067
+ unsigned short,
1068
+ const ISC_SCHAR*,
1069
+ unsigned short,
1070
+ unsigned short,
1071
+ const ISC_SCHAR*);
1072
+
1073
+ ISC_STATUS ISC_EXPORT isc_dsql_prepare_m(ISC_STATUS*,
1074
+ isc_tr_handle*,
1075
+ isc_stmt_handle*,
1076
+ unsigned short,
1077
+ const ISC_SCHAR*,
1078
+ unsigned short,
1079
+ unsigned short,
1080
+ const ISC_SCHAR*,
1081
+ unsigned short,
1082
+ ISC_SCHAR*);
1083
+
1084
+ ISC_STATUS ISC_EXPORT isc_dsql_release(ISC_STATUS*,
1085
+ const ISC_SCHAR*);
1086
+
1087
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_close(ISC_STATUS*,
1088
+ const ISC_SCHAR*);
1089
+
1090
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_declare(ISC_STATUS*,
1091
+ const ISC_SCHAR*,
1092
+ const ISC_SCHAR*);
1093
+
1094
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_describe(ISC_STATUS*,
1095
+ const ISC_SCHAR*,
1096
+ unsigned short,
1097
+ XSQLDA*);
1098
+
1099
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_describe_bind(ISC_STATUS*,
1100
+ const ISC_SCHAR*,
1101
+ unsigned short,
1102
+ XSQLDA*);
1103
+
1104
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_execute(ISC_STATUS*,
1105
+ isc_tr_handle*,
1106
+ const ISC_SCHAR*,
1107
+ unsigned short,
1108
+ XSQLDA*);
1109
+
1110
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_execute2(ISC_STATUS*,
1111
+ isc_tr_handle*,
1112
+ const ISC_SCHAR*,
1113
+ unsigned short,
1114
+ XSQLDA*,
1115
+ XSQLDA*);
1116
+
1117
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_execute_immed(ISC_STATUS*,
1118
+ isc_db_handle*,
1119
+ isc_tr_handle*,
1120
+ unsigned short,
1121
+ const ISC_SCHAR*,
1122
+ unsigned short,
1123
+ XSQLDA*);
1124
+
1125
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_fetch(ISC_STATUS*,
1126
+ const ISC_SCHAR*,
1127
+ unsigned short,
1128
+ XSQLDA*);
1129
+
1130
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_fetch_a(ISC_STATUS*,
1131
+ int*,
1132
+ const ISC_SCHAR*,
1133
+ ISC_USHORT,
1134
+ XSQLDA*);
1135
+
1136
+ void ISC_EXPORT isc_embed_dsql_length(const ISC_UCHAR*,
1137
+ ISC_USHORT*);
1138
+
1139
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_open(ISC_STATUS*,
1140
+ isc_tr_handle*,
1141
+ const ISC_SCHAR*,
1142
+ unsigned short,
1143
+ XSQLDA*);
1144
+
1145
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_open2(ISC_STATUS*,
1146
+ isc_tr_handle*,
1147
+ const ISC_SCHAR*,
1148
+ unsigned short,
1149
+ XSQLDA*,
1150
+ XSQLDA*);
1151
+
1152
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_insert(ISC_STATUS*,
1153
+ const ISC_SCHAR*,
1154
+ unsigned short,
1155
+ XSQLDA*);
1156
+
1157
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_prepare(ISC_STATUS*,
1158
+ isc_db_handle*,
1159
+ isc_tr_handle*,
1160
+ const ISC_SCHAR*,
1161
+ unsigned short,
1162
+ const ISC_SCHAR*,
1163
+ unsigned short,
1164
+ XSQLDA*);
1165
+
1166
+ ISC_STATUS ISC_EXPORT isc_embed_dsql_release(ISC_STATUS*,
1167
+ const ISC_SCHAR*);
1168
+
1169
+
1170
+ /******************************/
1171
+ /* Other Blob functions */
1172
+ /******************************/
1173
+
1174
+ BSTREAM* ISC_EXPORT BLOB_open(isc_blob_handle,
1175
+ ISC_SCHAR*,
1176
+ int);
1177
+
1178
+ int ISC_EXPORT BLOB_put(ISC_SCHAR,
1179
+ BSTREAM*);
1180
+
1181
+ int ISC_EXPORT BLOB_close(BSTREAM*);
1182
+
1183
+ int ISC_EXPORT BLOB_get(BSTREAM*);
1184
+
1185
+ int ISC_EXPORT BLOB_display(ISC_QUAD*,
1186
+ isc_db_handle,
1187
+ isc_tr_handle,
1188
+ const ISC_SCHAR*);
1189
+
1190
+ int ISC_EXPORT BLOB_dump(ISC_QUAD*,
1191
+ isc_db_handle,
1192
+ isc_tr_handle,
1193
+ const ISC_SCHAR*);
1194
+
1195
+ int ISC_EXPORT BLOB_edit(ISC_QUAD*,
1196
+ isc_db_handle,
1197
+ isc_tr_handle,
1198
+ const ISC_SCHAR*);
1199
+
1200
+ int ISC_EXPORT BLOB_load(ISC_QUAD*,
1201
+ isc_db_handle,
1202
+ isc_tr_handle,
1203
+ const ISC_SCHAR*);
1204
+
1205
+ int ISC_EXPORT BLOB_text_dump(ISC_QUAD*,
1206
+ isc_db_handle,
1207
+ isc_tr_handle,
1208
+ const ISC_SCHAR*);
1209
+
1210
+ int ISC_EXPORT BLOB_text_load(ISC_QUAD*,
1211
+ isc_db_handle,
1212
+ isc_tr_handle,
1213
+ const ISC_SCHAR*);
1214
+
1215
+ BSTREAM* ISC_EXPORT Bopen(ISC_QUAD*,
1216
+ isc_db_handle,
1217
+ isc_tr_handle,
1218
+ const ISC_SCHAR*);
1219
+
1220
+ /* Disabled, not found anywhere.
1221
+ BSTREAM* ISC_EXPORT Bopen2(ISC_QUAD*,
1222
+ isc_db_handle,
1223
+ isc_tr_handle,
1224
+ const ISC_SCHAR*,
1225
+ unsigned short);
1226
+ */
1227
+
1228
+
1229
+ /******************************/
1230
+ /* Other Misc functions */
1231
+ /******************************/
1232
+
1233
+ ISC_LONG ISC_EXPORT isc_ftof(const ISC_SCHAR*,
1234
+ const unsigned short,
1235
+ ISC_SCHAR*,
1236
+ const unsigned short);
1237
+
1238
+ ISC_STATUS ISC_EXPORT isc_print_blr(const ISC_SCHAR*,
1239
+ ISC_PRINT_CALLBACK,
1240
+ void*,
1241
+ short);
1242
+
1243
+ void ISC_EXPORT isc_set_debug(int);
1244
+
1245
+ void ISC_EXPORT isc_qtoq(const ISC_QUAD*,
1246
+ ISC_QUAD*);
1247
+
1248
+ void ISC_EXPORT isc_vtof(const ISC_SCHAR*,
1249
+ ISC_SCHAR*,
1250
+ unsigned short);
1251
+
1252
+ void ISC_EXPORT isc_vtov(const ISC_SCHAR*,
1253
+ ISC_SCHAR*,
1254
+ short);
1255
+
1256
+ int ISC_EXPORT isc_version(isc_db_handle*,
1257
+ ISC_VERSION_CALLBACK,
1258
+ void*);
1259
+
1260
+ ISC_LONG ISC_EXPORT isc_reset_fpe(ISC_USHORT);
1261
+
1262
+ uintptr_t ISC_EXPORT isc_baddress(ISC_SCHAR*);
1263
+ void ISC_EXPORT isc_baddress_s(const ISC_SCHAR*,
1264
+ uintptr_t*);
1265
+
1266
+ /*****************************************/
1267
+ /* Service manager functions */
1268
+ /*****************************************/
1269
+
1270
+ #define ADD_SPB_LENGTH(p, length) {*(p)++ = (length); \
1271
+ *(p)++ = (length) >> 8;}
1272
+
1273
+ #define ADD_SPB_NUMERIC(p, data) {*(p)++ = (ISC_SCHAR) (data); \
1274
+ *(p)++ = (ISC_SCHAR) ((data) >> 8); \
1275
+ *(p)++ = (ISC_SCHAR) ((data) >> 16); \
1276
+ *(p)++ = (ISC_SCHAR) ((data) >> 24);}
1277
+
1278
+ ISC_STATUS ISC_EXPORT isc_service_attach(ISC_STATUS*,
1279
+ unsigned short,
1280
+ const ISC_SCHAR*,
1281
+ isc_svc_handle*,
1282
+ unsigned short,
1283
+ const ISC_SCHAR*);
1284
+
1285
+ ISC_STATUS ISC_EXPORT isc_service_detach(ISC_STATUS *,
1286
+ isc_svc_handle *);
1287
+
1288
+ ISC_STATUS ISC_EXPORT isc_service_query(ISC_STATUS*,
1289
+ isc_svc_handle*,
1290
+ isc_resv_handle*,
1291
+ unsigned short,
1292
+ const ISC_SCHAR*,
1293
+ unsigned short,
1294
+ const ISC_SCHAR*,
1295
+ unsigned short,
1296
+ ISC_SCHAR*);
1297
+
1298
+ ISC_STATUS ISC_EXPORT isc_service_start(ISC_STATUS*,
1299
+ isc_svc_handle*,
1300
+ isc_resv_handle*,
1301
+ unsigned short,
1302
+ const ISC_SCHAR*);
1303
+
1304
+
1305
+ /********************************/
1306
+ /* Client information functions */
1307
+ /********************************/
1308
+
1309
+ void ISC_EXPORT isc_get_client_version ( ISC_SCHAR *);
1310
+ int ISC_EXPORT isc_get_client_major_version ();
1311
+ int ISC_EXPORT isc_get_client_minor_version ();
1312
+
1313
+ #ifdef __cplusplus
1314
+ } /* extern "C" */
1315
+ #endif
1316
+
1317
+
1318
+ /***************************************************/
1319
+ /* Actions to pass to the blob filter (ctl_source) */
1320
+ /***************************************************/
1321
+
1322
+ #define isc_blob_filter_open 0
1323
+ #define isc_blob_filter_get_segment 1
1324
+ #define isc_blob_filter_close 2
1325
+ #define isc_blob_filter_create 3
1326
+ #define isc_blob_filter_put_segment 4
1327
+ #define isc_blob_filter_alloc 5
1328
+ #define isc_blob_filter_free 6
1329
+ #define isc_blob_filter_seek 7
1330
+
1331
+ /*******************/
1332
+ /* Blr definitions */
1333
+ /*******************/
1334
+
1335
+
1336
+ #ifndef JRD_BLR_H
1337
+ #define JRD_BLR_H
1338
+
1339
+ #define blr_text (unsigned char)14
1340
+ #define blr_text2 (unsigned char)15
1341
+ #define blr_short (unsigned char)7
1342
+ #define blr_long (unsigned char)8
1343
+ #define blr_quad (unsigned char)9
1344
+ #define blr_float (unsigned char)10
1345
+ #define blr_double (unsigned char)27
1346
+ #define blr_d_float (unsigned char)11
1347
+ #define blr_timestamp (unsigned char)35
1348
+ #define blr_varying (unsigned char)37
1349
+ #define blr_varying2 (unsigned char)38
1350
+ #define blr_blob (unsigned short)261
1351
+ #define blr_cstring (unsigned char)40
1352
+ #define blr_cstring2 (unsigned char)41
1353
+ #define blr_blob_id (unsigned char)45
1354
+ #define blr_sql_date (unsigned char)12
1355
+ #define blr_sql_time (unsigned char)13
1356
+ #define blr_int64 (unsigned char)16
1357
+ #define blr_blob2 (unsigned char)17
1358
+ #define blr_domain_name (unsigned char)18
1359
+ #define blr_domain_name2 (unsigned char)19
1360
+ #define blr_not_nullable (unsigned char)20
1361
+
1362
+ #define blr_domain_type_of (unsigned char)0
1363
+ #define blr_domain_full (unsigned char)1
1364
+
1365
+ #define blr_date blr_timestamp
1366
+
1367
+ #define blr_inner (unsigned char)0
1368
+ #define blr_left (unsigned char)1
1369
+ #define blr_right (unsigned char)2
1370
+ #define blr_full (unsigned char)3
1371
+
1372
+ #define blr_gds_code (unsigned char)0
1373
+ #define blr_sql_code (unsigned char)1
1374
+ #define blr_exception (unsigned char)2
1375
+ #define blr_trigger_code (unsigned char)3
1376
+ #define blr_default_code (unsigned char)4
1377
+ #define blr_raise (unsigned char)5
1378
+ #define blr_exception_msg (unsigned char)6
1379
+
1380
+ #define blr_version4 (unsigned char)4
1381
+ #define blr_version5 (unsigned char)5
1382
+ #define blr_eoc (unsigned char)76
1383
+ #define blr_end (unsigned char)255
1384
+
1385
+ #define blr_assignment (unsigned char)1
1386
+ #define blr_begin (unsigned char)2
1387
+ #define blr_dcl_variable (unsigned char)3
1388
+ #define blr_message (unsigned char)4
1389
+ #define blr_erase (unsigned char)5
1390
+ #define blr_fetch (unsigned char)6
1391
+ #define blr_for (unsigned char)7
1392
+ #define blr_if (unsigned char)8
1393
+ #define blr_loop (unsigned char)9
1394
+ #define blr_modify (unsigned char)10
1395
+ #define blr_handler (unsigned char)11
1396
+ #define blr_receive (unsigned char)12
1397
+ #define blr_select (unsigned char)13
1398
+ #define blr_send (unsigned char)14
1399
+ #define blr_store (unsigned char)15
1400
+ #define blr_label (unsigned char)17
1401
+ #define blr_leave (unsigned char)18
1402
+ #define blr_store2 (unsigned char)19
1403
+ #define blr_post (unsigned char)20
1404
+ #define blr_literal (unsigned char)21
1405
+ #define blr_dbkey (unsigned char)22
1406
+ #define blr_field (unsigned char)23
1407
+ #define blr_fid (unsigned char)24
1408
+ #define blr_parameter (unsigned char)25
1409
+ #define blr_variable (unsigned char)26
1410
+ #define blr_average (unsigned char)27
1411
+ #define blr_count (unsigned char)28
1412
+ #define blr_maximum (unsigned char)29
1413
+ #define blr_minimum (unsigned char)30
1414
+ #define blr_total (unsigned char)31
1415
+
1416
+ #define blr_add (unsigned char)34
1417
+ #define blr_subtract (unsigned char)35
1418
+ #define blr_multiply (unsigned char)36
1419
+ #define blr_divide (unsigned char)37
1420
+ #define blr_negate (unsigned char)38
1421
+ #define blr_concatenate (unsigned char)39
1422
+ #define blr_substring (unsigned char)40
1423
+ #define blr_parameter2 (unsigned char)41
1424
+ #define blr_from (unsigned char)42
1425
+ #define blr_via (unsigned char)43
1426
+ #define blr_parameter2_old (unsigned char)44
1427
+ #define blr_user_name (unsigned char)44
1428
+ #define blr_null (unsigned char)45
1429
+
1430
+ #define blr_equiv (unsigned char)46
1431
+ #define blr_eql (unsigned char)47
1432
+ #define blr_neq (unsigned char)48
1433
+ #define blr_gtr (unsigned char)49
1434
+ #define blr_geq (unsigned char)50
1435
+ #define blr_lss (unsigned char)51
1436
+ #define blr_leq (unsigned char)52
1437
+ #define blr_containing (unsigned char)53
1438
+ #define blr_matching (unsigned char)54
1439
+ #define blr_starting (unsigned char)55
1440
+ #define blr_between (unsigned char)56
1441
+ #define blr_or (unsigned char)57
1442
+ #define blr_and (unsigned char)58
1443
+ #define blr_not (unsigned char)59
1444
+ #define blr_any (unsigned char)60
1445
+ #define blr_missing (unsigned char)61
1446
+ #define blr_unique (unsigned char)62
1447
+ #define blr_like (unsigned char)63
1448
+
1449
+ #define blr_rse (unsigned char)67
1450
+ #define blr_first (unsigned char)68
1451
+ #define blr_project (unsigned char)69
1452
+ #define blr_sort (unsigned char)70
1453
+ #define blr_boolean (unsigned char)71
1454
+ #define blr_ascending (unsigned char)72
1455
+ #define blr_descending (unsigned char)73
1456
+ #define blr_relation (unsigned char)74
1457
+ #define blr_rid (unsigned char)75
1458
+ #define blr_union (unsigned char)76
1459
+ #define blr_map (unsigned char)77
1460
+ #define blr_group_by (unsigned char)78
1461
+ #define blr_aggregate (unsigned char)79
1462
+ #define blr_join_type (unsigned char)80
1463
+
1464
+ #define blr_agg_count (unsigned char)83
1465
+ #define blr_agg_max (unsigned char)84
1466
+ #define blr_agg_min (unsigned char)85
1467
+ #define blr_agg_total (unsigned char)86
1468
+ #define blr_agg_average (unsigned char)87
1469
+ #define blr_parameter3 (unsigned char)88
1470
+ #define blr_run_max (unsigned char)89
1471
+ #define blr_run_min (unsigned char)90
1472
+ #define blr_run_total (unsigned char)91
1473
+ #define blr_run_average (unsigned char)92
1474
+ #define blr_agg_count2 (unsigned char)93
1475
+ #define blr_agg_count_distinct (unsigned char)94
1476
+ #define blr_agg_total_distinct (unsigned char)95
1477
+ #define blr_agg_average_distinct (unsigned char)96
1478
+
1479
+ #define blr_function (unsigned char)100
1480
+ #define blr_gen_id (unsigned char)101
1481
+ #define blr_prot_mask (unsigned char)102
1482
+ #define blr_upcase (unsigned char)103
1483
+ #define blr_lock_state (unsigned char)104
1484
+ #define blr_value_if (unsigned char)105
1485
+ #define blr_matching2 (unsigned char)106
1486
+ #define blr_index (unsigned char)107
1487
+ #define blr_ansi_like (unsigned char)108
1488
+
1489
+ #define blr_seek (unsigned char)112
1490
+
1491
+ #define blr_continue (unsigned char)0
1492
+ #define blr_forward (unsigned char)1
1493
+ #define blr_backward (unsigned char)2
1494
+ #define blr_bof_forward (unsigned char)3
1495
+ #define blr_eof_backward (unsigned char)4
1496
+
1497
+ #define blr_run_count (unsigned char)118
1498
+ #define blr_rs_stream (unsigned char)119
1499
+ #define blr_exec_proc (unsigned char)120
1500
+
1501
+ #define blr_procedure (unsigned char)124
1502
+ #define blr_pid (unsigned char)125
1503
+ #define blr_exec_pid (unsigned char)126
1504
+ #define blr_singular (unsigned char)127
1505
+ #define blr_abort (unsigned char)128
1506
+ #define blr_block (unsigned char)129
1507
+ #define blr_error_handler (unsigned char)130
1508
+
1509
+ #define blr_cast (unsigned char)131
1510
+
1511
+ #define blr_start_savepoint (unsigned char)134
1512
+ #define blr_end_savepoint (unsigned char)135
1513
+
1514
+ #define blr_plan (unsigned char)139
1515
+ #define blr_merge (unsigned char)140
1516
+ #define blr_join (unsigned char)141
1517
+ #define blr_sequential (unsigned char)142
1518
+ #define blr_navigational (unsigned char)143
1519
+ #define blr_indices (unsigned char)144
1520
+ #define blr_retrieve (unsigned char)145
1521
+
1522
+ #define blr_relation2 (unsigned char)146
1523
+ #define blr_rid2 (unsigned char)147
1524
+
1525
+ #define blr_set_generator (unsigned char)150
1526
+
1527
+ #define blr_ansi_any (unsigned char)151
1528
+ #define blr_exists (unsigned char)152
1529
+
1530
+ #define blr_record_version (unsigned char)154
1531
+ #define blr_stall (unsigned char)155
1532
+
1533
+ #define blr_ansi_all (unsigned char)158
1534
+
1535
+ #define blr_extract (unsigned char)159
1536
+
1537
+ #define blr_extract_year (unsigned char)0
1538
+ #define blr_extract_month (unsigned char)1
1539
+ #define blr_extract_day (unsigned char)2
1540
+ #define blr_extract_hour (unsigned char)3
1541
+ #define blr_extract_minute (unsigned char)4
1542
+ #define blr_extract_second (unsigned char)5
1543
+ #define blr_extract_weekday (unsigned char)6
1544
+ #define blr_extract_yearday (unsigned char)7
1545
+ #define blr_extract_millisecond (unsigned char)8
1546
+ #define blr_extract_week (unsigned char)9
1547
+
1548
+ #define blr_current_date (unsigned char)160
1549
+ #define blr_current_timestamp (unsigned char)161
1550
+ #define blr_current_time (unsigned char)162
1551
+
1552
+ #define blr_post_arg (unsigned char)163
1553
+ #define blr_exec_into (unsigned char)164
1554
+ #define blr_user_savepoint (unsigned char)165
1555
+ #define blr_dcl_cursor (unsigned char)166
1556
+ #define blr_cursor_stmt (unsigned char)167
1557
+ #define blr_current_timestamp2 (unsigned char)168
1558
+ #define blr_current_time2 (unsigned char)169
1559
+ #define blr_agg_list (unsigned char)170
1560
+ #define blr_agg_list_distinct (unsigned char)171
1561
+ #define blr_modify2 (unsigned char)172
1562
+
1563
+ #define blr_current_role (unsigned char)174
1564
+ #define blr_skip (unsigned char)175
1565
+
1566
+ #define blr_exec_sql (unsigned char)176
1567
+ #define blr_internal_info (unsigned char)177
1568
+ #define blr_nullsfirst (unsigned char)178
1569
+ #define blr_writelock (unsigned char)179
1570
+ #define blr_nullslast (unsigned char)180
1571
+
1572
+ #define blr_lowcase (unsigned char)181
1573
+ #define blr_strlen (unsigned char)182
1574
+
1575
+ #define blr_strlen_bit (unsigned char)0
1576
+ #define blr_strlen_char (unsigned char)1
1577
+ #define blr_strlen_octet (unsigned char)2
1578
+
1579
+ #define blr_trim (unsigned char)183
1580
+
1581
+ #define blr_trim_both (unsigned char)0
1582
+ #define blr_trim_leading (unsigned char)1
1583
+ #define blr_trim_trailing (unsigned char)2
1584
+
1585
+ #define blr_trim_spaces (unsigned char)0
1586
+ #define blr_trim_characters (unsigned char)1
1587
+
1588
+ #define blr_savepoint_set (unsigned char)0
1589
+ #define blr_savepoint_release (unsigned char)1
1590
+ #define blr_savepoint_undo (unsigned char)2
1591
+ #define blr_savepoint_release_single (unsigned char)3
1592
+
1593
+ #define blr_cursor_open (unsigned char)0
1594
+ #define blr_cursor_close (unsigned char)1
1595
+ #define blr_cursor_fetch (unsigned char)2
1596
+
1597
+ #define blr_init_variable (unsigned char)184
1598
+ #define blr_recurse (unsigned char)185
1599
+ #define blr_sys_function (unsigned char)186
1600
+
1601
+ #endif
1602
+
1603
+
1604
+ #ifndef INCLUDE_CONSTS_PUB_H
1605
+ #define INCLUDE_CONSTS_PUB_H
1606
+
1607
+ #define isc_dpb_version1 1
1608
+ #define isc_dpb_cdd_pathname 1
1609
+ #define isc_dpb_allocation 2
1610
+ #define isc_dpb_journal 3
1611
+ #define isc_dpb_page_size 4
1612
+ #define isc_dpb_num_buffers 5
1613
+ #define isc_dpb_buffer_length 6
1614
+ #define isc_dpb_debug 7
1615
+ #define isc_dpb_garbage_collect 8
1616
+ #define isc_dpb_verify 9
1617
+ #define isc_dpb_sweep 10
1618
+ #define isc_dpb_enable_journal 11
1619
+ #define isc_dpb_disable_journal 12
1620
+ #define isc_dpb_dbkey_scope 13
1621
+ #define isc_dpb_number_of_users 14
1622
+ #define isc_dpb_trace 15
1623
+ #define isc_dpb_no_garbage_collect 16
1624
+ #define isc_dpb_damaged 17
1625
+ #define isc_dpb_license 18
1626
+ #define isc_dpb_sys_user_name 19
1627
+ #define isc_dpb_encrypt_key 20
1628
+ #define isc_dpb_activate_shadow 21
1629
+ #define isc_dpb_sweep_interval 22
1630
+ #define isc_dpb_delete_shadow 23
1631
+ #define isc_dpb_force_write 24
1632
+ #define isc_dpb_begin_log 25
1633
+ #define isc_dpb_quit_log 26
1634
+ #define isc_dpb_no_reserve 27
1635
+ #define isc_dpb_user_name 28
1636
+ #define isc_dpb_password 29
1637
+ #define isc_dpb_password_enc 30
1638
+ #define isc_dpb_sys_user_name_enc 31
1639
+ #define isc_dpb_interp 32
1640
+ #define isc_dpb_online_dump 33
1641
+ #define isc_dpb_old_file_size 34
1642
+ #define isc_dpb_old_num_files 35
1643
+ #define isc_dpb_old_file 36
1644
+ #define isc_dpb_old_start_page 37
1645
+ #define isc_dpb_old_start_seqno 38
1646
+ #define isc_dpb_old_start_file 39
1647
+ #define isc_dpb_drop_walfile 40
1648
+ #define isc_dpb_old_dump_id 41
1649
+ #define isc_dpb_wal_backup_dir 42
1650
+ #define isc_dpb_wal_chkptlen 43
1651
+ #define isc_dpb_wal_numbufs 44
1652
+ #define isc_dpb_wal_bufsize 45
1653
+ #define isc_dpb_wal_grp_cmt_wait 46
1654
+ #define isc_dpb_lc_messages 47
1655
+ #define isc_dpb_lc_ctype 48
1656
+ #define isc_dpb_cache_manager 49
1657
+ #define isc_dpb_shutdown 50
1658
+ #define isc_dpb_online 51
1659
+ #define isc_dpb_shutdown_delay 52
1660
+ #define isc_dpb_reserved 53
1661
+ #define isc_dpb_overwrite 54
1662
+ #define isc_dpb_sec_attach 55
1663
+ #define isc_dpb_disable_wal 56
1664
+ #define isc_dpb_connect_timeout 57
1665
+ #define isc_dpb_dummy_packet_interval 58
1666
+ #define isc_dpb_gbak_attach 59
1667
+ #define isc_dpb_sql_role_name 60
1668
+ #define isc_dpb_set_page_buffers 61
1669
+ #define isc_dpb_working_directory 62
1670
+ #define isc_dpb_sql_dialect 63
1671
+ #define isc_dpb_set_db_readonly 64
1672
+ #define isc_dpb_set_db_sql_dialect 65
1673
+ #define isc_dpb_gfix_attach 66
1674
+ #define isc_dpb_gstat_attach 67
1675
+ #define isc_dpb_set_db_charset 68
1676
+ #define isc_dpb_gsec_attach 69
1677
+ #define isc_dpb_address_path 70
1678
+ #define isc_dpb_process_id 71
1679
+ #define isc_dpb_no_db_triggers 72
1680
+ #define isc_dpb_trusted_auth 73
1681
+ #define isc_dpb_process_name 74
1682
+
1683
+ #define isc_dpb_address 1
1684
+
1685
+ #define isc_dpb_addr_protocol 1
1686
+ #define isc_dpb_addr_endpoint 2
1687
+
1688
+ #define isc_dpb_pages 1
1689
+ #define isc_dpb_records 2
1690
+ #define isc_dpb_indices 4
1691
+ #define isc_dpb_transactions 8
1692
+ #define isc_dpb_no_update 16
1693
+ #define isc_dpb_repair 32
1694
+ #define isc_dpb_ignore 64
1695
+
1696
+ #define isc_dpb_shut_cache 0x1
1697
+ #define isc_dpb_shut_attachment 0x2
1698
+ #define isc_dpb_shut_transaction 0x4
1699
+ #define isc_dpb_shut_force 0x8
1700
+ #define isc_dpb_shut_mode_mask 0x70
1701
+
1702
+ #define isc_dpb_shut_default 0x0
1703
+ #define isc_dpb_shut_normal 0x10
1704
+ #define isc_dpb_shut_multi 0x20
1705
+ #define isc_dpb_shut_single 0x30
1706
+ #define isc_dpb_shut_full 0x40
1707
+
1708
+ #define RDB_system 1
1709
+ #define RDB_id_assigned 2
1710
+
1711
+ #define isc_tpb_version1 1
1712
+ #define isc_tpb_version3 3
1713
+ #define isc_tpb_consistency 1
1714
+ #define isc_tpb_concurrency 2
1715
+ #define isc_tpb_shared 3
1716
+ #define isc_tpb_protected 4
1717
+ #define isc_tpb_exclusive 5
1718
+ #define isc_tpb_wait 6
1719
+ #define isc_tpb_nowait 7
1720
+ #define isc_tpb_read 8
1721
+ #define isc_tpb_write 9
1722
+ #define isc_tpb_lock_read 10
1723
+ #define isc_tpb_lock_write 11
1724
+ #define isc_tpb_verb_time 12
1725
+ #define isc_tpb_commit_time 13
1726
+ #define isc_tpb_ignore_limbo 14
1727
+ #define isc_tpb_read_committed 15
1728
+ #define isc_tpb_autocommit 16
1729
+ #define isc_tpb_rec_version 17
1730
+ #define isc_tpb_no_rec_version 18
1731
+ #define isc_tpb_restart_requests 19
1732
+ #define isc_tpb_no_auto_undo 20
1733
+ #define isc_tpb_lock_timeout 21
1734
+
1735
+ #define isc_bpb_version1 1
1736
+ #define isc_bpb_source_type 1
1737
+ #define isc_bpb_target_type 2
1738
+ #define isc_bpb_type 3
1739
+ #define isc_bpb_source_interp 4
1740
+ #define isc_bpb_target_interp 5
1741
+ #define isc_bpb_filter_parameter 6
1742
+ #define isc_bpb_storage 7
1743
+
1744
+ #define isc_bpb_type_segmented 0x0
1745
+ #define isc_bpb_type_stream 0x1
1746
+ #define isc_bpb_storage_main 0x0
1747
+ #define isc_bpb_storage_temp 0x2
1748
+
1749
+ #define isc_spb_version1 1
1750
+ #define isc_spb_current_version 2
1751
+ #define isc_spb_version isc_spb_current_version
1752
+ #define isc_spb_user_name isc_dpb_user_name
1753
+ #define isc_spb_sys_user_name isc_dpb_sys_user_name
1754
+ #define isc_spb_sys_user_name_enc isc_dpb_sys_user_name_enc
1755
+ #define isc_spb_password isc_dpb_password
1756
+ #define isc_spb_password_enc isc_dpb_password_enc
1757
+ #define isc_spb_command_line 105
1758
+ #define isc_spb_dbname 106
1759
+ #define isc_spb_verbose 107
1760
+ #define isc_spb_options 108
1761
+ #define isc_spb_address_path 109
1762
+ #define isc_spb_process_id 110
1763
+ #define isc_spb_trusted_auth 111
1764
+ #define isc_spb_process_name 112
1765
+
1766
+ #define isc_spb_connect_timeout isc_dpb_connect_timeout
1767
+ #define isc_spb_dummy_packet_interval isc_dpb_dummy_packet_interval
1768
+ #define isc_spb_sql_role_name isc_dpb_sql_role_name
1769
+
1770
+ #define isc_action_svc_backup 1
1771
+ #define isc_action_svc_restore 2
1772
+ #define isc_action_svc_repair 3
1773
+ #define isc_action_svc_add_user 4
1774
+ #define isc_action_svc_delete_user 5
1775
+ #define isc_action_svc_modify_user 6
1776
+ #define isc_action_svc_display_user 7
1777
+ #define isc_action_svc_properties 8
1778
+ #define isc_action_svc_add_license 9
1779
+ #define isc_action_svc_remove_license 10
1780
+ #define isc_action_svc_db_stats 11
1781
+ #define isc_action_svc_get_ib_log 12
1782
+ #define isc_action_svc_get_fb_log 12
1783
+
1784
+ #define isc_info_svc_svr_db_info 50
1785
+ #define isc_info_svc_get_license 51
1786
+ #define isc_info_svc_get_license_mask 52
1787
+ #define isc_info_svc_get_config 53
1788
+ #define isc_info_svc_version 54
1789
+ #define isc_info_svc_server_version 55
1790
+ #define isc_info_svc_implementation 56
1791
+ #define isc_info_svc_capabilities 57
1792
+ #define isc_info_svc_user_dbpath 58
1793
+ #define isc_info_svc_get_env 59
1794
+ #define isc_info_svc_get_env_lock 60
1795
+ #define isc_info_svc_get_env_msg 61
1796
+ #define isc_info_svc_line 62
1797
+ #define isc_info_svc_to_eof 63
1798
+ #define isc_info_svc_timeout 64
1799
+ #define isc_info_svc_get_licensed_users 65
1800
+ #define isc_info_svc_limbo_trans 66
1801
+ #define isc_info_svc_running 67
1802
+ #define isc_info_svc_get_users 68
1803
+
1804
+ #define isc_spb_sec_userid 5
1805
+ #define isc_spb_sec_groupid 6
1806
+ #define isc_spb_sec_username 7
1807
+ #define isc_spb_sec_password 8
1808
+ #define isc_spb_sec_groupname 9
1809
+ #define isc_spb_sec_firstname 10
1810
+ #define isc_spb_sec_middlename 11
1811
+ #define isc_spb_sec_lastname 12
1812
+
1813
+ #define isc_spb_lic_key 5
1814
+ #define isc_spb_lic_id 6
1815
+ #define isc_spb_lic_desc 7
1816
+
1817
+ #define isc_spb_bkp_file 5
1818
+ #define isc_spb_bkp_factor 6
1819
+ #define isc_spb_bkp_length 7
1820
+ #define isc_spb_bkp_ignore_checksums 0x01
1821
+ #define isc_spb_bkp_ignore_limbo 0x02
1822
+ #define isc_spb_bkp_metadata_only 0x04
1823
+ #define isc_spb_bkp_no_garbage_collect 0x08
1824
+ #define isc_spb_bkp_old_descriptions 0x10
1825
+ #define isc_spb_bkp_non_transportable 0x20
1826
+ #define isc_spb_bkp_convert 0x40
1827
+ #define isc_spb_bkp_expand 0x80
1828
+
1829
+ #define isc_spb_prp_page_buffers 5
1830
+ #define isc_spb_prp_sweep_interval 6
1831
+ #define isc_spb_prp_shutdown_db 7
1832
+ #define isc_spb_prp_deny_new_attachments 9
1833
+ #define isc_spb_prp_deny_new_transactions 10
1834
+ #define isc_spb_prp_reserve_space 11
1835
+ #define isc_spb_prp_write_mode 12
1836
+ #define isc_spb_prp_access_mode 13
1837
+ #define isc_spb_prp_set_sql_dialect 14
1838
+ #define isc_spb_prp_activate 0x0100
1839
+ #define isc_spb_prp_db_online 0x0200
1840
+
1841
+ #define isc_spb_prp_res_use_full 35
1842
+ #define isc_spb_prp_res 36
1843
+
1844
+ #define isc_spb_prp_wm_async 37
1845
+ #define isc_spb_prp_wm_sync 38
1846
+
1847
+ #define isc_spb_prp_am_readonly 39
1848
+ #define isc_spb_prp_am_readwrite 40
1849
+
1850
+ #define isc_spb_rpr_commit_trans 15
1851
+ #define isc_spb_rpr_rollback_trans 34
1852
+ #define isc_spb_rpr_recover_two_phase 17
1853
+ #define isc_spb_tra_id 18
1854
+ #define isc_spb_single_tra_id 19
1855
+ #define isc_spb_multi_tra_id 20
1856
+ #define isc_spb_tra_state 21
1857
+ #define isc_spb_tra_state_limbo 22
1858
+ #define isc_spb_tra_state_commit 23
1859
+ #define isc_spb_tra_state_rollback 24
1860
+ #define isc_spb_tra_state_unknown 25
1861
+ #define isc_spb_tra_host_site 26
1862
+ #define isc_spb_tra_remote_site 27
1863
+ #define isc_spb_tra_db_path 28
1864
+ #define isc_spb_tra_advise 29
1865
+ #define isc_spb_tra_advise_commit 30
1866
+ #define isc_spb_tra_advise_rollback 31
1867
+ #define isc_spb_tra_advise_unknown 33
1868
+
1869
+ #define isc_spb_rpr_validate_db 0x01
1870
+ #define isc_spb_rpr_sweep_db 0x02
1871
+ #define isc_spb_rpr_mend_db 0x04
1872
+ #define isc_spb_rpr_list_limbo_trans 0x08
1873
+ #define isc_spb_rpr_check_db 0x10
1874
+ #define isc_spb_rpr_ignore_checksum 0x20
1875
+ #define isc_spb_rpr_kill_shadows 0x40
1876
+ #define isc_spb_rpr_full 0x80
1877
+
1878
+ #define isc_spb_res_buffers 9
1879
+ #define isc_spb_res_page_size 10
1880
+ #define isc_spb_res_length 11
1881
+ #define isc_spb_res_access_mode 12
1882
+ #define isc_spb_res_deactivate_idx 0x0100
1883
+ #define isc_spb_res_no_shadow 0x0200
1884
+ #define isc_spb_res_no_validity 0x0400
1885
+ #define isc_spb_res_one_at_a_time 0x0800
1886
+ #define isc_spb_res_replace 0x1000
1887
+ #define isc_spb_res_create 0x2000
1888
+ #define isc_spb_res_use_all_space 0x4000
1889
+
1890
+ #define isc_spb_res_am_readonly isc_spb_prp_am_readonly
1891
+ #define isc_spb_res_am_readwrite isc_spb_prp_am_readwrite
1892
+
1893
+ #define isc_spb_num_att 5
1894
+ #define isc_spb_num_db 6
1895
+
1896
+ #define isc_spb_sts_data_pages 0x01
1897
+ #define isc_spb_sts_db_log 0x02
1898
+ #define isc_spb_sts_hdr_pages 0x04
1899
+ #define isc_spb_sts_idx_pages 0x08
1900
+ #define isc_spb_sts_sys_relations 0x10
1901
+ #define isc_spb_sts_record_versions 0x20
1902
+ #define isc_spb_sts_table 0x40
1903
+ #define isc_spb_sts_nocreation 0x80
1904
+
1905
+ #define isc_dyn_version_1 1
1906
+ #define isc_dyn_eoc 255
1907
+
1908
+ #define isc_dyn_begin 2
1909
+ #define isc_dyn_end 3
1910
+ #define isc_dyn_if 4
1911
+ #define isc_dyn_def_database 5
1912
+ #define isc_dyn_def_global_fld 6
1913
+ #define isc_dyn_def_local_fld 7
1914
+ #define isc_dyn_def_idx 8
1915
+ #define isc_dyn_def_rel 9
1916
+ #define isc_dyn_def_sql_fld 10
1917
+ #define isc_dyn_def_view 12
1918
+ #define isc_dyn_def_trigger 15
1919
+ #define isc_dyn_def_security_class 120
1920
+ #define isc_dyn_def_dimension 140
1921
+ #define isc_dyn_def_generator 24
1922
+ #define isc_dyn_def_function 25
1923
+ #define isc_dyn_def_filter 26
1924
+ #define isc_dyn_def_function_arg 27
1925
+ #define isc_dyn_def_shadow 34
1926
+ #define isc_dyn_def_trigger_msg 17
1927
+ #define isc_dyn_def_file 36
1928
+ #define isc_dyn_mod_database 39
1929
+ #define isc_dyn_mod_rel 11
1930
+ #define isc_dyn_mod_global_fld 13
1931
+ #define isc_dyn_mod_idx 102
1932
+ #define isc_dyn_mod_local_fld 14
1933
+ #define isc_dyn_mod_sql_fld 216
1934
+ #define isc_dyn_mod_view 16
1935
+ #define isc_dyn_mod_security_class 122
1936
+ #define isc_dyn_mod_trigger 113
1937
+ #define isc_dyn_mod_trigger_msg 28
1938
+ #define isc_dyn_delete_database 18
1939
+ #define isc_dyn_delete_rel 19
1940
+ #define isc_dyn_delete_global_fld 20
1941
+ #define isc_dyn_delete_local_fld 21
1942
+ #define isc_dyn_delete_idx 22
1943
+ #define isc_dyn_delete_security_class 123
1944
+ #define isc_dyn_delete_dimensions 143
1945
+ #define isc_dyn_delete_trigger 23
1946
+ #define isc_dyn_delete_trigger_msg 29
1947
+ #define isc_dyn_delete_filter 32
1948
+ #define isc_dyn_delete_function 33
1949
+ #define isc_dyn_delete_shadow 35
1950
+ #define isc_dyn_grant 30
1951
+ #define isc_dyn_revoke 31
1952
+ #define isc_dyn_def_primary_key 37
1953
+ #define isc_dyn_def_foreign_key 38
1954
+ #define isc_dyn_def_unique 40
1955
+ #define isc_dyn_def_procedure 164
1956
+ #define isc_dyn_delete_procedure 165
1957
+ #define isc_dyn_def_parameter 135
1958
+ #define isc_dyn_delete_parameter 136
1959
+ #define isc_dyn_mod_procedure 175
1960
+
1961
+ #define isc_dyn_def_exception 181
1962
+ #define isc_dyn_mod_exception 182
1963
+ #define isc_dyn_del_exception 183
1964
+
1965
+ #define isc_dyn_def_difference 220
1966
+ #define isc_dyn_drop_difference 221
1967
+ #define isc_dyn_begin_backup 222
1968
+ #define isc_dyn_end_backup 223
1969
+ #define isc_dyn_debug_info 240
1970
+
1971
+ #define isc_dyn_view_blr 43
1972
+ #define isc_dyn_view_source 44
1973
+ #define isc_dyn_view_relation 45
1974
+ #define isc_dyn_view_context 46
1975
+ #define isc_dyn_view_context_name 47
1976
+
1977
+ #define isc_dyn_rel_name 50
1978
+ #define isc_dyn_fld_name 51
1979
+ #define isc_dyn_new_fld_name 215
1980
+ #define isc_dyn_idx_name 52
1981
+ #define isc_dyn_description 53
1982
+ #define isc_dyn_security_class 54
1983
+ #define isc_dyn_system_flag 55
1984
+ #define isc_dyn_update_flag 56
1985
+ #define isc_dyn_prc_name 166
1986
+ #define isc_dyn_prm_name 137
1987
+ #define isc_dyn_sql_object 196
1988
+ #define isc_dyn_fld_character_set_name 174
1989
+
1990
+ #define isc_dyn_rel_dbkey_length 61
1991
+ #define isc_dyn_rel_store_trig 62
1992
+ #define isc_dyn_rel_modify_trig 63
1993
+ #define isc_dyn_rel_erase_trig 64
1994
+ #define isc_dyn_rel_store_trig_source 65
1995
+ #define isc_dyn_rel_modify_trig_source 66
1996
+ #define isc_dyn_rel_erase_trig_source 67
1997
+ #define isc_dyn_rel_ext_file 68
1998
+ #define isc_dyn_rel_sql_protection 69
1999
+ #define isc_dyn_rel_constraint 162
2000
+ #define isc_dyn_delete_rel_constraint 163
2001
+
2002
+ #define isc_dyn_rel_temporary 238
2003
+ #define isc_dyn_rel_temp_global_preserve 1
2004
+ #define isc_dyn_rel_temp_global_delete 2
2005
+
2006
+ #define isc_dyn_fld_type 70
2007
+ #define isc_dyn_fld_length 71
2008
+ #define isc_dyn_fld_scale 72
2009
+ #define isc_dyn_fld_sub_type 73
2010
+ #define isc_dyn_fld_segment_length 74
2011
+ #define isc_dyn_fld_query_header 75
2012
+ #define isc_dyn_fld_edit_string 76
2013
+ #define isc_dyn_fld_validation_blr 77
2014
+ #define isc_dyn_fld_validation_source 78
2015
+ #define isc_dyn_fld_computed_blr 79
2016
+ #define isc_dyn_fld_computed_source 80
2017
+ #define isc_dyn_fld_missing_value 81
2018
+ #define isc_dyn_fld_default_value 82
2019
+ #define isc_dyn_fld_query_name 83
2020
+ #define isc_dyn_fld_dimensions 84
2021
+ #define isc_dyn_fld_not_null 85
2022
+ #define isc_dyn_fld_precision 86
2023
+ #define isc_dyn_fld_char_length 172
2024
+ #define isc_dyn_fld_collation 173
2025
+ #define isc_dyn_fld_default_source 193
2026
+ #define isc_dyn_del_default 197
2027
+ #define isc_dyn_del_validation 198
2028
+ #define isc_dyn_single_validation 199
2029
+ #define isc_dyn_fld_character_set 203
2030
+
2031
+ #define isc_dyn_fld_source 90
2032
+ #define isc_dyn_fld_base_fld 91
2033
+ #define isc_dyn_fld_position 92
2034
+ #define isc_dyn_fld_update_flag 93
2035
+
2036
+ #define isc_dyn_idx_unique 100
2037
+ #define isc_dyn_idx_inactive 101
2038
+ #define isc_dyn_idx_type 103
2039
+ #define isc_dyn_idx_foreign_key 104
2040
+ #define isc_dyn_idx_ref_column 105
2041
+ #define isc_dyn_idx_statistic 204
2042
+
2043
+ #define isc_dyn_trg_type 110
2044
+ #define isc_dyn_trg_blr 111
2045
+ #define isc_dyn_trg_source 112
2046
+ #define isc_dyn_trg_name 114
2047
+ #define isc_dyn_trg_sequence 115
2048
+ #define isc_dyn_trg_inactive 116
2049
+ #define isc_dyn_trg_msg_number 117
2050
+ #define isc_dyn_trg_msg 118
2051
+
2052
+ #define isc_dyn_scl_acl 121
2053
+ #define isc_dyn_grant_user 130
2054
+ #define isc_dyn_grant_user_explicit 219
2055
+ #define isc_dyn_grant_proc 186
2056
+ #define isc_dyn_grant_trig 187
2057
+ #define isc_dyn_grant_view 188
2058
+ #define isc_dyn_grant_options 132
2059
+ #define isc_dyn_grant_user_group 205
2060
+ #define isc_dyn_grant_role 218
2061
+
2062
+ #define isc_dyn_dim_lower 141
2063
+ #define isc_dyn_dim_upper 142
2064
+
2065
+ #define isc_dyn_file_name 125
2066
+ #define isc_dyn_file_start 126
2067
+ #define isc_dyn_file_length 127
2068
+ #define isc_dyn_shadow_number 128
2069
+ #define isc_dyn_shadow_man_auto 129
2070
+ #define isc_dyn_shadow_conditional 130
2071
+
2072
+ #define isc_dyn_function_name 145
2073
+ #define isc_dyn_function_type 146
2074
+ #define isc_dyn_func_module_name 147
2075
+ #define isc_dyn_func_entry_point 148
2076
+ #define isc_dyn_func_return_argument 149
2077
+ #define isc_dyn_func_arg_position 150
2078
+ #define isc_dyn_func_mechanism 151
2079
+ #define isc_dyn_filter_in_subtype 152
2080
+ #define isc_dyn_filter_out_subtype 153
2081
+
2082
+ #define isc_dyn_description2 154
2083
+ #define isc_dyn_fld_computed_source2 155
2084
+ #define isc_dyn_fld_edit_string2 156
2085
+ #define isc_dyn_fld_query_header2 157
2086
+ #define isc_dyn_fld_validation_source2 158
2087
+ #define isc_dyn_trg_msg2 159
2088
+ #define isc_dyn_trg_source2 160
2089
+ #define isc_dyn_view_source2 161
2090
+ #define isc_dyn_xcp_msg2 184
2091
+
2092
+ #define isc_dyn_generator_name 95
2093
+ #define isc_dyn_generator_id 96
2094
+
2095
+ #define isc_dyn_prc_inputs 167
2096
+ #define isc_dyn_prc_outputs 168
2097
+ #define isc_dyn_prc_source 169
2098
+ #define isc_dyn_prc_blr 170
2099
+ #define isc_dyn_prc_source2 171
2100
+ #define isc_dyn_prc_type 239
2101
+
2102
+ #define isc_dyn_prc_t_selectable 1
2103
+ #define isc_dyn_prc_t_executable 2
2104
+
2105
+ #define isc_dyn_prm_number 138
2106
+ #define isc_dyn_prm_type 139
2107
+ #define isc_dyn_prm_mechanism 241
2108
+
2109
+ #define isc_dyn_xcp_msg 185
2110
+
2111
+ #define isc_dyn_foreign_key_update 205
2112
+ #define isc_dyn_foreign_key_delete 206
2113
+ #define isc_dyn_foreign_key_cascade 207
2114
+ #define isc_dyn_foreign_key_default 208
2115
+ #define isc_dyn_foreign_key_null 209
2116
+ #define isc_dyn_foreign_key_none 210
2117
+
2118
+ #define isc_dyn_def_sql_role 211
2119
+ #define isc_dyn_sql_role_name 212
2120
+ #define isc_dyn_grant_admin_options 213
2121
+ #define isc_dyn_del_sql_role 214
2122
+
2123
+ #define isc_dyn_delete_generator 217
2124
+
2125
+ #define isc_dyn_mod_function 224
2126
+ #define isc_dyn_mod_filter 225
2127
+ #define isc_dyn_mod_generator 226
2128
+ #define isc_dyn_mod_sql_role 227
2129
+ #define isc_dyn_mod_charset 228
2130
+ #define isc_dyn_mod_collation 229
2131
+ #define isc_dyn_mod_prc_parameter 230
2132
+
2133
+ #define isc_dyn_def_collation 231
2134
+ #define isc_dyn_coll_for_charset 232
2135
+ #define isc_dyn_coll_from 233
2136
+ #define isc_dyn_coll_from_external 239
2137
+ #define isc_dyn_coll_attribute 234
2138
+ #define isc_dyn_coll_specific_attributes_charset 235
2139
+ #define isc_dyn_coll_specific_attributes 236
2140
+ #define isc_dyn_del_collation 237
2141
+
2142
+ #define isc_dyn_last_dyn_value 242
2143
+
2144
+ #define isc_sdl_version1 1
2145
+ #define isc_sdl_eoc 255
2146
+ #define isc_sdl_relation 2
2147
+ #define isc_sdl_rid 3
2148
+ #define isc_sdl_field 4
2149
+ #define isc_sdl_fid 5
2150
+ #define isc_sdl_struct 6
2151
+ #define isc_sdl_variable 7
2152
+ #define isc_sdl_scalar 8
2153
+ #define isc_sdl_tiny_integer 9
2154
+ #define isc_sdl_short_integer 10
2155
+ #define isc_sdl_long_integer 11
2156
+ #define isc_sdl_literal 12
2157
+ #define isc_sdl_add 13
2158
+ #define isc_sdl_subtract 14
2159
+ #define isc_sdl_multiply 15
2160
+ #define isc_sdl_divide 16
2161
+ #define isc_sdl_negate 17
2162
+ #define isc_sdl_eql 18
2163
+ #define isc_sdl_neq 19
2164
+ #define isc_sdl_gtr 20
2165
+ #define isc_sdl_geq 21
2166
+ #define isc_sdl_lss 22
2167
+ #define isc_sdl_leq 23
2168
+ #define isc_sdl_and 24
2169
+ #define isc_sdl_or 25
2170
+ #define isc_sdl_not 26
2171
+ #define isc_sdl_while 27
2172
+ #define isc_sdl_assignment 28
2173
+ #define isc_sdl_label 29
2174
+ #define isc_sdl_leave 30
2175
+ #define isc_sdl_begin 31
2176
+ #define isc_sdl_end 32
2177
+ #define isc_sdl_do3 33
2178
+ #define isc_sdl_do2 34
2179
+ #define isc_sdl_do1 35
2180
+ #define isc_sdl_element 36
2181
+
2182
+ #define isc_interp_eng_ascii 0
2183
+ #define isc_interp_jpn_sjis 5
2184
+ #define isc_interp_jpn_euc 6
2185
+
2186
+ #define isc_blob_untyped 0
2187
+
2188
+ #define isc_blob_text 1
2189
+ #define isc_blob_blr 2
2190
+ #define isc_blob_acl 3
2191
+ #define isc_blob_ranges 4
2192
+ #define isc_blob_summary 5
2193
+ #define isc_blob_format 6
2194
+ #define isc_blob_tra 7
2195
+ #define isc_blob_extfile 8
2196
+ #define isc_blob_debug_info 9
2197
+ #define isc_blob_max_predefined_subtype 10
2198
+
2199
+ #define isc_blob_formatted_memo 20
2200
+ #define isc_blob_paradox_ole 21
2201
+ #define isc_blob_graphic 22
2202
+ #define isc_blob_dbase_ole 23
2203
+ #define isc_blob_typed_binary 24
2204
+
2205
+ #define isc_info_db_SQL_dialect 62
2206
+ #define isc_dpb_SQL_dialect 63
2207
+ #define isc_dpb_set_db_SQL_dialect 65
2208
+
2209
+ #define fb_dbg_version 1
2210
+ #define fb_dbg_end 255
2211
+ #define fb_dbg_map_src2blr 2
2212
+ #define fb_dbg_map_varname 3
2213
+ #define fb_dbg_map_argument 4
2214
+
2215
+ #define fb_dbg_arg_input 0
2216
+ #define fb_dbg_arg_output 1
2217
+
2218
+ #endif
2219
+
2220
+ /*********************************/
2221
+ /* Information call declarations */
2222
+ /*********************************/
2223
+
2224
+
2225
+ #ifndef JRD_INF_PUB_H
2226
+ #define JRD_INF_PUB_H
2227
+
2228
+ #define isc_info_end 1
2229
+ #define isc_info_truncated 2
2230
+ #define isc_info_error 3
2231
+ #define isc_info_data_not_ready 4
2232
+ #define isc_info_length 126
2233
+ #define isc_info_flag_end 127
2234
+
2235
+ enum db_info_types
2236
+ {
2237
+ isc_info_db_id = 4,
2238
+ isc_info_reads = 5,
2239
+ isc_info_writes = 6,
2240
+ isc_info_fetches = 7,
2241
+ isc_info_marks = 8,
2242
+
2243
+ isc_info_implementation = 11,
2244
+ isc_info_isc_version = 12,
2245
+ isc_info_base_level = 13,
2246
+ isc_info_page_size = 14,
2247
+ isc_info_num_buffers = 15,
2248
+ isc_info_limbo = 16,
2249
+ isc_info_current_memory = 17,
2250
+ isc_info_max_memory = 18,
2251
+ isc_info_window_turns = 19,
2252
+ isc_info_license = 20,
2253
+
2254
+ isc_info_allocation = 21,
2255
+ isc_info_attachment_id = 22,
2256
+ isc_info_read_seq_count = 23,
2257
+ isc_info_read_idx_count = 24,
2258
+ isc_info_insert_count = 25,
2259
+ isc_info_update_count = 26,
2260
+ isc_info_delete_count = 27,
2261
+ isc_info_backout_count = 28,
2262
+ isc_info_purge_count = 29,
2263
+ isc_info_expunge_count = 30,
2264
+
2265
+ isc_info_sweep_interval = 31,
2266
+ isc_info_ods_version = 32,
2267
+ isc_info_ods_minor_version = 33,
2268
+ isc_info_no_reserve = 34,
2269
+
2270
+ isc_info_logfile = 35,
2271
+ isc_info_cur_logfile_name = 36,
2272
+ isc_info_cur_log_part_offset = 37,
2273
+ isc_info_num_wal_buffers = 38,
2274
+ isc_info_wal_buffer_size = 39,
2275
+ isc_info_wal_ckpt_length = 40,
2276
+
2277
+ isc_info_wal_cur_ckpt_interval = 41,
2278
+ isc_info_wal_prv_ckpt_fname = 42,
2279
+ isc_info_wal_prv_ckpt_poffset = 43,
2280
+ isc_info_wal_recv_ckpt_fname = 44,
2281
+ isc_info_wal_recv_ckpt_poffset = 45,
2282
+ isc_info_wal_grpc_wait_usecs = 47,
2283
+ isc_info_wal_num_io = 48,
2284
+ isc_info_wal_avg_io_size = 49,
2285
+ isc_info_wal_num_commits = 50,
2286
+ isc_info_wal_avg_grpc_size = 51,
2287
+
2288
+ isc_info_forced_writes = 52,
2289
+ isc_info_user_names = 53,
2290
+ isc_info_page_errors = 54,
2291
+ isc_info_record_errors = 55,
2292
+ isc_info_bpage_errors = 56,
2293
+ isc_info_dpage_errors = 57,
2294
+ isc_info_ipage_errors = 58,
2295
+ isc_info_ppage_errors = 59,
2296
+ isc_info_tpage_errors = 60,
2297
+
2298
+ isc_info_set_page_buffers = 61,
2299
+ isc_info_db_sql_dialect = 62,
2300
+ isc_info_db_read_only = 63,
2301
+ isc_info_db_size_in_pages = 64,
2302
+
2303
+ frb_info_att_charset = 101,
2304
+ isc_info_db_class = 102,
2305
+ isc_info_firebird_version = 103,
2306
+ isc_info_oldest_transaction = 104,
2307
+ isc_info_oldest_active = 105,
2308
+ isc_info_oldest_snapshot = 106,
2309
+ isc_info_next_transaction = 107,
2310
+ isc_info_db_provider = 108,
2311
+ isc_info_active_transactions = 109,
2312
+ isc_info_active_tran_count = 110,
2313
+ isc_info_creation_date = 111,
2314
+ isc_info_db_file_size = 112,
2315
+
2316
+ isc_info_db_last_value
2317
+ };
2318
+
2319
+ #define isc_info_version isc_info_isc_version
2320
+
2321
+ enum info_db_implementations
2322
+ {
2323
+ isc_info_db_impl_rdb_vms = 1,
2324
+ isc_info_db_impl_rdb_eln = 2,
2325
+ isc_info_db_impl_rdb_eln_dev = 3,
2326
+ isc_info_db_impl_rdb_vms_y = 4,
2327
+ isc_info_db_impl_rdb_eln_y = 5,
2328
+ isc_info_db_impl_jri = 6,
2329
+ isc_info_db_impl_jsv = 7,
2330
+
2331
+ isc_info_db_impl_isc_apl_68K = 25,
2332
+ isc_info_db_impl_isc_vax_ultr = 26,
2333
+ isc_info_db_impl_isc_vms = 27,
2334
+ isc_info_db_impl_isc_sun_68k = 28,
2335
+ isc_info_db_impl_isc_os2 = 29,
2336
+ isc_info_db_impl_isc_sun4 = 30,
2337
+
2338
+ isc_info_db_impl_isc_hp_ux = 31,
2339
+ isc_info_db_impl_isc_sun_386i = 32,
2340
+ isc_info_db_impl_isc_vms_orcl = 33,
2341
+ isc_info_db_impl_isc_mac_aux = 34,
2342
+ isc_info_db_impl_isc_rt_aix = 35,
2343
+ isc_info_db_impl_isc_mips_ult = 36,
2344
+ isc_info_db_impl_isc_xenix = 37,
2345
+ isc_info_db_impl_isc_dg = 38,
2346
+ isc_info_db_impl_isc_hp_mpexl = 39,
2347
+ isc_info_db_impl_isc_hp_ux68K = 40,
2348
+
2349
+ isc_info_db_impl_isc_sgi = 41,
2350
+ isc_info_db_impl_isc_sco_unix = 42,
2351
+ isc_info_db_impl_isc_cray = 43,
2352
+ isc_info_db_impl_isc_imp = 44,
2353
+ isc_info_db_impl_isc_delta = 45,
2354
+ isc_info_db_impl_isc_next = 46,
2355
+ isc_info_db_impl_isc_dos = 47,
2356
+ isc_info_db_impl_m88K = 48,
2357
+ isc_info_db_impl_unixware = 49,
2358
+ isc_info_db_impl_isc_winnt_x86 = 50,
2359
+
2360
+ isc_info_db_impl_isc_epson = 51,
2361
+ isc_info_db_impl_alpha_osf = 52,
2362
+ isc_info_db_impl_alpha_vms = 53,
2363
+ isc_info_db_impl_netware_386 = 54,
2364
+ isc_info_db_impl_win_only = 55,
2365
+ isc_info_db_impl_ncr_3000 = 56,
2366
+ isc_info_db_impl_winnt_ppc = 57,
2367
+ isc_info_db_impl_dg_x86 = 58,
2368
+ isc_info_db_impl_sco_ev = 59,
2369
+ isc_info_db_impl_i386 = 60,
2370
+
2371
+ isc_info_db_impl_freebsd = 61,
2372
+ isc_info_db_impl_netbsd = 62,
2373
+ isc_info_db_impl_darwin_ppc = 63,
2374
+ isc_info_db_impl_sinixz = 64,
2375
+
2376
+ isc_info_db_impl_linux_sparc = 65,
2377
+ isc_info_db_impl_linux_amd64 = 66,
2378
+
2379
+ isc_info_db_impl_freebsd_amd64 = 67,
2380
+
2381
+ isc_info_db_impl_winnt_amd64 = 68,
2382
+
2383
+ isc_info_db_impl_linux_ppc = 69,
2384
+ isc_info_db_impl_darwin_x86 = 70,
2385
+ isc_info_db_impl_linux_mipsel = 71,
2386
+ isc_info_db_impl_linux_mips = 72,
2387
+ isc_info_db_impl_darwin_x64 = 73,
2388
+ isc_info_db_impl_sun_amd64 = 74,
2389
+
2390
+ isc_info_db_impl_linux_arm = 75,
2391
+ isc_info_db_impl_linux_ia64 = 76,
2392
+
2393
+ isc_info_db_impl_darwin_ppc64 = 77,
2394
+
2395
+ isc_info_db_impl_last_value
2396
+ };
2397
+
2398
+ #define isc_info_db_impl_isc_a isc_info_db_impl_isc_apl_68K
2399
+ #define isc_info_db_impl_isc_u isc_info_db_impl_isc_vax_ultr
2400
+ #define isc_info_db_impl_isc_v isc_info_db_impl_isc_vms
2401
+ #define isc_info_db_impl_isc_s isc_info_db_impl_isc_sun_68k
2402
+
2403
+ enum info_db_class
2404
+ {
2405
+ isc_info_db_class_access = 1,
2406
+ isc_info_db_class_y_valve = 2,
2407
+ isc_info_db_class_rem_int = 3,
2408
+ isc_info_db_class_rem_srvr = 4,
2409
+ isc_info_db_class_pipe_int = 7,
2410
+ isc_info_db_class_pipe_srvr = 8,
2411
+ isc_info_db_class_sam_int = 9,
2412
+ isc_info_db_class_sam_srvr = 10,
2413
+ isc_info_db_class_gateway = 11,
2414
+ isc_info_db_class_cache = 12,
2415
+ isc_info_db_class_classic_access = 13,
2416
+ isc_info_db_class_server_access = 14,
2417
+
2418
+ isc_info_db_class_last_value
2419
+ };
2420
+
2421
+ enum info_db_provider
2422
+ {
2423
+ isc_info_db_code_rdb_eln = 1,
2424
+ isc_info_db_code_rdb_vms = 2,
2425
+ isc_info_db_code_interbase = 3,
2426
+ isc_info_db_code_firebird = 4,
2427
+
2428
+ isc_info_db_code_last_value
2429
+ };
2430
+
2431
+ #define isc_info_number_messages 4
2432
+ #define isc_info_max_message 5
2433
+ #define isc_info_max_send 6
2434
+ #define isc_info_max_receive 7
2435
+ #define isc_info_state 8
2436
+ #define isc_info_message_number 9
2437
+ #define isc_info_message_size 10
2438
+ #define isc_info_request_cost 11
2439
+ #define isc_info_access_path 12
2440
+ #define isc_info_req_select_count 13
2441
+ #define isc_info_req_insert_count 14
2442
+ #define isc_info_req_update_count 15
2443
+ #define isc_info_req_delete_count 16
2444
+
2445
+ #define isc_info_rsb_end 0
2446
+ #define isc_info_rsb_begin 1
2447
+ #define isc_info_rsb_type 2
2448
+ #define isc_info_rsb_relation 3
2449
+ #define isc_info_rsb_plan 4
2450
+
2451
+ #define isc_info_rsb_unknown 1
2452
+ #define isc_info_rsb_indexed 2
2453
+ #define isc_info_rsb_navigate 3
2454
+ #define isc_info_rsb_sequential 4
2455
+ #define isc_info_rsb_cross 5
2456
+ #define isc_info_rsb_sort 6
2457
+ #define isc_info_rsb_first 7
2458
+ #define isc_info_rsb_boolean 8
2459
+ #define isc_info_rsb_union 9
2460
+ #define isc_info_rsb_aggregate 10
2461
+ #define isc_info_rsb_merge 11
2462
+ #define isc_info_rsb_ext_sequential 12
2463
+ #define isc_info_rsb_ext_indexed 13
2464
+ #define isc_info_rsb_ext_dbkey 14
2465
+ #define isc_info_rsb_left_cross 15
2466
+ #define isc_info_rsb_select 16
2467
+ #define isc_info_rsb_sql_join 17
2468
+ #define isc_info_rsb_simulate 18
2469
+ #define isc_info_rsb_sim_cross 19
2470
+ #define isc_info_rsb_once 20
2471
+ #define isc_info_rsb_procedure 21
2472
+ #define isc_info_rsb_skip 22
2473
+ #define isc_info_rsb_virt_sequential 23
2474
+ #define isc_info_rsb_recursive 24
2475
+
2476
+ #define isc_info_rsb_and 1
2477
+ #define isc_info_rsb_or 2
2478
+ #define isc_info_rsb_dbkey 3
2479
+ #define isc_info_rsb_index 4
2480
+
2481
+ #define isc_info_req_active 2
2482
+ #define isc_info_req_inactive 3
2483
+ #define isc_info_req_send 4
2484
+ #define isc_info_req_receive 5
2485
+ #define isc_info_req_select 6
2486
+ #define isc_info_req_sql_stall 7
2487
+
2488
+ #define isc_info_blob_num_segments 4
2489
+ #define isc_info_blob_max_segment 5
2490
+ #define isc_info_blob_total_length 6
2491
+ #define isc_info_blob_type 7
2492
+
2493
+ #define isc_info_tra_id 4
2494
+ #define isc_info_tra_oldest_interesting 5
2495
+ #define isc_info_tra_oldest_snapshot 6
2496
+ #define isc_info_tra_oldest_active 7
2497
+ #define isc_info_tra_isolation 8
2498
+ #define isc_info_tra_access 9
2499
+ #define isc_info_tra_lock_timeout 10
2500
+
2501
+ #define isc_info_tra_consistency 1
2502
+ #define isc_info_tra_concurrency 2
2503
+ #define isc_info_tra_read_committed 3
2504
+
2505
+ #define isc_info_tra_no_rec_version 0
2506
+ #define isc_info_tra_rec_version 1
2507
+
2508
+ #define isc_info_tra_readonly 0
2509
+ #define isc_info_tra_readwrite 1
2510
+
2511
+ #define isc_info_sql_select 4
2512
+ #define isc_info_sql_bind 5
2513
+ #define isc_info_sql_num_variables 6
2514
+ #define isc_info_sql_describe_vars 7
2515
+ #define isc_info_sql_describe_end 8
2516
+ #define isc_info_sql_sqlda_seq 9
2517
+ #define isc_info_sql_message_seq 10
2518
+ #define isc_info_sql_type 11
2519
+ #define isc_info_sql_sub_type 12
2520
+ #define isc_info_sql_scale 13
2521
+ #define isc_info_sql_length 14
2522
+ #define isc_info_sql_null_ind 15
2523
+ #define isc_info_sql_field 16
2524
+ #define isc_info_sql_relation 17
2525
+ #define isc_info_sql_owner 18
2526
+ #define isc_info_sql_alias 19
2527
+ #define isc_info_sql_sqlda_start 20
2528
+ #define isc_info_sql_stmt_type 21
2529
+ #define isc_info_sql_get_plan 22
2530
+ #define isc_info_sql_records 23
2531
+ #define isc_info_sql_batch_fetch 24
2532
+ #define isc_info_sql_relation_alias 25
2533
+
2534
+ #define isc_info_sql_stmt_select 1
2535
+ #define isc_info_sql_stmt_insert 2
2536
+ #define isc_info_sql_stmt_update 3
2537
+ #define isc_info_sql_stmt_delete 4
2538
+ #define isc_info_sql_stmt_ddl 5
2539
+ #define isc_info_sql_stmt_get_segment 6
2540
+ #define isc_info_sql_stmt_put_segment 7
2541
+ #define isc_info_sql_stmt_exec_procedure 8
2542
+ #define isc_info_sql_stmt_start_trans 9
2543
+ #define isc_info_sql_stmt_commit 10
2544
+ #define isc_info_sql_stmt_rollback 11
2545
+ #define isc_info_sql_stmt_select_for_upd 12
2546
+ #define isc_info_sql_stmt_set_generator 13
2547
+ #define isc_info_sql_stmt_savepoint 14
2548
+
2549
+ #endif
2550
+
2551
+
2552
+ #include "iberror.h"
2553
+
2554
+ #endif /* JRD_IBASE_H */
2555
+