+++ /dev/null
-/*\r
- * MODULE: ibase.h\r
- * DESCRIPTION: OSRI entrypoints and defines\r
- *\r
- * The contents of this file are subject to the Interbase Public\r
- * License Version 1.0 (the "License"); you may not use this file\r
- * except in compliance with the License. You may obtain a copy\r
- * of the License at http://www.Inprise.com/IPL.html\r
- *\r
- * Software distributed under the License is distributed on an\r
- * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express\r
- * or implied. See the License for the specific language governing\r
- * rights and limitations under the License.\r
- *\r
- * The Original Code was created by Inprise Corporation\r
- * and its predecessors. Portions created by Inprise Corporation are\r
- * Copyright (C) Inprise Corporation.\r
- *\r
- * All Rights Reserved.\r
- * Contributor(s): ______________________________________.\r
- * Added TCP_NO_DELAY option for superserver on Linux\r
- * FSG 16.03.2001\r
- * 2001.07.28: John Bellardo: Added blr_skip\r
- * 2001.09.18: Ann Harrison: New info codes\r
- * 17-Oct-2001 Mike Nordell: CPU affinity\r
- * 2001-04-16 Paul Beach: ISC_TIME_SECONDS_PRECISION_SCALE modified for HP10\r
- * Compiler Compatibility\r
- * 2002.02.15 Sean Leyne - Code Cleanup, removed obsolete ports:\r
- * - EPSON, XENIX, MAC (MAC_AUX), Cray and OS/2\r
- * 2002.10.29 Nickolay Samofatov: Added support for savepoints\r
- *\r
- * 2002.10.29 Sean Leyne - Removed support for obsolete IPX/SPX Protocol\r
- *\r
- */\r
-/*\r
-$Id: ibase.h,v 1.2 2007/05/17 08:39:25 faust Exp $\r
- */\r
-\r
-#ifndef JRD_IBASE_H\r
-#define JRD_IBASE_H\r
-\r
-\r
-/*\r
- *\r
- * The contents of this file are subject to the Mozilla Public\r
- * License Version 1.1 (the "License"); you may not use this file\r
- * except in compliance with the License. You may obtain a copy of\r
- * the License at http://www.mozilla.org/MPL/\r
- * Alternatively, the contents of this file may be used under the\r
- * terms of the GNU General Public License Version 2 or later (the\r
- * "GPL"), in which case the provisions of the GPL are applicable\r
- * instead of those above. You may obtain a copy of the Licence at\r
- * http://www.gnu.org/copyleft/gpl.html\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * Relevant for more details.\r
- *\r
- * This file was created by members of the firebird development team.\r
- * All individual contributions remain the Copyright (C) of those\r
- * individuals. Contributors to this file are either listed here or\r
- * can be obtained from a CVS history command.\r
- *\r
- * All rights reserved.\r
- *\r
- * Contributor(s):\r
- * Mike Nordel <tamlin@algonet.se>\r
- * Mark O'Donohue <mark.odonohue@ludwig.edu.au>\r
- *\r
- *\r
- * $Id: ibase.h,v 1.2 2007/05/17 08:39:25 faust Exp $\r
- *\r
- * 2002.02.15 Sean Leyne - Code Cleanup, removed obsolete "OS/2" port\r
- *\r
- */\r
-\r
-\r
-#ifndef INCLUDE_FB_TYPES_H\r
-#define INCLUDE_FB_TYPES_H\r
-\r
-\r
-/******************************************************************/\r
-/* Define type, export and other stuff based on c/c++ and Windows */\r
-/******************************************************************/\r
-\r
-#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__)\r
-#ifndef __GNUC__\r
-typedef __int64 ISC_INT64;\r
-typedef unsigned __int64 ISC_UINT64;\r
-#define ISC_INT64_DEFINED\r
-#endif\r
-#define ISC_EXPORT __stdcall\r
-#define ISC_EXPORT_VARARG __cdecl\r
-#else\r
-#define ISC_EXPORT\r
-#define ISC_EXPORT_VARARG\r
-#endif\r
-\r
-/*******************************************************************/\r
-/* 64 bit Integers */\r
-/*******************************************************************/\r
-\r
-#ifdef ISC_INT64_DEFINED\r
-#undef ISC_INT64_DEFINED\r
-#else\r
-//typedef long long int ISC_INT64;\r
-//typedef unsigned long long int ISC_UINT64;\r
-typedef int64_t ISC_INT64;\r
-typedef uint64_t ISC_UINT64;\r
-#endif\r
-\r
-// Nickolay: it is easier to assume that integer is at least 32-bit.\r
-// This comes from limitation that we cannot reliably detect datatype size at\r
-// compile time in cases when we do not control compilation (public headers) \r
-// We are not going to support 16-bit platforms, right?\r
-//\r
-// Temporarly restrict new definition until ULONG clash with Windows\r
-// type is solved. Win64 port is not possible before that point.\r
-// Cannot use SIZEOF_LONG define here because we are in a public header\r
-#if defined(_LP64) || defined(__LP64__) || defined(__arch64__)\r
- /* EKU: Firebird requires (S)LONG to be 32 bit */\r
-# define LONG_DEFINED\r
- typedef int SLONG;\r
- typedef unsigned int ULONG;\r
-#endif /* SIZEOF_LONG == 8 */\r
-\r
-\r
-\r
-/* Basic data types */\r
-\r
-\r
-#ifdef NOT_USED_OR_REPLACED\r
-typedef signed char SCHAR;\r
-#else\r
-/* TMN: TODO It seems SCHAR is used just about *everywhere* where a plain\r
- * "char" is really intended. This currently forces us to this bad definition.\r
- */\r
-typedef char SCHAR;\r
-#endif\r
-\r
-\r
-typedef unsigned char UCHAR;\r
-typedef short SSHORT;\r
-typedef unsigned short USHORT;\r
-\r
-\r
-#ifndef LONG_DEFINED /* 32 bit */\r
-typedef long SLONG;\r
-typedef unsigned long ULONG;\r
-#else\r
-#undef LONG_DEFINED\r
-#endif\r
-\r
-\r
-#ifndef SQUAD_DEFINED /* 64 bit */\r
-typedef struct {\r
- SLONG high;\r
- ULONG low;\r
-} SQUAD;\r
-#endif\r
-\r
-\r
-#ifndef DEFINED_GDS_QUAD\r
-#define DEFINED_GDS_QUAD\r
-struct GDS_QUAD_t {\r
- SLONG gds_quad_high;\r
- ULONG gds_quad_low;\r
-};\r
-\r
-typedef struct GDS_QUAD_t GDS_QUAD;\r
-\r
-#endif /* DEFINED_GDS_QUAD */\r
-\r
-//\r
-// TMN: some misc data types from all over the place\r
-//\r
-struct vary\r
-{\r
- USHORT vary_length;\r
- char vary_string[1];\r
-};\r
-// TMN: Currently we can't do this, since remote uses a different\r
-// definition of VARY than the rest of the code! :-<\r
-//typedef vary* VARY;\r
-\r
-struct lstring\r
-{\r
- ULONG lstr_length;\r
- ULONG lstr_allocated;\r
- UCHAR* lstr_address;\r
-};\r
-typedef struct lstring LSTRING;\r
-\r
-\r
-typedef unsigned char BOOLEAN;\r
-typedef char TEXT; // To be expunged over time\r
-//typedef unsigned char STEXT; Signed text - not used\r
-//typedef unsigned char UTEXT; Unsigned text - not used\r
-typedef unsigned char BYTE; // Unsigned byte - common\r
-//typedef char SBYTE; Signed byte - not used\r
-typedef long ISC_STATUS;\r
-typedef long IPTR;\r
-typedef unsigned long U_IPTR;\r
-typedef void (*FPTR_VOID) ();\r
-typedef void (*FPTR_VOID_PTR) (void *);\r
-typedef int (*FPTR_INT) ();\r
-typedef int (*FPTR_INT_VOID_PTR) (void *);\r
-typedef ULONG RCRD_OFFSET;\r
-typedef USHORT FLD_LENGTH;\r
-typedef int (*lock_ast_t)(void *);\r
-\r
-typedef IPTR FB_THREAD_ID;\r
-\r
-#define ISC_STATUS_LENGTH 20\r
-typedef ISC_STATUS ISC_STATUS_ARRAY[ISC_STATUS_LENGTH];\r
-\r
-/* Number of elements in an arry */\r
-#define FB_NELEM(x) ((int)(sizeof(x) / sizeof(x[0])))\r
-#define FB_ALIGN(n,b) ((n+b-1)&~(b-1))\r
-\r
-#endif /* INCLUDE_FB_TYPES_H */\r
-\r
-#define FB_API_VER 15\r
-#define isc_version4\r
-\r
-#define ISC_TRUE 1\r
-#define ISC_FALSE 0\r
-#if !(defined __cplusplus)\r
-#define ISC__TRUE ISC_TRUE\r
-#define ISC__FALSE ISC_FALSE\r
-#endif\r
-\r
-#define ISC_FAR\r
-\r
-// It is difficult to detect 64-bit long from the redistributable header\r
-// we do not care of 16-bit platforms anymore thus we may use plain "int"\r
-// which is 32-bit on all platforms we support\r
-#if defined(_LP64) || defined(__LP64__) || defined(__arch64__)\r
-typedef int ISC_LONG;\r
-typedef unsigned int ISC_ULONG;\r
-#else\r
-typedef signed long ISC_LONG;\r
-typedef unsigned long ISC_ULONG;\r
-#endif\r
-\r
-typedef signed short ISC_SHORT;\r
-typedef unsigned short ISC_USHORT;\r
-\r
-typedef unsigned char ISC_UCHAR;\r
-\r
-#define DSQL_close 1\r
-#define DSQL_drop 2\r
-\r
-\r
-/********************************/\r
-/* InterBase Handle Definitions */\r
-/********************************/\r
-\r
-#ifndef JRD_Y_REF_H\r
-#define FRBRD void\r
-#endif\r
-\r
-typedef FRBRD * isc_att_handle;\r
-typedef FRBRD * isc_blob_handle;\r
-typedef FRBRD * isc_db_handle;\r
-typedef FRBRD * isc_req_handle;\r
-typedef FRBRD * isc_stmt_handle;\r
-typedef FRBRD * isc_svc_handle;\r
-typedef FRBRD * isc_tr_handle;\r
-typedef void (* isc_callback) ();\r
-typedef ISC_LONG isc_resv_handle;\r
-\r
-/*******************************************************************/\r
-/* Time & Date Support */\r
-/*******************************************************************/\r
-\r
-#ifndef ISC_TIMESTAMP_DEFINED\r
-typedef int ISC_DATE;\r
-typedef unsigned int ISC_TIME;\r
-typedef struct\r
-{\r
- ISC_DATE timestamp_date;\r
- ISC_TIME timestamp_time;\r
-} ISC_TIMESTAMP;\r
-#define ISC_TIMESTAMP_DEFINED\r
-#endif /* ISC_TIMESTAMP_DEFINED */\r
-\r
-#define ISC_TIME_SECONDS_PRECISION 10000L\r
-#define ISC_TIME_SECONDS_PRECISION_SCALE (-4)\r
-\r
-/*******************************************************************/\r
-/* Blob id structure */\r
-/*******************************************************************/\r
-\r
-#if !(defined __cplusplus)\r
-typedef GDS_QUAD GDS__QUAD;\r
-#endif /* !(defined __cplusplus) */\r
-\r
-typedef struct GDS_QUAD_t ISC_QUAD;\r
-\r
-#define isc_quad_high gds_quad_high\r
-#define isc_quad_low gds_quad_low\r
-\r
-typedef struct\r
-{\r
- short array_bound_lower;\r
- short array_bound_upper;\r
-} ISC_ARRAY_BOUND;\r
-\r
-typedef struct\r
-{\r
- unsigned char array_desc_dtype;\r
- char array_desc_scale;\r
- unsigned short array_desc_length;\r
- char array_desc_field_name[32];\r
- char array_desc_relation_name[32];\r
- short array_desc_dimensions;\r
- short array_desc_flags;\r
- ISC_ARRAY_BOUND array_desc_bounds[16];\r
-} ISC_ARRAY_DESC;\r
-\r
-typedef struct\r
-{\r
- short blob_desc_subtype;\r
- short blob_desc_charset;\r
- short blob_desc_segment_size;\r
- unsigned char blob_desc_field_name[32];\r
- unsigned char blob_desc_relation_name[32];\r
-} ISC_BLOB_DESC;\r
-\r
-\r
-\r
-/***************************/\r
-/* Blob control structure */\r
-/***************************/\r
-\r
-typedef struct isc_blob_ctl\r
-{\r
- ISC_STATUS (* ctl_source)(); /* Source filter */\r
- struct isc_blob_ctl * ctl_source_handle; /* Argument to pass to source filter */\r
- short ctl_to_sub_type; /* Target type */\r
- short ctl_from_sub_type; /* Source type */\r
- unsigned short ctl_buffer_length; /* Length of buffer */\r
- unsigned short ctl_segment_length; /* Length of current segment */\r
- unsigned short ctl_bpb_length; /* Length of blob parameter block */\r
- char * ctl_bpb; /* Address of blob parameter block */\r
- unsigned char * ctl_buffer; /* Address of segment buffer */\r
- ISC_LONG ctl_max_segment; /* Length of longest segment */\r
- ISC_LONG ctl_number_segments; /* Total number of segments */\r
- ISC_LONG ctl_total_length; /* Total length of blob */\r
- ISC_STATUS * ctl_status; /* Address of status vector */\r
- long ctl_data[8]; /* Application specific data */\r
-} * ISC_BLOB_CTL;\r
-\r
-/***************************/\r
-/* Blob stream definitions */\r
-/***************************/\r
-\r
-typedef struct bstream\r
-{\r
- isc_blob_handle bstr_blob; /* Blob handle */\r
- char * bstr_buffer; /* Address of buffer */\r
- char * bstr_ptr; /* Next character */\r
- short bstr_length; /* Length of buffer */\r
- short bstr_cnt; /* Characters in buffer */\r
- char bstr_mode; /* (mode) ? OUTPUT : INPUT */\r
-} BSTREAM;\r
-\r
-/* Three ugly macros, one even using octal radix... sigh... */\r
-#define getb(p) (--(p)->bstr_cnt >= 0 ? *(p)->bstr_ptr++ & 0377: BLOB_get (p))\r
-#define putb(x,p) (((x) == '\n' || (!(--(p)->bstr_cnt))) ? BLOB_put ((x),p) : ((int) (*(p)->bstr_ptr++ = (unsigned) (x))))\r
-#define putbx(x,p) ((!(--(p)->bstr_cnt)) ? BLOB_put ((x),p) : ((int) (*(p)->bstr_ptr++ = (unsigned) (x))))\r
-\r
-\r
-/********************************************************************/\r
-/* CVC: Public blob interface definition held in val.h. */\r
-/* For some unknown reason, it was only documented in langRef */\r
-/* and being the structure passed by the engine to UDFs it never */\r
-/* made its way into this public definitions file. */\r
-/* Being its original name "blob", I renamed it blobcallback here. */\r
-/* I did the full definition with the proper parameters instead of */\r
-/* the weak C declaration with any number and type of parameters. */\r
-/* Since the first parameter -BLB- is unknown outside the engine, */\r
-/* it's more accurate to use void* than int* as the blob pointer */\r
-/********************************************************************/\r
-\r
-#if !defined(JRD_VAL_H) && !defined(REQUESTER)\r
-/* Blob passing structure */\r
-\r
-enum lseek_mode {blb_seek_relative = 1, blb_seek_from_tail = 2};\r
-\r
-typedef struct blobcallback {\r
- short ( *blob_get_segment)\r
- (void * hnd, unsigned char* buffer, ISC_USHORT buf_size, ISC_USHORT* result_len);\r
- void *blob_handle;\r
- ISC_LONG blob_number_segments;\r
- ISC_LONG blob_max_segment;\r
- ISC_LONG blob_total_length;\r
- void ( *blob_put_segment)\r
- (void * hnd, unsigned char* buffer, ISC_USHORT buf_size);\r
- ISC_LONG ( *blob_lseek)\r
- (void * hnd, ISC_USHORT mode, ISC_LONG offset);\r
-} *BLOBCALLBACK;\r
-#endif /* !defined(JRD_VAL_H) && !defined(REQUESTER) */\r
-\r
-\r
-\r
-/********************************************************************/\r
-/* CVC: Public descriptor interface held in dsc.h. */\r
-/* We need it documented to be able to recognize NULL in UDFs. */\r
-/* Being its original name "dsc", I renamed it paramdsc here. */\r
-/* Notice that I adjust to the original definition: contrary to */\r
-/* other cases, the typedef is the same struct not the pointer. */\r
-/* I included the enumeration of dsc_dtype possible values. */\r
-/* Ultimately, dsc.h should be part of the public interface. */\r
-/********************************************************************/\r
-\r
-#if !defined(JRD_DSC_H)\r
-/* This is the famous internal descriptor that UDFs can use, too. */\r
-typedef struct paramdsc {\r
- unsigned char dsc_dtype;\r
- signed char dsc_scale;\r
- ISC_USHORT dsc_length;\r
- short dsc_sub_type;\r
- ISC_USHORT dsc_flags;\r
- unsigned char *dsc_address;\r
-} PARAMDSC;\r
-\r
-#if !defined(JRD_VAL_H)\r
-/* This is a helper struct to work with varchars. */\r
-typedef struct paramvary {\r
- ISC_USHORT vary_length;\r
- unsigned char vary_string [1];\r
-} PARAMVARY;\r
-#endif /* !defined(JRD_VAL_H) */\r
-\r
-/* values for dsc_flags */\r
-/* Note: DSC_null is only reliably set for local variables\r
- (blr_variable) */\r
-#define DSC_null 1\r
-#define DSC_no_subtype 2 /* dsc has no sub type specified */\r
-#define DSC_nullable 4 /* not stored. instead, is derived\r
- from metadata primarily to flag\r
- SQLDA (in DSQL) */\r
-\r
-/* Overload text typing information into the dsc_sub_type field.\r
- See intl.h for definitions of text types */ \r
-\r
-#ifndef dsc_ttype\r
-#define dsc_ttype dsc_sub_type\r
-#endif\r
-\r
-\r
-/* Note that dtype_null actually means that we do not yet know the\r
- dtype for this descriptor. A nice cleanup item would be to globally\r
- change it to dtype_unknown. --chrisj 1999-02-17 */\r
-\r
-#define dtype_null 0\r
-#define dtype_text 1\r
-#define dtype_cstring 2\r
-#define dtype_varying 3\r
-\r
-#define dtype_packed 6\r
-#define dtype_byte 7\r
-#define dtype_short 8\r
-#define dtype_long 9\r
-#define dtype_quad 10\r
-#define dtype_real 11\r
-#define dtype_double 12\r
-#define dtype_d_float 13\r
-#define dtype_sql_date 14\r
-#define dtype_sql_time 15\r
-#define dtype_timestamp 16\r
-#define dtype_blob 17\r
-#define dtype_array 18\r
-#define dtype_int64 19\r
-#define DTYPE_TYPE_MAX 20\r
-#endif /* !defined(JRD_DSC_H) */\r
-\r
-\r
-/***************************/\r
-/* Dynamic SQL definitions */\r
-/***************************/\r
-\r
-/******************************/\r
-/* Declare the extended SQLDA */\r
-/******************************/\r
-\r
-#ifndef FB_SQLDA\r
-\r
-typedef struct\r
-{\r
- short sqltype; /* datatype of field */\r
- short sqlscale; /* scale factor */\r
- short sqlsubtype; /* datatype subtype - BLOBs & Text types only */\r
- short sqllen; /* length of data area */\r
- char * sqldata; /* address of data */\r
- short * sqlind; /* address of indicator variable */\r
- short sqlname_length; /* length of sqlname field */\r
- char sqlname[32]; /* name of field, name length + space for NULL */\r
- short relname_length; /* length of relation name */\r
- char relname[32]; /* field's relation name + space for NULL */\r
- short ownname_length; /* length of owner name */\r
- char ownname[32]; /* relation's owner name + space for NULL */\r
- short aliasname_length; /* length of alias name */\r
- char aliasname[32]; /* relation's alias name + space for NULL */\r
-} XSQLVAR;\r
-\r
-typedef struct\r
-{\r
- short version; /* version of this XSQLDA */\r
- char sqldaid[8]; /* XSQLDA name field */\r
- ISC_LONG sqldabc; /* length in bytes of SQLDA */\r
- short sqln; /* number of fields allocated */\r
- short sqld; /* actual number of fields */\r
- XSQLVAR sqlvar[1]; /* first field address */\r
-} XSQLDA;\r
-\r
-#define XSQLDA_LENGTH(n) (sizeof (XSQLDA) + ((n)-1) * sizeof (XSQLVAR))\r
-\r
-#define SQLDA_VERSION1 1\r
-\r
-#define SQL_DIALECT_V5 1 /* meaning is same as DIALECT_xsqlda */\r
-#define SQL_DIALECT_V6_TRANSITION 2 /* flagging anything that is delimited\r
- by double quotes as an error and\r
- flagging keyword DATE as an error */\r
-#define SQL_DIALECT_V6 3 /* supports SQL delimited identifier,\r
- SQLDATE/DATE, TIME, TIMESTAMP,\r
- CURRENT_DATE, CURRENT_TIME,\r
- CURRENT_TIMESTAMP, and 64-bit exact\r
- numeric type */\r
-#define SQL_DIALECT_CURRENT SQL_DIALECT_V6 /* latest IB DIALECT */\r
-\r
-\r
-#define FB_SQLDA\r
-#endif\r
-\r
-/***************************/\r
-/* OSRI database functions */\r
-/***************************/\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-ISC_STATUS ISC_EXPORT isc_attach_database(ISC_STATUS *,\r
- short,\r
- char *,\r
- isc_db_handle *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_array_gen_sdl(ISC_STATUS *,\r
- ISC_ARRAY_DESC *,\r
- short *,\r
- char *,\r
- short *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_array_get_slice(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- ISC_QUAD *,\r
- ISC_ARRAY_DESC *,\r
- void *,\r
- ISC_LONG *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_array_lookup_bounds(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- char *,\r
- char *,\r
- ISC_ARRAY_DESC *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_array_lookup_desc(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- char *,\r
- char *,\r
- ISC_ARRAY_DESC *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_array_set_desc(ISC_STATUS *,\r
- char *,\r
- char *,\r
- short *,\r
- short *,\r
- short *,\r
- ISC_ARRAY_DESC *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_array_put_slice(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- ISC_QUAD *,\r
- ISC_ARRAY_DESC *,\r
- void *,\r
- ISC_LONG *);\r
-\r
-void ISC_EXPORT isc_blob_default_desc(ISC_BLOB_DESC *,\r
- unsigned char *,\r
- unsigned char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_blob_gen_bpb(ISC_STATUS *,\r
- ISC_BLOB_DESC *,\r
- ISC_BLOB_DESC *,\r
- unsigned short,\r
- unsigned char *,\r
- unsigned short *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_blob_info(ISC_STATUS *,\r
- isc_blob_handle *,\r
- short,\r
- char *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_blob_lookup_desc(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned char *,\r
- unsigned char *,\r
- ISC_BLOB_DESC *,\r
- unsigned char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_blob_set_desc(ISC_STATUS *,\r
- unsigned char *,\r
- unsigned char *,\r
- short,\r
- short,\r
- short,\r
- ISC_BLOB_DESC *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_cancel_blob(ISC_STATUS *,\r
- isc_blob_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_cancel_events(ISC_STATUS *,\r
- isc_db_handle *,\r
- ISC_LONG *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_close_blob(ISC_STATUS *,\r
- isc_blob_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_commit_retaining(ISC_STATUS *,\r
- isc_tr_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_commit_transaction(ISC_STATUS *,\r
- isc_tr_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_create_blob(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- isc_blob_handle *,\r
- ISC_QUAD *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_create_blob2(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- isc_blob_handle *,\r
- ISC_QUAD *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_create_database(ISC_STATUS *,\r
- short,\r
- char *,\r
- isc_db_handle *,\r
- short,\r
- char *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_database_info(ISC_STATUS *,\r
- isc_db_handle *,\r
- short,\r
- char *,\r
- short,\r
- char *);\r
-\r
-void ISC_EXPORT isc_decode_date(ISC_QUAD *,\r
- void *);\r
-\r
-void ISC_EXPORT isc_decode_sql_date(ISC_DATE *,\r
- void *);\r
-\r
-void ISC_EXPORT isc_decode_sql_time(ISC_TIME *,\r
- void *);\r
-\r
-void ISC_EXPORT isc_decode_timestamp(ISC_TIMESTAMP *,\r
- void *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_detach_database(ISC_STATUS *,\r
- isc_db_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_drop_database(ISC_STATUS *,\r
- isc_db_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_allocate_statement(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_stmt_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_alloc_statement2(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_stmt_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_describe(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_describe_bind(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_exec_immed2(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- XSQLDA *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_execute(ISC_STATUS *,\r
- isc_tr_handle *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_execute2(ISC_STATUS *,\r
- isc_tr_handle *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- XSQLDA *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_execute_immediate(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_fetch(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_finish(isc_db_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_free_statement(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_insert(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_prepare(ISC_STATUS *,\r
- isc_tr_handle *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_set_cursor_name(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- char *,\r
- unsigned short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_sql_info(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- short,\r
- const char *,\r
- short,\r
- char *);\r
-\r
-void ISC_EXPORT isc_encode_date(void *,\r
- ISC_QUAD *);\r
-\r
-void ISC_EXPORT isc_encode_sql_date(void *,\r
- ISC_DATE *);\r
-\r
-void ISC_EXPORT isc_encode_sql_time(void *,\r
- ISC_TIME *);\r
-\r
-void ISC_EXPORT isc_encode_timestamp(void *,\r
- ISC_TIMESTAMP *);\r
-\r
-ISC_LONG ISC_EXPORT_VARARG isc_event_block(char * *,\r
- char * *,\r
- unsigned short, ...);\r
-\r
-void ISC_EXPORT isc_event_counts(ISC_ULONG *,\r
- short,\r
- char *,\r
- char *);\r
-\r
-/* 17 May 2001 - isc_expand_dpb is DEPRECATED */\r
-void ISC_EXPORT_VARARG isc_expand_dpb(char * *,\r
- short *, ...);\r
-\r
-int ISC_EXPORT isc_modify_dpb(char * *,\r
- short *,\r
- unsigned short,\r
- char *,\r
- short);\r
-\r
-ISC_LONG ISC_EXPORT isc_free(char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_get_segment(ISC_STATUS *,\r
- isc_blob_handle *,\r
- unsigned short *,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_get_slice(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- ISC_QUAD *,\r
- short,\r
- char *,\r
- short,\r
- ISC_LONG *,\r
- ISC_LONG,\r
- void *,\r
- ISC_LONG *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_interprete(char *,\r
- ISC_STATUS * *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_open_blob(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- isc_blob_handle *,\r
- ISC_QUAD *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_open_blob2(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- isc_blob_handle *,\r
- ISC_QUAD *,\r
- ISC_USHORT,\r
- ISC_UCHAR *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_prepare_transaction2(ISC_STATUS *,\r
- isc_tr_handle *,\r
- ISC_USHORT,\r
- ISC_UCHAR *);\r
-\r
-void ISC_EXPORT isc_print_sqlerror(ISC_SHORT,\r
- ISC_STATUS *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_print_status(ISC_STATUS *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_put_segment(ISC_STATUS *,\r
- isc_blob_handle *,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_put_slice(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- ISC_QUAD *,\r
- short,\r
- char *,\r
- short,\r
- ISC_LONG *,\r
- ISC_LONG,\r
- void *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_que_events(ISC_STATUS *,\r
- isc_db_handle *,\r
- ISC_LONG *,\r
- short,\r
- char *,\r
- isc_callback,\r
- void *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_rollback_retaining(ISC_STATUS *,\r
- isc_tr_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_rollback_transaction(ISC_STATUS *,\r
- isc_tr_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_start_multiple(ISC_STATUS *,\r
- isc_tr_handle *,\r
- short,\r
- void *);\r
-\r
-ISC_STATUS ISC_EXPORT_VARARG isc_start_transaction(ISC_STATUS *,\r
- isc_tr_handle *,\r
- short, ...);\r
-\r
-ISC_LONG ISC_EXPORT isc_sqlcode(ISC_STATUS *);\r
-\r
-void ISC_EXPORT isc_sql_interprete(short,\r
- char *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_transaction_info(ISC_STATUS *,\r
- isc_tr_handle *,\r
- short,\r
- char *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_transact_request(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_LONG ISC_EXPORT isc_vax_integer(char *,\r
- short);\r
-\r
-ISC_INT64 ISC_EXPORT isc_portable_integer(unsigned char *,\r
- short);\r
-\r
-/*************************************/\r
-/* Security Functions and structures */\r
-/*************************************/\r
-\r
-#define sec_uid_spec 0x01\r
-#define sec_gid_spec 0x02\r
-#define sec_server_spec 0x04\r
-#define sec_password_spec 0x08\r
-#define sec_group_name_spec 0x10\r
-#define sec_first_name_spec 0x20\r
-#define sec_middle_name_spec 0x40\r
-#define sec_last_name_spec 0x80\r
-#define sec_dba_user_name_spec 0x100\r
-#define sec_dba_password_spec 0x200\r
-\r
-#define sec_protocol_tcpip 1\r
-#define sec_protocol_netbeui 2\r
-#define sec_protocol_spx 3 /* -- Deprecated Protocol. Declaration retained for compatibility */\r
-#define sec_protocol_local 4\r
-\r
-typedef struct {\r
- short sec_flags; /* which fields are specified */\r
- int uid; /* the user's id */\r
- int gid; /* the user's group id */\r
- int protocol; /* protocol to use for connection */\r
- char *server; /* server to administer */\r
- char *user_name; /* the user's name */\r
- char *password; /* the user's password */\r
- char *group_name; /* the group name */\r
- char *first_name; /* the user's first name */\r
- char *middle_name; /* the user's middle name */\r
- char *last_name; /* the user's last name */\r
- char *dba_user_name; /* the dba user name */\r
- char *dba_password; /* the dba password */\r
-} USER_SEC_DATA;\r
-\r
-int ISC_EXPORT isc_add_user(ISC_STATUS *, USER_SEC_DATA *);\r
-\r
-int ISC_EXPORT isc_delete_user(ISC_STATUS *, USER_SEC_DATA *);\r
-\r
-int ISC_EXPORT isc_modify_user(ISC_STATUS *, USER_SEC_DATA *);\r
-\r
-/**********************************/\r
-/* Other OSRI functions */\r
-/**********************************/\r
-\r
-ISC_STATUS ISC_EXPORT isc_compile_request(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_req_handle *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_compile_request2(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_req_handle *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_ddl(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_prepare_transaction(ISC_STATUS *,\r
- isc_tr_handle *);\r
-\r
-\r
-ISC_STATUS ISC_EXPORT isc_receive(ISC_STATUS *,\r
- isc_req_handle *,\r
- short,\r
- short,\r
- void *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_reconnect_transaction(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_release_request(ISC_STATUS *,\r
- isc_req_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_request_info(ISC_STATUS *,\r
- isc_req_handle *,\r
- short,\r
- short,\r
- char *,\r
- short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_seek_blob(ISC_STATUS *,\r
- isc_blob_handle *,\r
- short,\r
- ISC_LONG,\r
- ISC_LONG *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_send(ISC_STATUS *,\r
- isc_req_handle *,\r
- short,\r
- short,\r
- void *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_start_and_send(ISC_STATUS *,\r
- isc_req_handle *,\r
- isc_tr_handle *,\r
- short,\r
- short,\r
- void *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_start_request(ISC_STATUS *,\r
- isc_req_handle *,\r
- isc_tr_handle *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_unwind_request(ISC_STATUS *,\r
- isc_tr_handle *,\r
- short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_wait_for_event(ISC_STATUS *,\r
- isc_db_handle *,\r
- short,\r
- char *,\r
- char *);\r
-\r
-\r
-/*****************************/\r
-/* Other Sql functions */\r
-/*****************************/\r
-\r
-ISC_STATUS ISC_EXPORT isc_close(ISC_STATUS *,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_declare(ISC_STATUS *,\r
- char *,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_describe(ISC_STATUS *,\r
- char *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_describe_bind(ISC_STATUS *,\r
- char *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_execute(ISC_STATUS *,\r
- isc_tr_handle *,\r
- char *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_execute_immediate(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- short *,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_fetch(ISC_STATUS *,\r
- char *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_open(ISC_STATUS *,\r
- isc_tr_handle *,\r
- char *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_prepare(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- char *,\r
- short *,\r
- char *,\r
- XSQLDA *);\r
-\r
-\r
-/*************************************/\r
-/* Other Dynamic sql functions */\r
-/*************************************/\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_execute_m(ISC_STATUS *,\r
- isc_tr_handle *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_execute2_m(ISC_STATUS *,\r
- isc_tr_handle *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_execute_immediate_m(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_exec_immed3_m(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_fetch_m(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_insert_m(ISC_STATUS *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_prepare_m(ISC_STATUS *,\r
- isc_tr_handle *,\r
- isc_stmt_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_dsql_release(ISC_STATUS *,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_close(ISC_STATUS *,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_declare(ISC_STATUS *,\r
- char *,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_describe(ISC_STATUS *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_describe_bind(ISC_STATUS *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_execute(ISC_STATUS *,\r
- isc_tr_handle *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_execute2(ISC_STATUS *,\r
- isc_tr_handle *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_execute_immed(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_fetch(ISC_STATUS *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_open(ISC_STATUS *,\r
- isc_tr_handle *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_open2(ISC_STATUS *,\r
- isc_tr_handle *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_insert(ISC_STATUS *,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_prepare(ISC_STATUS *,\r
- isc_db_handle *,\r
- isc_tr_handle *,\r
- char *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- XSQLDA *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_embed_dsql_release(ISC_STATUS *,\r
- char *);\r
-\r
-\r
-/******************************/\r
-/* Other Blob functions */\r
-/******************************/\r
-\r
-BSTREAM *ISC_EXPORT BLOB_open(isc_blob_handle,\r
- char *,\r
- int);\r
-\r
-int ISC_EXPORT BLOB_put(char,\r
- BSTREAM *);\r
-\r
-int ISC_EXPORT BLOB_close(BSTREAM *);\r
-\r
-int ISC_EXPORT BLOB_get(BSTREAM *);\r
-\r
-int ISC_EXPORT BLOB_display(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-int ISC_EXPORT BLOB_dump(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-int ISC_EXPORT BLOB_edit(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-int ISC_EXPORT BLOB_load(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-int ISC_EXPORT BLOB_text_dump(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-int ISC_EXPORT BLOB_text_load(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-BSTREAM *ISC_EXPORT Bopen(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *);\r
-\r
-BSTREAM *ISC_EXPORT Bopen2(ISC_QUAD *,\r
- isc_db_handle,\r
- isc_tr_handle,\r
- char *,\r
- unsigned short);\r
-\r
-\r
-/******************************/\r
-/* Other Misc functions */\r
-/******************************/\r
-\r
-ISC_LONG ISC_EXPORT isc_ftof(char *,\r
- unsigned short,\r
- char *,\r
- unsigned short);\r
-\r
-ISC_STATUS ISC_EXPORT isc_print_blr(char *,\r
- isc_callback,\r
- void *,\r
- short);\r
-\r
-void ISC_EXPORT isc_set_debug(int);\r
-\r
-void ISC_EXPORT isc_qtoq(ISC_QUAD *,\r
- ISC_QUAD *);\r
-\r
-void ISC_EXPORT isc_vtof(char *,\r
- char *,\r
- unsigned short);\r
-\r
-void ISC_EXPORT isc_vtov(char *,\r
- char *,\r
- short);\r
-\r
-int ISC_EXPORT isc_version(isc_db_handle *,\r
- isc_callback,\r
- void *);\r
-\r
-ISC_LONG ISC_EXPORT isc_reset_fpe(unsigned short);\r
-\r
-\r
-/*****************************************/\r
-/* Service manager functions */\r
-/*****************************************/\r
-\r
-#define ADD_SPB_LENGTH(p, length) {*(p)++ = (length); *(p)++ = (length) >> 8;}\r
-\r
-#define ADD_SPB_NUMERIC(p, data) {*(p)++ = (SCHAR) (data); *(p)++ = (SCHAR) ((data) >> 8); *(p)++ = (SCHAR) ((data) >> 16); *(p)++ = (SCHAR) ((data) >> 24);}\r
-\r
-ISC_STATUS ISC_EXPORT isc_service_attach(ISC_STATUS *,\r
- unsigned short,\r
- char *,\r
- isc_svc_handle *,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_service_detach(ISC_STATUS *,\r
- isc_svc_handle *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_service_query(ISC_STATUS *,\r
- isc_svc_handle *,\r
- isc_resv_handle *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *,\r
- unsigned short,\r
- char *);\r
-\r
-ISC_STATUS ISC_EXPORT isc_service_start(ISC_STATUS *,\r
- isc_svc_handle *,\r
- isc_resv_handle *,\r
- unsigned short,\r
- char *);\r
-\r
-\r
-/********************************/\r
-/* Client information functions */\r
-/********************************/\r
-\r
-void ISC_EXPORT isc_get_client_version ( char *);\r
-int ISC_EXPORT isc_get_client_major_version ();\r
-int ISC_EXPORT isc_get_client_minor_version ();\r
-\r
-#ifdef __cplusplus\r
-} /* extern "C" */\r
-#endif\r
-\r
-\r
-/***************************************************/\r
-/* Actions to pass to the blob filter (ctl_source) */\r
-/***************************************************/\r
-\r
-#define isc_blob_filter_open 0\r
-#define isc_blob_filter_get_segment 1\r
-#define isc_blob_filter_close 2\r
-#define isc_blob_filter_create 3\r
-#define isc_blob_filter_put_segment 4\r
-#define isc_blob_filter_alloc 5\r
-#define isc_blob_filter_free 6\r
-#define isc_blob_filter_seek 7\r
-\r
-/*******************/\r
-/* Blr definitions */\r
-/*******************/\r
-\r
-/*\r
- * PROGRAM: C preprocessor\r
- * MODULE: blr.h\r
- * DESCRIPTION: BLR constants\r
- *\r
- * The contents of this file are subject to the Interbase Public\r
- * License Version 1.0 (the "License"); you may not use this file\r
- * except in compliance with the License. You may obtain a copy\r
- * of the License at http://www.Inprise.com/IPL.html\r
- *\r
- * Software distributed under the License is distributed on an\r
- * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express\r
- * or implied. See the License for the specific language governing\r
- * rights and limitations under the License.\r
- *\r
- * The Original Code was created by Inprise Corporation\r
- * and its predecessors. Portions created by Inprise Corporation are\r
- * Copyright (C) Inprise Corporation.\r
- *\r
- * All Rights Reserved.\r
- * Contributor(s): ______________________________________.\r
- *\r
- * Claudio Valderrama: 2001.6.18: Add blr_current_role.\r
- * 2002.09.28 Dmitry Yemanov: Reworked internal_info stuff, enhanced\r
- * exception handling in SPs/triggers,\r
- * implemented ROWS_AFFECTED system variable\r
- * 2002.10.21 Nickolay Samofatov: Added support for explicit pessimistic locks\r
- * 2002.10.29 Nickolay Samofatov: Added support for savepoints\r
- */\r
-\r
-#ifndef _JRD_BLR_H_\r
-#define _JRD_BLR_H_\r
-\r
-/* WARNING: if you add a new BLR representing a data type, and the value\r
- * is greater than the numerically greatest value which now\r
- * represents a data type, you must change the define for\r
- * DTYPE_BLR_MAX in jrd/align.h, and add the necessary entries\r
- * to all the arrays in that file.\r
- */\r
-\r
-#define blr_text (unsigned char)14\r
-#define blr_text2 (unsigned char)15 /* added in 3.2 JPN */\r
-#define blr_short (unsigned char)7\r
-#define blr_long (unsigned char)8\r
-#define blr_quad (unsigned char)9\r
-#define blr_float (unsigned char)10\r
-#define blr_double (unsigned char)27\r
-#define blr_d_float (unsigned char)11\r
-#define blr_timestamp (unsigned char)35\r
-#define blr_varying (unsigned char)37\r
-#define blr_varying2 (unsigned char)38 /* added in 3.2 JPN */\r
-#define blr_blob (unsigned short)261\r
-#define blr_cstring (unsigned char)40 \r
-#define blr_cstring2 (unsigned char)41 /* added in 3.2 JPN */\r
-#define blr_blob_id (unsigned char)45 /* added from gds.h */\r
-#define blr_sql_date (unsigned char)12\r
-#define blr_sql_time (unsigned char)13\r
-#define blr_int64 (unsigned char)16\r
-\r
-/* Historical alias for pre V6 applications */\r
-#define blr_date blr_timestamp\r
-\r
-#define blr_inner (unsigned char)0\r
-#define blr_left (unsigned char)1\r
-#define blr_right (unsigned char)2\r
-#define blr_full (unsigned char)3\r
-\r
-#define blr_gds_code (unsigned char)0\r
-#define blr_sql_code (unsigned char)1\r
-#define blr_exception (unsigned char)2\r
-#define blr_trigger_code (unsigned char)3\r
-#define blr_default_code (unsigned char)4\r
-#define blr_raise (unsigned char)5\r
-#define blr_exception_msg (unsigned char)6\r
-\r
-#define blr_version4 (unsigned char)4\r
-#define blr_version5 (unsigned char)5\r
-#define blr_eoc (unsigned char)76\r
-#define blr_end (unsigned char)255 /* note: defined as -1 in gds.h */\r
-\r
-#define blr_assignment (unsigned char)1\r
-#define blr_begin (unsigned char)2\r
-#define blr_dcl_variable (unsigned char)3 /* added from gds.h */\r
-#define blr_message (unsigned char)4\r
-#define blr_erase (unsigned char)5\r
-#define blr_fetch (unsigned char)6\r
-#define blr_for (unsigned char)7\r
-#define blr_if (unsigned char)8\r
-#define blr_loop (unsigned char)9\r
-#define blr_modify (unsigned char)10\r
-#define blr_handler (unsigned char)11\r
-#define blr_receive (unsigned char)12\r
-#define blr_select (unsigned char)13\r
-#define blr_send (unsigned char)14\r
-#define blr_store (unsigned char)15\r
-#define blr_label (unsigned char)17\r
-#define blr_leave (unsigned char)18\r
-#define blr_store2 (unsigned char)19\r
-#define blr_post (unsigned char)20\r
-#define blr_literal (unsigned char)21\r
-#define blr_dbkey (unsigned char)22\r
-#define blr_field (unsigned char)23\r
-#define blr_fid (unsigned char)24\r
-#define blr_parameter (unsigned char)25\r
-#define blr_variable (unsigned char)26\r
-#define blr_average (unsigned char)27\r
-#define blr_count (unsigned char)28\r
-#define blr_maximum (unsigned char)29\r
-#define blr_minimum (unsigned char)30\r
-#define blr_total (unsigned char)31\r
-/* count 2\r
-#define blr_count2 32\r
-*/\r
-#define blr_add (unsigned char)34\r
-#define blr_subtract (unsigned char)35\r
-#define blr_multiply (unsigned char)36\r
-#define blr_divide (unsigned char)37\r
-#define blr_negate (unsigned char)38\r
-#define blr_concatenate (unsigned char)39\r
-#define blr_substring (unsigned char)40\r
-#define blr_parameter2 (unsigned char)41\r
-#define blr_from (unsigned char)42\r
-#define blr_via (unsigned char)43\r
-#define blr_parameter2_old (unsigned char)44 /* Confusion */\r
-#define blr_user_name (unsigned char)44 /* added from gds.h */\r
-#define blr_null (unsigned char)45\r
-\r
-#define blr_eql (unsigned char)47\r
-#define blr_neq (unsigned char)48\r
-#define blr_gtr (unsigned char)49\r
-#define blr_geq (unsigned char)50\r
-#define blr_lss (unsigned char)51\r
-#define blr_leq (unsigned char)52\r
-#define blr_containing (unsigned char)53\r
-#define blr_matching (unsigned char)54\r
-#define blr_starting (unsigned char)55\r
-#define blr_between (unsigned char)56\r
-#define blr_or (unsigned char)57\r
-#define blr_and (unsigned char)58\r
-#define blr_not (unsigned char)59\r
-#define blr_any (unsigned char)60\r
-#define blr_missing (unsigned char)61\r
-#define blr_unique (unsigned char)62\r
-#define blr_like (unsigned char)63\r
-\r
-#define blr_stream (unsigned char)65 /* added from gds.h */\r
-#define blr_set_index (unsigned char)66 /* added from gds.h */\r
-\r
-#define blr_rse (unsigned char)67\r
-#define blr_first (unsigned char)68\r
-#define blr_project (unsigned char)69\r
-#define blr_sort (unsigned char)70\r
-#define blr_boolean (unsigned char)71\r
-#define blr_ascending (unsigned char)72\r
-#define blr_descending (unsigned char)73\r
-#define blr_relation (unsigned char)74\r
-#define blr_rid (unsigned char)75\r
-#define blr_union (unsigned char)76\r
-#define blr_map (unsigned char)77\r
-#define blr_group_by (unsigned char)78\r
-#define blr_aggregate (unsigned char)79\r
-#define blr_join_type (unsigned char)80\r
-\r
-#define blr_agg_count (unsigned char)83\r
-#define blr_agg_max (unsigned char)84\r
-#define blr_agg_min (unsigned char)85\r
-#define blr_agg_total (unsigned char)86\r
-#define blr_agg_average (unsigned char)87\r
-#define blr_parameter3 (unsigned char)88 /* same as Rdb definition */\r
-#define blr_run_max (unsigned char)89\r
-#define blr_run_min (unsigned char)90\r
-#define blr_run_total (unsigned char)91\r
-#define blr_run_average (unsigned char)92\r
-#define blr_agg_count2 (unsigned char)93\r
-#define blr_agg_count_distinct (unsigned char)94\r
-#define blr_agg_total_distinct (unsigned char)95\r
-#define blr_agg_average_distinct (unsigned char)96\r
-\r
-#define blr_function (unsigned char)100\r
-#define blr_gen_id (unsigned char)101\r
-#define blr_prot_mask (unsigned char)102\r
-#define blr_upcase (unsigned char)103\r
-#define blr_lock_state (unsigned char)104\r
-#define blr_value_if (unsigned char)105\r
-#define blr_matching2 (unsigned char)106\r
-#define blr_index (unsigned char)107\r
-#define blr_ansi_like (unsigned char)108\r
-#define blr_bookmark (unsigned char)109\r
-#define blr_crack (unsigned char)110\r
-#define blr_force_crack (unsigned char)111\r
-#define blr_seek (unsigned char)112\r
-#define blr_find (unsigned char)113\r
- \r
-/* these indicate directions for blr_seek and blr_find */\r
-\r
-#define blr_continue (unsigned char)0\r
-#define blr_forward (unsigned char)1\r
-#define blr_backward (unsigned char)2\r
-#define blr_bof_forward (unsigned char)3\r
-#define blr_eof_backward (unsigned char)4\r
-\r
-#define blr_lock_relation (unsigned char)114\r
-#define blr_lock_record (unsigned char)115\r
-#define blr_set_bookmark (unsigned char)116\r
-#define blr_get_bookmark (unsigned char)117\r
-\r
-#define blr_run_count (unsigned char)118 /* changed from 88 to avoid conflict with blr_parameter3 */\r
-#define blr_rs_stream (unsigned char)119\r
-#define blr_exec_proc (unsigned char)120\r
-#define blr_begin_range (unsigned char)121\r
-#define blr_end_range (unsigned char)122\r
-#define blr_delete_range (unsigned char)123\r
-#define blr_procedure (unsigned char)124\r
-#define blr_pid (unsigned char)125\r
-#define blr_exec_pid (unsigned char)126\r
-#define blr_singular (unsigned char)127\r
-#define blr_abort (unsigned char)128\r
-#define blr_block (unsigned char)129\r
-#define blr_error_handler (unsigned char)130\r
-\r
-#define blr_cast (unsigned char)131\r
-#define blr_release_lock (unsigned char)132\r
-#define blr_release_locks (unsigned char)133\r
-#define blr_start_savepoint (unsigned char)134\r
-#define blr_end_savepoint (unsigned char)135\r
-#define blr_find_dbkey (unsigned char)136\r
-#define blr_range_relation (unsigned char)137\r
-#define blr_delete_ranges (unsigned char)138\r
-\r
-#define blr_plan (unsigned char)139 /* access plan items */\r
-#define blr_merge (unsigned char)140\r
-#define blr_join (unsigned char)141\r
-#define blr_sequential (unsigned char)142\r
-#define blr_navigational (unsigned char)143\r
-#define blr_indices (unsigned char)144\r
-#define blr_retrieve (unsigned char)145\r
-\r
-#define blr_relation2 (unsigned char)146\r
-#define blr_rid2 (unsigned char)147\r
-#define blr_reset_stream (unsigned char)148\r
-#define blr_release_bookmark (unsigned char)149\r
-\r
-#define blr_set_generator (unsigned char)150\r
-\r
-#define blr_ansi_any (unsigned char)151 /* required for NULL handling */\r
-#define blr_exists (unsigned char)152 /* required for NULL handling */\r
-#define blr_cardinality (unsigned char)153\r
-\r
-#define blr_record_version (unsigned char)154 /* get tid of record */\r
-#define blr_stall (unsigned char)155 /* fake server stall */\r
-\r
-#define blr_seek_no_warn (unsigned char)156 \r
-#define blr_find_dbkey_version (unsigned char)157 /* find dbkey with record version */\r
-#define blr_ansi_all (unsigned char)158 /* required for NULL handling */\r
-\r
-#define blr_extract (unsigned char)159\r
-\r
-/* sub parameters for blr_extract */\r
-\r
-#define blr_extract_year (unsigned char)0\r
-#define blr_extract_month (unsigned char)1\r
-#define blr_extract_day (unsigned char)2\r
-#define blr_extract_hour (unsigned char)3\r
-#define blr_extract_minute (unsigned char)4\r
-#define blr_extract_second (unsigned char)5\r
-#define blr_extract_weekday (unsigned char)6\r
-#define blr_extract_yearday (unsigned char)7\r
-\r
-#define blr_current_date (unsigned char)160\r
-#define blr_current_timestamp (unsigned char)161\r
-#define blr_current_time (unsigned char)162\r
-\r
-/* FB 1.0 specific BLR */\r
-\r
-#define blr_current_role (unsigned char)174\r
-#define blr_skip (unsigned char)175\r
-\r
-/* FB 1.5 specific BLR */\r
-\r
-#define blr_exec_sql (unsigned char)176\r
-#define blr_internal_info (unsigned char)177\r
-#define blr_nullsfirst (unsigned char)178\r
-#define blr_writelock (unsigned char)179\r
-#define blr_nullslast (unsigned char)180\r
-\r
-/* These codes reuse BLR code space */\r
-\r
-#define blr_post_arg (unsigned char)163\r
-#define blr_exec_into (unsigned char)164\r
-#define blr_user_savepoint (unsigned char)165\r
-\r
-/* These codes are actions for user-defined savepoints */\r
-\r
-#define blr_savepoint_set (unsigned char)0\r
-#define blr_savepoint_release (unsigned char)1\r
-#define blr_savepoint_undo (unsigned char)2\r
-#define blr_savepoint_release_single (unsigned char)3\r
-\r
-#endif /* _JRD_BLR_H_ */\r
-\r
-\r
-/**********************************/\r
-/* Database parameter block stuff */\r
-/**********************************/\r
-\r
-#define isc_dpb_version1 1\r
-#define isc_dpb_cdd_pathname 1\r
-#define isc_dpb_allocation 2\r
-#define isc_dpb_journal 3\r
-#define isc_dpb_page_size 4\r
-#define isc_dpb_num_buffers 5\r
-#define isc_dpb_buffer_length 6\r
-#define isc_dpb_debug 7\r
-#define isc_dpb_garbage_collect 8\r
-#define isc_dpb_verify 9\r
-#define isc_dpb_sweep 10\r
-#define isc_dpb_enable_journal 11\r
-#define isc_dpb_disable_journal 12\r
-#define isc_dpb_dbkey_scope 13\r
-#define isc_dpb_number_of_users 14\r
-#define isc_dpb_trace 15\r
-#define isc_dpb_no_garbage_collect 16\r
-#define isc_dpb_damaged 17\r
-#define isc_dpb_license 18\r
-#define isc_dpb_sys_user_name 19\r
-#define isc_dpb_encrypt_key 20\r
-#define isc_dpb_activate_shadow 21\r
-#define isc_dpb_sweep_interval 22\r
-#define isc_dpb_delete_shadow 23\r
-#define isc_dpb_force_write 24\r
-#define isc_dpb_begin_log 25\r
-#define isc_dpb_quit_log 26\r
-#define isc_dpb_no_reserve 27\r
-#define isc_dpb_user_name 28\r
-#define isc_dpb_password 29\r
-#define isc_dpb_password_enc 30\r
-#define isc_dpb_sys_user_name_enc 31\r
-#define isc_dpb_interp 32\r
-#define isc_dpb_online_dump 33\r
-#define isc_dpb_old_file_size 34\r
-#define isc_dpb_old_num_files 35\r
-#define isc_dpb_old_file 36\r
-#define isc_dpb_old_start_page 37\r
-#define isc_dpb_old_start_seqno 38\r
-#define isc_dpb_old_start_file 39\r
-#define isc_dpb_drop_walfile 40\r
-#define isc_dpb_old_dump_id 41\r
-#define isc_dpb_wal_backup_dir 42\r
-#define isc_dpb_wal_chkptlen 43\r
-#define isc_dpb_wal_numbufs 44\r
-#define isc_dpb_wal_bufsize 45\r
-#define isc_dpb_wal_grp_cmt_wait 46\r
-#define isc_dpb_lc_messages 47\r
-#define isc_dpb_lc_ctype 48\r
-#define isc_dpb_cache_manager 49\r
-#define isc_dpb_shutdown 50\r
-#define isc_dpb_online 51\r
-#define isc_dpb_shutdown_delay 52\r
-#define isc_dpb_reserved 53\r
-#define isc_dpb_overwrite 54\r
-#define isc_dpb_sec_attach 55\r
-#define isc_dpb_disable_wal 56\r
-#define isc_dpb_connect_timeout 57\r
-#define isc_dpb_dummy_packet_interval 58\r
-#define isc_dpb_gbak_attach 59\r
-#define isc_dpb_sql_role_name 60\r
-#define isc_dpb_set_page_buffers 61\r
-#define isc_dpb_working_directory 62\r
-#define isc_dpb_sql_dialect 63\r
-#define isc_dpb_set_db_readonly 64\r
-#define isc_dpb_set_db_sql_dialect 65\r
-#define isc_dpb_gfix_attach 66\r
-#define isc_dpb_gstat_attach 67\r
-#define isc_dpb_set_db_charset 68\r
-\r
-/*********************************/\r
-/* isc_dpb_verify specific flags */\r
-/*********************************/\r
-\r
-#define isc_dpb_pages 1\r
-#define isc_dpb_records 2\r
-#define isc_dpb_indices 4\r
-#define isc_dpb_transactions 8\r
-#define isc_dpb_no_update 16\r
-#define isc_dpb_repair 32\r
-#define isc_dpb_ignore 64\r
-\r
-/***********************************/\r
-/* isc_dpb_shutdown specific flags */\r
-/***********************************/\r
-\r
-#define isc_dpb_shut_cache 1\r
-#define isc_dpb_shut_attachment 2\r
-#define isc_dpb_shut_transaction 4\r
-#define isc_dpb_shut_force 8\r
-\r
-/**************************************/\r
-/* Bit assignments in RDB$SYSTEM_FLAG */\r
-/**************************************/\r
-\r
-#define RDB_system 1\r
-#define RDB_id_assigned 2\r
-\r
-\r
-/*************************************/\r
-/* Transaction parameter block stuff */\r
-/*************************************/\r
-\r
-#define isc_tpb_version1 1\r
-#define isc_tpb_version3 3\r
-#define isc_tpb_consistency 1\r
-#define isc_tpb_concurrency 2\r
-#define isc_tpb_shared 3\r
-#define isc_tpb_protected 4\r
-#define isc_tpb_exclusive 5\r
-#define isc_tpb_wait 6\r
-#define isc_tpb_nowait 7\r
-#define isc_tpb_read 8\r
-#define isc_tpb_write 9\r
-#define isc_tpb_lock_read 10\r
-#define isc_tpb_lock_write 11\r
-#define isc_tpb_verb_time 12\r
-#define isc_tpb_commit_time 13\r
-#define isc_tpb_ignore_limbo 14\r
-#define isc_tpb_read_committed 15\r
-#define isc_tpb_autocommit 16\r
-#define isc_tpb_rec_version 17\r
-#define isc_tpb_no_rec_version 18\r
-#define isc_tpb_restart_requests 19\r
-#define isc_tpb_no_auto_undo 20\r
-\r
-\r
-/************************/\r
-/* Blob Parameter Block */\r
-/************************/\r
-\r
-#define isc_bpb_version1 1\r
-#define isc_bpb_source_type 1\r
-#define isc_bpb_target_type 2\r
-#define isc_bpb_type 3\r
-#define isc_bpb_source_interp 4\r
-#define isc_bpb_target_interp 5\r
-#define isc_bpb_filter_parameter 6\r
-\r
-#define isc_bpb_type_segmented 0\r
-#define isc_bpb_type_stream 1\r
-\r
-\r
-/*********************************/\r
-/* Service parameter block stuff */\r
-/*********************************/\r
-\r
-#define isc_spb_version1 1\r
-#define isc_spb_current_version 2\r
-#define isc_spb_version isc_spb_current_version\r
-#define isc_spb_user_name isc_dpb_user_name\r
-#define isc_spb_sys_user_name isc_dpb_sys_user_name\r
-#define isc_spb_sys_user_name_enc isc_dpb_sys_user_name_enc\r
-#define isc_spb_password isc_dpb_password\r
-#define isc_spb_password_enc isc_dpb_password_enc\r
-#define isc_spb_command_line 105\r
-#define isc_spb_dbname 106\r
-#define isc_spb_verbose 107\r
-#define isc_spb_options 108\r
-\r
-#define isc_spb_connect_timeout isc_dpb_connect_timeout\r
-#define isc_spb_dummy_packet_interval isc_dpb_dummy_packet_interval\r
-#define isc_spb_sql_role_name isc_dpb_sql_role_name\r
-\r
-\r
-/*********************************/\r
-/* Information call declarations */\r
-/*********************************/\r
-\r
-/****************************/\r
-/* Common, structural codes */\r
-/****************************/\r
-\r
-#define isc_info_end 1\r
-#define isc_info_truncated 2\r
-#define isc_info_error 3\r
-#define isc_info_data_not_ready 4\r
-#define isc_info_flag_end 127\r
-\r
-/******************************/\r
-/* Database information items */\r
-/******************************/\r
-\r
-enum db_info_types\r
- {\r
- isc_info_db_id = 4,\r
- isc_info_reads = 5,\r
- isc_info_writes = 6,\r
- isc_info_fetches = 7,\r
- isc_info_marks = 8,\r
-\r
- isc_info_implementation = 11,\r
- isc_info_isc_version = 12,\r
- isc_info_base_level = 13,\r
- isc_info_page_size = 14,\r
- isc_info_num_buffers = 15,\r
- isc_info_limbo = 16,\r
- isc_info_current_memory = 17,\r
- isc_info_max_memory = 18,\r
- isc_info_window_turns = 19,\r
- isc_info_license = 20, \r
-\r
- isc_info_allocation = 21,\r
- isc_info_attachment_id = 22,\r
- isc_info_read_seq_count = 23,\r
- isc_info_read_idx_count = 24,\r
- isc_info_insert_count = 25,\r
- isc_info_update_count = 26,\r
- isc_info_delete_count = 27,\r
- isc_info_backout_count = 28,\r
- isc_info_purge_count = 29,\r
- isc_info_expunge_count = 30, \r
-\r
- isc_info_sweep_interval = 31,\r
- isc_info_ods_version = 32,\r
- isc_info_ods_minor_version = 33,\r
- isc_info_no_reserve = 34,\r
- isc_info_logfile = 35,\r
- isc_info_cur_logfile_name = 36,\r
- isc_info_cur_log_part_offset = 37,\r
- isc_info_num_wal_buffers = 38,\r
- isc_info_wal_buffer_size = 39,\r
- isc_info_wal_ckpt_length = 40, \r
-\r
- isc_info_wal_cur_ckpt_interval = 41, \r
- isc_info_wal_prv_ckpt_fname = 42,\r
- isc_info_wal_prv_ckpt_poffset = 43,\r
- isc_info_wal_recv_ckpt_fname = 44,\r
- isc_info_wal_recv_ckpt_poffset = 45,\r
- isc_info_wal_grpc_wait_usecs = 47,\r
- isc_info_wal_num_io = 48,\r
- isc_info_wal_avg_io_size = 49,\r
- isc_info_wal_num_commits = 50, \r
-\r
- isc_info_wal_avg_grpc_size = 51,\r
- isc_info_forced_writes = 52,\r
- isc_info_user_names = 53,\r
- isc_info_page_errors = 54,\r
- isc_info_record_errors = 55,\r
- isc_info_bpage_errors = 56,\r
- isc_info_dpage_errors = 57,\r
- isc_info_ipage_errors = 58,\r
- isc_info_ppage_errors = 59,\r
- isc_info_tpage_errors = 60,\r
-\r
- isc_info_set_page_buffers = 61,\r
- isc_info_db_sql_dialect = 62, \r
- isc_info_db_read_only = 63,\r
- isc_info_db_size_in_pages = 64,\r
-\r
- /* Values 65 -100 unused to avoid conflict with InterBase */\r
- \r
- frb_info_att_charset = 101,\r
- isc_info_db_class = 102,\r
- isc_info_firebird_version = 103,\r
- isc_info_oldest_transaction = 104,\r
- isc_info_oldest_active = 105,\r
- isc_info_oldest_snapshot = 106,\r
- isc_info_next_transaction = 107,\r
- isc_info_db_provider = 108,\r
- isc_info_active_transactions = 109,\r
-\r
- isc_info_db_last_value /* Leave this LAST! */\r
- };\r
-\r
-#define isc_info_version isc_info_isc_version\r
-\r
-\r
-/**************************************/\r
-/* Database information return values */\r
-/**************************************/\r
-\r
-enum info_db_implementations\r
- {\r
- isc_info_db_impl_rdb_vms = 1,\r
- isc_info_db_impl_rdb_eln = 2,\r
- isc_info_db_impl_rdb_eln_dev = 3,\r
- isc_info_db_impl_rdb_vms_y = 4,\r
- isc_info_db_impl_rdb_eln_y = 5,\r
- isc_info_db_impl_jri = 6,\r
- isc_info_db_impl_jsv = 7,\r
-\r
- isc_info_db_impl_isc_apl_68K = 25,\r
- isc_info_db_impl_isc_vax_ultr = 26,\r
- isc_info_db_impl_isc_vms = 27,\r
- isc_info_db_impl_isc_sun_68k = 28,\r
- isc_info_db_impl_isc_os2 = 29,\r
- isc_info_db_impl_isc_sun4 = 30, /* 30 */\r
- \r
- isc_info_db_impl_isc_hp_ux = 31,\r
- isc_info_db_impl_isc_sun_386i = 32,\r
- isc_info_db_impl_isc_vms_orcl = 33,\r
- isc_info_db_impl_isc_mac_aux = 34,\r
- isc_info_db_impl_isc_rt_aix = 35,\r
- isc_info_db_impl_isc_mips_ult = 36,\r
- isc_info_db_impl_isc_xenix = 37,\r
- isc_info_db_impl_isc_dg = 38,\r
- isc_info_db_impl_isc_hp_mpexl = 39,\r
- isc_info_db_impl_isc_hp_ux68K = 40, /* 40 */\r
-\r
- isc_info_db_impl_isc_sgi = 41,\r
- isc_info_db_impl_isc_sco_unix = 42,\r
- isc_info_db_impl_isc_cray = 43,\r
- isc_info_db_impl_isc_imp = 44,\r
- isc_info_db_impl_isc_delta = 45,\r
- isc_info_db_impl_isc_next = 46,\r
- isc_info_db_impl_isc_dos = 47,\r
- isc_info_db_impl_m88K = 48,\r
- isc_info_db_impl_unixware = 49,\r
- isc_info_db_impl_isc_winnt_x86 = 50,\r
-\r
- isc_info_db_impl_isc_epson = 51,\r
- isc_info_db_impl_alpha_osf = 52,\r
- isc_info_db_impl_alpha_vms = 53,\r
- isc_info_db_impl_netware_386 = 54, \r
- isc_info_db_impl_win_only = 55,\r
- isc_info_db_impl_ncr_3000 = 56,\r
- isc_info_db_impl_winnt_ppc = 57,\r
- isc_info_db_impl_dg_x86 = 58,\r
- isc_info_db_impl_sco_ev = 59,\r
- isc_info_db_impl_i386 = 60,\r
-\r
- isc_info_db_impl_freebsd = 61,\r
- isc_info_db_impl_netbsd = 62,\r
- isc_info_db_impl_darwin = 63,\r
- isc_info_db_impl_sinixz = 64,\r
-\r
- isc_info_db_impl_linux_sparc = 65,\r
- isc_info_db_impl_linux_amd64 = 66,\r
-\r
- isc_info_db_impl_last_value /* Leave this LAST! */\r
- };\r
-\r
-#define isc_info_db_impl_isc_a isc_info_db_impl_isc_apl_68K\r
-#define isc_info_db_impl_isc_u isc_info_db_impl_isc_vax_ultr\r
-#define isc_info_db_impl_isc_v isc_info_db_impl_isc_vms\r
-#define isc_info_db_impl_isc_s isc_info_db_impl_isc_sun_68k\r
-\r
-\r
-enum info_db_class\r
- {\r
- isc_info_db_class_access = 1,\r
- isc_info_db_class_y_valve = 2,\r
- isc_info_db_class_rem_int = 3,\r
- isc_info_db_class_rem_srvr = 4,\r
- isc_info_db_class_pipe_int = 7,\r
- isc_info_db_class_pipe_srvr = 8,\r
- isc_info_db_class_sam_int = 9,\r
- isc_info_db_class_sam_srvr = 10,\r
- isc_info_db_class_gateway = 11,\r
- isc_info_db_class_cache = 12,\r
- isc_info_db_class_classic_access = 13,\r
- isc_info_db_class_server_access = 14,\r
-\r
- isc_info_db_class_last_value /* Leave this LAST! */\r
- };\r
-\r
-enum info_db_provider\r
- {\r
- isc_info_db_code_rdb_eln = 1,\r
- isc_info_db_code_rdb_vms = 2,\r
- isc_info_db_code_interbase = 3,\r
- isc_info_db_code_firebird = 4,\r
-\r
- isc_info_db_code_last_value /* Leave this LAST! */\r
- };\r
-\r
-\r
-/*****************************/\r
-/* Request information items */\r
-/*****************************/\r
-\r
-#define isc_info_number_messages 4\r
-#define isc_info_max_message 5\r
-#define isc_info_max_send 6\r
-#define isc_info_max_receive 7\r
-#define isc_info_state 8\r
-#define isc_info_message_number 9\r
-#define isc_info_message_size 10\r
-#define isc_info_request_cost 11\r
-#define isc_info_access_path 12\r
-#define isc_info_req_select_count 13\r
-#define isc_info_req_insert_count 14\r
-#define isc_info_req_update_count 15\r
-#define isc_info_req_delete_count 16\r
-\r
-\r
-/*********************/\r
-/* Access path items */\r
-/*********************/\r
-\r
-#define isc_info_rsb_end 0\r
-#define isc_info_rsb_begin 1\r
-#define isc_info_rsb_type 2\r
-#define isc_info_rsb_relation 3\r
-#define isc_info_rsb_plan 4\r
-\r
-/*************/\r
-/* Rsb types */\r
-/*************/\r
-\r
-#define isc_info_rsb_unknown 1\r
-#define isc_info_rsb_indexed 2\r
-#define isc_info_rsb_navigate 3\r
-#define isc_info_rsb_sequential 4\r
-#define isc_info_rsb_cross 5\r
-#define isc_info_rsb_sort 6\r
-#define isc_info_rsb_first 7\r
-#define isc_info_rsb_boolean 8\r
-#define isc_info_rsb_union 9\r
-#define isc_info_rsb_aggregate 10\r
-#define isc_info_rsb_merge 11\r
-#define isc_info_rsb_ext_sequential 12\r
-#define isc_info_rsb_ext_indexed 13\r
-#define isc_info_rsb_ext_dbkey 14\r
-#define isc_info_rsb_left_cross 15\r
-#define isc_info_rsb_select 16\r
-#define isc_info_rsb_sql_join 17\r
-#define isc_info_rsb_simulate 18\r
-#define isc_info_rsb_sim_cross 19\r
-#define isc_info_rsb_once 20\r
-#define isc_info_rsb_procedure 21\r
-\r
-/**********************/\r
-/* Bitmap expressions */\r
-/**********************/\r
-\r
-#define isc_info_rsb_and 1\r
-#define isc_info_rsb_or 2\r
-#define isc_info_rsb_dbkey 3\r
-#define isc_info_rsb_index 4\r
-\r
-#define isc_info_req_active 2\r
-#define isc_info_req_inactive 3\r
-#define isc_info_req_send 4\r
-#define isc_info_req_receive 5\r
-#define isc_info_req_select 6\r
-#define isc_info_req_sql_stall 7\r
-\r
-/**************************/\r
-/* Blob information items */\r
-/**************************/\r
-\r
-#define isc_info_blob_num_segments 4\r
-#define isc_info_blob_max_segment 5\r
-#define isc_info_blob_total_length 6\r
-#define isc_info_blob_type 7\r
-\r
-/*********************************/\r
-/* Transaction information items */\r
-/*********************************/\r
-\r
-#define isc_info_tra_id 4\r
-\r
-/*****************************\r
- * Service action items *\r
- *****************************/\r
-\r
-#define isc_action_svc_backup 1 /* Starts database backup process on the server */\r
-#define isc_action_svc_restore 2 /* Starts database restore process on the server */\r
-#define isc_action_svc_repair 3 /* Starts database repair process on the server */\r
-#define isc_action_svc_add_user 4 /* Adds a new user to the security database */\r
-#define isc_action_svc_delete_user 5 /* Deletes a user record from the security database */\r
-#define isc_action_svc_modify_user 6 /* Modifies a user record in the security database */\r
-#define isc_action_svc_display_user 7 /* Displays a user record from the security database */\r
-#define isc_action_svc_properties 8 /* Sets database properties */\r
-#define isc_action_svc_add_license 9 /* Adds a license to the license file */\r
-#define isc_action_svc_remove_license 10 /* Removes a license from the license file */\r
-#define isc_action_svc_db_stats 11 /* Retrieves database statistics */\r
-#define isc_action_svc_get_ib_log 12 /* Retrieves the InterBase log file from the server */\r
-\r
-/*****************************\r
- * Service information items *\r
- *****************************/\r
-\r
-#define isc_info_svc_svr_db_info 50 /* Retrieves the number of attachments and databases */\r
-#define isc_info_svc_get_license 51 /* Retrieves all license keys and IDs from the license file */\r
-#define isc_info_svc_get_license_mask 52 /* Retrieves a bitmask representing licensed options on the server */\r
-#define isc_info_svc_get_config 53 /* Retrieves the parameters and values for IB_CONFIG */\r
-#define isc_info_svc_version 54 /* Retrieves the version of the services manager */\r
-#define isc_info_svc_server_version 55 /* Retrieves the version of the InterBase server */\r
-#define isc_info_svc_implementation 56 /* Retrieves the implementation of the InterBase server */\r
-#define isc_info_svc_capabilities 57 /* Retrieves a bitmask representing the server's capabilities */\r
-#define isc_info_svc_user_dbpath 58 /* Retrieves the path to the security database in use by the server */\r
-#define isc_info_svc_get_env 59 /* Retrieves the setting of $INTERBASE */\r
-#define isc_info_svc_get_env_lock 60 /* Retrieves the setting of $INTERBASE_LCK */\r
-#define isc_info_svc_get_env_msg 61 /* Retrieves the setting of $INTERBASE_MSG */\r
-#define isc_info_svc_line 62 /* Retrieves 1 line of service output per call */\r
-#define isc_info_svc_to_eof 63 /* Retrieves as much of the server output as will fit in the supplied buffer */\r
-#define isc_info_svc_timeout 64 /* Sets / signifies a timeout value for reading service information */\r
-#define isc_info_svc_get_licensed_users 65 /* Retrieves the number of users licensed for accessing the server */\r
-#define isc_info_svc_limbo_trans 66 /* Retrieve the limbo transactions */\r
-#define isc_info_svc_running 67 /* Checks to see if a service is running on an attachment */\r
-#define isc_info_svc_get_users 68 /* Returns the user information from isc_action_svc_display_users */\r
-\r
-/******************************************************\r
- * Parameters for isc_action_{add|delete|modify)_user *\r
- ******************************************************/\r
-\r
-#define isc_spb_sec_userid 5\r
-#define isc_spb_sec_groupid 6\r
-#define isc_spb_sec_username 7\r
-#define isc_spb_sec_password 8\r
-#define isc_spb_sec_groupname 9\r
-#define isc_spb_sec_firstname 10\r
-#define isc_spb_sec_middlename 11\r
-#define isc_spb_sec_lastname 12\r
-\r
-/*******************************************************\r
- * Parameters for isc_action_svc_(add|remove)_license, *\r
- * isc_info_svc_get_license *\r
- *******************************************************/\r
-\r
-#define isc_spb_lic_key 5\r
-#define isc_spb_lic_id 6\r
-#define isc_spb_lic_desc 7\r
-\r
-\r
-/*****************************************\r
- * Parameters for isc_action_svc_backup *\r
- *****************************************/\r
-\r
-#define isc_spb_bkp_file 5\r
-#define isc_spb_bkp_factor 6\r
-#define isc_spb_bkp_length 7\r
-#define isc_spb_bkp_ignore_checksums 0x01\r
-#define isc_spb_bkp_ignore_limbo 0x02\r
-#define isc_spb_bkp_metadata_only 0x04\r
-#define isc_spb_bkp_no_garbage_collect 0x08\r
-#define isc_spb_bkp_old_descriptions 0x10\r
-#define isc_spb_bkp_non_transportable 0x20\r
-#define isc_spb_bkp_convert 0x40\r
-#define isc_spb_bkp_expand 0x80\r
-\r
-/********************************************\r
- * Parameters for isc_action_svc_properties *\r
- ********************************************/\r
-\r
-#define isc_spb_prp_page_buffers 5\r
-#define isc_spb_prp_sweep_interval 6\r
-#define isc_spb_prp_shutdown_db 7\r
-#define isc_spb_prp_deny_new_attachments 9\r
-#define isc_spb_prp_deny_new_transactions 10\r
-#define isc_spb_prp_reserve_space 11\r
-#define isc_spb_prp_write_mode 12\r
-#define isc_spb_prp_access_mode 13\r
-#define isc_spb_prp_set_sql_dialect 14\r
-#define isc_spb_prp_activate 0x0100\r
-#define isc_spb_prp_db_online 0x0200\r
-\r
-/********************************************\r
- * Parameters for isc_spb_prp_reserve_space *\r
- ********************************************/\r
-\r
-#define isc_spb_prp_res_use_full 35\r
-#define isc_spb_prp_res 36\r
-\r
-/******************************************\r
- * Parameters for isc_spb_prp_write_mode *\r
- ******************************************/\r
-\r
-#define isc_spb_prp_wm_async 37\r
-#define isc_spb_prp_wm_sync 38\r
-\r
-/******************************************\r
- * Parameters for isc_spb_prp_access_mode *\r
- ******************************************/\r
-\r
-#define isc_spb_prp_am_readonly 39\r
-#define isc_spb_prp_am_readwrite 40\r
-\r
-/*****************************************\r
- * Parameters for isc_action_svc_repair *\r
- *****************************************/\r
-\r
-#define isc_spb_rpr_commit_trans 15\r
-#define isc_spb_rpr_rollback_trans 34\r
-#define isc_spb_rpr_recover_two_phase 17\r
-#define isc_spb_tra_id 18\r
-#define isc_spb_single_tra_id 19\r
-#define isc_spb_multi_tra_id 20\r
-#define isc_spb_tra_state 21\r
-#define isc_spb_tra_state_limbo 22\r
-#define isc_spb_tra_state_commit 23\r
-#define isc_spb_tra_state_rollback 24\r
-#define isc_spb_tra_state_unknown 25\r
-#define isc_spb_tra_host_site 26\r
-#define isc_spb_tra_remote_site 27\r
-#define isc_spb_tra_db_path 28\r
-#define isc_spb_tra_advise 29\r
-#define isc_spb_tra_advise_commit 30\r
-#define isc_spb_tra_advise_rollback 31\r
-#define isc_spb_tra_advise_unknown 33\r
-\r
-#define isc_spb_rpr_validate_db 0x01\r
-#define isc_spb_rpr_sweep_db 0x02\r
-#define isc_spb_rpr_mend_db 0x04\r
-#define isc_spb_rpr_list_limbo_trans 0x08\r
-#define isc_spb_rpr_check_db 0x10\r
-#define isc_spb_rpr_ignore_checksum 0x20\r
-#define isc_spb_rpr_kill_shadows 0x40\r
-#define isc_spb_rpr_full 0x80\r
-\r
-/*****************************************\r
- * Parameters for isc_action_svc_restore *\r
- *****************************************/\r
-\r
-#define isc_spb_res_buffers 9\r
-#define isc_spb_res_page_size 10\r
-#define isc_spb_res_length 11\r
-#define isc_spb_res_access_mode 12\r
-#define isc_spb_res_deactivate_idx 0x0100\r
-#define isc_spb_res_no_shadow 0x0200\r
-#define isc_spb_res_no_validity 0x0400\r
-#define isc_spb_res_one_at_a_time 0x0800\r
-#define isc_spb_res_replace 0x1000\r
-#define isc_spb_res_create 0x2000\r
-#define isc_spb_res_use_all_space 0x4000\r
-\r
-/******************************************\r
- * Parameters for isc_spb_res_access_mode *\r
- ******************************************/\r
-\r
-#define isc_spb_res_am_readonly isc_spb_prp_am_readonly\r
-#define isc_spb_res_am_readwrite isc_spb_prp_am_readwrite\r
-\r
-/*******************************************\r
- * Parameters for isc_info_svc_svr_db_info *\r
- *******************************************/\r
-\r
-#define isc_spb_num_att 5\r
-#define isc_spb_num_db 6\r
-\r
-/*****************************************\r
- * Parameters for isc_info_svc_db_stats *\r
- *****************************************/\r
-\r
-#define isc_spb_sts_data_pages 0x01\r
-#define isc_spb_sts_db_log 0x02\r
-#define isc_spb_sts_hdr_pages 0x04\r
-#define isc_spb_sts_idx_pages 0x08\r
-#define isc_spb_sts_sys_relations 0x10\r
-#define isc_spb_sts_record_versions 0x20\r
-#define isc_spb_sts_table 0x40\r
-\r
-/*************************/\r
-/* SQL information items */\r
-/*************************/\r
-\r
-#define isc_info_sql_select 4\r
-#define isc_info_sql_bind 5\r
-#define isc_info_sql_num_variables 6\r
-#define isc_info_sql_describe_vars 7\r
-#define isc_info_sql_describe_end 8\r
-#define isc_info_sql_sqlda_seq 9\r
-#define isc_info_sql_message_seq 10\r
-#define isc_info_sql_type 11\r
-#define isc_info_sql_sub_type 12\r
-#define isc_info_sql_scale 13\r
-#define isc_info_sql_length 14\r
-#define isc_info_sql_null_ind 15\r
-#define isc_info_sql_field 16\r
-#define isc_info_sql_relation 17\r
-#define isc_info_sql_owner 18\r
-#define isc_info_sql_alias 19\r
-#define isc_info_sql_sqlda_start 20\r
-#define isc_info_sql_stmt_type 21\r
-#define isc_info_sql_get_plan 22\r
-#define isc_info_sql_records 23\r
-#define isc_info_sql_batch_fetch 24\r
-\r
-/*********************************/\r
-/* SQL information return values */\r
-/*********************************/\r
-\r
-#define isc_info_sql_stmt_select 1\r
-#define isc_info_sql_stmt_insert 2\r
-#define isc_info_sql_stmt_update 3\r
-#define isc_info_sql_stmt_delete 4\r
-#define isc_info_sql_stmt_ddl 5\r
-#define isc_info_sql_stmt_get_segment 6\r
-#define isc_info_sql_stmt_put_segment 7\r
-#define isc_info_sql_stmt_exec_procedure 8\r
-#define isc_info_sql_stmt_start_trans 9\r
-#define isc_info_sql_stmt_commit 10\r
-#define isc_info_sql_stmt_rollback 11\r
-#define isc_info_sql_stmt_select_for_upd 12\r
-#define isc_info_sql_stmt_set_generator 13\r
-#define isc_info_sql_stmt_savepoint 14\r
-\r
-\r
-/***********************************/\r
-/* Server configuration key values */\r
-/***********************************/\r
-\r
-/* Not available in Firebird 1.5 */\r
-\r
-\r
-/**********************************************/\r
-/* Dynamic Data Definition Language operators */\r
-/**********************************************/\r
-\r
-/******************/\r
-/* Version number */\r
-/******************/\r
-\r
-#define isc_dyn_version_1 1\r
-#define isc_dyn_eoc 255\r
-\r
-/******************************/\r
-/* Operations (may be nested) */\r
-/******************************/\r
-\r
-#define isc_dyn_begin 2\r
-#define isc_dyn_end 3\r
-#define isc_dyn_if 4\r
-#define isc_dyn_def_database 5\r
-#define isc_dyn_def_global_fld 6\r
-#define isc_dyn_def_local_fld 7\r
-#define isc_dyn_def_idx 8\r
-#define isc_dyn_def_rel 9\r
-#define isc_dyn_def_sql_fld 10\r
-#define isc_dyn_def_view 12\r
-#define isc_dyn_def_trigger 15\r
-#define isc_dyn_def_security_class 120\r
-#define isc_dyn_def_dimension 140\r
-#define isc_dyn_def_generator 24\r
-#define isc_dyn_def_function 25\r
-#define isc_dyn_def_filter 26\r
-#define isc_dyn_def_function_arg 27\r
-#define isc_dyn_def_shadow 34\r
-#define isc_dyn_def_trigger_msg 17\r
-#define isc_dyn_def_file 36\r
-#define isc_dyn_mod_database 39\r
-#define isc_dyn_mod_rel 11\r
-#define isc_dyn_mod_global_fld 13\r
-#define isc_dyn_mod_idx 102\r
-#define isc_dyn_mod_local_fld 14\r
-#define isc_dyn_mod_sql_fld 216\r
-#define isc_dyn_mod_view 16\r
-#define isc_dyn_mod_security_class 122\r
-#define isc_dyn_mod_trigger 113\r
-#define isc_dyn_mod_trigger_msg 28\r
-#define isc_dyn_delete_database 18\r
-#define isc_dyn_delete_rel 19\r
-#define isc_dyn_delete_global_fld 20\r
-#define isc_dyn_delete_local_fld 21\r
-#define isc_dyn_delete_idx 22\r
-#define isc_dyn_delete_security_class 123\r
-#define isc_dyn_delete_dimensions 143\r
-#define isc_dyn_delete_trigger 23\r
-#define isc_dyn_delete_trigger_msg 29\r
-#define isc_dyn_delete_filter 32\r
-#define isc_dyn_delete_function 33\r
-#define isc_dyn_delete_shadow 35\r
-#define isc_dyn_grant 30\r
-#define isc_dyn_revoke 31\r
-#define isc_dyn_def_primary_key 37\r
-#define isc_dyn_def_foreign_key 38\r
-#define isc_dyn_def_unique 40\r
-#define isc_dyn_def_procedure 164\r
-#define isc_dyn_delete_procedure 165\r
-#define isc_dyn_def_parameter 135\r
-#define isc_dyn_delete_parameter 136\r
-#define isc_dyn_mod_procedure 175\r
-#define isc_dyn_def_log_file 176\r
-#define isc_dyn_def_cache_file 180\r
-#define isc_dyn_def_exception 181\r
-#define isc_dyn_mod_exception 182\r
-#define isc_dyn_del_exception 183\r
-#define isc_dyn_drop_log 194\r
-#define isc_dyn_drop_cache 195\r
-#define isc_dyn_def_default_log 202\r
-\r
-/***********************/\r
-/* View specific stuff */\r
-/***********************/\r
-\r
-#define isc_dyn_view_blr 43\r
-#define isc_dyn_view_source 44\r
-#define isc_dyn_view_relation 45\r
-#define isc_dyn_view_context 46\r
-#define isc_dyn_view_context_name 47\r
-\r
-/**********************/\r
-/* Generic attributes */\r
-/**********************/\r
-\r
-#define isc_dyn_rel_name 50\r
-#define isc_dyn_fld_name 51\r
-#define isc_dyn_new_fld_name 215\r
-#define isc_dyn_idx_name 52\r
-#define isc_dyn_description 53\r
-#define isc_dyn_security_class 54\r
-#define isc_dyn_system_flag 55\r
-#define isc_dyn_update_flag 56\r
-#define isc_dyn_prc_name 166\r
-#define isc_dyn_prm_name 137\r
-#define isc_dyn_sql_object 196\r
-#define isc_dyn_fld_character_set_name 174\r
-\r
-/********************************/\r
-/* Relation specific attributes */\r
-/********************************/\r
-\r
-#define isc_dyn_rel_dbkey_length 61\r
-#define isc_dyn_rel_store_trig 62\r
-#define isc_dyn_rel_modify_trig 63\r
-#define isc_dyn_rel_erase_trig 64\r
-#define isc_dyn_rel_store_trig_source 65\r
-#define isc_dyn_rel_modify_trig_source 66\r
-#define isc_dyn_rel_erase_trig_source 67\r
-#define isc_dyn_rel_ext_file 68\r
-#define isc_dyn_rel_sql_protection 69\r
-#define isc_dyn_rel_constraint 162\r
-#define isc_dyn_delete_rel_constraint 163\r
-\r
-/************************************/\r
-/* Global field specific attributes */\r
-/************************************/\r
-\r
-#define isc_dyn_fld_type 70\r
-#define isc_dyn_fld_length 71\r
-#define isc_dyn_fld_scale 72\r
-#define isc_dyn_fld_sub_type 73\r
-#define isc_dyn_fld_segment_length 74\r
-#define isc_dyn_fld_query_header 75\r
-#define isc_dyn_fld_edit_string 76\r
-#define isc_dyn_fld_validation_blr 77\r
-#define isc_dyn_fld_validation_source 78\r
-#define isc_dyn_fld_computed_blr 79\r
-#define isc_dyn_fld_computed_source 80\r
-#define isc_dyn_fld_missing_value 81\r
-#define isc_dyn_fld_default_value 82\r
-#define isc_dyn_fld_query_name 83\r
-#define isc_dyn_fld_dimensions 84\r
-#define isc_dyn_fld_not_null 85\r
-#define isc_dyn_fld_precision 86\r
-#define isc_dyn_fld_char_length 172\r
-#define isc_dyn_fld_collation 173\r
-#define isc_dyn_fld_default_source 193\r
-#define isc_dyn_del_default 197\r
-#define isc_dyn_del_validation 198\r
-#define isc_dyn_single_validation 199\r
-#define isc_dyn_fld_character_set 203\r
-\r
-/***********************************/\r
-/* Local field specific attributes */\r
-/***********************************/\r
-\r
-#define isc_dyn_fld_source 90\r
-#define isc_dyn_fld_base_fld 91\r
-#define isc_dyn_fld_position 92\r
-#define isc_dyn_fld_update_flag 93\r
-\r
-/*****************************/\r
-/* Index specific attributes */\r
-/*****************************/\r
-\r
-#define isc_dyn_idx_unique 100\r
-#define isc_dyn_idx_inactive 101\r
-#define isc_dyn_idx_type 103\r
-#define isc_dyn_idx_foreign_key 104\r
-#define isc_dyn_idx_ref_column 105\r
-#define isc_dyn_idx_statistic 204\r
-\r
-/*******************************/\r
-/* Trigger specific attributes */\r
-/*******************************/\r
-\r
-#define isc_dyn_trg_type 110\r
-#define isc_dyn_trg_blr 111\r
-#define isc_dyn_trg_source 112\r
-#define isc_dyn_trg_name 114\r
-#define isc_dyn_trg_sequence 115\r
-#define isc_dyn_trg_inactive 116\r
-#define isc_dyn_trg_msg_number 117\r
-#define isc_dyn_trg_msg 118\r
-\r
-/**************************************/\r
-/* Security Class specific attributes */\r
-/**************************************/\r
-\r
-#define isc_dyn_scl_acl 121\r
-#define isc_dyn_grant_user 130\r
-#define isc_dyn_grant_user_explicit 219\r
-#define isc_dyn_grant_proc 186\r
-#define isc_dyn_grant_trig 187\r
-#define isc_dyn_grant_view 188\r
-#define isc_dyn_grant_options 132\r
-#define isc_dyn_grant_user_group 205\r
-#define isc_dyn_grant_role 218\r
-\r
-\r
-/**********************************/\r
-/* Dimension specific information */\r
-/**********************************/\r
-\r
-#define isc_dyn_dim_lower 141\r
-#define isc_dyn_dim_upper 142\r
-\r
-/****************************/\r
-/* File specific attributes */\r
-/****************************/\r
-\r
-#define isc_dyn_file_name 125\r
-#define isc_dyn_file_start 126\r
-#define isc_dyn_file_length 127\r
-#define isc_dyn_shadow_number 128\r
-#define isc_dyn_shadow_man_auto 129\r
-#define isc_dyn_shadow_conditional 130\r
-\r
-/********************************/\r
-/* Log file specific attributes */\r
-/********************************/\r
-\r
-#define isc_dyn_log_file_sequence 177\r
-#define isc_dyn_log_file_partitions 178\r
-#define isc_dyn_log_file_serial 179\r
-#define isc_dyn_log_file_overflow 200\r
-#define isc_dyn_log_file_raw 201\r
-\r
-/***************************/\r
-/* Log specific attributes */\r
-/***************************/\r
-\r
-#define isc_dyn_log_group_commit_wait 189\r
-#define isc_dyn_log_buffer_size 190\r
-#define isc_dyn_log_check_point_length 191\r
-#define isc_dyn_log_num_of_buffers 192\r
-\r
-/********************************/\r
-/* Function specific attributes */\r
-/********************************/\r
-\r
-#define isc_dyn_function_name 145\r
-#define isc_dyn_function_type 146\r
-#define isc_dyn_func_module_name 147\r
-#define isc_dyn_func_entry_point 148\r
-#define isc_dyn_func_return_argument 149\r
-#define isc_dyn_func_arg_position 150\r
-#define isc_dyn_func_mechanism 151\r
-#define isc_dyn_filter_in_subtype 152\r
-#define isc_dyn_filter_out_subtype 153\r
-\r
-\r
-#define isc_dyn_description2 154\r
-#define isc_dyn_fld_computed_source2 155\r
-#define isc_dyn_fld_edit_string2 156\r
-#define isc_dyn_fld_query_header2 157\r
-#define isc_dyn_fld_validation_source2 158\r
-#define isc_dyn_trg_msg2 159\r
-#define isc_dyn_trg_source2 160\r
-#define isc_dyn_view_source2 161\r
-#define isc_dyn_xcp_msg2 184\r
-\r
-/*********************************/\r
-/* Generator specific attributes */\r
-/*********************************/\r
-\r
-#define isc_dyn_generator_name 95\r
-#define isc_dyn_generator_id 96\r
-\r
-/*********************************/\r
-/* Procedure specific attributes */\r
-/*********************************/\r
-\r
-#define isc_dyn_prc_inputs 167\r
-#define isc_dyn_prc_outputs 168\r
-#define isc_dyn_prc_source 169\r
-#define isc_dyn_prc_blr 170\r
-#define isc_dyn_prc_source2 171\r
-\r
-/*********************************/\r
-/* Parameter specific attributes */\r
-/*********************************/\r
-\r
-#define isc_dyn_prm_number 138\r
-#define isc_dyn_prm_type 139\r
-\r
-/********************************/\r
-/* Relation specific attributes */\r
-/********************************/\r
-\r
-#define isc_dyn_xcp_msg 185\r
-\r
-/**********************************************/\r
-/* Cascading referential integrity values */\r
-/**********************************************/\r
-#define isc_dyn_foreign_key_update 205\r
-#define isc_dyn_foreign_key_delete 206\r
-#define isc_dyn_foreign_key_cascade 207\r
-#define isc_dyn_foreign_key_default 208\r
-#define isc_dyn_foreign_key_null 209\r
-#define isc_dyn_foreign_key_none 210\r
-\r
-/***********************/\r
-/* SQL role values */\r
-/***********************/\r
-#define isc_dyn_def_sql_role 211\r
-#define isc_dyn_sql_role_name 212\r
-#define isc_dyn_grant_admin_options 213\r
-#define isc_dyn_del_sql_role 214\r
-/* 215 & 216 are used some lines above. */\r
-\r
-/**********************************************/\r
-/* Generators again */\r
-/**********************************************/\r
-\r
-#ifndef __cplusplus /* c definitions */\r
-#define gds_dyn_delete_generator 217\r
-#else /* c++ definitions */\r
-const unsigned char gds_dyn_delete_generator = 217;\r
-#endif\r
-\r
-/****************************/\r
-/* Last $dyn value assigned */\r
-/****************************/\r
-\r
-#define isc_dyn_last_dyn_value 219\r
-\r
-/******************************************/\r
-/* Array slice description language (SDL) */\r
-/******************************************/\r
-\r
-#define isc_sdl_version1 1\r
-#define isc_sdl_eoc 255\r
-#define isc_sdl_relation 2\r
-#define isc_sdl_rid 3\r
-#define isc_sdl_field 4\r
-#define isc_sdl_fid 5\r
-#define isc_sdl_struct 6\r
-#define isc_sdl_variable 7\r
-#define isc_sdl_scalar 8\r
-#define isc_sdl_tiny_integer 9\r
-#define isc_sdl_short_integer 10\r
-#define isc_sdl_long_integer 11\r
-#define isc_sdl_literal 12\r
-#define isc_sdl_add 13\r
-#define isc_sdl_subtract 14\r
-#define isc_sdl_multiply 15\r
-#define isc_sdl_divide 16\r
-#define isc_sdl_negate 17\r
-#define isc_sdl_eql 18\r
-#define isc_sdl_neq 19\r
-#define isc_sdl_gtr 20\r
-#define isc_sdl_geq 21\r
-#define isc_sdl_lss 22\r
-#define isc_sdl_leq 23\r
-#define isc_sdl_and 24\r
-#define isc_sdl_or 25\r
-#define isc_sdl_not 26\r
-#define isc_sdl_while 27\r
-#define isc_sdl_assignment 28\r
-#define isc_sdl_label 29\r
-#define isc_sdl_leave 30\r
-#define isc_sdl_begin 31\r
-#define isc_sdl_end 32\r
-#define isc_sdl_do3 33\r
-#define isc_sdl_do2 34\r
-#define isc_sdl_do1 35\r
-#define isc_sdl_element 36\r
-\r
-/********************************************/\r
-/* International text interpretation values */\r
-/********************************************/\r
-\r
-#define isc_interp_eng_ascii 0\r
-#define isc_interp_jpn_sjis 5\r
-#define isc_interp_jpn_euc 6\r
-\r
-/*******************/\r
-/* SQL definitions */\r
-/*******************/\r
-\r
-#define SQL_TEXT 452\r
-#define SQL_VARYING 448\r
-#define SQL_SHORT 500\r
-#define SQL_LONG 496\r
-#define SQL_FLOAT 482\r
-#define SQL_DOUBLE 480\r
-#define SQL_D_FLOAT 530\r
-#define SQL_TIMESTAMP 510\r
-#define SQL_BLOB 520\r
-#define SQL_ARRAY 540\r
-#define SQL_QUAD 550\r
-#define SQL_TYPE_TIME 560\r
-#define SQL_TYPE_DATE 570\r
-#define SQL_INT64 580\r
-\r
-/* Historical alias for pre V6 applications */\r
-#define SQL_DATE SQL_TIMESTAMP\r
-\r
-/*****************/\r
-/* Blob Subtypes */\r
-/*****************/\r
-\r
-/* types less than zero are reserved for customer use */\r
-\r
-#define isc_blob_untyped 0\r
-\r
-/* internal subtypes */\r
-\r
-#define isc_blob_text 1\r
-#define isc_blob_blr 2\r
-#define isc_blob_acl 3\r
-#define isc_blob_ranges 4\r
-#define isc_blob_summary 5\r
-#define isc_blob_format 6\r
-#define isc_blob_tra 7\r
-#define isc_blob_extfile 8\r
-\r
-/* the range 20-30 is reserved for dBASE and Paradox types */\r
-\r
-#define isc_blob_formatted_memo 20\r
-#define isc_blob_paradox_ole 21\r
-#define isc_blob_graphic 22\r
-#define isc_blob_dbase_ole 23\r
-#define isc_blob_typed_binary 24\r
-\r
-/* Deprecated definitions maintained for compatibility only */\r
-\r
-#define isc_info_db_SQL_dialect 62\r
-#define isc_dpb_SQL_dialect 63\r
-#define isc_dpb_set_db_SQL_dialect 65\r
-\r
-\r
-#include "iberror.h"\r
-\r
-#endif /* JRD_IBASE_H */\r
-\r