home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1998 October A / Pcwk10a98.iso / Inprise / TRIAL / INTRBASE / DATA.Z / ibase.h < prev    next >
C/C++ Source or Header  |  1998-03-15  |  106KB  |  2,778 lines

  1. /*
  2.  *    MODULE:        ibase.h
  3.  *    DESCRIPTION:    OSRI entrypoints and defines
  4.  *
  5.  * copyright (c) 1998 by InterBase Software Corporation
  6.  * copyright (c) 1996 by Borland International
  7.  */
  8.  
  9. #ifndef _JRD_IBASE_H_
  10. #define _JRD_IBASE_H_
  11.  
  12. #ifndef HARBOR_MERGE
  13. #define HARBOR_MERGE
  14. #endif
  15.  
  16. #define isc_version4
  17.  
  18. #define  ISC_TRUE    1
  19. #define  ISC_FALSE    0
  20. #if !(defined __cplusplus)
  21. #define  ISC__TRUE    ISC_TRUE
  22. #define  ISC__FALSE    ISC_FALSE
  23. #endif
  24.  
  25. #if (defined __osf__ && defined __alpha)
  26. #define  ISC_LONG    int
  27. #else
  28. #define  ISC_LONG    long
  29. #endif
  30.  
  31. #define  ISC_STATUS    long
  32.  
  33. #define  DSQL_close     1
  34. #define  DSQL_drop      2
  35.  
  36.  
  37. /******************************************************************/
  38. /* Define type, export and other stuff based on c/c++ and Windows */
  39. /******************************************************************/
  40.  
  41. #if (defined(_MSC_VER) && defined(WIN32)) || \
  42.     (defined(__BORLANDC__) && (defined(__WIN32__) || defined(__OS2__)))
  43. #define  ISC_FAR
  44. #define  ISC_EXPORT    __stdcall
  45. #define  ISC_EXPORT_VARARG    __cdecl
  46. #else                    /* Not Windows/NT */
  47. #if (defined(__IBMC__) && defined(__OS2__))
  48. #define  ISC_FAR
  49. #define  ISC_EXPORT    _System
  50. #define  ISC_EXPORT_VARARG    ISC_EXPORT
  51. #else                    /* not IBM C Set++ for OS/2 */
  52. #if ( defined( _Windows) || defined( _WINDOWS))
  53. #define  ISC_FAR    __far
  54. #define  ISC_EXPORT     ISC_FAR __cdecl __loadds __export
  55. #define  ISC_EXPORT_VARARG    ISC_EXPORT
  56. #else                    /* Not Windows/NT, OS/2 or Windows */
  57. #define  ISC_FAR
  58. #define  ISC_EXPORT
  59. #define  ISC_EXPORT_VARARG
  60. #endif                    /* Windows and Not Windows/NT or OS/2 */
  61. #endif                    /* IBM C Set++ for OS/2 */
  62. #endif                   /* Windows/NT */
  63.  
  64. /*******************************************************************/
  65. /* Blob id structure                                               */
  66. /*******************************************************************/
  67.  
  68. typedef struct {
  69.     ISC_LONG        gds_quad_high;
  70.     unsigned ISC_LONG    gds_quad_low;
  71. } GDS_QUAD;
  72. #if !(defined __cplusplus)
  73. typedef GDS_QUAD    GDS__QUAD;
  74. #endif                    /* !(defined __cplusplus) */
  75.  
  76. #define    ISC_QUAD    GDS_QUAD
  77. #define    isc_quad_high    gds_quad_high
  78. #define    isc_quad_low    gds_quad_low
  79.  
  80. typedef struct {
  81.     short           array_bound_lower;
  82.     short           array_bound_upper;
  83. } ISC_ARRAY_BOUND;
  84.  
  85. typedef struct {
  86.     unsigned char       array_desc_dtype;
  87.     char                array_desc_scale;
  88.     unsigned short      array_desc_length;
  89.     char                array_desc_field_name [32];
  90.     char                array_desc_relation_name [32];
  91.     short               array_desc_dimensions;
  92.     short               array_desc_flags;
  93.     ISC_ARRAY_BOUND     array_desc_bounds [16];
  94. } ISC_ARRAY_DESC;
  95.  
  96. typedef struct {
  97.     short               blob_desc_subtype;
  98.     short               blob_desc_charset;
  99.     short               blob_desc_segment_size;
  100.     unsigned char       blob_desc_field_name [32];
  101.     unsigned char       blob_desc_relation_name [32];
  102. } ISC_BLOB_DESC;
  103.  
  104.  
  105. /***************************/
  106. /* Blob control structure  */
  107. /***************************/
  108.  
  109. typedef struct isc_blob_ctl{
  110.     ISC_STATUS      (ISC_FAR *ctl_source)();    /* Source filter */
  111.     struct isc_blob_ctl ISC_FAR *ctl_source_handle; /* Argument to pass to source */
  112.                         /* filter */
  113.     short          ctl_to_sub_type;      /* Target type */
  114.     short          ctl_from_sub_type;    /* Source type */
  115.     unsigned short        ctl_buffer_length;    /* Length of buffer */
  116.     unsigned short        ctl_segment_length;      /* Length of current segment */
  117.     unsigned short        ctl_bpb_length;    /* Length of blob parameter */
  118.                             /* block */
  119.     char      ISC_FAR *ctl_bpb;        /* Address of blob parameter */ 
  120.                         /* block */
  121.     unsigned char ISC_FAR *ctl_buffer;        /* Address of segment buffer */
  122.     ISC_LONG           ctl_max_segment;    /* Length of longest segment */
  123.     ISC_LONG           ctl_number_segments;     /* Total number of segments */
  124.     ISC_LONG            ctl_total_length;      /* Total length of blob */
  125.     ISC_STATUS      ISC_FAR *ctl_status;        /* Address of status vector */
  126.     long          ctl_data [8];          /* Application specific data */
  127. } ISC_FAR *ISC_BLOB_CTL;
  128.  
  129. /***************************/
  130. /* Blob stream definitions */ 
  131. /***************************/
  132.  
  133. typedef struct bstream {
  134.     void    ISC_FAR *bstr_blob;      /* Blob handle */
  135.     char    ISC_FAR *bstr_buffer;    /* Address of buffer */
  136.     char    ISC_FAR *bstr_ptr;    /* Next character */
  137.     short      bstr_length;        /* Length of buffer */
  138.     short      bstr_cnt;        /* Characters in buffer */
  139.     char            bstr_mode;          /* (mode) ? OUTPUT : INPUT */
  140. } BSTREAM;
  141.  
  142. #define getb(p)    (--(p)->bstr_cnt >= 0 ? *(p)->bstr_ptr++ & 0377: BLOB_get (p))
  143. #define putb(x,p) ((x == '\n' || (!(--(p)->bstr_cnt))) ? BLOB_put (x,p) : ((int) (*(p)->bstr_ptr++ = (unsigned) (x))))
  144. #define putbx(x,p) ((!(--(p)->bstr_cnt)) ? BLOB_put (x,p) : ((int) (*(p)->bstr_ptr++ = (unsigned) (x))))
  145.  
  146. /***************************/
  147. /* Dynamic SQL definitions */
  148. /***************************/
  149.  
  150. typedef struct {
  151.     short       sqltype;
  152.     short       sqllen;
  153.     char        ISC_FAR *sqldata;
  154.     short       ISC_FAR *sqlind;
  155.     short       sqlname_length;
  156.     char        sqlname [30];
  157. } SQLVAR;
  158.  
  159. typedef struct {
  160.     char        sqldaid [8];
  161.     ISC_LONG    sqldabc;
  162.     short       sqln;
  163.     short       sqld;
  164.     SQLVAR      sqlvar [1];
  165. } SQLDA;
  166.  
  167. #define SQLDA_LENGTH(n)         (sizeof (SQLDA) + (n-1) * sizeof (SQLVAR))
  168.  
  169. /******************************/
  170. /* Declare the extended SQLDA */
  171. /******************************/
  172.  
  173. typedef struct {
  174.     short    sqltype;        /* datatype of field */
  175.     short    sqlscale;        /* scale factor */
  176.     short    sqlsubtype;        /* datatype subtype - BLOBs & Text */
  177.                     /* types only */
  178.     short    sqllen;            /* length of data area */
  179.     char  ISC_FAR *sqldata;        /* address of data */
  180.     short ISC_FAR *sqlind;        /* address of indicator variable */
  181.     short      sqlname_length;        /* length of sqlname field */
  182.     char    sqlname [32];        /* name of field, name length + space */
  183.                     /* for NULL */
  184.     short    relname_length;        /* length of relation name */
  185.     char    relname [32];        /* field's relation name + space for */
  186.                     /* NULL */
  187.     short    ownname_length;        /* length of owner name */
  188.     char    ownname [32];        /* relation's owner name + space for */
  189.                     /* NULL */
  190.     short    aliasname_length;     /* length of alias name */
  191.     char    aliasname [32];        /* relation's alias name + space for */
  192.                     /* NULL */
  193. } XSQLVAR;
  194.  
  195. typedef struct {
  196.     short    version;        /* version of this XSQLDA */
  197.     char    sqldaid [8];        /* XSQLDA name field */
  198.     ISC_LONG    sqldabc;        /* length in bytes of SQLDA */
  199.     short    sqln;            /* number of fields allocated */
  200.     short    sqld;            /* actual number of fields */
  201.     XSQLVAR    sqlvar [1];        /* first field address */
  202. } XSQLDA;
  203.  
  204. #define XSQLDA_LENGTH(n)    (sizeof (XSQLDA) + (n-1) * sizeof (XSQLVAR))
  205.  
  206. /********************************/
  207. /* InterBase Handle Definitions */
  208. /********************************/
  209.  
  210. typedef void     ISC_FAR *isc_att_handle;
  211.  
  212. typedef void     ISC_FAR *isc_blob_handle;
  213. typedef void     ISC_FAR *isc_db_handle;
  214. typedef void     ISC_FAR *isc_form_handle;
  215. typedef void     ISC_FAR *isc_req_handle;
  216. typedef void     ISC_FAR *isc_stmt_handle;
  217. typedef void     ISC_FAR *isc_svc_handle;
  218. typedef void     ISC_FAR *isc_tr_handle;
  219. typedef void     ISC_FAR *isc_win_handle;
  220. typedef void    (ISC_FAR *isc_callback)();
  221.  
  222. /***************************/
  223. /* OSRI database functions */
  224. /***************************/
  225.  
  226. #if defined(__cplusplus) || defined(__STDC__) || defined(_Windows) || \
  227.     (defined(_MSC_VER) && defined(WIN32)) || defined( _WINDOWS) || \
  228.     (defined(__BORLANDC__) && (defined(__WIN32__) || defined(__OS2__))) || \
  229.     (defined(__IBMC__) && defined(__OS2__))
  230.  
  231. #ifdef __cplusplus
  232. extern "C" {
  233. #endif
  234.  
  235. ISC_STATUS  ISC_EXPORT isc_attach_database (ISC_STATUS ISC_FAR *, 
  236.                         short, 
  237.                         char ISC_FAR *, 
  238.                         isc_db_handle ISC_FAR *, 
  239.                         short, 
  240.                         char ISC_FAR *);
  241.  
  242. ISC_STATUS  ISC_EXPORT isc_array_gen_sdl (ISC_STATUS ISC_FAR *, 
  243.                       ISC_ARRAY_DESC ISC_FAR *,
  244.                       short ISC_FAR *, 
  245.                       char ISC_FAR *, 
  246.                       short ISC_FAR *);
  247.  
  248. ISC_STATUS  ISC_EXPORT isc_array_get_slice (ISC_STATUS ISC_FAR *, 
  249.                         isc_db_handle ISC_FAR *, 
  250.                         isc_tr_handle ISC_FAR *, 
  251.                         ISC_QUAD ISC_FAR *, 
  252.                         ISC_ARRAY_DESC ISC_FAR *, 
  253.                         void ISC_FAR *, 
  254.                         ISC_LONG ISC_FAR *);
  255.  
  256. ISC_STATUS  ISC_EXPORT isc_array_lookup_bounds (ISC_STATUS ISC_FAR *, 
  257.                         isc_db_handle ISC_FAR *, 
  258.                         isc_tr_handle ISC_FAR *, 
  259.                         char ISC_FAR *,
  260.                         char ISC_FAR *, 
  261.                         ISC_ARRAY_DESC ISC_FAR *);
  262.  
  263. ISC_STATUS  ISC_EXPORT isc_array_lookup_desc (ISC_STATUS ISC_FAR *, 
  264.                           isc_db_handle ISC_FAR *,
  265.                           isc_tr_handle ISC_FAR *, 
  266.                           char ISC_FAR *, 
  267.                           char ISC_FAR *, 
  268.                           ISC_ARRAY_DESC ISC_FAR *);
  269.  
  270. ISC_STATUS  ISC_EXPORT isc_array_set_desc (ISC_STATUS ISC_FAR *, 
  271.                        char ISC_FAR *, 
  272.                        char ISC_FAR *,
  273.                        short ISC_FAR *, 
  274.                        short ISC_FAR *, 
  275.                        short ISC_FAR *, 
  276.                        ISC_ARRAY_DESC ISC_FAR *);
  277.  
  278. ISC_STATUS  ISC_EXPORT isc_array_put_slice (ISC_STATUS ISC_FAR *, 
  279.                         isc_db_handle ISC_FAR *, 
  280.                         isc_tr_handle ISC_FAR *, 
  281.                         ISC_QUAD ISC_FAR *, 
  282.                         ISC_ARRAY_DESC ISC_FAR *, 
  283.                         void ISC_FAR *, 
  284.                         ISC_LONG ISC_FAR *);
  285.  
  286. void       ISC_EXPORT isc_blob_default_desc (ISC_BLOB_DESC ISC_FAR *,
  287.                                         unsigned char ISC_FAR *,
  288.                                         unsigned char ISC_FAR *);
  289.  
  290. ISC_STATUS ISC_EXPORT isc_blob_gen_bpb (ISC_STATUS ISC_FAR *,
  291.                     ISC_BLOB_DESC ISC_FAR *,
  292.                     ISC_BLOB_DESC ISC_FAR *,
  293.                     unsigned short,
  294.                     unsigned char ISC_FAR *,
  295.                     unsigned short ISC_FAR *);
  296.  
  297. ISC_STATUS  ISC_EXPORT isc_blob_info (ISC_STATUS ISC_FAR *, 
  298.                       isc_blob_handle ISC_FAR *, 
  299.                       short,
  300.                        char ISC_FAR *, 
  301.                       short, 
  302.                       char ISC_FAR *);
  303.  
  304. ISC_STATUS ISC_EXPORT isc_blob_lookup_desc (ISC_STATUS ISC_FAR *,
  305.                         isc_db_handle ISC_FAR *,
  306.                         isc_tr_handle ISC_FAR *,
  307.                         unsigned char ISC_FAR *,
  308.                         unsigned char ISC_FAR *,
  309.                         ISC_BLOB_DESC ISC_FAR *,
  310.                         unsigned char ISC_FAR *);
  311.  
  312. ISC_STATUS ISC_EXPORT isc_blob_set_desc (ISC_STATUS ISC_FAR *,
  313.                      unsigned char ISC_FAR *,
  314.                      unsigned char ISC_FAR *,
  315.                      short,
  316.                      short,
  317.                      short,
  318.                      ISC_BLOB_DESC ISC_FAR *);
  319.  
  320. ISC_STATUS  ISC_EXPORT isc_cancel_blob (ISC_STATUS ISC_FAR *, 
  321.                         isc_blob_handle ISC_FAR *);
  322.  
  323. ISC_STATUS  ISC_EXPORT isc_cancel_events (ISC_STATUS ISC_FAR *, 
  324.                       isc_db_handle ISC_FAR *, 
  325.                       ISC_LONG ISC_FAR *);
  326.  
  327. ISC_STATUS  ISC_EXPORT isc_close_blob (ISC_STATUS ISC_FAR *, 
  328.                        isc_blob_handle ISC_FAR *);
  329.  
  330. ISC_STATUS  ISC_EXPORT isc_commit_retaining (ISC_STATUS ISC_FAR *, 
  331.                          isc_tr_handle ISC_FAR *);
  332.  
  333. ISC_STATUS  ISC_EXPORT isc_commit_transaction (ISC_STATUS ISC_FAR *, 
  334.                            isc_tr_handle ISC_FAR *);
  335.  
  336. ISC_STATUS  ISC_EXPORT isc_create_blob (ISC_STATUS ISC_FAR *, 
  337.                     isc_db_handle ISC_FAR *, 
  338.                     isc_tr_handle ISC_FAR *, 
  339.                     isc_blob_handle ISC_FAR *, 
  340.                     ISC_QUAD ISC_FAR *);
  341.  
  342. ISC_STATUS  ISC_EXPORT isc_create_blob2 (ISC_STATUS ISC_FAR *, 
  343.                      isc_db_handle ISC_FAR *, 
  344.                      isc_tr_handle ISC_FAR *, 
  345.                      isc_blob_handle ISC_FAR *, 
  346.                      ISC_QUAD ISC_FAR *, 
  347.                      short,  
  348.                      char ISC_FAR *); 
  349.  
  350. ISC_STATUS  ISC_EXPORT isc_create_database (ISC_STATUS ISC_FAR *, 
  351.                         short, 
  352.                         char ISC_FAR *, 
  353.                         isc_db_handle ISC_FAR *, 
  354.                         short, 
  355.                         char ISC_FAR *, 
  356.                         short);
  357.  
  358. ISC_STATUS  ISC_EXPORT isc_database_info (ISC_STATUS ISC_FAR *, 
  359.                       isc_db_handle ISC_FAR *, 
  360.                       short, 
  361.                       char ISC_FAR *, 
  362.                       short, 
  363.                       char ISC_FAR *);
  364.  
  365. void        ISC_EXPORT isc_decode_date (ISC_QUAD ISC_FAR *, 
  366.                     void ISC_FAR *);
  367.  
  368. ISC_STATUS  ISC_EXPORT isc_detach_database (ISC_STATUS ISC_FAR *,  
  369.                         isc_db_handle ISC_FAR *);
  370.  
  371. ISC_STATUS  ISC_EXPORT isc_drop_database (ISC_STATUS ISC_FAR *,  
  372.                       isc_db_handle ISC_FAR *);
  373.  
  374. ISC_STATUS  ISC_EXPORT isc_dsql_allocate_statement (ISC_STATUS ISC_FAR *, 
  375.                             isc_db_handle ISC_FAR *, 
  376.                             isc_stmt_handle ISC_FAR *);
  377.  
  378. ISC_STATUS  ISC_EXPORT isc_dsql_alloc_statement2 (ISC_STATUS ISC_FAR *, 
  379.                           isc_db_handle ISC_FAR *, 
  380.                           isc_stmt_handle ISC_FAR *);
  381.  
  382. ISC_STATUS  ISC_EXPORT isc_dsql_describe (ISC_STATUS ISC_FAR *, 
  383.                       isc_stmt_handle ISC_FAR *, 
  384.                       unsigned short, 
  385.                       XSQLDA ISC_FAR *);
  386.  
  387. ISC_STATUS  ISC_EXPORT isc_dsql_describe_bind (ISC_STATUS ISC_FAR *, 
  388.                            isc_stmt_handle ISC_FAR *, 
  389.                            unsigned short, 
  390.                            XSQLDA ISC_FAR *);
  391.  
  392. ISC_STATUS  ISC_EXPORT isc_dsql_exec_immed2 (ISC_STATUS ISC_FAR *, 
  393.                          isc_db_handle ISC_FAR *, 
  394.                          isc_tr_handle ISC_FAR *, 
  395.                          unsigned short, 
  396.                          char ISC_FAR *, 
  397.                          unsigned short, 
  398.                          XSQLDA ISC_FAR *, 
  399.                          XSQLDA ISC_FAR *);
  400.  
  401. ISC_STATUS  ISC_EXPORT isc_dsql_execute (ISC_STATUS ISC_FAR *, 
  402.                      isc_tr_handle ISC_FAR *,
  403.                      isc_stmt_handle ISC_FAR *, 
  404.                      unsigned short, 
  405.                      XSQLDA ISC_FAR *);
  406.  
  407. ISC_STATUS  ISC_EXPORT isc_dsql_execute2 (ISC_STATUS ISC_FAR *, 
  408.                       isc_tr_handle ISC_FAR *,
  409.                       isc_stmt_handle ISC_FAR *, 
  410.                       unsigned short, 
  411.                       XSQLDA ISC_FAR *,
  412.                       XSQLDA ISC_FAR *);
  413.  
  414. ISC_STATUS  ISC_EXPORT isc_dsql_execute_immediate (ISC_STATUS ISC_FAR *, 
  415.                            isc_db_handle ISC_FAR *, 
  416.                            isc_tr_handle ISC_FAR *, 
  417.                            unsigned short, 
  418.                            char ISC_FAR *, 
  419.                            unsigned short, 
  420.                            XSQLDA ISC_FAR *);
  421.  
  422. ISC_STATUS  ISC_EXPORT isc_dsql_fetch (ISC_STATUS ISC_FAR *, 
  423.                        isc_stmt_handle ISC_FAR *, 
  424.                        unsigned short, 
  425.                        XSQLDA ISC_FAR *);
  426.  
  427. ISC_STATUS  ISC_EXPORT isc_dsql_finish (isc_db_handle ISC_FAR *);
  428.  
  429. ISC_STATUS  ISC_EXPORT isc_dsql_free_statement (ISC_STATUS ISC_FAR *, 
  430.                         isc_stmt_handle ISC_FAR *, 
  431.                         unsigned short);
  432.  
  433. ISC_STATUS  ISC_EXPORT isc_dsql_insert (ISC_STATUS ISC_FAR *, 
  434.                        isc_stmt_handle ISC_FAR *, 
  435.                        unsigned short, 
  436.                        XSQLDA ISC_FAR *);
  437.  
  438. ISC_STATUS  ISC_EXPORT isc_dsql_prepare (ISC_STATUS ISC_FAR *, 
  439.                      isc_tr_handle ISC_FAR *, 
  440.                      isc_stmt_handle ISC_FAR *, 
  441.                      unsigned short, 
  442.                      char ISC_FAR *, 
  443.                      unsigned short, 
  444.                       XSQLDA ISC_FAR *);
  445.  
  446. ISC_STATUS  ISC_EXPORT isc_dsql_set_cursor_name (ISC_STATUS ISC_FAR *, 
  447.                          isc_stmt_handle ISC_FAR *, 
  448.                          char ISC_FAR *, 
  449.                          unsigned short);
  450.  
  451. ISC_STATUS  ISC_EXPORT isc_dsql_sql_info (ISC_STATUS ISC_FAR *, 
  452.                       isc_stmt_handle ISC_FAR *, 
  453.                       short, 
  454.                       char ISC_FAR *, 
  455.                       short, 
  456.                       char ISC_FAR *);
  457.  
  458. void        ISC_EXPORT isc_encode_date (void ISC_FAR *, 
  459.                     ISC_QUAD ISC_FAR *);
  460.  
  461. ISC_LONG    ISC_EXPORT_VARARG isc_event_block (char ISC_FAR * ISC_FAR *, 
  462.                            char ISC_FAR * ISC_FAR *, 
  463.                            unsigned short, ...);
  464.  
  465. void        ISC_EXPORT isc_event_counts (unsigned ISC_LONG ISC_FAR *, 
  466.                      short, 
  467.                      char ISC_FAR *,
  468.                      char ISC_FAR *);
  469.  
  470. void        ISC_EXPORT_VARARG isc_expand_dpb (char ISC_FAR * ISC_FAR *, 
  471.                           short ISC_FAR *, 
  472.                           ...);
  473.  
  474. int        ISC_EXPORT isc_modify_dpb (char ISC_FAR * ISC_FAR *, 
  475.                      short ISC_FAR *, unsigned short,
  476.                      char ISC_FAR *, short );
  477.  
  478. ISC_LONG    ISC_EXPORT isc_free (char ISC_FAR *);
  479.  
  480. ISC_STATUS  ISC_EXPORT isc_get_segment (ISC_STATUS ISC_FAR *, 
  481.                         isc_blob_handle ISC_FAR *, 
  482.                         unsigned short ISC_FAR *, 
  483.                         unsigned short, 
  484.                         char ISC_FAR *);
  485.  
  486. ISC_STATUS  ISC_EXPORT isc_get_slice (ISC_STATUS ISC_FAR *, 
  487.                       isc_db_handle ISC_FAR *, 
  488.                       isc_tr_handle ISC_FAR *, 
  489.                        ISC_QUAD ISC_FAR *, 
  490.                        short, 
  491.                       char ISC_FAR *, 
  492.                       short, 
  493.                       ISC_LONG ISC_FAR *, 
  494.                       ISC_LONG, 
  495.                       void ISC_FAR *, 
  496.                       ISC_LONG ISC_FAR *);
  497.  
  498. ISC_STATUS  ISC_EXPORT isc_interprete (char ISC_FAR *, 
  499.                        ISC_STATUS ISC_FAR * ISC_FAR *);
  500.  
  501. ISC_STATUS  ISC_EXPORT isc_open_blob (ISC_STATUS ISC_FAR *, 
  502.                       isc_db_handle ISC_FAR *, 
  503.                       isc_tr_handle ISC_FAR *, 
  504.                       isc_blob_handle ISC_FAR *, 
  505.                       ISC_QUAD ISC_FAR *);
  506.  
  507. ISC_STATUS  ISC_EXPORT isc_open_blob2 (ISC_STATUS ISC_FAR *, 
  508.                        isc_db_handle ISC_FAR *, 
  509.                        isc_tr_handle ISC_FAR *,
  510.                        isc_blob_handle ISC_FAR *, 
  511.                        ISC_QUAD ISC_FAR *, 
  512.                        short,  
  513.                        char ISC_FAR *);
  514.  
  515. ISC_STATUS  ISC_EXPORT isc_prepare_transaction2 (ISC_STATUS ISC_FAR *, 
  516.                          isc_tr_handle ISC_FAR *, 
  517.                          short, 
  518.                          char ISC_FAR *);
  519.  
  520. void        ISC_EXPORT isc_print_sqlerror (short, 
  521.                        ISC_STATUS ISC_FAR *);
  522.  
  523. ISC_STATUS  ISC_EXPORT isc_print_status (ISC_STATUS ISC_FAR *);
  524.  
  525. ISC_STATUS  ISC_EXPORT isc_put_segment (ISC_STATUS ISC_FAR *, 
  526.                     isc_blob_handle ISC_FAR *, 
  527.                     unsigned short, 
  528.                     char ISC_FAR *);
  529.  
  530. ISC_STATUS  ISC_EXPORT isc_put_slice (ISC_STATUS ISC_FAR *, 
  531.                       isc_db_handle ISC_FAR *, 
  532.                       isc_tr_handle ISC_FAR *, 
  533.                       ISC_QUAD ISC_FAR *, 
  534.                       short, 
  535.                       char ISC_FAR *, 
  536.                       short, 
  537.                       ISC_LONG ISC_FAR *, 
  538.                       ISC_LONG, 
  539.                       void ISC_FAR *);
  540.  
  541. ISC_STATUS  ISC_EXPORT isc_que_events (ISC_STATUS ISC_FAR *, 
  542.                        isc_db_handle ISC_FAR *, 
  543.                        ISC_LONG ISC_FAR *, 
  544.                        short, 
  545.                        char ISC_FAR *, 
  546.                        isc_callback, 
  547.                        void ISC_FAR *);
  548.  
  549. ISC_STATUS  ISC_EXPORT isc_rollback_transaction (ISC_STATUS ISC_FAR *, 
  550.                          isc_tr_handle ISC_FAR *);
  551.  
  552. ISC_STATUS  ISC_EXPORT isc_start_multiple (ISC_STATUS ISC_FAR *, 
  553.                        isc_tr_handle ISC_FAR *, 
  554.                        short, 
  555.                        void ISC_FAR *);
  556.  
  557. ISC_STATUS  ISC_EXPORT_VARARG isc_start_transaction (ISC_STATUS ISC_FAR *, 
  558.                              isc_tr_handle ISC_FAR *,
  559.                              short, ...);
  560.  
  561. ISC_LONG    ISC_EXPORT isc_sqlcode (ISC_STATUS ISC_FAR *);
  562.  
  563. void        ISC_EXPORT isc_sql_interprete (short, 
  564.                        char ISC_FAR *, 
  565.                        short);
  566.  
  567. ISC_STATUS  ISC_EXPORT isc_transaction_info (ISC_STATUS ISC_FAR *,  
  568.                          isc_tr_handle ISC_FAR *, 
  569.                          short, 
  570.                          char ISC_FAR *, 
  571.                          short,  
  572.                          char ISC_FAR *);
  573.  
  574. ISC_STATUS  ISC_EXPORT isc_transact_request (ISC_STATUS ISC_FAR *,  
  575.                          isc_db_handle ISC_FAR *, 
  576.                          isc_tr_handle ISC_FAR *,
  577.                          unsigned short, 
  578.                          char ISC_FAR *, 
  579.                          unsigned short,  
  580.                          char ISC_FAR *,
  581.                          unsigned short,
  582.                          char ISC_FAR *);
  583.  
  584. ISC_LONG    ISC_EXPORT isc_vax_integer (char ISC_FAR *, 
  585.                     short);
  586.  
  587.  
  588. /*************************************/
  589. /* Security Functions and structures */
  590. /*************************************/
  591.  
  592. #define sec_uid_spec            0x01
  593. #define sec_gid_spec            0x02
  594. #define sec_server_spec            0x04
  595. #define sec_password_spec        0x08
  596. #define sec_group_name_spec        0x10
  597. #define sec_first_name_spec        0x20
  598. #define sec_middle_name_spec        0x40
  599. #define sec_last_name_spec        0x80
  600. #define sec_dba_user_name_spec      0x100
  601. #define sec_dba_password_spec       0x200
  602.  
  603. #define sec_protocol_tcpip            1
  604. #define sec_protocol_netbeui          2
  605. #define sec_protocol_spx              3
  606. #define sec_protocol_local            4
  607.  
  608. typedef struct {
  609.     short  sec_flags;             /* which fields are specified */
  610.     int    uid;                 /* the user's id */
  611.     int       gid;                 /* the user's group id */
  612.     int    protocol;             /* protocol to use for connection */
  613.     char   ISC_FAR *server;          /* server to administer */
  614.     char   ISC_FAR *user_name;       /* the user's name */
  615.     char   ISC_FAR *password;        /* the user's password */
  616.     char   ISC_FAR *group_name;      /* the group name */
  617.     char   ISC_FAR *first_name;         /* the user's first name */
  618.     char   ISC_FAR *middle_name;     /* the user's middle name */
  619.     char   ISC_FAR *last_name;         /* the user's last name */
  620.     char   ISC_FAR *dba_user_name;   /* the dba user name */
  621.     char   ISC_FAR *dba_password;    /* the dba password */
  622. } USER_SEC_DATA;
  623.  
  624. int ISC_EXPORT isc_add_user (ISC_STATUS ISC_FAR *, USER_SEC_DATA *);
  625.  
  626. int ISC_EXPORT isc_delete_user (ISC_STATUS ISC_FAR *, USER_SEC_DATA *);
  627.  
  628. int ISC_EXPORT isc_modify_user (ISC_STATUS ISC_FAR *, USER_SEC_DATA *);
  629.  
  630. /**********************************/
  631. /*  Other OSRI functions          */
  632. /**********************************/
  633.                                           
  634. ISC_STATUS  ISC_EXPORT isc_compile_request (ISC_STATUS ISC_FAR *, 
  635.                         isc_db_handle ISC_FAR *,
  636.                           isc_req_handle ISC_FAR *, 
  637.                         short, 
  638.                         char ISC_FAR *);
  639.  
  640. ISC_STATUS  ISC_EXPORT isc_compile_request2 (ISC_STATUS ISC_FAR *, 
  641.                          isc_db_handle ISC_FAR *,
  642.                          isc_req_handle ISC_FAR *, 
  643.                          short, 
  644.                          char ISC_FAR *);
  645.  
  646. ISC_STATUS  ISC_EXPORT isc_ddl (ISC_STATUS ISC_FAR *,
  647.                     isc_db_handle ISC_FAR *, 
  648.                     isc_tr_handle ISC_FAR *,
  649.                     short, 
  650.                     char ISC_FAR *);
  651.  
  652. ISC_STATUS  ISC_EXPORT isc_prepare_transaction (ISC_STATUS ISC_FAR *, 
  653.                         isc_tr_handle ISC_FAR *);
  654.  
  655.  
  656. ISC_STATUS  ISC_EXPORT isc_receive (ISC_STATUS ISC_FAR *, 
  657.                     isc_req_handle ISC_FAR *, 
  658.                     short, 
  659.                      short, 
  660.                     void ISC_FAR *, 
  661.                     short);
  662.  
  663. ISC_STATUS  ISC_EXPORT isc_reconnect_transaction (ISC_STATUS ISC_FAR *,
  664.                           isc_db_handle ISC_FAR *, 
  665.                           isc_tr_handle ISC_FAR *, 
  666.                           short, 
  667.                           char ISC_FAR *);
  668.  
  669. ISC_STATUS  ISC_EXPORT isc_release_request (ISC_STATUS ISC_FAR *, 
  670.                         isc_req_handle ISC_FAR *);
  671.  
  672. ISC_STATUS  ISC_EXPORT isc_request_info (ISC_STATUS ISC_FAR *,  
  673.                      isc_req_handle ISC_FAR *, 
  674.                      short, 
  675.                        short, 
  676.                      char ISC_FAR *, 
  677.                      short, 
  678.                      char ISC_FAR *);     
  679.  
  680. ISC_STATUS  ISC_EXPORT isc_seek_blob (ISC_STATUS ISC_FAR *, 
  681.                       isc_blob_handle ISC_FAR *, 
  682.                       short, 
  683.                       ISC_LONG, 
  684.                       ISC_LONG ISC_FAR *);
  685.  
  686. ISC_STATUS  ISC_EXPORT isc_send (ISC_STATUS ISC_FAR *, 
  687.                  isc_req_handle ISC_FAR *, 
  688.                  short, 
  689.                  short,
  690.                  void ISC_FAR *, 
  691.                  short);
  692.  
  693. ISC_STATUS  ISC_EXPORT isc_start_and_send (ISC_STATUS ISC_FAR *, 
  694.                        isc_req_handle ISC_FAR *, 
  695.                        isc_tr_handle ISC_FAR *, 
  696.                        short, 
  697.                        short, 
  698.                        void ISC_FAR *, 
  699.                        short);
  700.  
  701. ISC_STATUS  ISC_EXPORT isc_start_request (ISC_STATUS ISC_FAR *, 
  702.                       isc_req_handle ISC_FAR *,
  703.                       isc_tr_handle ISC_FAR *,
  704.                       short);
  705.  
  706. ISC_STATUS  ISC_EXPORT isc_unwind_request (ISC_STATUS ISC_FAR *, 
  707.                        isc_tr_handle ISC_FAR *,
  708.                        short);
  709.  
  710. ISC_STATUS  ISC_EXPORT isc_wait_for_event (ISC_STATUS ISC_FAR *, 
  711.                        isc_db_handle ISC_FAR *, 
  712.                        short, 
  713.                        char ISC_FAR *, 
  714.                        char ISC_FAR *);
  715.  
  716. /*****************************/
  717. /* Other Sql functions       */
  718. /*****************************/
  719.  
  720. ISC_STATUS  ISC_EXPORT isc_close (ISC_STATUS ISC_FAR *, 
  721.                   char ISC_FAR *);
  722.  
  723. ISC_STATUS  ISC_EXPORT isc_declare (ISC_STATUS ISC_FAR *, 
  724.                     char ISC_FAR *, 
  725.                     char ISC_FAR *);
  726.  
  727. ISC_STATUS  ISC_EXPORT isc_describe (ISC_STATUS ISC_FAR *, 
  728.                     char ISC_FAR *, 
  729.                     SQLDA ISC_FAR *);
  730.  
  731. ISC_STATUS  ISC_EXPORT isc_describe_bind (ISC_STATUS ISC_FAR *, 
  732.                       char ISC_FAR *, 
  733.                       SQLDA ISC_FAR *);
  734.  
  735. ISC_STATUS  ISC_EXPORT isc_execute (ISC_STATUS ISC_FAR *, 
  736.                     isc_tr_handle ISC_FAR *, 
  737.                     char ISC_FAR *, 
  738.                     SQLDA ISC_FAR *);
  739.  
  740. ISC_STATUS  ISC_EXPORT isc_execute_immediate (ISC_STATUS ISC_FAR *, 
  741.                           isc_db_handle ISC_FAR *,
  742.                           isc_tr_handle ISC_FAR *, 
  743.                           short ISC_FAR *, 
  744.                           char ISC_FAR *);
  745.  
  746. ISC_STATUS  ISC_EXPORT isc_fetch (ISC_STATUS ISC_FAR *, 
  747.                   char ISC_FAR *, 
  748.                   SQLDA ISC_FAR *);
  749.  
  750. ISC_STATUS  ISC_EXPORT isc_open (ISC_STATUS ISC_FAR *, 
  751.                  isc_tr_handle ISC_FAR *, 
  752.                  char ISC_FAR *, 
  753.                  SQLDA ISC_FAR *);
  754.  
  755. ISC_STATUS  ISC_EXPORT isc_prepare (ISC_STATUS ISC_FAR *, 
  756.                     isc_db_handle ISC_FAR *, 
  757.                     isc_tr_handle ISC_FAR *, 
  758.                     char ISC_FAR *, 
  759.                     short ISC_FAR *, 
  760.                     char ISC_FAR *, 
  761.                     SQLDA ISC_FAR *);
  762.  
  763. /*************************************/
  764. /* Other Dynamic sql functions       */
  765. /*************************************/
  766.  
  767. ISC_STATUS  ISC_EXPORT isc_dsql_execute_m (ISC_STATUS ISC_FAR *, 
  768.                        isc_tr_handle ISC_FAR *,
  769.                        isc_stmt_handle ISC_FAR *, 
  770.                        unsigned short, 
  771.                        char ISC_FAR *, 
  772.                        unsigned short, 
  773.                        unsigned short, 
  774.                        char ISC_FAR *);
  775.  
  776. ISC_STATUS  ISC_EXPORT isc_dsql_execute2_m (ISC_STATUS ISC_FAR *, 
  777.                        isc_tr_handle ISC_FAR *,
  778.                        isc_stmt_handle ISC_FAR *, 
  779.                        unsigned short, 
  780.                        char ISC_FAR *, 
  781.                        unsigned short, 
  782.                        unsigned short, 
  783.                        char ISC_FAR *,
  784.                        unsigned short, 
  785.                        char ISC_FAR *, 
  786.                        unsigned short, 
  787.                        unsigned short, 
  788.                        char ISC_FAR *);
  789.  
  790. ISC_STATUS  ISC_EXPORT isc_dsql_execute_immediate_m (ISC_STATUS ISC_FAR *, 
  791.                              isc_db_handle ISC_FAR *, 
  792.                              isc_tr_handle ISC_FAR *, 
  793.                              unsigned short, 
  794.                              char ISC_FAR *, 
  795.                              unsigned short, 
  796.                              unsigned short, 
  797.                              char ISC_FAR *,
  798.                              unsigned short,
  799.                              unsigned short,
  800.                              char ISC_FAR *);
  801.  
  802. ISC_STATUS  ISC_EXPORT isc_dsql_exec_immed3_m (ISC_STATUS ISC_FAR *, 
  803.                            isc_db_handle ISC_FAR *, 
  804.                            isc_tr_handle ISC_FAR *, 
  805.                            unsigned short, 
  806.                            char ISC_FAR *, 
  807.                            unsigned short, 
  808.                            unsigned short, 
  809.                            char ISC_FAR *,
  810.                            unsigned short,
  811.                            unsigned short,
  812.                            char ISC_FAR *,
  813.                            unsigned short, 
  814.                            char ISC_FAR *,
  815.                            unsigned short,
  816.                            unsigned short,
  817.                            char ISC_FAR *);
  818.  
  819. ISC_STATUS  ISC_EXPORT isc_dsql_fetch_m (ISC_STATUS ISC_FAR *, 
  820.                      isc_stmt_handle ISC_FAR *, 
  821.                      unsigned short, 
  822.                      char ISC_FAR *, 
  823.                      unsigned short, 
  824.                      unsigned short, 
  825.                      char ISC_FAR *);
  826.  
  827. ISC_STATUS  ISC_EXPORT isc_dsql_insert_m (ISC_STATUS ISC_FAR *, 
  828.                       isc_stmt_handle ISC_FAR *, 
  829.                       unsigned short, 
  830.                       char ISC_FAR *, 
  831.                       unsigned short, 
  832.                       unsigned short, 
  833.                       char ISC_FAR *);
  834.  
  835. ISC_STATUS  ISC_EXPORT isc_dsql_prepare_m (ISC_STATUS ISC_FAR *, 
  836.                        isc_tr_handle ISC_FAR *,
  837.                         isc_stmt_handle ISC_FAR *, 
  838.                        unsigned short,  
  839.                        char ISC_FAR *, 
  840.                        unsigned short,
  841.                        unsigned short, 
  842.                          char ISC_FAR *, 
  843.                         unsigned short,
  844.                        char ISC_FAR *);
  845.  
  846. ISC_STATUS  ISC_EXPORT isc_dsql_release (ISC_STATUS ISC_FAR *, 
  847.                      char ISC_FAR *);
  848.  
  849. ISC_STATUS  ISC_EXPORT isc_embed_dsql_close (ISC_STATUS ISC_FAR *, 
  850.                          char ISC_FAR *);
  851.  
  852. ISC_STATUS  ISC_EXPORT isc_embed_dsql_declare (ISC_STATUS ISC_FAR *, 
  853.                           char ISC_FAR *, 
  854.                           char ISC_FAR *);
  855.  
  856. ISC_STATUS  ISC_EXPORT isc_embed_dsql_describe (ISC_STATUS ISC_FAR *, 
  857.                         char ISC_FAR *, 
  858.                         unsigned short, 
  859.                         XSQLDA ISC_FAR *);
  860.  
  861. ISC_STATUS  ISC_EXPORT isc_embed_dsql_describe_bind (ISC_STATUS ISC_FAR *, 
  862.                              char ISC_FAR *, 
  863.                              unsigned short, 
  864.                              XSQLDA ISC_FAR *);
  865.  
  866. ISC_STATUS  ISC_EXPORT isc_embed_dsql_execute (ISC_STATUS ISC_FAR *, 
  867.                            isc_tr_handle ISC_FAR *,
  868.                            char ISC_FAR *, 
  869.                            unsigned short, 
  870.                            XSQLDA ISC_FAR *);
  871.  
  872. ISC_STATUS  ISC_EXPORT isc_embed_dsql_execute2 (ISC_STATUS ISC_FAR *,
  873.                         isc_tr_handle ISC_FAR *,
  874.                         char ISC_FAR *,
  875.                         unsigned short,
  876.                         XSQLDA ISC_FAR *,
  877.                         XSQLDA ISC_FAR *);
  878.  
  879. ISC_STATUS  ISC_EXPORT isc_embed_dsql_execute_immed (ISC_STATUS ISC_FAR *, 
  880.                              isc_db_handle ISC_FAR *, 
  881.                              isc_tr_handle ISC_FAR *, 
  882.                              unsigned short, 
  883.                              char ISC_FAR *,     
  884.                              unsigned short, 
  885.                              XSQLDA ISC_FAR *);
  886.  
  887. ISC_STATUS  ISC_EXPORT isc_embed_dsql_fetch (ISC_STATUS ISC_FAR *, 
  888.                          char ISC_FAR *, 
  889.                          unsigned short, 
  890.                          XSQLDA ISC_FAR *);
  891.  
  892. ISC_STATUS  ISC_EXPORT isc_embed_dsql_open (ISC_STATUS ISC_FAR *, 
  893.                         isc_tr_handle ISC_FAR *, 
  894.                         char ISC_FAR *, 
  895.                         unsigned short, 
  896.                         XSQLDA ISC_FAR *);
  897.  
  898. ISC_STATUS  ISC_EXPORT isc_embed_dsql_open2 (ISC_STATUS ISC_FAR *, 
  899.                          isc_tr_handle ISC_FAR *, 
  900.                          char ISC_FAR *, 
  901.                          unsigned short, 
  902.                          XSQLDA ISC_FAR *,
  903.                          XSQLDA ISC_FAR *);
  904.  
  905. ISC_STATUS  ISC_EXPORT isc_embed_dsql_insert (ISC_STATUS ISC_FAR *, 
  906.                           char ISC_FAR *, 
  907.                           unsigned short, 
  908.                           XSQLDA ISC_FAR *);
  909.  
  910. ISC_STATUS  ISC_EXPORT isc_embed_dsql_prepare (ISC_STATUS ISC_FAR *, 
  911.                            isc_db_handle ISC_FAR *,
  912.                            isc_tr_handle ISC_FAR *, 
  913.                            char ISC_FAR *, 
  914.                            unsigned short, 
  915.                            char ISC_FAR *, 
  916.                            unsigned short, 
  917.                            XSQLDA ISC_FAR *);
  918.  
  919. ISC_STATUS  ISC_EXPORT isc_embed_dsql_release (ISC_STATUS ISC_FAR *, 
  920.                            char ISC_FAR *);
  921.  
  922. /******************************/
  923. /* Other Blob functions       */
  924. /******************************/
  925.  
  926. BSTREAM     ISC_FAR * ISC_EXPORT BLOB_open (isc_blob_handle,  
  927.                         char ISC_FAR *,  
  928.                         int);
  929.  
  930. int          ISC_EXPORT BLOB_put (char, 
  931.                  BSTREAM ISC_FAR *);
  932.  
  933. int          ISC_EXPORT BLOB_close (BSTREAM ISC_FAR *);
  934.  
  935. int          ISC_EXPORT BLOB_get (BSTREAM ISC_FAR *);
  936.  
  937. int         ISC_EXPORT BLOB_display (ISC_QUAD ISC_FAR *, 
  938.                      isc_db_handle, 
  939.                      isc_tr_handle,
  940.                      char ISC_FAR *);
  941.  
  942. int         ISC_EXPORT BLOB_dump (ISC_QUAD ISC_FAR *, 
  943.                   isc_db_handle, 
  944.                   isc_tr_handle,
  945.                   char ISC_FAR *);
  946.  
  947. int         ISC_EXPORT BLOB_edit (ISC_QUAD ISC_FAR *, 
  948.                   isc_db_handle, 
  949.                   isc_tr_handle,
  950.                   char ISC_FAR *);
  951.  
  952. int         ISC_EXPORT BLOB_load (ISC_QUAD ISC_FAR *, 
  953.                   isc_db_handle, 
  954.                   isc_tr_handle,
  955.                   char ISC_FAR *);
  956.  
  957. int         ISC_EXPORT BLOB_text_dump (ISC_QUAD ISC_FAR *, 
  958.                   isc_db_handle, 
  959.                   isc_tr_handle,
  960.                   char ISC_FAR *);
  961.  
  962. int         ISC_EXPORT BLOB_text_load (ISC_QUAD ISC_FAR *, 
  963.                   isc_db_handle, 
  964.                   isc_tr_handle,
  965.                   char ISC_FAR *);
  966.  
  967. BSTREAM     ISC_FAR * ISC_EXPORT Bopen (ISC_QUAD ISC_FAR *, 
  968.                            isc_db_handle, 
  969.                            isc_tr_handle,  
  970.                            char ISC_FAR *);
  971.  
  972. BSTREAM     ISC_FAR * ISC_EXPORT Bopen2 (ISC_QUAD ISC_FAR *, 
  973.                      isc_db_handle,  
  974.                      isc_tr_handle,  
  975.                      char ISC_FAR *,
  976.                      unsigned short);
  977.  
  978. /******************************/
  979. /* Other Misc functions       */
  980. /******************************/
  981.  
  982. ISC_LONG    ISC_EXPORT isc_ftof (char ISC_FAR *, 
  983.                  unsigned short, 
  984.                  char ISC_FAR *, 
  985.                  unsigned short);
  986.  
  987. ISC_STATUS  ISC_EXPORT isc_print_blr (char ISC_FAR *, 
  988.                       isc_callback, 
  989.                       void ISC_FAR *, 
  990.                       short);
  991.  
  992. void        ISC_EXPORT isc_set_debug (int);
  993.  
  994. void        ISC_EXPORT isc_qtoq (ISC_QUAD ISC_FAR *, 
  995.                  ISC_QUAD ISC_FAR *);
  996.  
  997. void        ISC_EXPORT isc_vtof (char ISC_FAR *, 
  998.                  char ISC_FAR *,
  999.                  unsigned short);
  1000.  
  1001. void        ISC_EXPORT isc_vtov (char ISC_FAR *, 
  1002.                  char ISC_FAR *, 
  1003.                  short);
  1004.  
  1005. int         ISC_EXPORT isc_version (isc_db_handle ISC_FAR *, 
  1006.                     isc_callback, 
  1007.                     void ISC_FAR *);
  1008.  
  1009. ISC_LONG    ISC_EXPORT isc_reset_fpe (unsigned short);
  1010.  
  1011. /*****************************************/
  1012. /* Service manager functions             */
  1013. /*****************************************/
  1014.  
  1015. ISC_STATUS  ISC_EXPORT isc_attach_service (ISC_STATUS ISC_FAR *, 
  1016.                        unsigned short, 
  1017.                        char ISC_FAR *,
  1018.                        isc_svc_handle ISC_FAR *, 
  1019.                        unsigned short, 
  1020.                        char ISC_FAR *);
  1021.  
  1022. ISC_STATUS  ISC_EXPORT isc_detach_service (ISC_STATUS ISC_FAR *, 
  1023.                        isc_svc_handle ISC_FAR *);
  1024.  
  1025. ISC_STATUS  ISC_EXPORT isc_query_service (ISC_STATUS ISC_FAR *, 
  1026.                       isc_svc_handle ISC_FAR *,
  1027.                       unsigned short, 
  1028.                       char ISC_FAR *, 
  1029.                       unsigned short, 
  1030.                       char ISC_FAR *, 
  1031.                       unsigned short, 
  1032.                       char ISC_FAR *);
  1033.  
  1034. /*******************************/
  1035. /* Forms functions             */
  1036. /*******************************/
  1037.  
  1038. ISC_STATUS  ISC_EXPORT isc_compile_map (ISC_STATUS ISC_FAR *, 
  1039.                     isc_form_handle ISC_FAR *,
  1040.                     isc_req_handle ISC_FAR *, 
  1041.                     short ISC_FAR *, 
  1042.                     char ISC_FAR *);
  1043.  
  1044. ISC_STATUS  ISC_EXPORT isc_compile_menu (ISC_STATUS ISC_FAR *, 
  1045.                      isc_form_handle ISC_FAR *,
  1046.                      isc_req_handle ISC_FAR *, 
  1047.                      short ISC_FAR *, 
  1048.                       char ISC_FAR *);
  1049.  
  1050. ISC_STATUS  ISC_EXPORT isc_compile_sub_map (ISC_STATUS ISC_FAR *, 
  1051.                         isc_win_handle ISC_FAR *,
  1052.                         isc_req_handle ISC_FAR *, 
  1053.                         short ISC_FAR *, 
  1054.                         char ISC_FAR *);
  1055.  
  1056. ISC_STATUS  ISC_EXPORT isc_create_window (ISC_STATUS ISC_FAR *, 
  1057.                       isc_win_handle ISC_FAR *, 
  1058.                       short ISC_FAR *, 
  1059.                       char ISC_FAR *, 
  1060.                       short ISC_FAR *, 
  1061.                       short ISC_FAR *);
  1062.  
  1063. ISC_STATUS  ISC_EXPORT isc_delete_window (ISC_STATUS ISC_FAR *, 
  1064.                       isc_win_handle ISC_FAR *);
  1065.  
  1066. ISC_STATUS  ISC_EXPORT isc_drive_form (ISC_STATUS ISC_FAR *, 
  1067.                        isc_db_handle ISC_FAR *, 
  1068.                        isc_tr_handle ISC_FAR *, 
  1069.                        isc_win_handle ISC_FAR *, 
  1070.                        isc_req_handle ISC_FAR *, 
  1071.                        unsigned char ISC_FAR *, 
  1072.                        unsigned char ISC_FAR *);
  1073.  
  1074. ISC_STATUS  ISC_EXPORT isc_drive_menu (ISC_STATUS ISC_FAR *, 
  1075.                        isc_win_handle ISC_FAR *, 
  1076.                        isc_req_handle ISC_FAR *, 
  1077.                        short ISC_FAR *, 
  1078.                        char ISC_FAR *, 
  1079.                        short ISC_FAR *, 
  1080.                        char ISC_FAR *,
  1081.                        short ISC_FAR *, 
  1082.                        short ISC_FAR *, 
  1083.                        char ISC_FAR *, 
  1084.                        ISC_LONG ISC_FAR *);
  1085.  
  1086. ISC_STATUS  ISC_EXPORT isc_form_delete (ISC_STATUS ISC_FAR *, 
  1087.                     isc_form_handle ISC_FAR *);
  1088.  
  1089. ISC_STATUS  ISC_EXPORT isc_form_fetch (ISC_STATUS ISC_FAR *, 
  1090.                        isc_db_handle ISC_FAR *, 
  1091.                        isc_tr_handle ISC_FAR *, 
  1092.                        isc_req_handle ISC_FAR *, 
  1093.                        unsigned char ISC_FAR *);
  1094.  
  1095. ISC_STATUS  ISC_EXPORT isc_form_insert (ISC_STATUS ISC_FAR *, 
  1096.                     isc_db_handle ISC_FAR *, 
  1097.                     isc_tr_handle ISC_FAR *, 
  1098.                     isc_req_handle ISC_FAR *, 
  1099.                     unsigned char ISC_FAR *);
  1100.  
  1101. ISC_STATUS  ISC_EXPORT isc_get_entree (ISC_STATUS ISC_FAR *, 
  1102.                        isc_req_handle ISC_FAR *, 
  1103.                        short ISC_FAR *, 
  1104.                        char ISC_FAR *, 
  1105.                        ISC_LONG ISC_FAR *, 
  1106.                        short ISC_FAR *);
  1107.  
  1108. ISC_STATUS  ISC_EXPORT isc_initialize_menu (ISC_STATUS ISC_FAR *, 
  1109.                         isc_req_handle ISC_FAR *);
  1110.  
  1111. ISC_STATUS  ISC_EXPORT isc_menu (ISC_STATUS ISC_FAR *, 
  1112.                  isc_win_handle ISC_FAR *, 
  1113.                  isc_req_handle ISC_FAR *, 
  1114.                   short ISC_FAR *, 
  1115.                  char ISC_FAR *);
  1116.  
  1117. ISC_STATUS  ISC_EXPORT isc_load_form (ISC_STATUS ISC_FAR *, 
  1118.                       isc_db_handle ISC_FAR *, 
  1119.                       isc_tr_handle ISC_FAR *, 
  1120.                       isc_form_handle ISC_FAR *, 
  1121.                       short ISC_FAR *, 
  1122.                       char ISC_FAR *);
  1123.                                                                 
  1124. ISC_STATUS  ISC_EXPORT isc_pop_window (ISC_STATUS ISC_FAR *, 
  1125.                        isc_win_handle ISC_FAR *);
  1126.  
  1127. ISC_STATUS  ISC_EXPORT isc_put_entree (ISC_STATUS ISC_FAR *, 
  1128.                        isc_req_handle ISC_FAR *, 
  1129.                        short ISC_FAR *, 
  1130.                        char ISC_FAR *, 
  1131.                        ISC_LONG ISC_FAR *);
  1132.  
  1133. ISC_STATUS  ISC_EXPORT isc_reset_form (ISC_STATUS ISC_FAR *, 
  1134.                        isc_req_handle ISC_FAR *);
  1135.  
  1136. ISC_STATUS  ISC_EXPORT isc_suspend_window (ISC_STATUS ISC_FAR *, 
  1137.                        isc_win_handle ISC_FAR *);
  1138.  
  1139. #ifdef __cplusplus
  1140. };
  1141. #endif
  1142.  
  1143. #else                     /* __cplusplus || __STDC__ */
  1144.  
  1145. ISC_STATUS  ISC_EXPORT isc_attach_database();
  1146. ISC_STATUS  ISC_EXPORT isc_attach_service();
  1147. ISC_STATUS  ISC_EXPORT isc_array_gen_sdl();
  1148. ISC_STATUS  ISC_EXPORT isc_array_get_slice();
  1149. ISC_STATUS  ISC_EXPORT isc_array_lookup_bounds();
  1150. ISC_STATUS  ISC_EXPORT isc_array_lookup_desc();
  1151. ISC_STATUS  ISC_EXPORT isc_array_set_desc();
  1152. ISC_STATUS  ISC_EXPORT isc_array_put_slice();
  1153. ISC_STATUS  ISC_EXPORT isc_blob_gen_bpb();
  1154. ISC_STATUS  ISC_EXPORT isc_blob_info();
  1155. ISC_STATUS  ISC_EXPORT isc_blob_lookup_desc();
  1156. ISC_STATUS  ISC_EXPORT isc_blob_set_desc();
  1157. ISC_STATUS  ISC_EXPORT isc_cancel_blob();
  1158. ISC_STATUS  ISC_EXPORT isc_cancel_events();
  1159. ISC_STATUS  ISC_EXPORT isc_close_blob();
  1160. ISC_STATUS  ISC_EXPORT isc_commit_retaining();
  1161. ISC_STATUS  ISC_EXPORT isc_commit_transaction();
  1162. ISC_STATUS  ISC_EXPORT isc_compile_request();
  1163. ISC_STATUS  ISC_EXPORT isc_compile_request2();
  1164. ISC_STATUS  ISC_EXPORT isc_create_blob();
  1165. ISC_STATUS  ISC_EXPORT isc_create_blob2();
  1166. ISC_STATUS  ISC_EXPORT isc_create_database();
  1167. ISC_STATUS  ISC_EXPORT isc_database_info();
  1168. ISC_STATUS  ISC_EXPORT isc_ddl();
  1169. void        ISC_EXPORT isc_decode_date();
  1170. ISC_STATUS  ISC_EXPORT isc_detach_database();
  1171. ISC_STATUS  ISC_EXPORT isc_detach_service();
  1172. ISC_STATUS  ISC_EXPORT isc_drop_database();
  1173. void        ISC_EXPORT isc_encode_date();
  1174. ISC_LONG    ISC_EXPORT isc_event_block();
  1175. void        ISC_EXPORT isc_event_counts();
  1176. void        ISC_EXPORT isc_expand_dpb();
  1177. int         ISC_EXPORT isc_modify_dpb();
  1178. ISC_LONG    ISC_EXPORT isc_free();
  1179. ISC_STATUS  ISC_EXPORT isc_get_segment();
  1180. ISC_STATUS  ISC_EXPORT isc_get_slice();
  1181. ISC_STATUS  ISC_EXPORT isc_interprete();
  1182. ISC_STATUS  ISC_EXPORT isc_open_blob();
  1183. ISC_STATUS  ISC_EXPORT isc_open_blob2();
  1184. ISC_STATUS  ISC_EXPORT isc_prepare_transaction();
  1185. ISC_STATUS  ISC_EXPORT isc_prepare_transaction2();
  1186. void        ISC_EXPORT isc_print_sqlerror();
  1187. ISC_STATUS  ISC_EXPORT isc_print_status();
  1188. ISC_STATUS  ISC_EXPORT isc_put_segment();
  1189. ISC_STATUS  ISC_EXPORT isc_put_slice();
  1190. ISC_STATUS  ISC_EXPORT isc_que_events();
  1191. ISC_STATUS  ISC_EXPORT isc_query_service();
  1192. ISC_STATUS  ISC_EXPORT isc_receive();
  1193. ISC_STATUS  ISC_EXPORT isc_reconnect_transaction();
  1194. ISC_STATUS  ISC_EXPORT isc_release_request();
  1195. ISC_STATUS  ISC_EXPORT isc_request_info();
  1196. ISC_STATUS  ISC_EXPORT isc_rollback_transaction();
  1197. ISC_STATUS  ISC_EXPORT isc_seek_blob();
  1198. ISC_STATUS  ISC_EXPORT isc_send();
  1199. ISC_STATUS  ISC_EXPORT isc_start_and_send();
  1200. ISC_STATUS  ISC_EXPORT isc_start_multiple();
  1201. ISC_STATUS  ISC_EXPORT isc_start_request();
  1202. ISC_STATUS  ISC_EXPORT isc_start_transaction();
  1203. ISC_LONG    ISC_EXPORT isc_sqlcode();
  1204. ISC_STATUS  ISC_EXPORT isc_transaction_info();
  1205. ISC_STATUS  ISC_EXPORT isc_transact_request();
  1206. ISC_STATUS  ISC_EXPORT isc_unwind_request();
  1207. ISC_STATUS  ISC_EXPORT isc_wait_for_event();
  1208. ISC_LONG    ISC_EXPORT isc_ftof();
  1209. ISC_STATUS  ISC_EXPORT isc_print_blr();
  1210. void        ISC_EXPORT isc_set_debug();
  1211. void        ISC_EXPORT isc_qtoq();
  1212. ISC_LONG    ISC_EXPORT isc_vax_integer();
  1213. void        ISC_EXPORT isc_vtof();
  1214. void        ISC_EXPORT isc_vtov();
  1215. int         ISC_EXPORT isc_version();
  1216. ISC_LONG    ISC_EXPORT isc_reset_fpe ();
  1217.  
  1218. #ifndef __STDC__
  1219.  
  1220. /******************/
  1221. /* Blob functions */
  1222. /******************/
  1223.  
  1224. BSTREAM   ISC_FAR * ISC_EXPORT Bopen();
  1225. BSTREAM   ISC_FAR * ISC_EXPORT BLOB_open();
  1226. BSTREAM   ISC_FAR * ISC_EXPORT Bopen2();
  1227. #endif                    /* __STDC__ */
  1228.  
  1229. #endif                                  /* __cplusplus || __STDC__ */
  1230.  
  1231. /***************************************************/
  1232. /* Actions to pass to the blob filter (ctl_source) */
  1233. /***************************************************/
  1234.  
  1235. #define isc_blob_filter_open             0
  1236. #define isc_blob_filter_get_segment      1
  1237. #define isc_blob_filter_close            2
  1238. #define isc_blob_filter_create           3
  1239. #define isc_blob_filter_put_segment      4
  1240. #define isc_blob_filter_alloc            5
  1241. #define isc_blob_filter_free             6
  1242. #define isc_blob_filter_seek             7
  1243.  
  1244. /*******************/
  1245. /* Blr definitions */
  1246. /*******************/
  1247.  
  1248. #ifndef _JRD_BLR_H_
  1249.  
  1250. #define blr_word(n) ((n) % 256), ((n) / 256)
  1251.  
  1252. #define blr_text                           14
  1253. #define blr_text2                          15
  1254. #define blr_short                          7
  1255. #define blr_long                           8
  1256. #define blr_quad                           9
  1257. #define blr_float                          10
  1258. #define blr_double                         27
  1259. #define blr_d_float                        11
  1260. #define blr_date                           35
  1261. #define blr_varying                        37
  1262. #define blr_varying2                       38
  1263. #define blr_blob                           261
  1264. #define blr_cstring                        40
  1265. #define blr_cstring2                       41    
  1266. #define blr_blob_id                        45
  1267.  
  1268. #define blr_inner                          0
  1269. #define blr_left                           1
  1270. #define blr_right                          2
  1271. #define blr_full                           3
  1272.  
  1273. #define blr_gds_code                       0
  1274. #define blr_sql_code                       1
  1275. #define blr_exception                      2
  1276. #define blr_trigger_code                   3
  1277. #define blr_default_code                   4
  1278.  
  1279. #define blr_version4                       4
  1280. #define blr_eoc                            76
  1281. #define blr_end                            255
  1282.  
  1283. #define blr_assignment                     1
  1284. #define blr_begin                          2
  1285. #define blr_dcl_variable                   3
  1286. #define blr_message                        4
  1287. #define blr_erase                          5
  1288. #define blr_fetch                          6
  1289. #define blr_for                            7
  1290. #define blr_if                             8
  1291. #define blr_loop                           9
  1292. #define blr_modify                         10
  1293. #define blr_handler                        11
  1294. #define blr_receive                        12
  1295. #define blr_select                         13
  1296. #define blr_send                           14
  1297. #define blr_store                          15
  1298. #define blr_label                          17
  1299. #define blr_leave                          18
  1300. #define blr_store2                         19
  1301. #define blr_post                           20
  1302.  
  1303. #define blr_literal                        21
  1304. #define blr_dbkey                          22
  1305. #define blr_field                          23
  1306. #define blr_fid                            24
  1307. #define blr_parameter                      25
  1308. #define blr_variable                       26
  1309. #define blr_average                        27
  1310. #define blr_count                          28
  1311. #define blr_maximum                        29
  1312. #define blr_minimum                        30
  1313. #define blr_total                          31
  1314. #define blr_add                            34
  1315. #define blr_subtract                       35
  1316. #define blr_multiply                       36
  1317. #define blr_divide                         37
  1318. #define blr_negate                         38
  1319. #define blr_concatenate                    39
  1320. #define blr_substring                      40
  1321. #define blr_parameter2                     41
  1322. #define blr_from                           42
  1323. #define blr_via                            43
  1324. #define blr_user_name                      44
  1325. #define blr_null                           45
  1326.  
  1327. #define blr_eql                            47
  1328. #define blr_neq                            48
  1329. #define blr_gtr                            49
  1330. #define blr_geq                            50
  1331. #define blr_lss                            51
  1332. #define blr_leq                            52
  1333. #define blr_containing                     53
  1334. #define blr_matching                       54
  1335. #define blr_starting                       55
  1336. #define blr_between                        56
  1337. #define blr_or                             57
  1338. #define blr_and                            58
  1339. #define blr_not                            59
  1340. #define blr_any                            60
  1341. #define blr_missing                        61
  1342. #define blr_unique                         62
  1343. #define blr_like                           63
  1344.  
  1345. #define blr_stream                         65
  1346. #define blr_set_index                      66
  1347. #define blr_rse                            67
  1348. #define blr_first                          68
  1349. #define blr_project                        69
  1350. #define blr_sort                           70
  1351. #define blr_boolean                        71
  1352. #define blr_ascending                      72
  1353. #define blr_descending                     73
  1354. #define blr_relation                       74
  1355. #define blr_rid                            75
  1356. #define blr_union                          76
  1357. #define blr_map                            77
  1358. #define blr_group_by                       78
  1359. #define blr_aggregate                      79
  1360. #define blr_join_type                      80
  1361.  
  1362. #define blr_agg_count                      83
  1363. #define blr_agg_max                        84
  1364. #define blr_agg_min                        85
  1365. #define blr_agg_total                      86
  1366. #define blr_agg_average                    87
  1367. #define blr_parameter3                     88
  1368. #define    blr_run_count                      118
  1369. #define    blr_run_max                        89
  1370. #define    blr_run_min                        90
  1371. #define    blr_run_total                      91
  1372. #define    blr_run_average                    92
  1373. #define blr_agg_count2                     93
  1374. #define blr_agg_count_distinct             94
  1375. #define blr_agg_total_distinct             95
  1376. #define blr_agg_average_distinct           96
  1377.  
  1378. #define blr_function                       100
  1379. #define blr_gen_id                         101
  1380. #define blr_prot_mask                      102
  1381. #define blr_upcase                         103
  1382. #define blr_lock_state                     104
  1383. #define blr_value_if                       105
  1384. #define blr_matching2                      106
  1385. #define blr_index                          107
  1386. #define blr_ansi_like                      108
  1387. #define blr_bookmark                       109
  1388. #define blr_crack                          110
  1389. #define blr_force_crack                    111
  1390. #define blr_seek                           112
  1391. #define blr_find                           113
  1392.  
  1393. #define blr_continue                       0
  1394. #define blr_forward                        1
  1395. #define blr_backward                       2
  1396. #define blr_bof_forward                    3
  1397. #define blr_eof_backward                   4
  1398.  
  1399. #define blr_lock_relation                  114
  1400. #define blr_lock_record                    115
  1401. #define blr_set_bookmark           116
  1402. #define blr_get_bookmark           117
  1403. #define blr_rs_stream                      119
  1404. #define blr_exec_proc                      120
  1405. #define blr_begin_range                    121
  1406. #define blr_end_range                      122
  1407. #define blr_delete_range                   123
  1408. #define blr_procedure                      124
  1409. #define blr_pid                            125
  1410. #define blr_exec_pid                       126
  1411. #define blr_singular                       127
  1412. #define blr_abort                          128
  1413. #define blr_block                          129
  1414. #define blr_error_handler                  130
  1415. #define blr_cast                           131
  1416. #define blr_release_lock                   132
  1417. #define blr_release_locks                  133
  1418. #define blr_start_savepoint                134
  1419. #define blr_end_savepoint                  135
  1420. #define blr_find_dbkey                     136
  1421. #define blr_range_relation                 137
  1422. #define blr_delete_ranges                  138
  1423.  
  1424. #define blr_plan                           139
  1425. #define blr_merge                          140
  1426. #define blr_join                           141
  1427. #define blr_sequential                     142
  1428. #define blr_navigational                   143
  1429. #define blr_indices                        144
  1430. #define blr_retrieve                       145
  1431.  
  1432. #define blr_relation2                      146
  1433. #define blr_rid2                           147
  1434. #define blr_reset_stream                   148
  1435. #define blr_release_bookmark               149
  1436. #define blr_set_generator                  150
  1437. #define blr_ansi_any               151   
  1438. #define blr_exists               152
  1439. #define blr_cardinality               153
  1440.  
  1441. #define blr_record_version           154        /* get tid of record */
  1442. #define blr_stall               155        /* fake server stall */
  1443. #define blr_seek_no_warn           156
  1444. #define blr_find_dbkey_version           157
  1445. #define blr_ansi_all               158   
  1446.  
  1447. #endif                    /* _JRD_BLR_H_ */
  1448.  
  1449. /**********************************/
  1450. /* Database parameter block stuff */
  1451. /**********************************/
  1452.  
  1453. #define isc_dpb_version1                  1
  1454. #define isc_dpb_cdd_pathname              1
  1455. #define isc_dpb_allocation                2
  1456. #define isc_dpb_journal                   3
  1457. #define isc_dpb_page_size                 4
  1458. #define isc_dpb_num_buffers               5
  1459. #define isc_dpb_buffer_length             6
  1460. #define isc_dpb_debug                     7
  1461. #define isc_dpb_garbage_collect           8
  1462. #define isc_dpb_verify                    9
  1463. #define isc_dpb_sweep                     10
  1464. #define isc_dpb_enable_journal            11
  1465. #define isc_dpb_disable_journal           12
  1466. #define isc_dpb_dbkey_scope               13
  1467. #define isc_dpb_number_of_users           14
  1468. #define isc_dpb_trace                     15
  1469. #define isc_dpb_no_garbage_collect        16
  1470. #define isc_dpb_damaged                   17
  1471. #define isc_dpb_license                   18
  1472. #define isc_dpb_sys_user_name             19
  1473. #define isc_dpb_encrypt_key               20
  1474. #define isc_dpb_activate_shadow           21
  1475. #define isc_dpb_sweep_interval            22
  1476. #define isc_dpb_delete_shadow             23
  1477. #define isc_dpb_force_write               24
  1478. #define isc_dpb_begin_log                 25
  1479. #define isc_dpb_quit_log                  26
  1480. #define isc_dpb_no_reserve                27
  1481. #define isc_dpb_user_name                 28
  1482. #define isc_dpb_password                  29
  1483. #define isc_dpb_password_enc              30
  1484. #define isc_dpb_sys_user_name_enc         31
  1485. #define isc_dpb_interp                    32
  1486. #define isc_dpb_online_dump               33
  1487. #define isc_dpb_old_file_size             34
  1488. #define isc_dpb_old_num_files             35
  1489. #define isc_dpb_old_file                  36
  1490. #define isc_dpb_old_start_page            37
  1491. #define isc_dpb_old_start_seqno           38
  1492. #define isc_dpb_old_start_file            39
  1493. #define isc_dpb_drop_walfile              40
  1494. #define isc_dpb_old_dump_id               41
  1495. #define isc_dpb_wal_backup_dir            42
  1496. #define isc_dpb_wal_chkptlen              43
  1497. #define isc_dpb_wal_numbufs               44
  1498. #define isc_dpb_wal_bufsize               45
  1499. #define isc_dpb_wal_grp_cmt_wait          46
  1500. #define isc_dpb_lc_messages               47
  1501. #define isc_dpb_lc_ctype                  48
  1502. #define isc_dpb_cache_manager          49
  1503. #define isc_dpb_shutdown          50
  1504. #define isc_dpb_online              51
  1505. #define isc_dpb_shutdown_delay          52
  1506. #define isc_dpb_reserved          53
  1507. #define isc_dpb_overwrite          54
  1508. #define isc_dpb_sec_attach          55
  1509. #define isc_dpb_disable_wal          56
  1510. #define isc_dpb_connect_timeout           57
  1511. #define isc_dpb_dummy_packet_interval     58
  1512. #define isc_dpb_gbak_attach               59
  1513. #define isc_dpb_sql_role_name             60
  1514. #define isc_dpb_set_page_buffers          61
  1515. #define isc_dpb_working_directory         62
  1516.  
  1517. /*********************************/
  1518. /* isc_dpb_verify specific flags */
  1519. /*********************************/
  1520.  
  1521. #define isc_dpb_pages                     1
  1522. #define isc_dpb_records                   2
  1523. #define isc_dpb_indices                   4
  1524. #define isc_dpb_transactions              8
  1525. #define isc_dpb_no_update                 16
  1526. #define isc_dpb_repair                    32
  1527. #define isc_dpb_ignore                    64
  1528.  
  1529. /***********************************/
  1530. /* isc_dpb_shutdown specific flags */
  1531. /***********************************/
  1532.  
  1533. #define isc_dpb_shut_cache               1
  1534. #define isc_dpb_shut_attachment          2
  1535. #define isc_dpb_shut_transaction         4
  1536. #define isc_dpb_shut_force               8
  1537.  
  1538. /**************************************/
  1539. /* Bit assignments in RDB$SYSTEM_FLAG */
  1540. /**************************************/
  1541.  
  1542. #define RDB_system                         1
  1543. #define RDB_id_assigned                    2
  1544.  
  1545. /*************************************/
  1546. /* Transaction parameter block stuff */
  1547. /*************************************/
  1548.  
  1549. #define isc_tpb_version1                  1
  1550. #define isc_tpb_version3                  3
  1551. #define isc_tpb_consistency               1
  1552. #define isc_tpb_concurrency               2
  1553. #define isc_tpb_shared                    3
  1554. #define isc_tpb_protected                 4
  1555. #define isc_tpb_exclusive                 5
  1556. #define isc_tpb_wait                      6
  1557. #define isc_tpb_nowait                    7
  1558. #define isc_tpb_read                      8
  1559. #define isc_tpb_write                     9
  1560. #define isc_tpb_lock_read                 10
  1561. #define isc_tpb_lock_write                11
  1562. #define isc_tpb_verb_time                 12
  1563. #define isc_tpb_commit_time               13
  1564. #define isc_tpb_ignore_limbo              14
  1565. #define isc_tpb_read_committed          15
  1566. #define isc_tpb_autocommit          16
  1567. #define isc_tpb_rec_version          17
  1568. #define isc_tpb_no_rec_version          18
  1569. #define isc_tpb_restart_requests      19
  1570. #define isc_tpb_no_auto_undo              20
  1571.  
  1572. /************************/
  1573. /* Blob Parameter Block */
  1574. /************************/
  1575.  
  1576. #define isc_bpb_version1                  1
  1577. #define isc_bpb_source_type               1
  1578. #define isc_bpb_target_type               2
  1579. #define isc_bpb_type                      3
  1580. #define isc_bpb_source_interp             4
  1581. #define isc_bpb_target_interp             5
  1582. #define isc_bpb_filter_parameter          6
  1583.  
  1584. #define isc_bpb_type_segmented            0
  1585. #define isc_bpb_type_stream               1
  1586.  
  1587. /*********************************/
  1588. /* Service parameter block stuff */
  1589. /*********************************/
  1590.  
  1591. #define isc_spb_version1                  1
  1592. #define isc_spb_user_name                 2
  1593. #define isc_spb_sys_user_name             3
  1594. #define isc_spb_sys_user_name_enc         4
  1595. #define isc_spb_password                  5
  1596. #define isc_spb_password_enc              6
  1597. #define isc_spb_command_line              7
  1598. #define isc_spb_connect_timeout           isc_dpb_connect_timeout
  1599. #define isc_spb_dummy_packet_interval     isc_dpb_dummy_packet_interval
  1600. #define isc_spb_sql_role_name             isc_dpb_sql_role_name
  1601.  
  1602.  
  1603. /*********************************/
  1604. /* Information call declarations */
  1605. /*********************************/
  1606.  
  1607. /****************************/
  1608. /* Common, structural codes */
  1609. /****************************/
  1610.  
  1611. #define isc_info_end                      1
  1612. #define isc_info_truncated                2
  1613. #define isc_info_error                    3
  1614.  
  1615. /******************************/
  1616. /* Database information items */
  1617. /******************************/
  1618.  
  1619. #define isc_info_db_id                    4
  1620. #define isc_info_reads                    5
  1621. #define isc_info_writes                   6
  1622. #define isc_info_fetches                  7
  1623. #define isc_info_marks                    8
  1624. #define isc_info_implementation           11
  1625. #define isc_info_version                  12
  1626. #define isc_info_base_level               13
  1627. #define isc_info_page_size                14
  1628. #define isc_info_num_buffers              15
  1629. #define isc_info_limbo                    16
  1630. #define isc_info_current_memory           17
  1631. #define isc_info_max_memory               18
  1632. #define isc_info_window_turns             19
  1633. #define isc_info_license                  20
  1634. #define isc_info_allocation               21
  1635. #define isc_info_attachment_id            22
  1636. #define isc_info_read_seq_count           23
  1637. #define isc_info_read_idx_count           24
  1638. #define isc_info_insert_count             25
  1639. #define isc_info_update_count             26
  1640. #define isc_info_delete_count             27
  1641. #define isc_info_backout_count            28
  1642. #define isc_info_purge_count              29
  1643. #define isc_info_expunge_count            30
  1644. #define isc_info_sweep_interval           31
  1645. #define isc_info_ods_version              32
  1646. #define isc_info_ods_minor_version        33
  1647. #define isc_info_no_reserve               34
  1648. #define isc_info_logfile                  35
  1649. #define isc_info_cur_logfile_name         36
  1650. #define isc_info_cur_log_part_offset      37
  1651. #define isc_info_num_wal_buffers          38
  1652. #define isc_info_wal_buffer_size          39
  1653. #define isc_info_wal_ckpt_length          40
  1654. #define isc_info_wal_cur_ckpt_interval    41
  1655. #define isc_info_wal_prv_ckpt_fname       42
  1656. #define isc_info_wal_prv_ckpt_poffset     43
  1657. #define isc_info_wal_recv_ckpt_fname      44
  1658. #define isc_info_wal_recv_ckpt_poffset    45
  1659. #define isc_info_wal_grpc_wait_usecs      47
  1660. #define isc_info_wal_num_io               48
  1661. #define isc_info_wal_avg_io_size          49
  1662. #define isc_info_wal_num_commits          50
  1663. #define isc_info_wal_avg_grpc_size        51
  1664. #define isc_info_forced_writes          52
  1665. #define isc_info_user_names          53
  1666. #define isc_info_page_errors          54
  1667. #define isc_info_record_errors          55
  1668. #define isc_info_bpage_errors          56
  1669. #define isc_info_dpage_errors            57
  1670. #define isc_info_ipage_errors            58
  1671. #define isc_info_ppage_errors          59
  1672. #define isc_info_tpage_errors            60
  1673. #define isc_info_set_page_buffers         61
  1674.  
  1675. /**************************************/
  1676. /* Database information return values */
  1677. /**************************************/
  1678.  
  1679. #define isc_info_db_impl_rdb_vms          1
  1680. #define isc_info_db_impl_rdb_eln          2
  1681. #define isc_info_db_impl_rdb_eln_dev      3
  1682. #define isc_info_db_impl_rdb_vms_y        4
  1683. #define isc_info_db_impl_rdb_eln_y        5
  1684. #define isc_info_db_impl_jri              6
  1685. #define isc_info_db_impl_jsv              7
  1686. #define isc_info_db_impl_isc_a            25
  1687. #define isc_info_db_impl_isc_u            26
  1688. #define isc_info_db_impl_isc_v            27
  1689. #define isc_info_db_impl_isc_s            28
  1690. #define isc_info_db_impl_isc_apl_68K      25
  1691. #define isc_info_db_impl_isc_vax_ultr     26
  1692. #define isc_info_db_impl_isc_vms          27
  1693. #define isc_info_db_impl_isc_sun_68k      28
  1694. #define isc_info_db_impl_isc_os2          29
  1695. #define isc_info_db_impl_isc_sun4         30
  1696. #define isc_info_db_impl_isc_hp_ux        31
  1697. #define isc_info_db_impl_isc_sun_386i     32
  1698. #define isc_info_db_impl_isc_vms_orcl     33
  1699. #define isc_info_db_impl_isc_mac_aux      34
  1700. #define isc_info_db_impl_isc_rt_aix       35
  1701. #define isc_info_db_impl_isc_mips_ult     36
  1702. #define isc_info_db_impl_isc_xenix        37
  1703. #define isc_info_db_impl_isc_dg           38
  1704. #define isc_info_db_impl_isc_hp_mpexl     39
  1705. #define isc_info_db_impl_isc_hp_ux68K     40
  1706. #define isc_info_db_impl_isc_sgi          41
  1707. #define isc_info_db_impl_isc_sco_unix     42
  1708. #define isc_info_db_impl_isc_cray         43
  1709. #define isc_info_db_impl_isc_imp          44
  1710. #define isc_info_db_impl_isc_delta        45
  1711. #define isc_info_db_impl_isc_next         46
  1712. #define isc_info_db_impl_isc_dos          47
  1713. #define isc_info_db_impl_isc_winnt        48
  1714. #define isc_info_db_impl_isc_epson        49
  1715.  
  1716. #define isc_info_db_class_access          1
  1717. #define isc_info_db_class_y_valve         2
  1718. #define isc_info_db_class_rem_int         3
  1719. #define isc_info_db_class_rem_srvr        4
  1720. #define isc_info_db_class_pipe_int        7
  1721. #define isc_info_db_class_pipe_srvr       8
  1722. #define isc_info_db_class_sam_int         9
  1723. #define isc_info_db_class_sam_srvr        10
  1724. #define isc_info_db_class_gateway         11
  1725. #define isc_info_db_class_cache           12
  1726.  
  1727. /*****************************/
  1728. /* Request information items */
  1729. /*****************************/
  1730.  
  1731. #define isc_info_number_messages          4
  1732. #define isc_info_max_message              5
  1733. #define isc_info_max_send                 6
  1734. #define isc_info_max_receive              7
  1735. #define isc_info_state                    8
  1736. #define isc_info_message_number           9
  1737. #define isc_info_message_size             10
  1738. #define isc_info_request_cost             11
  1739. #define isc_info_access_path              12
  1740. #define isc_info_req_select_count         13
  1741. #define isc_info_req_insert_count         14
  1742. #define isc_info_req_update_count         15
  1743. #define isc_info_req_delete_count         16
  1744.  
  1745. /*********************/
  1746. /* Access path items */
  1747. /*********************/
  1748.  
  1749. #define isc_info_rsb_end           0
  1750. #define isc_info_rsb_begin           1
  1751. #define isc_info_rsb_type           2
  1752. #define isc_info_rsb_relation           3
  1753. #define isc_info_rsb_plan                  4
  1754.  
  1755. /*************/
  1756. /* Rsb types */
  1757. /*************/
  1758.  
  1759. #define isc_info_rsb_unknown           1
  1760. #define isc_info_rsb_indexed           2
  1761. #define isc_info_rsb_navigate           3
  1762. #define isc_info_rsb_sequential            4
  1763. #define isc_info_rsb_cross           5
  1764. #define isc_info_rsb_sort           6
  1765. #define isc_info_rsb_first           7
  1766. #define isc_info_rsb_boolean           8
  1767. #define isc_info_rsb_union           9
  1768. #define isc_info_rsb_aggregate          10
  1769. #define isc_info_rsb_merge          11
  1770. #define isc_info_rsb_ext_sequential      12
  1771. #define isc_info_rsb_ext_indexed      13
  1772. #define isc_info_rsb_ext_dbkey          14
  1773. #define isc_info_rsb_left_cross           15
  1774. #define isc_info_rsb_select          16
  1775. #define isc_info_rsb_sql_join          17
  1776. #define isc_info_rsb_simulate          18
  1777. #define isc_info_rsb_sim_cross          19
  1778. #define isc_info_rsb_once          20
  1779. #define isc_info_rsb_procedure          21
  1780.  
  1781. /**********************/
  1782. /* Bitmap expressions */
  1783. /**********************/
  1784.  
  1785. #define isc_info_rsb_and        1
  1786. #define isc_info_rsb_or            2
  1787. #define isc_info_rsb_dbkey        3
  1788. #define isc_info_rsb_index        4
  1789.  
  1790. #define isc_info_req_active               2
  1791. #define isc_info_req_inactive             3
  1792. #define isc_info_req_send                 4
  1793. #define isc_info_req_receive              5
  1794. #define isc_info_req_select               6
  1795. #define isc_info_req_sql_stall          7
  1796.  
  1797. /**************************/
  1798. /* Blob information items */
  1799. /**************************/
  1800.  
  1801. #define isc_info_blob_num_segments        4
  1802. #define isc_info_blob_max_segment         5
  1803. #define isc_info_blob_total_length        6
  1804. #define isc_info_blob_type                7
  1805.  
  1806. /*********************************/
  1807. /* Transaction information items */
  1808. /*********************************/
  1809.  
  1810. #define isc_info_tra_id                   4
  1811.  
  1812. /*****************************/
  1813. /* Service information items */
  1814. /*****************************/
  1815.  
  1816. #define isc_info_svc_version              4
  1817. #define isc_info_svc_message              5
  1818. #define isc_info_svc_total_length         6
  1819. #define isc_info_svc_response             7
  1820. #define isc_info_svc_response_more        8
  1821. #define isc_info_svc_line                 9
  1822. #define isc_info_svc_to_eof               10
  1823. #define isc_info_svc_timeout              11
  1824. #define isc_info_svc_server_version       12
  1825. #define isc_info_svc_implementation       13
  1826. #define isc_info_svc_capabilities         14
  1827. #define isc_info_svc_user_dbpath      15
  1828. #define isc_info_svc_svr_db_info      16
  1829. #define isc_info_svc_svr_online          17
  1830. #define isc_info_svc_svr_offline      18
  1831. #define isc_info_svc_get_config          19
  1832. #define isc_info_svc_set_config          20
  1833. #define isc_info_svc_default_config      21
  1834. #define isc_info_svc_get_env          22
  1835. #define isc_info_svc_get_env_lock      23
  1836. #define isc_info_svc_get_env_msg      24
  1837. #define isc_info_svc_dump_pool_info      25 /* For Internal use only */
  1838.  
  1839. /*************************/
  1840. /* SQL information items */
  1841. /*************************/
  1842.  
  1843. #define isc_info_sql_select               4
  1844. #define isc_info_sql_bind                 5
  1845. #define isc_info_sql_num_variables        6
  1846. #define isc_info_sql_describe_vars        7
  1847. #define isc_info_sql_describe_end         8
  1848. #define isc_info_sql_sqlda_seq            9
  1849. #define isc_info_sql_message_seq          10
  1850. #define isc_info_sql_type                 11
  1851. #define isc_info_sql_sub_type             12
  1852. #define isc_info_sql_scale                13
  1853. #define isc_info_sql_length               14
  1854. #define isc_info_sql_null_ind             15
  1855. #define isc_info_sql_field                16
  1856. #define isc_info_sql_relation             17
  1857. #define isc_info_sql_owner                18
  1858. #define isc_info_sql_alias                19
  1859. #define isc_info_sql_sqlda_start          20
  1860. #define isc_info_sql_stmt_type            21
  1861. #define isc_info_sql_get_plan             22
  1862. #define isc_info_sql_records          23
  1863. #define isc_info_sql_batch_fetch      24
  1864.  
  1865. /*********************************/
  1866. /* SQL information return values */
  1867. /*********************************/
  1868.  
  1869. #define isc_info_sql_stmt_select          1
  1870. #define isc_info_sql_stmt_insert          2
  1871. #define isc_info_sql_stmt_update          3
  1872. #define isc_info_sql_stmt_delete          4
  1873. #define isc_info_sql_stmt_ddl             5
  1874. #define isc_info_sql_stmt_get_segment     6
  1875. #define isc_info_sql_stmt_put_segment     7
  1876. #define isc_info_sql_stmt_exec_procedure  8
  1877. #define isc_info_sql_stmt_start_trans     9
  1878. #define isc_info_sql_stmt_commit          10
  1879. #define isc_info_sql_stmt_rollback        11
  1880. #define isc_info_sql_stmt_select_for_upd  12
  1881. #define isc_info_sql_stmt_set_generator   13
  1882.  
  1883. /***********************************/
  1884. /* Server configuration key values */
  1885. /***********************************/
  1886.  
  1887. #define    ISCCFG_LOCKMEM_KEY    0
  1888. #define ISCCFG_LOCKSEM_KEY    1
  1889. #define ISCCFG_LOCKSIG_KEY    2
  1890. #define ISCCFG_EVNTMEM_KEY    3
  1891. #define ISCCFG_DBCACHE_KEY    4
  1892. #define ISCCFG_PRIORITY_KEY    5
  1893. #define ISCCFG_IPCMAP_KEY    6
  1894. #define ISCCFG_MEMMIN_KEY    7
  1895. #define ISCCFG_MEMMAX_KEY    8
  1896. #define    ISCCFG_LOCKORDER_KEY    9
  1897. #define    ISCCFG_ANYLOCKMEM_KEY    10
  1898. #define ISCCFG_ANYLOCKSEM_KEY    11
  1899. #define ISCCFG_ANYLOCKSIG_KEY    12
  1900. #define ISCCFG_ANYEVNTMEM_KEY    13
  1901. #define ISCCFG_LOCKHASH_KEY    14
  1902. #define ISCCFG_DEADLOCK_KEY    15
  1903. #define ISCCFG_LOCKSPIN_KEY    16
  1904. #define ISCCFG_CONN_TIMEOUT_KEY 17
  1905. #define ISCCFG_DUMMY_INTRVL_KEY 18
  1906. #define ISCCFG_TRACE_POOLS_KEY  19   /* Internal Use only */
  1907.  
  1908. /***************/
  1909. /* Error codes */
  1910. /***************/
  1911.  
  1912. #define isc_facility                       20
  1913. #define isc_err_base                       335544320L
  1914. #define isc_err_factor                     1
  1915. #define isc_arg_end                        0
  1916. #define isc_arg_gds                        1
  1917. #define isc_arg_string                     2
  1918. #define isc_arg_cstring                    3
  1919. #define isc_arg_number                     4
  1920. #define isc_arg_interpreted                5
  1921. #define isc_arg_vms                        6
  1922. #define isc_arg_unix                       7
  1923. #define isc_arg_domain                     8
  1924. #define isc_arg_dos                        9
  1925. #define isc_arg_mpexl                      10
  1926. #define isc_arg_mpexl_ipc                  11
  1927. #define isc_arg_next_mach           15
  1928. #define isc_arg_netware                   16
  1929. #define isc_arg_win32                      17
  1930.  
  1931. #define isc_arith_except                  335544321L
  1932. #define isc_bad_dbkey                     335544322L
  1933. #define isc_bad_db_format                 335544323L
  1934. #define isc_bad_db_handle                 335544324L
  1935. #define isc_bad_dpb_content               335544325L
  1936. #define isc_bad_dpb_form                  335544326L
  1937. #define isc_bad_req_handle                335544327L
  1938. #define isc_bad_segstr_handle             335544328L
  1939. #define isc_bad_segstr_id                 335544329L
  1940. #define isc_bad_tpb_content               335544330L
  1941. #define isc_bad_tpb_form                  335544331L
  1942. #define isc_bad_trans_handle              335544332L
  1943. #define isc_bug_check                     335544333L
  1944. #define isc_convert_error                 335544334L
  1945. #define isc_db_corrupt                    335544335L
  1946. #define isc_deadlock                      335544336L
  1947. #define isc_excess_trans                  335544337L
  1948. #define isc_from_no_match                 335544338L
  1949. #define isc_infinap                       335544339L
  1950. #define isc_infona                        335544340L
  1951. #define isc_infunk                        335544341L
  1952. #define isc_integ_fail                    335544342L
  1953. #define isc_invalid_blr                   335544343L
  1954. #define isc_io_error                      335544344L
  1955. #define isc_lock_conflict                 335544345L
  1956. #define isc_metadata_corrupt              335544346L
  1957. #define isc_not_valid                     335544347L
  1958. #define isc_no_cur_rec                    335544348L
  1959. #define isc_no_dup                        335544349L
  1960. #define isc_no_finish                     335544350L
  1961. #define isc_no_meta_update                335544351L
  1962. #define isc_no_priv                       335544352L
  1963. #define isc_no_recon                      335544353L
  1964. #define isc_no_record                     335544354L
  1965. #define isc_no_segstr_close               335544355L
  1966. #define isc_obsolete_metadata             335544356L
  1967. #define isc_open_trans                    335544357L
  1968. #define isc_port_len                      335544358L
  1969. #define isc_read_only_field               335544359L
  1970. #define isc_read_only_rel                 335544360L
  1971. #define isc_read_only_trans               335544361L
  1972. #define isc_read_only_view                335544362L
  1973. #define isc_req_no_trans                  335544363L
  1974. #define isc_req_sync                      335544364L
  1975. #define isc_req_wrong_db                  335544365L
  1976. #define isc_segment                       335544366L
  1977. #define isc_segstr_eof                    335544367L
  1978. #define isc_segstr_no_op                  335544368L
  1979. #define isc_segstr_no_read                335544369L
  1980. #define isc_segstr_no_trans               335544370L
  1981. #define isc_segstr_no_write               335544371L
  1982. #define isc_segstr_wrong_db               335544372L
  1983. #define isc_sys_request                   335544373L
  1984. #define isc_stream_eof                    335544374L
  1985. #define isc_unavailable                   335544375L
  1986. #define isc_unres_rel                     335544376L
  1987. #define isc_uns_ext                       335544377L
  1988. #define isc_wish_list                     335544378L
  1989. #define isc_wrong_ods                     335544379L
  1990. #define isc_wronumarg                     335544380L
  1991. #define isc_imp_exc                       335544381L
  1992. #define isc_random                        335544382L
  1993. #define isc_fatal_conflict                335544383L
  1994. #define isc_badblk                        335544384L
  1995. #define isc_invpoolcl                     335544385L
  1996. #define isc_nopoolids                     335544386L
  1997. #define isc_relbadblk                     335544387L
  1998. #define isc_blktoobig                     335544388L
  1999. #define isc_bufexh                        335544389L
  2000. #define isc_syntaxerr                     335544390L
  2001. #define isc_bufinuse                      335544391L
  2002. #define isc_bdbincon                      335544392L
  2003. #define isc_reqinuse                      335544393L
  2004. #define isc_badodsver                     335544394L
  2005. #define isc_relnotdef                     335544395L
  2006. #define isc_fldnotdef                     335544396L
  2007. #define isc_dirtypage                     335544397L
  2008. #define isc_waifortra                     335544398L
  2009. #define isc_doubleloc                     335544399L
  2010. #define isc_nodnotfnd                     335544400L
  2011. #define isc_dupnodfnd                     335544401L
  2012. #define isc_locnotmar                     335544402L
  2013. #define isc_badpagtyp                     335544403L
  2014. #define isc_corrupt                       335544404L
  2015. #define isc_badpage                       335544405L
  2016. #define isc_badindex                      335544406L
  2017. #define isc_dbbnotzer                     335544407L
  2018. #define isc_tranotzer                     335544408L
  2019. #define isc_trareqmis                     335544409L
  2020. #define isc_badhndcnt                     335544410L
  2021. #define isc_wrotpbver                     335544411L
  2022. #define isc_wroblrver                     335544412L
  2023. #define isc_wrodpbver                     335544413L
  2024. #define isc_blobnotsup                    335544414L
  2025. #define isc_badrelation                   335544415L
  2026. #define isc_nodetach                      335544416L
  2027. #define isc_notremote                     335544417L
  2028. #define isc_trainlim                      335544418L
  2029. #define isc_notinlim                      335544419L
  2030. #define isc_traoutsta                     335544420L
  2031. #define isc_connect_reject                335544421L
  2032. #define isc_dbfile                        335544422L
  2033. #define isc_orphan                        335544423L
  2034. #define isc_no_lock_mgr                   335544424L
  2035. #define isc_ctxinuse                      335544425L
  2036. #define isc_ctxnotdef                     335544426L
  2037. #define isc_datnotsup                     335544427L
  2038. #define isc_badmsgnum                     335544428L
  2039. #define isc_badparnum                     335544429L
  2040. #define isc_virmemexh                     335544430L
  2041. #define isc_blocking_signal               335544431L
  2042. #define isc_lockmanerr                    335544432L
  2043. #define isc_journerr                      335544433L
  2044. #define isc_keytoobig                     335544434L
  2045. #define isc_nullsegkey                    335544435L
  2046. #define isc_sqlerr                        335544436L
  2047. #define isc_wrodynver                     335544437L
  2048. #define isc_funnotdef                     335544438L
  2049. #define isc_funmismat                     335544439L
  2050. #define isc_bad_msg_vec                   335544440L
  2051. #define isc_bad_detach                    335544441L
  2052. #define isc_noargacc_read                 335544442L
  2053. #define isc_noargacc_write                335544443L
  2054. #define isc_read_only                     335544444L
  2055. #define isc_ext_err                       335544445L
  2056. #define isc_non_updatable                 335544446L
  2057. #define isc_no_rollback                   335544447L
  2058. #define isc_bad_sec_info                  335544448L
  2059. #define isc_invalid_sec_info              335544449L
  2060. #define isc_misc_interpreted              335544450L
  2061. #define isc_update_conflict               335544451L
  2062. #define isc_unlicensed                    335544452L
  2063. #define isc_obj_in_use                    335544453L
  2064. #define isc_nofilter                      335544454L
  2065. #define isc_shadow_accessed               335544455L
  2066. #define isc_invalid_sdl                   335544456L
  2067. #define isc_out_of_bounds                 335544457L
  2068. #define isc_invalid_dimension             335544458L
  2069. #define isc_rec_in_limbo                  335544459L
  2070. #define isc_shadow_missing                335544460L
  2071. #define isc_cant_validate                 335544461L
  2072. #define isc_cant_start_journal            335544462L
  2073. #define isc_gennotdef                     335544463L
  2074. #define isc_cant_start_logging            335544464L
  2075. #define isc_bad_segstr_type               335544465L
  2076. #define isc_foreign_key                   335544466L
  2077. #define isc_high_minor                    335544467L
  2078. #define isc_tra_state                     335544468L
  2079. #define isc_trans_invalid                 335544469L
  2080. #define isc_buf_invalid                   335544470L
  2081. #define isc_indexnotdefined               335544471L
  2082. #define isc_login                         335544472L
  2083. #define isc_invalid_bookmark              335544473L
  2084. #define isc_bad_lock_level                335544474L
  2085. #define isc_relation_lock                 335544475L
  2086. #define isc_record_lock                   335544476L
  2087. #define isc_max_idx                       335544477L
  2088. #define isc_jrn_enable                    335544478L
  2089. #define isc_old_failure                   335544479L
  2090. #define isc_old_in_progress               335544480L
  2091. #define isc_old_no_space                  335544481L
  2092. #define isc_no_wal_no_jrn                 335544482L
  2093. #define isc_num_old_files                 335544483L
  2094. #define isc_wal_file_open                 335544484L
  2095. #define isc_bad_stmt_handle               335544485L
  2096. #define isc_wal_failure                   335544486L
  2097. #define isc_walw_err                      335544487L
  2098. #define isc_logh_small                    335544488L
  2099. #define isc_logh_inv_version              335544489L
  2100. #define isc_logh_open_flag                335544490L
  2101. #define isc_logh_open_flag2               335544491L
  2102. #define isc_logh_diff_dbname              335544492L
  2103. #define isc_logf_unexpected_eof           335544493L
  2104. #define isc_logr_incomplete               335544494L
  2105. #define isc_logr_header_small             335544495L
  2106. #define isc_logb_small                    335544496L
  2107. #define isc_wal_illegal_attach            335544497L
  2108. #define isc_wal_invalid_wpb               335544498L
  2109. #define isc_wal_err_rollover              335544499L
  2110. #define isc_no_wal                        335544500L
  2111. #define isc_drop_wal                      335544501L
  2112. #define isc_stream_not_defined            335544502L
  2113. #define isc_wal_subsys_error              335544503L
  2114. #define isc_wal_subsys_corrupt            335544504L
  2115. #define isc_no_archive                    335544505L
  2116. #define isc_shutinprog                    335544506L
  2117. #define isc_range_in_use                  335544507L
  2118. #define isc_range_not_found               335544508L
  2119. #define isc_charset_not_found             335544509L
  2120. #define isc_lock_timeout                  335544510L
  2121. #define isc_prcnotdef                     335544511L
  2122. #define isc_prcmismat                     335544512L
  2123. #define isc_wal_bugcheck                  335544513L
  2124. #define isc_wal_cant_expand               335544514L
  2125. #define isc_codnotdef                     335544515L
  2126. #define isc_xcpnotdef                     335544516L
  2127. #define isc_except                        335544517L
  2128. #define isc_cache_restart                 335544518L
  2129. #define isc_bad_lock_handle               335544519L
  2130. #define isc_jrn_present                   335544520L
  2131. #define isc_wal_err_rollover2             335544521L
  2132. #define isc_wal_err_logwrite              335544522L
  2133. #define isc_wal_err_jrn_comm              335544523L
  2134. #define isc_wal_err_expansion             335544524L
  2135. #define isc_wal_err_setup                 335544525L
  2136. #define isc_wal_err_ww_sync               335544526L
  2137. #define isc_wal_err_ww_start              335544527L
  2138. #define isc_shutdown                      335544528L
  2139. #define isc_existing_priv_mod             335544529L
  2140. #define isc_primary_key_ref               335544530L
  2141. #define isc_primary_key_notnull           335544531L
  2142. #define isc_ref_cnstrnt_notfound          335544532L
  2143. #define isc_foreign_key_notfound          335544533L
  2144. #define isc_ref_cnstrnt_update            335544534L
  2145. #define isc_check_cnstrnt_update          335544535L
  2146. #define isc_check_cnstrnt_del             335544536L
  2147. #define isc_integ_index_seg_del           335544537L
  2148. #define isc_integ_index_seg_mod           335544538L
  2149. #define isc_integ_index_del               335544539L
  2150. #define isc_integ_index_mod               335544540L
  2151. #define isc_check_trig_del                335544541L
  2152. #define isc_check_trig_update             335544542L
  2153. #define isc_cnstrnt_fld_del               335544543L
  2154. #define isc_cnstrnt_fld_rename            335544544L
  2155. #define isc_rel_cnstrnt_update            335544545L
  2156. #define isc_constaint_on_view             335544546L
  2157. #define isc_invld_cnstrnt_type            335544547L
  2158. #define isc_primary_key_exists            335544548L
  2159. #define isc_systrig_update                335544549L
  2160. #define isc_not_rel_owner                 335544550L
  2161. #define isc_grant_obj_notfound            335544551L
  2162. #define isc_grant_fld_notfound            335544552L
  2163. #define isc_grant_nopriv                  335544553L
  2164. #define isc_nonsql_security_rel           335544554L
  2165. #define isc_nonsql_security_fld           335544555L
  2166. #define isc_wal_cache_err                 335544556L
  2167. #define isc_shutfail                      335544557L
  2168. #define isc_check_constraint              335544558L
  2169. #define isc_bad_svc_handle                335544559L
  2170. #define isc_shutwarn                      335544560L
  2171. #define isc_wrospbver                     335544561L
  2172. #define isc_bad_spb_form                  335544562L
  2173. #define isc_svcnotdef                     335544563L
  2174. #define isc_no_jrn                        335544564L
  2175. #define isc_transliteration_failed        335544565L
  2176. #define isc_start_cm_for_wal              335544566L
  2177. #define isc_wal_ovflow_log_required       335544567L
  2178. #define isc_text_subtype                  335544568L
  2179. #define isc_dsql_error                    335544569L
  2180. #define isc_dsql_command_err              335544570L
  2181. #define isc_dsql_constant_err             335544571L
  2182. #define isc_dsql_cursor_err               335544572L
  2183. #define isc_dsql_datatype_err             335544573L
  2184. #define isc_dsql_decl_err                 335544574L
  2185. #define isc_dsql_cursor_update_err        335544575L
  2186. #define isc_dsql_cursor_open_err          335544576L
  2187. #define isc_dsql_cursor_close_err         335544577L
  2188. #define isc_dsql_field_err                335544578L
  2189. #define isc_dsql_internal_err             335544579L
  2190. #define isc_dsql_relation_err             335544580L
  2191. #define isc_dsql_procedure_err            335544581L
  2192. #define isc_dsql_request_err              335544582L
  2193. #define isc_dsql_sqlda_err                335544583L
  2194. #define isc_dsql_var_count_err            335544584L
  2195. #define isc_dsql_stmt_handle              335544585L
  2196. #define isc_dsql_function_err             335544586L
  2197. #define isc_dsql_blob_err                 335544587L
  2198. #define isc_collation_not_found           335544588L
  2199. #define isc_collation_not_for_charset     335544589L
  2200. #define isc_dsql_dup_option               335544590L
  2201. #define isc_dsql_tran_err                 335544591L
  2202. #define isc_dsql_invalid_array            335544592L
  2203. #define isc_dsql_max_arr_dim_exceeded     335544593L
  2204. #define isc_dsql_arr_range_error          335544594L
  2205. #define isc_dsql_trigger_err              335544595L
  2206. #define isc_dsql_subselect_err            335544596L
  2207. #define isc_dsql_crdb_prepare_err         335544597L
  2208. #define isc_specify_field_err             335544598L
  2209. #define isc_num_field_err                 335544599L
  2210. #define isc_col_name_err                  335544600L
  2211. #define isc_where_err                     335544601L
  2212. #define isc_table_view_err                335544602L
  2213. #define isc_distinct_err                  335544603L
  2214. #define isc_key_field_count_err           335544604L
  2215. #define isc_subquery_err                  335544605L
  2216. #define isc_expression_eval_err           335544606L
  2217. #define isc_node_err                      335544607L
  2218. #define isc_command_end_err               335544608L
  2219. #define isc_index_name                    335544609L
  2220. #define isc_exception_name                335544610L
  2221. #define isc_field_name                    335544611L
  2222. #define isc_token_err                     335544612L
  2223. #define isc_union_err                     335544613L
  2224. #define isc_dsql_construct_err            335544614L
  2225. #define isc_field_aggregate_err           335544615L
  2226. #define isc_field_ref_err                 335544616L
  2227. #define isc_order_by_err                  335544617L
  2228. #define isc_return_mode_err               335544618L
  2229. #define isc_extern_func_err               335544619L
  2230. #define isc_alias_conflict_err            335544620L
  2231. #define isc_procedure_conflict_error      335544621L
  2232. #define isc_relation_conflict_err         335544622L
  2233. #define isc_dsql_domain_err               335544623L
  2234. #define isc_idx_seg_err                   335544624L
  2235. #define isc_node_name_err                 335544625L
  2236. #define isc_table_name                    335544626L
  2237. #define isc_proc_name                     335544627L
  2238. #define isc_idx_create_err                335544628L
  2239. #define isc_wal_shadow_err                335544629L
  2240. #define isc_dependency                    335544630L
  2241. #define isc_idx_key_err                   335544631L
  2242. #define isc_dsql_file_length_err          335544632L
  2243. #define isc_dsql_shadow_number_err        335544633L
  2244. #define isc_dsql_token_unk_err            335544634L
  2245. #define isc_dsql_no_relation_alias        335544635L
  2246. #define isc_indexname                     335544636L
  2247. #define isc_no_stream_plan                335544637L
  2248. #define isc_stream_twice                  335544638L
  2249. #define isc_stream_not_found              335544639L
  2250. #define isc_collation_requires_text       335544640L
  2251. #define isc_dsql_domain_not_found         335544641L
  2252. #define isc_index_unused                  335544642L
  2253. #define isc_dsql_self_join                335544643L
  2254. #define isc_stream_bof                    335544644L
  2255. #define isc_stream_crack                  335544645L
  2256. #define isc_db_or_file_exists             335544646L
  2257. #define isc_invalid_operator              335544647L
  2258. #define isc_conn_lost                     335544648L
  2259. #define isc_bad_checksum                  335544649L
  2260. #define isc_page_type_err                 335544650L
  2261. #define isc_ext_readonly_err              335544651L
  2262. #define isc_sing_select_err               335544652L
  2263. #define isc_psw_attach                    335544653L
  2264. #define isc_psw_start_trans               335544654L
  2265. #define isc_invalid_direction             335544655L
  2266. #define isc_dsql_var_conflict             335544656L
  2267. #define isc_dsql_no_blob_array            335544657L
  2268. #define isc_dsql_base_table               335544658L
  2269. #define isc_duplicate_base_table          335544659L
  2270. #define isc_view_alias                    335544660L
  2271. #define isc_index_root_page_full          335544661L
  2272. #define isc_dsql_blob_type_unknown        335544662L
  2273. #define isc_req_max_clones_exceeded       335544663L
  2274. #define isc_dsql_duplicate_spec           335544664L
  2275. #define isc_unique_key_violation          335544665L
  2276. #define isc_srvr_version_too_old          335544666L
  2277. #define isc_drdb_completed_with_errs      335544667L
  2278. #define isc_dsql_procedure_use_err        335544668L
  2279. #define isc_dsql_count_mismatch           335544669L
  2280. #define isc_blob_idx_err                  335544670L
  2281. #define isc_array_idx_err                 335544671L
  2282. #define isc_key_field_err                 335544672L
  2283. #define isc_no_delete                     335544673L
  2284. #define isc_del_last_field                335544674L
  2285. #define isc_sort_err                      335544675L
  2286. #define isc_sort_mem_err                  335544676L
  2287. #define isc_version_err                   335544677L
  2288. #define isc_inval_key_posn                335544678L
  2289. #define isc_no_segments_err               335544679L
  2290. #define isc_crrp_data_err                 335544680L
  2291. #define isc_rec_size_err                  335544681L
  2292. #define isc_dsql_field_ref                335544682L
  2293. #define isc_req_depth_exceeded            335544683L
  2294. #define isc_no_field_access               335544684L
  2295. #define isc_no_dbkey                      335544685L
  2296. #define isc_jrn_format_err                335544686L
  2297. #define isc_jrn_file_full                 335544687L
  2298. #define isc_dsql_open_cursor_request      335544688L
  2299. #define isc_ib_error                      335544689L
  2300. #define isc_cache_redef                   335544690L
  2301. #define isc_cache_too_small               335544691L
  2302. #define isc_log_redef                     335544692L
  2303. #define isc_log_too_small                 335544693L
  2304. #define isc_partition_too_small           335544694L
  2305. #define isc_partition_not_supp            335544695L
  2306. #define isc_log_length_spec               335544696L
  2307. #define isc_precision_err                 335544697L
  2308. #define isc_scale_nogt                    335544698L
  2309. #define isc_expec_short                   335544699L
  2310. #define isc_expec_long                    335544700L
  2311. #define isc_expec_ushort                  335544701L
  2312. #define isc_like_escape_invalid           335544702L
  2313. #define isc_svcnoexe                      335544703L
  2314. #define isc_net_lookup_err                335544704L
  2315. #define isc_service_unknown               335544705L
  2316. #define isc_host_unknown                  335544706L
  2317. #define isc_grant_nopriv_on_base          335544707L
  2318. #define isc_dyn_fld_ambiguous             335544708L
  2319. #define isc_dsql_agg_ref_err              335544709L
  2320. #define isc_complex_view                  335544710L
  2321. #define isc_unprepared_stmt               335544711L
  2322. #define isc_expec_positive                335544712L
  2323. #define isc_dsql_sqlda_value_err          335544713L
  2324. #define isc_invalid_array_id              335544714L
  2325. #define isc_extfile_uns_op                335544715L
  2326. #define isc_svc_in_use                    335544716L
  2327. #define isc_err_stack_limit               335544717L
  2328. #define isc_invalid_key                   335544718L
  2329. #define isc_net_init_error                335544719L
  2330. #define isc_loadlib_failure               335544720L
  2331. #define isc_network_error                 335544721L
  2332. #define isc_net_connect_err               335544722L
  2333. #define isc_net_connect_listen_err        335544723L
  2334. #define isc_net_event_connect_err         335544724L
  2335. #define isc_net_event_listen_err          335544725L
  2336. #define isc_net_read_err                  335544726L
  2337. #define isc_net_write_err                 335544727L
  2338. #define isc_integ_index_deactivate        335544728L
  2339. #define isc_integ_deactivate_primary      335544729L
  2340. #define isc_cse_not_supported             335544730L
  2341. #define isc_tra_must_sweep                335544731L
  2342. #define isc_unsupported_network_drive     335544732L
  2343. #define isc_io_create_err                 335544733L
  2344. #define isc_io_open_err                   335544734L
  2345. #define isc_io_close_err                  335544735L
  2346. #define isc_io_read_err                   335544736L
  2347. #define isc_io_write_err                  335544737L
  2348. #define isc_io_delete_err                 335544738L
  2349. #define isc_io_access_err                 335544739L
  2350. #define isc_udf_exception                 335544740L
  2351. #define isc_lost_db_connection            335544741L
  2352. #define isc_no_write_user_priv            335544742L
  2353. #define isc_token_too_long                335544743L
  2354. #define isc_max_att_exceeded              335544744L
  2355. #define isc_login_same_as_role_name       335544745L
  2356. #define isc_reftable_requires_pk          335544746L
  2357. #define isc_usrname_too_long              335544747L
  2358. #define isc_password_too_long             335544748L
  2359. #define isc_usrname_required              335544749L
  2360. #define isc_password_required             335544750L
  2361. #define isc_bad_protocol                  335544751L
  2362. #define isc_dup_usrname_found             335544752L
  2363. #define isc_usrname_not_found             335544753L
  2364. #define isc_error_adding_sec_record       335544754L
  2365. #define isc_error_modifying_sec_record    335544755L
  2366. #define isc_error_deleting_sec_record     335544756L
  2367. #define isc_error_updating_sec_db         335544757L
  2368. #define isc_sort_rec_size_err             335544758L
  2369. #define isc_bad_default_value             335544759L
  2370. #define isc_invalid_clause                335544760L
  2371. #define isc_too_many_handles              335544761L
  2372. #define isc_optimizer_blk_exc             335544762L
  2373. #define isc_err_max              442
  2374.  
  2375. /**********************************************/
  2376. /* Dynamic Data Definition Language operators */
  2377. /**********************************************/
  2378.  
  2379. /******************/
  2380. /* Version number */
  2381. /******************/
  2382.  
  2383. #define isc_dyn_version_1                 1
  2384. #define isc_dyn_eoc                       255
  2385.  
  2386. /******************************/
  2387. /* Operations (may be nested) */
  2388. /******************************/
  2389.  
  2390. #define isc_dyn_begin                     2
  2391. #define isc_dyn_end                       3
  2392. #define isc_dyn_if                        4
  2393. #define isc_dyn_def_database              5
  2394. #define isc_dyn_def_global_fld            6
  2395. #define isc_dyn_def_local_fld             7
  2396. #define isc_dyn_def_idx                   8
  2397. #define isc_dyn_def_rel                   9
  2398. #define isc_dyn_def_sql_fld               10
  2399. #define isc_dyn_def_view                  12
  2400. #define isc_dyn_def_trigger               15
  2401. #define isc_dyn_def_security_class        120
  2402. #define isc_dyn_def_dimension             140
  2403. #define isc_dyn_def_generator             24
  2404. #define isc_dyn_def_function              25
  2405. #define isc_dyn_def_filter                26
  2406. #define isc_dyn_def_function_arg          27
  2407. #define isc_dyn_def_shadow                34
  2408. #define isc_dyn_def_trigger_msg           17
  2409. #define isc_dyn_def_file                  36
  2410. #define isc_dyn_mod_database              39
  2411. #define isc_dyn_mod_rel                   11
  2412. #define isc_dyn_mod_global_fld            13
  2413. #define isc_dyn_mod_idx                   102
  2414. #define isc_dyn_mod_local_fld             14
  2415. #define isc_dyn_mod_view                  16
  2416. #define isc_dyn_mod_security_class        122
  2417. #define isc_dyn_mod_trigger               113
  2418. #define isc_dyn_mod_trigger_msg           28
  2419. #define isc_dyn_delete_database           18
  2420. #define isc_dyn_delete_rel                19
  2421. #define isc_dyn_delete_global_fld         20
  2422. #define isc_dyn_delete_local_fld          21
  2423. #define isc_dyn_delete_idx                22
  2424. #define isc_dyn_delete_security_class     123
  2425. #define isc_dyn_delete_dimensions         143
  2426. #define isc_dyn_delete_trigger            23
  2427. #define isc_dyn_delete_trigger_msg        29
  2428. #define isc_dyn_delete_filter             32
  2429. #define isc_dyn_delete_function           33
  2430. #define isc_dyn_delete_shadow             35
  2431. #define isc_dyn_grant                     30
  2432. #define isc_dyn_revoke                    31
  2433. #define isc_dyn_def_primary_key           37
  2434. #define isc_dyn_def_foreign_key           38
  2435. #define isc_dyn_def_unique                40
  2436. #define isc_dyn_def_procedure             164
  2437. #define isc_dyn_delete_procedure          165
  2438. #define isc_dyn_def_parameter             135
  2439. #define isc_dyn_delete_parameter          136
  2440. #define isc_dyn_mod_procedure             175
  2441. #define isc_dyn_def_log_file              176
  2442. #define isc_dyn_def_cache_file            180
  2443. #define isc_dyn_def_exception             181
  2444. #define isc_dyn_mod_exception             182
  2445. #define isc_dyn_del_exception             183
  2446. #define isc_dyn_drop_log                  194
  2447. #define isc_dyn_drop_cache                195
  2448. #define isc_dyn_def_default_log           202
  2449.  
  2450. /***********************/
  2451. /* View specific stuff */
  2452. /***********************/
  2453.  
  2454. #define isc_dyn_view_blr                  43
  2455. #define isc_dyn_view_source               44
  2456. #define isc_dyn_view_relation             45
  2457. #define isc_dyn_view_context              46
  2458. #define isc_dyn_view_context_name         47
  2459.  
  2460. /**********************/
  2461. /* Generic attributes */
  2462. /**********************/
  2463.  
  2464. #define isc_dyn_rel_name                  50
  2465. #define isc_dyn_fld_name                  51
  2466. #define isc_dyn_idx_name                  52
  2467. #define isc_dyn_description               53
  2468. #define isc_dyn_security_class            54
  2469. #define isc_dyn_system_flag               55
  2470. #define isc_dyn_update_flag               56
  2471. #define isc_dyn_prc_name                  166
  2472. #define isc_dyn_prm_name                  137
  2473. #define isc_dyn_sql_object                196
  2474. #define isc_dyn_fld_character_set_name    174
  2475.  
  2476. /********************************/
  2477. /* Relation specific attributes */
  2478. /********************************/
  2479.  
  2480. #define isc_dyn_rel_dbkey_length          61
  2481. #define isc_dyn_rel_store_trig            62
  2482. #define isc_dyn_rel_modify_trig           63
  2483. #define isc_dyn_rel_erase_trig            64
  2484. #define isc_dyn_rel_store_trig_source     65
  2485. #define isc_dyn_rel_modify_trig_source    66
  2486. #define isc_dyn_rel_erase_trig_source     67
  2487. #define isc_dyn_rel_ext_file              68
  2488. #define isc_dyn_rel_sql_protection        69
  2489. #define isc_dyn_rel_constraint            162
  2490. #define isc_dyn_delete_rel_constraint     163
  2491.  
  2492. /************************************/
  2493. /* Global field specific attributes */
  2494. /************************************/
  2495.  
  2496. #define isc_dyn_fld_type                  70
  2497. #define isc_dyn_fld_length                71
  2498. #define isc_dyn_fld_scale                 72
  2499. #define isc_dyn_fld_sub_type              73
  2500. #define isc_dyn_fld_segment_length        74
  2501. #define isc_dyn_fld_query_header          75
  2502. #define isc_dyn_fld_edit_string           76
  2503. #define isc_dyn_fld_validation_blr        77
  2504. #define isc_dyn_fld_validation_source     78
  2505. #define isc_dyn_fld_computed_blr          79
  2506. #define isc_dyn_fld_computed_source       80
  2507. #define isc_dyn_fld_missing_value         81
  2508. #define isc_dyn_fld_default_value         82
  2509. #define isc_dyn_fld_query_name            83
  2510. #define isc_dyn_fld_dimensions            84
  2511. #define isc_dyn_fld_not_null              85
  2512. #define isc_dyn_fld_char_length           172
  2513. #define isc_dyn_fld_collation             173
  2514. #define isc_dyn_fld_default_source        193
  2515. #define isc_dyn_del_default               197
  2516. #define isc_dyn_del_validation            198
  2517. #define isc_dyn_single_validation         199
  2518. #define isc_dyn_fld_character_set         203
  2519.  
  2520. /***********************************/
  2521. /* Local field specific attributes */
  2522. /***********************************/
  2523.  
  2524. #define isc_dyn_fld_source                90
  2525. #define isc_dyn_fld_base_fld              91
  2526. #define isc_dyn_fld_position              92
  2527. #define isc_dyn_fld_update_flag           93
  2528.  
  2529. /*****************************/
  2530. /* Index specific attributes */
  2531. /*****************************/
  2532.  
  2533. #define isc_dyn_idx_unique                100
  2534. #define isc_dyn_idx_inactive              101
  2535. #define isc_dyn_idx_type                  103
  2536. #define isc_dyn_idx_foreign_key           104
  2537. #define isc_dyn_idx_ref_column            105
  2538. #define isc_dyn_idx_statistic           204
  2539.  
  2540. /*******************************/
  2541. /* Trigger specific attributes */
  2542. /*******************************/
  2543.  
  2544. #define isc_dyn_trg_type                  110
  2545. #define isc_dyn_trg_blr                   111
  2546. #define isc_dyn_trg_source                112
  2547. #define isc_dyn_trg_name                  114
  2548. #define isc_dyn_trg_sequence              115
  2549. #define isc_dyn_trg_inactive              116
  2550. #define isc_dyn_trg_msg_number            117
  2551. #define isc_dyn_trg_msg                   118
  2552.  
  2553. /**************************************/
  2554. /* Security Class specific attributes */
  2555. /**************************************/
  2556.  
  2557. #define isc_dyn_scl_acl                   121
  2558. #define isc_dyn_grant_user                130
  2559. #define isc_dyn_grant_proc                186
  2560. #define isc_dyn_grant_trig                187
  2561. #define isc_dyn_grant_view                188
  2562. #define isc_dyn_grant_options             132
  2563. #define isc_dyn_grant_user_group          205
  2564.  
  2565.  
  2566. /**********************************/
  2567. /* Dimension specific information */
  2568. /**********************************/
  2569.  
  2570. #define isc_dyn_dim_lower                 141
  2571. #define isc_dyn_dim_upper                 142
  2572.  
  2573. /****************************/
  2574. /* File specific attributes */
  2575. /****************************/
  2576.  
  2577. #define isc_dyn_file_name                 125
  2578. #define isc_dyn_file_start                126
  2579. #define isc_dyn_file_length               127
  2580. #define isc_dyn_shadow_number             128
  2581. #define isc_dyn_shadow_man_auto           129
  2582. #define isc_dyn_shadow_conditional        130
  2583.  
  2584. /********************************/
  2585. /* Log file specific attributes */
  2586. /********************************/
  2587.  
  2588. #define isc_dyn_log_file_sequence         177
  2589. #define isc_dyn_log_file_partitions       178
  2590. #define isc_dyn_log_file_serial           179
  2591. #define isc_dyn_log_file_overflow         200
  2592. #define isc_dyn_log_file_raw          201
  2593.  
  2594. /***************************/
  2595. /* Log specific attributes */
  2596. /***************************/
  2597.  
  2598. #define isc_dyn_log_group_commit_wait     189 
  2599. #define isc_dyn_log_buffer_size           190
  2600. #define isc_dyn_log_check_point_length    191
  2601. #define isc_dyn_log_num_of_buffers        192
  2602.  
  2603. /********************************/
  2604. /* Function specific attributes */
  2605. /********************************/
  2606.  
  2607. #define isc_dyn_function_name             145
  2608. #define isc_dyn_function_type             146
  2609. #define isc_dyn_func_module_name          147
  2610. #define isc_dyn_func_entry_point          148
  2611. #define isc_dyn_func_return_argument      149
  2612. #define isc_dyn_func_arg_position         150
  2613. #define isc_dyn_func_mechanism            151
  2614. #define isc_dyn_filter_in_subtype         152
  2615. #define isc_dyn_filter_out_subtype        153
  2616.  
  2617.  
  2618. #define isc_dyn_description2          154    
  2619. #define isc_dyn_fld_computed_source2      155    
  2620. #define isc_dyn_fld_edit_string2      156
  2621. #define isc_dyn_fld_query_header2      157
  2622. #define isc_dyn_fld_validation_source2      158
  2623. #define isc_dyn_trg_msg2          159
  2624. #define isc_dyn_trg_source2          160
  2625. #define isc_dyn_view_source2          161
  2626. #define isc_dyn_xcp_msg2          184
  2627.  
  2628. /*********************************/
  2629. /* Generator specific attributes */
  2630. /*********************************/
  2631.  
  2632. #define isc_dyn_generator_name            95
  2633. #define isc_dyn_generator_id              96
  2634.  
  2635. /*********************************/
  2636. /* Procedure specific attributes */
  2637. /*********************************/
  2638.  
  2639. #define isc_dyn_prc_inputs                167
  2640. #define isc_dyn_prc_outputs               168
  2641. #define isc_dyn_prc_source                169
  2642. #define isc_dyn_prc_blr                   170
  2643. #define isc_dyn_prc_source2               171
  2644.  
  2645. /*********************************/
  2646. /* Parameter specific attributes */
  2647. /*********************************/
  2648.  
  2649. #define isc_dyn_prm_number                138
  2650. #define isc_dyn_prm_type                  139
  2651.  
  2652. /********************************/
  2653. /* Relation specific attributes */
  2654. /********************************/
  2655.  
  2656. #define isc_dyn_xcp_msg                   185
  2657.  
  2658. /**********************************************/
  2659. /* Cascading referential integrity values     */
  2660. /**********************************************/
  2661. #define isc_dyn_foreign_key_update        205
  2662. #define isc_dyn_foreign_key_delete        206
  2663. #define isc_dyn_foreign_key_cascade       207
  2664. #define isc_dyn_foreign_key_default       208
  2665. #define isc_dyn_foreign_key_null          209
  2666. #define isc_dyn_foreign_key_none          210
  2667.  
  2668. /***********************/
  2669. /* SQL role values     */
  2670. /***********************/
  2671. #define isc_dyn_def_sql_role              211
  2672. #define isc_dyn_sql_role_name             212
  2673. #define isc_dyn_grant_admin_options       213
  2674. #define isc_dyn_del_sql_role              214
  2675.  
  2676. /****************************/
  2677. /* Last $dyn value assigned */
  2678. /****************************/
  2679.  
  2680. #define isc_dyn_last_dyn_value            214
  2681.  
  2682. /******************************************/
  2683. /* Array slice description language (SDL) */
  2684. /******************************************/
  2685.  
  2686. #define isc_sdl_version1                  1
  2687. #define isc_sdl_eoc                       255
  2688. #define isc_sdl_relation                  2
  2689. #define isc_sdl_rid                       3
  2690. #define isc_sdl_field                     4
  2691. #define isc_sdl_fid                       5
  2692. #define isc_sdl_struct                    6
  2693. #define isc_sdl_variable                  7
  2694. #define isc_sdl_scalar                    8
  2695. #define isc_sdl_tiny_integer              9
  2696. #define isc_sdl_short_integer             10
  2697. #define isc_sdl_long_integer              11
  2698. #define isc_sdl_literal                   12
  2699. #define isc_sdl_add                       13
  2700. #define isc_sdl_subtract                  14
  2701. #define isc_sdl_multiply                  15
  2702. #define isc_sdl_divide                    16
  2703. #define isc_sdl_negate                    17
  2704. #define isc_sdl_eql                       18
  2705. #define isc_sdl_neq                       19
  2706. #define isc_sdl_gtr                       20
  2707. #define isc_sdl_geq                       21
  2708. #define isc_sdl_lss                       22
  2709. #define isc_sdl_leq                       23
  2710. #define isc_sdl_and                       24
  2711. #define isc_sdl_or                        25
  2712. #define isc_sdl_not                       26
  2713. #define isc_sdl_while                     27
  2714. #define isc_sdl_assignment                28
  2715. #define isc_sdl_label                     29
  2716. #define isc_sdl_leave                     30
  2717. #define isc_sdl_begin                     31
  2718. #define isc_sdl_end                       32
  2719. #define isc_sdl_do3                       33
  2720. #define isc_sdl_do2                       34
  2721. #define isc_sdl_do1                       35
  2722. #define isc_sdl_element                   36
  2723.  
  2724. /********************************************/
  2725. /* International text interpretation values */
  2726. /********************************************/
  2727.  
  2728. #define isc_interp_eng_ascii              0
  2729. #define isc_interp_jpn_sjis               5
  2730. #define isc_interp_jpn_euc                6
  2731.  
  2732. /*******************/
  2733. /* SQL definitions */
  2734. /*******************/
  2735.  
  2736. #define SQLDA_VERSION1        1
  2737.  
  2738. #define SQL_TEXT                           452
  2739. #define SQL_VARYING                        448
  2740. #define SQL_SHORT                          500
  2741. #define SQL_LONG                           496
  2742. #define SQL_FLOAT                          482
  2743. #define SQL_DOUBLE                         480
  2744. #define SQL_D_FLOAT                        530
  2745. #define SQL_DATE                           510
  2746. #define SQL_BLOB                           520
  2747. #define SQL_ARRAY                          540
  2748. #define SQL_QUAD                           550
  2749.  
  2750. /*****************/
  2751. /* Blob Subtypes */
  2752. /*****************/
  2753.  
  2754. /* types less than zero are reserved for customer use */
  2755.  
  2756. #define isc_blob_untyped                   0
  2757.  
  2758. /* internal subtypes */
  2759.  
  2760. #define isc_blob_text                      1
  2761. #define isc_blob_blr                       2
  2762. #define isc_blob_acl                       3
  2763. #define isc_blob_ranges                    4
  2764. #define isc_blob_summary                   5
  2765. #define isc_blob_format                    6
  2766. #define isc_blob_tra                       7
  2767. #define isc_blob_extfile                   8
  2768.  
  2769. /* the range 20-30 is reserved for dBASE and Paradox types */
  2770.  
  2771. #define isc_blob_formatted_memo            20
  2772. #define isc_blob_paradox_ole               21
  2773. #define isc_blob_graphic                   22
  2774. #define isc_blob_dbase_ole                 23
  2775. #define isc_blob_typed_binary              24
  2776.  
  2777. #endif                  /* _JRD_IBASE_H_ */
  2778.