8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 14:43:03 +01:00

More changes to convert FB2 to c++. This time is files that have been renamed

and some conflict resolutions on files edited by more than one person at once.
This commit is contained in:
bellardo 2001-07-12 06:32:05 +00:00
parent 747d13c0d5
commit 6681f4852e
247 changed files with 51621 additions and 9798 deletions

4150
configure vendored Executable file

File diff suppressed because it is too large Load Diff

View File

@ -27,7 +27,7 @@
*
*____________________________________________________________
*
* $Id: alice_meta.e,v 1.1.1.1 2001-05-23 13:25:33 tamlin Exp $
* $Id: alice_meta.epp,v 1.1 2001-07-12 06:32:01 bellardo Exp $
*/
#include <stdio.h>
@ -43,6 +43,8 @@
#include "../jrd/gds_proto.h"
#include "../jrd/thd_proto.h"
#include <string.h>
/* Transaction Description Record */
#define TDR_VERSION 1
@ -60,7 +62,7 @@
DATABASE DB = STATIC FILENAME "yachts.lnk";
#define DB tdgbl->db_handle
#define gds__trans tdgbl->tr_handle
#define gds_trans tdgbl->tr_handle
static STR alloc_string(TEXT **);
static USHORT get_capabilities(STATUS *);
@ -87,12 +89,12 @@ static struct rfr_tab_t rfr_table[] = {
#ifdef GUI_TOOLS
#define RETURN_ERROR(user_status) \
{ memcpy (user_status, gds__status, sizeof (gds__status)); \
LONGJMP (tdgbl->alice_env, 1); }
{ memcpy (user_status, gds_status, sizeof (gds_status)); \
LONGJMP ((JMP_BUF)tdgbl->alice_env, 1); }
#else
#define RETURN_ERROR(user_status) \
{ ALICE_print_status (gds__status); \
LONGJMP (tdgbl->alice_env, 1); }
{ ALICE_print_status (gds_status); \
LONGJMP ((JMP_BUF)tdgbl->alice_env, 1); }
#endif
@ -147,8 +149,8 @@ void MET_get_state(STATUS * user_status, TDR trans)
trans->tdr_state = TRA.RDB$TRANSACTION_STATE;
END_FOR ON_ERROR RETURN_ERROR(user_status) END_ERROR;
gds__release_request(gds__status, GDS_REF(request));
if (gds__status[1]) {
gds__release_request(gds_status, (void**) GDS_REF(request));
if (gds_status[1]) {
RETURN_ERROR(user_status)
}
@ -184,11 +186,11 @@ TDR MET_get_transaction(STATUS * user_status, isc_db_handle handle, SLONG id)
TRA IN RDB$TRANSACTIONS WITH
TRA.RDB$TRANSACTION_ID = id AND
TRA.RDB$TRANSACTION_DESCRIPTION NOT MISSING
trans = get_description(&TRA.RDB$TRANSACTION_DESCRIPTION);
trans = get_description((SLONG*)&TRA.RDB$TRANSACTION_DESCRIPTION);
END_FOR ON_ERROR RETURN_ERROR(user_status) END_ERROR;
gds__release_request(gds__status, GDS_REF(request));
if (gds__status[1]) {
gds__release_request(gds_status, (void**) GDS_REF(request));
if (gds_status[1]) {
RETURN_ERROR(user_status)
}
}
@ -284,8 +286,8 @@ static USHORT get_capabilities(STATUS * user_status)
END_FOR ON_ERROR RETURN_ERROR(user_status) END_ERROR;
}
gds__release_request(gds__status, GDS_REF(req));
if (gds__status[1]) {
gds__release_request(gds_status, (void**) GDS_REF(req));
if (gds_status[1]) {
RETURN_ERROR(user_status)
}
@ -336,7 +338,7 @@ static TDR get_description(SLONG blob_id[2])
case TDR_TRANSACTION_ID:
id_length = *p++;
id = gds__vax_integer(p, id_length);
id = gds__vax_integer((UCHAR*) p, id_length);
p += id_length;
if (!trans)
trans = ptr = (TDR) ALLOCD(type_tdr);
@ -382,7 +384,7 @@ static void parse_fullpath(TDR trans)
/* start at the end of the full pathname */
start = p = trans->tdr_fullpath->str_data;
start = p = (TEXT*) trans->tdr_fullpath->str_data;
while (*p)
p++;
end = p;
@ -403,7 +405,7 @@ static void parse_fullpath(TDR trans)
trans->tdr_filename = q + 1;
trans->tdr_remote_site = (STR) ALLOCDV(type_str, q - p + 1);
strncpy(trans->tdr_remote_site->str_data, p, q - p);
strncpy((char*) trans->tdr_remote_site->str_data, (char*) p, q - p);
trans->tdr_remote_site->str_data[q - p] = '\0';
}
}
@ -462,10 +464,10 @@ static USHORT snarf_blob(SLONG blob_id[2],
buffer[1] = 0;
blob = NULL;
if (gds__open_blob(gds__status,
GDS_REF(DB),
GDS_REF(gds__trans), GDS_REF(blob), GDS_VAL(blob_id))) {
ALICE_print_status(gds__status);
if (gds__open_blob(gds_status,
(void**) GDS_REF(DB),
(void**) GDS_REF(gds_trans), (void**) GDS_REF(blob), (GDS_QUAD*) GDS_VAL(blob_id))) {
ALICE_print_status(gds_status);
return 0;
}
@ -478,11 +480,11 @@ static USHORT snarf_blob(SLONG blob_id[2],
break;
if (!(buffer_length = end - ptr))
break;
status = gds__get_segment(gds__status,
GDS_REF(blob),
status = gds__get_segment(gds_status,
(void**) GDS_REF(blob),
GDS_REF(returned_length),
buffer_length, GDS_VAL(ptr));
if (status && status != gds__segment)
if (status && status != gds_segment)
break;
ptr += returned_length;
}
@ -491,18 +493,18 @@ static USHORT snarf_blob(SLONG blob_id[2],
if (!buffer_length)
for (;;) {
status = gds__get_segment(gds__status,
GDS_REF(blob),
status = gds__get_segment(gds_status,
(void**) GDS_REF(blob),
GDS_REF(returned_length),
buffer_length, buffer);
if (status && status != gds__segment)
if (status && status != gds_segment)
break;
buffer_length += returned_length;
}
else
buffer_length = 0;
gds__close_blob(gds__status, GDS_REF(blob));
gds__close_blob(gds_status, (void**) GDS_REF(blob));
*ptr = 0;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

7240
src/burp/restore.epp Normal file

File diff suppressed because it is too large Load Diff

View File

@ -110,7 +110,7 @@ STATUS API_ROUTINE isc_array_get_slice(STATUS * status,
return status[1];
isc_get_slice(status, db_handle, trans_handle, array_id,
sdl_length, sdl, 0, NULL_PTR,
sdl_length, sdl, 0, (ISC_LONG*) NULL_PTR,
*slice_length, array, slice_length);
if (sdl != sdl_buffer)
@ -176,7 +176,7 @@ STATUS API_ROUTINE isc_array_lookup_desc(STATUS * status,
**************************************/
return lookup_desc(status, db_handle, trans_handle,
field_name, relation_name, desc, NULL_PTR);
field_name, relation_name, desc, (SCHAR*) NULL_PTR);
}
@ -206,7 +206,7 @@ STATUS API_ROUTINE isc_array_put_slice(STATUS * status,
return status[1];
isc_put_slice(status, db_handle, trans_handle, array_id,
sdl_length, sdl, 0, NULL_PTR, *slice_length, array);
sdl_length, sdl, 0, (ISC_LONG*) NULL_PTR, *slice_length, array);
if (sdl != sdl_buffer)
gds__free((SLONG *) sdl);
@ -268,9 +268,9 @@ STATUS API_ROUTINE isc_array_set_desc(STATUS * status,
else if (dtype == SQL_QUAD)
desc->array_desc_dtype = blr_quad;
else
return error(status, 7, (STATUS) gds__sqlerr,
return error(status, 7, (STATUS) gds_sqlerr,
(STATUS) gds_arg_number, (STATUS) - 804,
(STATUS) gds_arg_gds, (STATUS) gds__random,
(STATUS) gds_arg_gds, (STATUS) gds_random,
(STATUS) gds_arg_string,
(STATUS) "data type not understood");
@ -367,7 +367,7 @@ static STATUS gen_sdl(STATUS * status,
dimensions = desc->array_desc_dimensions;
if (dimensions > 16)
return error(status, 5, (STATUS) gds__invalid_dimension,
return error(status, 5, (STATUS) gds_invalid_dimension,
(STATUS) gds_arg_number, (STATUS) dimensions,
(STATUS) gds_arg_number, (STATUS) 16);
@ -379,7 +379,7 @@ static STATUS gen_sdl(STATUS * status,
gen->gen_internal = internal_flag ? 0 : -1;
if (stuff
(gen, 4, gds__sdl_version1, gds__sdl_struct, 1,
(gen, 4, gds_sdl_version1, gds_sdl_struct, 1,
desc->array_desc_dtype)) return status[1];
switch (desc->array_desc_dtype) {
@ -399,10 +399,10 @@ static STATUS gen_sdl(STATUS * status,
break;
}
if (stuff_string(gen, gds__sdl_relation, desc->array_desc_relation_name))
if (stuff_string(gen, gds_sdl_relation, desc->array_desc_relation_name))
return status[1];
if (stuff_string(gen, gds__sdl_field, desc->array_desc_field_name))
if (stuff_string(gen, gds_sdl_field, desc->array_desc_field_name))
return status[1];
if (desc->array_desc_flags & ARRAY_DESC_COLUMN_MAJOR) {
@ -419,11 +419,11 @@ static STATUS gen_sdl(STATUS * status,
for (n = from; n != to; n += increment) {
tail = desc->array_desc_bounds + n;
if (tail->array_bound_lower == 1) {
if (stuff(gen, 2, gds__sdl_do1, n))
if (stuff(gen, 2, gds_sdl_do1, n))
return status[1];
}
else {
if (stuff(gen, 2, gds__sdl_do2, n))
if (stuff(gen, 2, gds_sdl_do2, n))
return status[1];
if (stuff_literal(gen, (SLONG) tail->array_bound_lower))
return status[1];
@ -432,14 +432,14 @@ static STATUS gen_sdl(STATUS * status,
return status[1];
}
if (stuff(gen, 5, gds__sdl_element, 1, gds__sdl_scalar, 0, dimensions))
if (stuff(gen, 5, gds_sdl_element, 1, gds_sdl_scalar, 0, dimensions))
return status[1];
for (n = 0; n < dimensions; n++)
if (stuff(gen, 2, gds__sdl_variable, n))
if (stuff(gen, 2, gds_sdl_variable, n))
return status[1];
STUFF_SDL(gds__sdl_eoc);
STUFF_SDL(gds_sdl_eoc);
*sdl_length = gen->gen_sdl - *gen->gen_sdl_ptr;
return error(status, 1, (STATUS) SUCCESS);
@ -514,7 +514,7 @@ SCHAR * relation_name, ISC_ARRAY_DESC * desc, SCHAR * global)
END_ERROR;
if (!flag)
return error(status, 5, (STATUS) gds__fldnotdef,
return error(status, 5, (STATUS) gds_fldnotdef,
(STATUS) gds_arg_string,
(STATUS) desc->array_desc_field_name,
(STATUS) gds_arg_string,
@ -542,7 +542,7 @@ static STATUS stuff( GEN gen, SSHORT count, ...)
if (gen->gen_sdl + count >= gen->gen_end) {
if (gen->gen_internal < 0)
return error(gen->gen_status, 3, (STATUS) gds__misc_interpreted,
return error(gen->gen_status, 3, (STATUS) gds_misc_interpreted,
(STATUS) gds_arg_string,
(STATUS) "SDL buffer overflow");
@ -551,10 +551,10 @@ static STATUS stuff( GEN gen, SSHORT count, ...)
new_len = gen->gen_end - *gen->gen_sdl_ptr + 512 + count;
new_sdl = (SCHAR *) gds__alloc((SLONG) new_len);
if (!new_sdl)
return error(gen->gen_status, 5, (STATUS) gds__misc_interpreted,
return error(gen->gen_status, 5, (STATUS) gds_misc_interpreted,
(STATUS) gds_arg_string,
(STATUS) "SDL buffer overflow", (STATUS) gds_arg_gds,
(STATUS) gds__virmemexh);
(STATUS) gds_virmemexh);
current_len = gen->gen_sdl - *gen->gen_sdl_ptr;
memcpy(new_sdl, *gen->gen_sdl_ptr, current_len);
@ -593,12 +593,12 @@ static STATUS stuff_literal( GEN gen, SLONG literal)
status = gen->gen_status;
if (literal >= -128 && literal <= 127)
return stuff(gen, 2, gds__sdl_tiny_integer, literal);
return stuff(gen, 2, gds_sdl_tiny_integer, literal);
if (literal >= -32768 && literal <= 32767)
return stuff(gen, 3, gds__sdl_short_integer, literal, literal >> 8);
return stuff(gen, 3, gds_sdl_short_integer, literal, literal >> 8);
STUFF_SDL(gds__sdl_long_integer);
STUFF_SDL(gds_sdl_long_integer);
STUFF_SDL_LONG(literal);
return SUCCESS;

View File

@ -84,7 +84,7 @@ USHORT bpb_buffer_length, UCHAR * bpb_buffer, USHORT * bpb_length)
UCHAR *p;
if (bpb_buffer_length < 17)
return error(status, 3, (STATUS) gds__random,
return error(status, 3, (STATUS) gds_random,
(STATUS) gds_arg_string,
(STATUS) "BPB buffer too small");
@ -162,7 +162,7 @@ STATUS API_ROUTINE isc_blob_lookup_desc(STATUS * status,
END_ERROR;
if (!flag)
return error(status, 5, (STATUS) gds__fldnotdef,
return error(status, 5, (STATUS) gds_fldnotdef,
(STATUS) gds_arg_string,
(STATUS) desc->blob_desc_field_name,
(STATUS) gds_arg_string,

View File

@ -129,7 +129,7 @@ void METD_drop_procedure( REQ request, STR name)
/* If the symbol wasn't defined, we've got nothing to do */
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*)name->str_data,
name->str_length, SYM_procedure, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_procedure) &&
@ -144,7 +144,7 @@ void METD_drop_procedure( REQ request, STR name)
/* mark other potential candidates as maybe dropped */
HSHD_set_flag(request->req_dbb, name->str_data, name->str_length,
HSHD_set_flag(request->req_dbb, (TEXT*)name->str_data, name->str_length,
SYM_procedure, PRC_dropped);
METD_REC_UNLOCK;
@ -177,7 +177,7 @@ void METD_drop_relation( REQ request, STR name)
/* If the symbol wasn't defined, we've got nothing to do */
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*)name->str_data,
name->str_length, SYM_relation, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_relation) &&
@ -192,7 +192,7 @@ void METD_drop_relation( REQ request, STR name)
/* mark other potential candidates as maybe dropped */
HSHD_set_flag(request->req_dbb, name->str_data, name->str_length,
HSHD_set_flag(request->req_dbb, (TEXT*)name->str_data, name->str_length,
SYM_relation, REL_dropped);
METD_REC_UNLOCK;
@ -219,7 +219,7 @@ INTLSYM METD_get_collation(REQ request, STR name)
/* Start by seeing if symbol is already defined */
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*)name->str_data,
name->str_length, SYM_intlsym, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_intlsym) &&
@ -231,7 +231,7 @@ INTLSYM METD_get_collation(REQ request, STR name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
iname = NULL;
THREAD_EXIT;
@ -317,7 +317,7 @@ TEXT * buffer, USHORT buff_length)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
/* V4.x multi threading requirements */
THREAD_EXIT;
@ -345,8 +345,8 @@ TEXT * buffer, USHORT buff_length)
if (*has_default) {
/* open the blob */
THREAD_EXIT;
stat = isc_open_blob2(status_vect, &DB, &gds__trans,
&blob_handle, blob_id, sizeof(blr_bpb),
stat = isc_open_blob2(status_vect, (void**) &DB, (void**) &gds__trans,
(void**) &blob_handle, blob_id, sizeof(blr_bpb),
(UCHAR*)blr_bpb);
THREAD_ENTER;
if (stat)
@ -364,7 +364,7 @@ TEXT * buffer, USHORT buff_length)
if (!stat)
continue;
else if (stat == gds__segstr_eof) {
else if (stat == gds_segstr_eof) {
/* null terminate the buffer */
*ptr_in_buffer = 0;
break;
@ -419,7 +419,7 @@ INTLSYM METD_get_charset(REQ request, USHORT length, UCHAR * name)
/* Start by seeing if symbol is already defined */
symbol = HSHD_lookup(request->req_dbb, name, length, SYM_intlsym, 0);
symbol = HSHD_lookup(request->req_dbb, (TEXT*) name, length, SYM_intlsym, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_intlsym) &&
(((INTLSYM) (symbol->sym_object))->intlsym_type ==
@ -430,7 +430,7 @@ INTLSYM METD_get_charset(REQ request, USHORT length, UCHAR * name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
iname = NULL;
THREAD_EXIT;
@ -447,7 +447,7 @@ INTLSYM METD_get_charset(REQ request, USHORT length, UCHAR * name)
THREAD_ENTER;
iname = (INTLSYM) ALLOCV(type_intlsym, dbb->dbb_pool, length);
strcpy(iname->intlsym_name, name);
strcpy(iname->intlsym_name, (char*) name);
iname->intlsym_type = INTLSYM_charset;
iname->intlsym_flags = 0;
iname->intlsym_charset_id = X.RDB$CHARACTER_SET_ID;
@ -513,7 +513,7 @@ STR METD_get_default_charset(REQ request)
/* Now see if it is in the database */
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
handle = NULL_PTR;
@ -531,7 +531,7 @@ STR METD_get_default_charset(REQ request)
dbb->dbb_dfl_charset = (STR) ALLOCV(type_str, dbb->dbb_pool, length);
dbb->dbb_dfl_charset->str_length = length;
dbb->dbb_dfl_charset->str_charset = NULL;
str = DBB.RDB$CHARACTER_SET_NAME;
str = (UCHAR*) DBB.RDB$CHARACTER_SET_NAME;
for (p = dbb->dbb_dfl_charset->str_data; length; --length)
*p++ = *str++;
@ -578,7 +578,7 @@ USHORT METD_get_domain(REQ request, FLD field, UCHAR * name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
THREAD_EXIT;
@ -653,7 +653,7 @@ void METD_get_domain_default(REQ request,
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
/* V4.x multi threading requirements */
THREAD_EXIT;
@ -671,8 +671,8 @@ void METD_get_domain_default(REQ request,
if (*has_default) {
/* open the blob */
THREAD_EXIT;
stat = isc_open_blob2(status_vect, &DB, &gds__trans,
&blob_handle, blob_id, sizeof(blr_bpb),
stat = isc_open_blob2(status_vect, (void**) &DB, (void**) &gds__trans,
(void**) &blob_handle, blob_id, sizeof(blr_bpb),
(UCHAR*)blr_bpb);
THREAD_ENTER;
if (stat)
@ -691,7 +691,7 @@ void METD_get_domain_default(REQ request,
if (!stat)
continue;
else if (stat == gds__segstr_eof) {
else if (stat == gds_segstr_eof) {
/* null terminate the buffer */
*ptr_in_buffer = 0;
break;
@ -751,7 +751,7 @@ UDF METD_get_function(REQ request, STR name)
/* Start by seeing if symbol is already defined */
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*) name->str_data,
name->str_length, SYM_udf, 0);
if (symbol)
return (UDF) symbol->sym_object;
@ -760,7 +760,7 @@ UDF METD_get_function(REQ request, STR name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
udf = NULL;
THREAD_EXIT;
@ -774,7 +774,7 @@ UDF METD_get_function(REQ request, STR name)
udf = (UDF) ALLOCV(type_udf, dbb->dbb_pool, name->str_length);
udf->udf_next = dbb->dbb_functions;
dbb->dbb_functions = udf;
strcpy(udf->udf_name, (TEXT *) name->str_data);
strcpy((char*) udf->udf_name, (char*) name->str_data);
return_arg = X.RDB$RETURN_ARGUMENT;
THREAD_EXIT;
@ -891,7 +891,7 @@ NOD METD_get_primary_key(REQ request, STR relation_name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
list = NULL;
count = 0;
@ -954,7 +954,7 @@ PRC METD_get_procedure(REQ request, STR name)
/* Start by seeing if symbol is already defined */
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*) name->str_data,
name->str_length, SYM_procedure, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_procedure) &&
@ -967,7 +967,7 @@ PRC METD_get_procedure(REQ request, STR name)
/* see if the procedure is the one currently being defined in this request */
if (((temp = request->req_procedure) != NULL) &&
!strcmp(temp->prc_name, name->str_data)) {
!strcmp((char*) temp->prc_name, (char*) name->str_data)) {
METD_REC_UNLOCK;
return temp;
}
@ -976,7 +976,7 @@ PRC METD_get_procedure(REQ request, STR name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
procedure = NULL;
THREAD_EXIT;
@ -1043,7 +1043,7 @@ PRC METD_get_procedure(REQ request, STR name)
/* get parameter information */
strcpy(parameter->fld_name, PR.RDB$PARAMETER_NAME);
strcpy(parameter->fld_name, (char*) PR.RDB$PARAMETER_NAME);
parameter->fld_id = PR.RDB$PARAMETER_NUMBER;
parameter->fld_length = RFR.RDB$FIELD_LENGTH;
parameter->fld_scale = RFR.RDB$FIELD_SCALE;
@ -1084,7 +1084,7 @@ PRC METD_get_procedure(REQ request, STR name)
* calls, another thread may have added the same procedure in the mean time
*/
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*) name->str_data,
name->str_length, SYM_procedure, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_procedure) &&
@ -1147,7 +1147,7 @@ DSQL_REL METD_get_relation(REQ request, STR name)
/* Start by seeing if symbol is already defined */
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*) name->str_data,
name->str_length, SYM_relation, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_relation) &&
@ -1160,7 +1160,7 @@ DSQL_REL METD_get_relation(REQ request, STR name)
/* see if the relation is the one currently being defined in this request */
if (((temp = request->req_relation) != NULL) &&
!strcmp(temp->rel_name, name->str_data)) {
!strcmp((char*) temp->rel_name, (char*) name->str_data)) {
METD_REC_UNLOCK;
return temp;
}
@ -1169,7 +1169,7 @@ DSQL_REL METD_get_relation(REQ request, STR name)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
relation = NULL;
THREAD_EXIT;
@ -1253,7 +1253,7 @@ DSQL_REL METD_get_relation(REQ request, STR name)
/* get field information */
strcpy(field->fld_name, RFR.RDB$FIELD_NAME);
strcpy(field->fld_name, (char*) RFR.RDB$FIELD_NAME);
field->fld_id = RFR.RDB$FIELD_ID;
field->fld_length = FLX.RDB$FIELD_LENGTH;
field->fld_scale = FLX.RDB$FIELD_SCALE;
@ -1305,7 +1305,7 @@ DSQL_REL METD_get_relation(REQ request, STR name)
/* get field information */
strcpy(field->fld_name, RFR.RDB$FIELD_NAME);
strcpy(field->fld_name, (char*) RFR.RDB$FIELD_NAME);
field->fld_id = RFR.RDB$FIELD_ID;
field->fld_length = FLX.RDB$FIELD_LENGTH;
field->fld_scale = FLX.RDB$FIELD_SCALE;
@ -1352,7 +1352,7 @@ DSQL_REL METD_get_relation(REQ request, STR name)
* another thread may have added the same table in the mean time
*/
symbol = HSHD_lookup(request->req_dbb, name->str_data,
symbol = HSHD_lookup(request->req_dbb, (TEXT*) name->str_data,
name->str_length, SYM_relation, 0);
for (; symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_relation) &&
@ -1404,7 +1404,7 @@ STR METD_get_trigger_relation(REQ request, STR name, USHORT * trig_type)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
relation = NULL;
@ -1416,7 +1416,7 @@ STR METD_get_trigger_relation(REQ request, STR name, USHORT * trig_type)
metd_exact_name(X.RDB$RELATION_NAME);
relation = MAKE_string(X.RDB$RELATION_NAME, strlen(X.RDB$RELATION_NAME));
relation = MAKE_string((UCHAR*) X.RDB$RELATION_NAME, strlen(X.RDB$RELATION_NAME));
*trig_type = X.RDB$TRIGGER_TYPE;
THREAD_EXIT;
@ -1449,7 +1449,7 @@ USHORT METD_get_type(REQ request, STR name, UCHAR * field, SSHORT * value)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
found = FALSE;
@ -1499,7 +1499,7 @@ DSQL_REL METD_get_view_relation(REQ request,
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
relation = NULL;
@ -1513,9 +1513,9 @@ DSQL_REL METD_get_view_relation(REQ request,
metd_exact_name(X.RDB$CONTEXT_NAME);
metd_exact_name(X.RDB$RELATION_NAME);
if (!strcmp(X.RDB$RELATION_NAME, relation_or_alias) ||
!strcmp(X.RDB$CONTEXT_NAME, relation_or_alias)) {
relation_name = MAKE_string(X.RDB$RELATION_NAME,
if (!strcmp((char*) X.RDB$RELATION_NAME, (char*) relation_or_alias) ||
!strcmp((char*) X.RDB$CONTEXT_NAME, (char*) relation_or_alias)) {
relation_name = MAKE_string((UCHAR*) X.RDB$RELATION_NAME,
strlen(X.RDB$RELATION_NAME));
relation = METD_get_relation(request, relation_name);
ALLD_release((FRB)relation_name);
@ -1523,7 +1523,7 @@ DSQL_REL METD_get_view_relation(REQ request,
}
if (relation =
METD_get_view_relation(request, X.RDB$RELATION_NAME,
METD_get_view_relation(request, (UCHAR*) X.RDB$RELATION_NAME,
relation_or_alias, (USHORT)level + 1))
return relation;
@ -1558,7 +1558,7 @@ static void check_array( REQ request, TEXT * field_name, FLD field)
dbb = request->req_dbb;
DB = dbb->dbb_database_handle;
gds__trans = request->req_trans;
gds__trans = (SLONG*) request->req_trans;
THREAD_EXIT;

File diff suppressed because it is too large Load Diff

View File

@ -78,10 +78,10 @@ static void view_fields(TEXT *);
static void wal_info(UCHAR *, SSHORT *, SLONG *, SLONG *, SLONG *);
static IB_FILE *output_file;
static SCHAR db_items[] = { gds__info_page_size };
static SCHAR db_items[] = { gds_info_page_size };
static SCHAR db_info[] =
{ gds__info_num_wal_buffers, gds__info_wal_buffer_size,
gds__info_wal_ckpt_length, gds__info_wal_grpc_wait_usecs
{ gds_info_num_wal_buffers, gds_info_wal_buffer_size,
gds_info_wal_ckpt_length, gds_info_wal_grpc_wait_usecs
};
static TEXT acl_privs[] = "?CGDRWP???";
static TEXT *acl_ids[] = {
@ -283,7 +283,7 @@ static void decompile_blr_literal(SCHAR * string)
switch (*p++) {
case (blr_text):
size = gds__vax_integer(p, 2);
size = gds__vax_integer((UCHAR*) p, 2);
p += 2;
*b++ = '"';
while (size--)
@ -299,9 +299,9 @@ static void decompile_blr_literal(SCHAR * string)
/* Convert strings to local encoding */
scale = gds__vax_integer(p, 2);
scale = gds__vax_integer((UCHAR*) p, 2);
p += 2;
size = gds__vax_integer(p, 2);
size = gds__vax_integer((UCHAR*) p, 2);
p += 2;
*b++ = '"';
@ -347,13 +347,13 @@ static void decompile_blr_literal(SCHAR * string)
case (blr_long):
scale = *p++;
value = gds__vax_integer(p, 4);
value = gds__vax_integer((UCHAR*) p, 4);
binary_to_ascii(value, scale, buffer);
break;
case (blr_short):
scale = *p++;
value = gds__vax_integer(p, 2);
value = gds__vax_integer((UCHAR*) p, 2);
binary_to_ascii(value, scale, buffer);
break;
@ -437,11 +437,11 @@ static void extract_acls(void)
S.RDB$SECURITY_CLASS);
if (!BLOB_NULL(S.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&S.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &S.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
if (!BLOB_NULL(S.RDB$ACL))
print_blob(&S.RDB$ACL, 'a');
print_blob((SLONG*) &S.RDB$ACL, 'a');
ib_fprintf(output_file, ";\n");
}
END_FOR;
@ -506,12 +506,12 @@ static void extract_computed(TEXT * relation_name, BOOLEAN first)
}
ib_fprintf(output_file, " computed by (");
print_blob(&F.RDB$COMPUTED_SOURCE, 'u');
print_blob((SLONG*) &F.RDB$COMPUTED_SOURCE, 'u');
ib_fprintf(output_file, ")");
if (!RFR.RDB$FIELD_POSITION.NULL)
ib_fprintf(output_file, "\tposition %d", RFR.RDB$FIELD_POSITION);
field_attributes(&RFR.RDB$DESCRIPTION, RFR.RDB$QUERY_NAME,
&RFR.RDB$QUERY_HEADER, RFR.RDB$EDIT_STRING,
field_attributes((SLONG*) &RFR.RDB$DESCRIPTION, RFR.RDB$QUERY_NAME,
(SLONG*) &RFR.RDB$QUERY_HEADER, RFR.RDB$EDIT_STRING,
RFR.RDB$SYSTEM_FLAG);
END_FOR;
@ -549,7 +549,7 @@ static void extract_database(TEXT * DB_file_name)
FOR D IN RDB$DATABASE
if (!BLOB_NULL(D.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&D.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &D.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
if (!D.RDB$SECURITY_CLASS.NULL) {
@ -563,7 +563,7 @@ static void extract_database(TEXT * DB_file_name)
FOR D IN RDB$DATABASE
if (!BLOB_NULL(D.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&D.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &D.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
END_FOR;
@ -577,10 +577,10 @@ static void extract_database(TEXT * DB_file_name)
}
d = buffer;
if (*d++ == gds__info_page_size) {
length = gds__vax_integer(d, 2);
if (*d++ == gds_info_page_size) {
length = gds__vax_integer((UCHAR*) d, 2);
d += 2;
page_size = gds__vax_integer(d, length);
page_size = gds__vax_integer((UCHAR*) d, length);
if (page_size)
ib_fprintf(output_file, "\n\tpage_size %d", page_size);
}
@ -655,7 +655,7 @@ static void extract_database(TEXT * DB_file_name)
F.RDB$FILE_PARTITIONS);
END_FOR;
if (gds__database_info(gds__status,
if (gds__database_info(gds_status,
GDS_REF(DB),
sizeof(db_info),
db_info,
@ -667,7 +667,7 @@ static void extract_database(TEXT * DB_file_name)
buf_size = chkpt_len = grp_commit = 0;
num_buf = 0;
wal_info(db_info_buffer, &num_buf, &buf_size, &chkpt_len,
wal_info((UCHAR*) db_info_buffer, &num_buf, &buf_size, &chkpt_len,
&grp_commit);
if (num_buf)
@ -768,13 +768,13 @@ static void extract_fields(void)
if (!BLOB_NULL(F.RDB$VALIDATION_SOURCE)) {
ib_fprintf(output_file, "\n\tvalid if (");
print_blob(&F.RDB$VALIDATION_SOURCE, 'u');
print_blob((SLONG*) &F.RDB$VALIDATION_SOURCE, 'u');
ib_fprintf(output_file, ")");
}
if (!BLOB_NULL(F.RDB$MISSING_VALUE)) {
ib_fprintf(output_file, "\n\tmissing_value is ");
print_blob(&F.RDB$MISSING_VALUE, 'm');
print_blob((SLONG*) &F.RDB$MISSING_VALUE, 'm');
}
/*
@ -782,8 +782,8 @@ static void extract_fields(void)
default_value (&F.RDB$DEFAULT_VALUE);
*/
field_attributes(&F.RDB$DESCRIPTION, F.RDB$QUERY_NAME,
&F.RDB$QUERY_HEADER, F.RDB$EDIT_STRING,
field_attributes((SLONG*) &F.RDB$DESCRIPTION, F.RDB$QUERY_NAME,
(SLONG*) &F.RDB$QUERY_HEADER, F.RDB$EDIT_STRING,
F.RDB$SYSTEM_FLAG);
ib_fprintf(output_file, ";\n");
@ -824,7 +824,7 @@ static void extract_filters(void)
ib_fprintf(output_file, "\n\tentry_point '%s'", s);
if (!BLOB_NULL(F.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&F.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &F.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
ib_fprintf(output_file, ";\n");
@ -865,7 +865,7 @@ static void extract_functions(void)
ib_fprintf(output_file, "\n\tentry_point '%s'", s);
if (!BLOB_NULL(FUNC.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&FUNC.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &FUNC.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
@ -1113,7 +1113,7 @@ static void extract_indexes(void)
if (!BLOB_NULL(I.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&I.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &I.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
@ -1182,7 +1182,7 @@ static void extract_relations(void)
ib_fprintf(output_file, "\n\tsystem_flag %d", R.RDB$SYSTEM_FLAG);
if (!BLOB_NULL(R.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&R.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &R.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
extract_rfr(R.RDB$RELATION_NAME);
@ -1204,7 +1204,7 @@ static void extract_relations(void)
ib_fprintf(output_file, "\n\tsystem_flag %d", R.RDB$SYSTEM_FLAG);
if (!BLOB_NULL(R.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&R.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &R.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
extract_rfr(R.RDB$RELATION_NAME);
@ -1256,8 +1256,8 @@ static void extract_rfr(TEXT * relation_name)
if (!RFR.RDB$FIELD_POSITION.NULL)
ib_fprintf(output_file, "\tposition %d", RFR.RDB$FIELD_POSITION);
field_attributes(&RFR.RDB$DESCRIPTION, RFR.RDB$QUERY_NAME,
&RFR.RDB$QUERY_HEADER, RFR.RDB$EDIT_STRING,
field_attributes((SLONG*) &RFR.RDB$DESCRIPTION, RFR.RDB$QUERY_NAME,
(SLONG*) &RFR.RDB$QUERY_HEADER, RFR.RDB$EDIT_STRING,
RFR.RDB$SYSTEM_FLAG);
END_FOR;
@ -1289,7 +1289,7 @@ static void extract_security(void)
first_field = TRUE;
modify = FALSE;
name_trunc(R.RDB$RELATION_NAME, r);
p = (R.RDB$VIEW_BLR.NULL) ? "relation" : "view";
p = (R.RDB$VIEW_BLR.NULL) ? (TEXT*) "relation" : (TEXT*) "view";
if (!R.RDB$SECURITY_CLASS.NULL && name_trunc(R.RDB$SECURITY_CLASS, s)) {
/* skip modify relation/view add security class if we have just a stub -
i.e. security_class is 'SQL$..' and has no rdb$user_privilege entry and
@ -1425,12 +1425,12 @@ static void extract_triggers(void)
/* msg 262: **** trigger source for trigger %s must be recreated **** */
}
else {
print_blob(&T.RDB$TRIGGER_SOURCE, 'u');
print_blob((SLONG*) &T.RDB$TRIGGER_SOURCE, 'u');
}
ib_fprintf(output_file, "\n\tend_trigger");
if (!BLOB_NULL(T.RDB$DESCRIPTION)) {
ib_fprintf(output_file, "\n\t{");
print_blob(&T.RDB$DESCRIPTION, 'u');
print_blob((SLONG*) &T.RDB$DESCRIPTION, 'u');
ib_fprintf(output_file, "}");
}
extract_trig_msgs(T.RDB$TRIGGER_NAME);
@ -1558,8 +1558,8 @@ static void extract_views(void)
SORTED BY V.RDB$RELATION_NAME
source_null = V.RDB$VIEW_SOURCE.NULL ? TRUE : FALSE;
desc_null = BLOB_NULL(V.RDB$DESCRIPTION) ? TRUE : FALSE;
extract_view(V.RDB$RELATION_NAME, &V.RDB$VIEW_SOURCE,
&V.RDB$DESCRIPTION, source_null, desc_null,
extract_view(V.RDB$RELATION_NAME, (SLONG*) &V.RDB$VIEW_SOURCE,
(SLONG*) &V.RDB$DESCRIPTION, source_null, desc_null,
V.RDB$SYSTEM_FLAG, &first);
END_FOR;
@ -1617,8 +1617,8 @@ static void extract_views(void)
V.RDB$RELATION_NAME EQ view_name
source_null = V.RDB$VIEW_SOURCE.NULL ? TRUE : FALSE;
desc_null = BLOB_NULL(V.RDB$DESCRIPTION) ? TRUE : FALSE;
extract_view(V.RDB$RELATION_NAME, &V.RDB$VIEW_SOURCE,
&V.RDB$DESCRIPTION, source_null, desc_null,
extract_view(V.RDB$RELATION_NAME, (SLONG*) &V.RDB$VIEW_SOURCE,
(SLONG*) &V.RDB$DESCRIPTION, source_null, desc_null,
V.RDB$SYSTEM_FLAG, &first);
END_FOR;
@ -1637,8 +1637,8 @@ static void extract_views(void)
V.RDB$RELATION_NAME EQ view->view_name
source_null = V.RDB$VIEW_SOURCE.NULL ? TRUE : FALSE;
desc_null = BLOB_NULL(V.RDB$DESCRIPTION) ? TRUE : FALSE;
extract_view(V.RDB$RELATION_NAME, &V.RDB$VIEW_SOURCE,
&V.RDB$DESCRIPTION, source_null, desc_null,
extract_view(V.RDB$RELATION_NAME, (SLONG*) &V.RDB$VIEW_SOURCE,
(SLONG*) &V.RDB$DESCRIPTION, source_null, desc_null,
V.RDB$SYSTEM_FLAG, &first);
END_FOR;
@ -1871,9 +1871,9 @@ static void print_blob(SLONG * blob_id, TEXT type)
if (gds__open_blob2(status_vector,
GDS_REF(DB),
GDS_REF(gds__trans),
GDS_REF(blob),
GDS_VAL(blob_id), (USHORT) (r - bpb), bpb)) {
GDS_REF(gds_trans),
(void**) GDS_REF(blob),
(GDS__QUAD*) GDS_VAL(blob_id), (USHORT) (r - bpb), (SCHAR*) bpb)) {
gds__print_status(status_vector);
DDL_err(269, NULL, NULL, NULL, NULL, NULL); /* msg 269: gds__open_blob failed */
return;
@ -1886,10 +1886,10 @@ static void print_blob(SLONG * blob_id, TEXT type)
}
while (!(status = gds__get_segment(status_vector,
GDS_REF(blob),
GDS_REF(length),
(void**) GDS_REF(blob),
(USHORT*) GDS_REF(length),
(USHORT) (sizeof(buffer) - 1),
buffer)) || status == gds__segment) {
buffer)) || status == gds_segment) {
buffer[length] = 0;
switch (type) {
case 'h':
@ -1927,13 +1927,13 @@ static void print_blob(SLONG * blob_id, TEXT type)
}
}
if (status_vector[1] != gds__segstr_eof) {
if (status_vector[1] != gds_segstr_eof) {
gds__print_status(status_vector);
DDL_err(271, NULL, NULL, NULL, NULL, NULL); /* msg 271: gds__get_segment failed */
return;
}
if (gds__close_blob(status_vector, GDS_REF(blob))) {
if (gds__close_blob(status_vector, (void**) GDS_REF(blob))) {
gds__print_status(status_vector);
DDL_err(272, NULL, NULL, NULL, NULL, NULL); /* msg 272: gds__close_blob failed */
return;
@ -2024,7 +2024,7 @@ static void set_capabilities(void)
END_FOR;
}
gds__release_request(gds__status, GDS_REF(req));
gds__release_request(gds_status, (void**) GDS_REF(req));
}
@ -2177,8 +2177,8 @@ static void view_fields(TEXT * view_name)
if (!RFR.RDB$FIELD_POSITION.NULL)
ib_fprintf(output_file, "\tposition %d", RFR.RDB$FIELD_POSITION);
field_attributes(&RFR.RDB$DESCRIPTION, RFR.RDB$QUERY_NAME,
&RFR.RDB$QUERY_HEADER, RFR.RDB$EDIT_STRING,
field_attributes((SLONG*) &RFR.RDB$DESCRIPTION, RFR.RDB$QUERY_NAME,
(SLONG*) &RFR.RDB$QUERY_HEADER, RFR.RDB$EDIT_STRING,
RFR.RDB$SYSTEM_FLAG);
}
END_FOR;
@ -2206,23 +2206,23 @@ static void wal_info(UCHAR * db_info_buffer,
p = db_info_buffer;
while ((item = *p++) != gds__info_end) {
while ((item = *p++) != gds_info_end) {
length = gds__vax_integer(p, 2);
p += 2;
switch (item) {
case gds__info_num_wal_buffers:
case gds_info_num_wal_buffers:
*num_buf = gds__vax_integer(p, length);
break;
case gds__info_wal_buffer_size:
case gds_info_wal_buffer_size:
*buf_size = gds__vax_integer(p, length);
break;
case gds__info_wal_ckpt_length:
case gds_info_wal_ckpt_length:
*chkpt_len = gds__vax_integer(p, length);
break;
case gds__info_wal_grpc_wait_usecs:
case gds_info_wal_grpc_wait_usecs:
*grp_commit = gds__vax_integer(p, length);
break;

View File

@ -26,7 +26,7 @@
*
*____________________________________________________________
*
* $Id: gpre_meta.e,v 1.1.1.1 2001-05-23 13:25:33 tamlin Exp $
* $Id: gpre_meta.epp,v 1.1 2001-07-12 06:32:02 bellardo Exp $
*/
#include <string.h>
@ -162,15 +162,15 @@ BOOLEAN MET_database(DBB dbb, BOOLEAN print_version)
d = dpb;
if (dbb->dbb_c_user || dbb->dbb_c_password) {
*d++ = gds__dpb_version1;
*d++ = gds_dpb_version1;
if (p = dbb->dbb_c_user) {
*d++ = gds__dpb_user_name;
*d++ = gds_dpb_user_name;
*d++ = strlen(p);
while (*p)
*d++ = *p++;
}
if (p = dbb->dbb_c_password) {
*d++ = gds__dpb_password;
*d++ = gds_dpb_password;
*d++ = strlen(p);
while (*p)
*d++ = *p++;
@ -180,11 +180,21 @@ BOOLEAN MET_database(DBB dbb, BOOLEAN print_version)
if (gds__attach_database
(gds__status, 0, GDS_VAL(dbb->dbb_filename), GDS_REF(DB), d - &dpb[0],
dpb)) {
gds__print_status(gds__status);
return FALSE;
/* We failed to attach, try in read only mode just in case
if (d == dpb)
*d++ = gds_dpb_version1;
*d++ = isc_dpb_set_db_readonly;
*d++ = 1;
*d++ = TRUE;
if (gds__attach_database
(gds__status, 0, GDS_VAL(dbb->dbb_filename), GDS_REF(DB), d - &dpb[0],
dpb)) {*/
gds__print_status(gds__status);
return FALSE;
//}
}
dbb->dbb_handle = DB;
dbb->dbb_handle = (SLONG*) DB;
if (sw_version && print_version) {
ib_printf(" Version(s) for database \"%s\"\n", dbb->dbb_filename);
@ -194,7 +204,7 @@ BOOLEAN MET_database(DBB dbb, BOOLEAN print_version)
sw_ods_version = 0;
sw_server_version = 0;
if (isc_database_info(isc_status, &DB, sizeof(sql_version_info),
sql_version_info, sizeof(sql_buffer), sql_buffer)) {
(char*) sql_version_info, sizeof(sql_buffer), (char*) sql_buffer)) {
gds__print_status(isc_status);
return FALSE;
}
@ -205,7 +215,7 @@ BOOLEAN MET_database(DBB dbb, BOOLEAN print_version)
USHORT length;
item = (UCHAR) * ptr++;
length = isc_vax_integer(ptr, sizeof(USHORT));
length = isc_vax_integer((char*)ptr, sizeof(USHORT));
ptr += sizeof(USHORT);
switch (item) {
case isc_info_base_level:
@ -213,11 +223,11 @@ BOOLEAN MET_database(DBB dbb, BOOLEAN print_version)
break;
case isc_info_ods_version:
sw_ods_version = isc_vax_integer(ptr, length);
sw_ods_version = isc_vax_integer((char*)ptr, length);
break;
case isc_info_db_sql_dialect:
compiletime_db_dialect = isc_vax_integer(ptr, length);
compiletime_db_dialect = isc_vax_integer((char*)ptr, length);
break;
case isc_info_error:
/* Error indicates that one of the option
@ -479,7 +489,7 @@ BOOLEAN MET_get_domain_default(DBB dbb,
blob_id = &FLD.RDB$DEFAULT_VALUE;
/* open the blob */
stat = isc_open_blob2(status_vect, &DB, &gds__trans, &blob_handle,
stat = isc_open_blob2(status_vect, (void**) &DB, (void**) &gds__trans, (void**) &blob_handle,
blob_id, sizeof(blr_bpb), blr_bpb);
if (stat) {
gds__print_status(status_vect);
@ -488,14 +498,14 @@ BOOLEAN MET_get_domain_default(DBB dbb,
/* fetch segments. Assume buffer is big enough. */
ptr_in_buffer = buffer;
while (TRUE) {
stat = isc_get_segment(status_vect, &blob_handle, &length,
stat = isc_get_segment(status_vect, (void**) &blob_handle, (USHORT*) &length,
buff_length, ptr_in_buffer);
ptr_in_buffer = ptr_in_buffer + length;
buff_length = buff_length - length;
if (!stat)
continue;
else if (stat == gds__segstr_eof) {
else if (stat == gds_segstr_eof) {
/* null terminate the buffer */
*ptr_in_buffer = 0;
break;
@ -587,8 +597,8 @@ BOOLEAN MET_get_column_default(REL relation,
if (has_default) {
/* open the blob */
stat = isc_open_blob2(status_vect, &DB, &gds__trans,
&blob_handle, blob_id, sizeof(blr_bpb),
stat = isc_open_blob2(status_vect, (void**) &DB, (void**) &gds__trans,
(void**) &blob_handle, blob_id, sizeof(blr_bpb),
blr_bpb);
if (stat) {
gds__print_status(status_vect);
@ -599,12 +609,12 @@ BOOLEAN MET_get_column_default(REL relation,
ptr_in_buffer = buffer;
while (TRUE) {
stat = isc_get_segment(status_vect, &blob_handle,
&length, buff_length, ptr_in_buffer);
(USHORT*)&length, buff_length, ptr_in_buffer);
ptr_in_buffer = ptr_in_buffer + length;
buff_length = buff_length - length;
if (!stat)
continue;
else if (stat == gds__segstr_eof) {
else if (stat == gds_segstr_eof) {
/* null terminate the buffer */
*ptr_in_buffer = 0;
break;
@ -676,15 +686,15 @@ LLS MET_get_primary_key(DBB dbb, TEXT * relation_name)
WITH X.RDB$RELATION_NAME EQ name
AND X.RDB$INDEX_NAME STARTING "RDB$PRIMARY"
SORTED BY Y.RDB$FIELD_POSITION
field_name = MAKE_STRING(Y.RDB$FIELD_NAME);
field_name = (str*) MAKE_STRING(Y.RDB$FIELD_NAME);
/* Strip off any trailing spaces from field name */
tmp = field_name;
tmp = (TEXT*) field_name;
while (*tmp && *tmp != ' ')
*tmp++;
*tmp = '\0';
PUSH(field_name, ptr_fields);
PUSH((NOD) field_name, ptr_fields);
ptr_fields = &(*ptr_fields)->lls_next;
END_FOR COMMIT;
@ -783,11 +793,11 @@ FLD MET_field(REL relation, char *string)
INTL_CS_COLL_TO_TTYPE(field->fld_charset_id,
field->fld_collate_id);
field->fld_symbol = symbol =
MSC_symbol(SYM_field, name, length, field);
MSC_symbol(SYM_field, name, length, (CTX) field);
HSH_insert(symbol);
field->fld_global = symbol =
MSC_symbol(SYM_field, RFR.RDB$FIELD_SOURCE,
symbol_length(RFR.RDB$FIELD_SOURCE), field);
symbol_length(RFR.RDB$FIELD_SOURCE), (CTX) field);
END_FOR;
}
else {
@ -827,11 +837,11 @@ FLD MET_field(REL relation, char *string)
INTL_CS_COLL_TO_TTYPE(field->fld_charset_id,
field->fld_collate_id);
field->fld_symbol = symbol =
MSC_symbol(SYM_field, name, length, field);
MSC_symbol(SYM_field, name, length, (CTX) field);
HSH_insert(symbol);
field->fld_global = symbol =
MSC_symbol(SYM_field, RFR.RDB$FIELD_SOURCE,
symbol_length(RFR.RDB$FIELD_SOURCE), field);
symbol_length(RFR.RDB$FIELD_SOURCE), (CTX) field);
END_FOR;
}
@ -863,7 +873,7 @@ NOD MET_fields(CTX context)
reference = (REF) ALLOC(REF_LEN);
reference->ref_field = field;
reference->ref_context = context;
field_node = MSC_unary(nod_field, reference);
field_node = MSC_unary(nod_field, (NOD) reference);
node->nod_arg[field->fld_position] = field_node;
count++;
}
@ -880,7 +890,7 @@ NOD MET_fields(CTX context)
reference = (REF) ALLOC(REF_LEN);
reference->ref_field = field;
reference->ref_context = context;
field_node = MSC_unary(nod_field, reference);
field_node = MSC_unary(nod_field, (NOD) reference);
node->nod_arg[field->fld_position] = field_node;
count++;
}
@ -903,7 +913,7 @@ NOD MET_fields(CTX context)
SORTED BY RFR.RDB$FIELD_POSITION
for (p = RFR.RDB$FIELD_NAME; *p && *p != ' '; p++);
*p = 0;
PUSH(MET_field(relation, RFR.RDB$FIELD_NAME), &stack);
PUSH((NOD) MET_field(relation, RFR.RDB$FIELD_NAME), &stack);
count++;
END_FOR;
@ -914,7 +924,7 @@ NOD MET_fields(CTX context)
reference = (REF) ALLOC(REF_LEN);
reference->ref_field = field;
reference->ref_context = context;
field_node = MSC_unary(nod_field, reference);
field_node = MSC_unary(nod_field, (NOD) reference);
node->nod_arg[--count] = field_node;
}
@ -1159,7 +1169,7 @@ PRC MET_get_procedure(DBB dbb, TEXT * string, TEXT * owner_name)
field->fld_symbol = MSC_symbol(SYM_field,
Y.RDB$PARAMETER_NAME,
symbol_length(Y.RDB$PARAMETER_NAME),
field);
(CTX) field);
/* If output parameter, insert in symbol table as a
field. */
if (type)
@ -1418,7 +1428,7 @@ IND MET_index(DBB dbb, TEXT * string)
FOR(REQUEST_HANDLE dbb->dbb_index_request)
X IN RDB$INDICES WITH X.RDB$INDEX_NAME EQ name
index = (IND) ALLOC(IND_LEN);
index->ind_symbol = symbol = MSC_symbol(SYM_index, name, length, index);
index->ind_symbol = symbol = MSC_symbol(SYM_index, name, length, (CTX) index);
index->ind_relation = MET_get_relation(dbb, X.RDB$RELATION_NAME, "");
HSH_insert(symbol);
@ -1468,7 +1478,7 @@ void MET_load_hash_table( DBB dbb)
START_TRANSACTION;
dbb->dbb_transaction = gds__trans;
dbb->dbb_transaction = (SLONG*) gds__trans;
handle = handle2 = NULL;
/* Determine if the database is V3. */
@ -1481,7 +1491,7 @@ void MET_load_hash_table( DBB dbb)
X.RDB$SYSTEM_FLAG = 1 post_v3_flag = TRUE;
END_FOR;
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
if (!post_v3_flag)
dbb->dbb_flags |= DBB_v3;
@ -1497,7 +1507,7 @@ void MET_load_hash_table( DBB dbb)
relation->rel_id = X.RDB$RELATION_ID;
relation->rel_symbol = symbol =
MSC_symbol(SYM_relation, X.RDB$RELATION_NAME,
symbol_length(X.RDB$RELATION_NAME), relation);
symbol_length(X.RDB$RELATION_NAME), (CTX) relation);
HSH_insert(symbol);
relation->rel_dbkey = dbkey = MET_make_field("rdb$db_key", dtype_text,
(X.RDB$DBKEY_LENGTH) ? X.
@ -1517,7 +1527,7 @@ void MET_load_hash_table( DBB dbb)
relation->rel_id = X.RDB$RELATION_ID;
relation->rel_symbol = symbol =
MSC_symbol(SYM_relation, X.RDB$RELATION_NAME,
symbol_length(X.RDB$RELATION_NAME), relation);
symbol_length(X.RDB$RELATION_NAME), (CTX) relation);
HSH_insert(symbol);
relation->rel_dbkey = dbkey = MET_make_field("rdb$db_key", dtype_text,
(X.RDB$DBKEY_LENGTH) ? X.
@ -1529,12 +1539,12 @@ void MET_load_hash_table( DBB dbb)
if (!X.RDB$OWNER_NAME.NULL
&& (length =
symbol_length(X.RDB$OWNER_NAME))) relation->rel_owner =
MSC_symbol(SYM_username, X.RDB$OWNER_NAME, length, NULL_PTR);
MSC_symbol(SYM_username, X.RDB$OWNER_NAME, length, (CTX) NULL_PTR);
END_FOR;
}
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
/* Pick up all procedures (necessary to parse parts of the GDML grammar) */
@ -1546,17 +1556,17 @@ void MET_load_hash_table( DBB dbb)
procedure->prc_id = X.RDB$PROCEDURE_ID;
procedure->prc_symbol = symbol =
MSC_symbol(SYM_procedure, X.RDB$PROCEDURE_NAME,
symbol_length(X.RDB$PROCEDURE_NAME), procedure);
symbol_length(X.RDB$PROCEDURE_NAME), (CTX) procedure);
HSH_insert(symbol);
if (!X.RDB$OWNER_NAME.NULL && (length = symbol_length(X.RDB$OWNER_NAME)))
procedure->prc_owner =
MSC_symbol(SYM_username, X.RDB$OWNER_NAME, length, NULL_PTR);
MSC_symbol(SYM_username, X.RDB$OWNER_NAME, length, (CTX) NULL_PTR);
END_FOR ON_ERROR
/* assume pre V4 database, no procedures */
END_ERROR;
if (handle)
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
/* Pickup any user defined functions. If the database does not support UDF's,
* this may fail
@ -1579,7 +1589,7 @@ void MET_load_hash_table( DBB dbb)
p = FUN.RDB$QUERY_NAME;
p[length] = 0;
}
udf->udf_symbol = symbol = MSC_symbol(SYM_udf, p, strlen(p), udf);
udf->udf_symbol = symbol = MSC_symbol(SYM_udf, p, strlen(p), (CTX) udf);
HSH_insert(symbol);
udf->udf_length = ARG.RDB$FIELD_LENGTH;
@ -1609,9 +1619,9 @@ void MET_load_hash_table( DBB dbb)
}
END_FOR ON_ERROR END_ERROR;
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
if (handle2)
gds__release_request(gds__status, GDS_REF(handle2));
gds__release_request(gds__status, (void**) GDS_REF(handle2));
/* Pick up all Collation names, might have several collations
* for a given character set.
@ -1629,7 +1639,7 @@ void MET_load_hash_table( DBB dbb)
strcpy(iname->intlsym_name, p);
iname->intlsym_database = dbb;
iname->intlsym_symbol = symbol =
MSC_symbol(SYM_collate, p, strlen(p), iname);
MSC_symbol(SYM_collate, p, strlen(p), (CTX) iname);
HSH_insert(symbol);
iname->intlsym_type = INTLSYM_collation;
iname->intlsym_flags = 0;
@ -1653,7 +1663,7 @@ void MET_load_hash_table( DBB dbb)
p = TYPE.RDB$TYPE_NAME;
length = symbol_length(p);
p[length] = 0;
symbol = MSC_symbol(SYM_collate, p, length, iname);
symbol = MSC_symbol(SYM_collate, p, length, (CTX) iname);
HSH_insert(symbol);
END_FOR ON_ERROR END_ERROR;
@ -1661,9 +1671,9 @@ void MET_load_hash_table( DBB dbb)
/* assume pre V4 database, no collations */
END_ERROR;
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
if (handle2)
gds__release_request(gds__status, GDS_REF(handle2));
gds__release_request(gds__status, (void**) GDS_REF(handle2));
/* Now pick up all character set names - with the subtype set to
* the type of the default collation for the character set.
@ -1679,7 +1689,7 @@ void MET_load_hash_table( DBB dbb)
strcpy(iname->intlsym_name, p);
iname->intlsym_database = dbb;
iname->intlsym_symbol = symbol =
MSC_symbol(SYM_charset, p, strlen(p), iname);
MSC_symbol(SYM_charset, p, strlen(p), (CTX) iname);
HSH_insert(symbol);
iname->intlsym_type = INTLSYM_collation;
iname->intlsym_flags = 0;
@ -1701,7 +1711,7 @@ void MET_load_hash_table( DBB dbb)
p = TYPE.RDB$TYPE_NAME;
length = symbol_length(p);
p[length] = 0;
symbol = MSC_symbol(SYM_charset, p, length, iname);
symbol = MSC_symbol(SYM_charset, p, length, (CTX) iname);
HSH_insert(symbol);
END_FOR ON_ERROR END_ERROR;
@ -1709,9 +1719,9 @@ void MET_load_hash_table( DBB dbb)
/* assume pre V4 database, no character sets */
END_ERROR;
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
if (handle2)
gds__release_request(gds__status, GDS_REF(handle2));
gds__release_request(gds__status, (void**) GDS_REF(handle2));
/* Pick up name of database default character set for SQL */
@ -1729,19 +1739,19 @@ void MET_load_hash_table( DBB dbb)
/* Assume V3 Db, no default charset */
END_ERROR;
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
/* Pick up all generators for the database */
FOR(REQUEST_HANDLE handle)
X IN RDB$GENERATORS
symbol = MSC_symbol(SYM_generator, X.RDB$GENERATOR_NAME,
symbol_length(X.RDB$GENERATOR_NAME), dbb);
symbol_length(X.RDB$GENERATOR_NAME), (CTX) dbb);
HSH_insert(symbol);
END_FOR ON_ERROR END_ERROR;
gds__release_request(gds__status, GDS_REF(handle));
gds__release_request(gds__status, (void**) GDS_REF(handle));
/* now that we have attached to the database, resolve the character set
* request (if any) (and if we can)
@ -1749,7 +1759,7 @@ void MET_load_hash_table( DBB dbb)
if (dbb->dbb_c_lc_ctype) {
if (get_intl_char_subtype
(&dbb->dbb_char_subtype, dbb->dbb_c_lc_ctype,
(&dbb->dbb_char_subtype, (UCHAR*) dbb->dbb_c_lc_ctype,
strlen(dbb->dbb_c_lc_ctype), dbb))
dbb->dbb_know_subtype = 1;
else {
@ -1780,7 +1790,7 @@ FLD MET_make_field(SCHAR * name,
field->fld_length = length;
field->fld_dtype = dtype;
field->fld_symbol = symbol =
MSC_symbol(SYM_field, name, strlen(name), field);
MSC_symbol(SYM_field, name, strlen(name), (CTX) field);
if (insert_flag)
HSH_insert(symbol);
@ -1798,7 +1808,7 @@ IND MET_make_index(SCHAR * name)
IND index;
index = (IND) ALLOC(IND_LEN);
index->ind_symbol = MSC_symbol(SYM_index, name, strlen(name), index);
index->ind_symbol = MSC_symbol(SYM_index, name, strlen(name), (CTX) index);
return index;
}
@ -1815,7 +1825,7 @@ REL MET_make_relation(SCHAR * name)
relation = (REL) ALLOC(REL_LEN);
relation->rel_symbol =
MSC_symbol(SYM_relation, name, strlen(name), relation);
MSC_symbol(SYM_relation, name, strlen(name), (CTX) relation);
return relation;
}
@ -1860,7 +1870,7 @@ BOOLEAN MET_type(FLD field, TEXT * string, SSHORT * ptr)
type->typ_field = field;
*ptr = type->typ_value = X.RDB$TYPE;
type->typ_symbol = symbol =
MSC_symbol(SYM_type, string, strlen(string), type);
MSC_symbol(SYM_type, string, strlen(string), (CTX) type);
HSH_insert(symbol);
return TRUE;
} END_FOR ON_ERROR END_ERROR;
@ -2097,7 +2107,7 @@ static int resolve_charset_and_collation(
/* Assume V3 DB, without default character set */
END_ERROR;
gds__release_request(gds__status, GDS_REF(request));
gds__release_request(gds__status, (void**) GDS_REF(request));
if (charset == NULL)
charset = (UCHAR *) DEFAULT_CHARACTER_SET_NAME;
@ -2118,7 +2128,7 @@ static int resolve_charset_and_collation(
END_FOR ON_ERROR END_ERROR;
gds__release_request(gds__status, GDS_REF(request));
gds__release_request(gds__status, (void**) GDS_REF(request));
return (found);
}
@ -2133,7 +2143,7 @@ static int resolve_charset_and_collation(
*id = MAP_CHARSET_TO_TTYPE(CS.RDB$CHARACTER_SET_ID);
END_FOR ON_ERROR END_ERROR;
gds__release_request(gds__status, GDS_REF(request));
gds__release_request(gds__status, (void**) GDS_REF(request));
return (found);
}
@ -2151,7 +2161,7 @@ static int resolve_charset_and_collation(
*id = MAP_CHARSET_TO_TTYPE(CS.RDB$CHARACTER_SET_ID);
END_FOR ON_ERROR END_ERROR;
gds__release_request(gds__status, GDS_REF(request));
gds__release_request(gds__status, (void**) GDS_REF(request));
return (found);
}
@ -2162,7 +2172,7 @@ static int resolve_charset_and_collation(
* Compute significant length of symbol.
*/
static symbol_length( TEXT * string)
static int symbol_length( TEXT * string)
{
TEXT *p;
int len;
@ -2185,7 +2195,7 @@ static symbol_length( TEXT * string)
* length of string.
*/
static upcase( TEXT * from, TEXT * to)
static int upcase( TEXT * from, TEXT * to)
{
TEXT *p, *end, c;

978
src/gpre/gpre_meta_boot.cpp Normal file
View File

@ -0,0 +1,978 @@
/*
* tab=4
*____________________________________________________________
*
* PROGRAM: C preprocessor
* MODULE: gpre_meta.e
* DESCRIPTION: Meta data interface to system
*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*
*
*____________________________________________________________
*
* $Id: gpre_meta_boot.cpp,v 1.1 2001-07-12 06:32:02 bellardo Exp $
*/
#include <string.h>
#include "../include/jrd/gds.h"
#include "../gpre/gpre.h"
#include "../jrd/license.h"
#include "../gpre/parse.h"
#include "../jrd/intl.h"
#include "../gpre/gpre_proto.h"
#include "../gpre/hsh_proto.h"
#include "../gpre/jrdme_proto.h"
#include "../gpre/gpre_meta.h"
#include "../gpre/msc_proto.h"
#include "../gpre/par_proto.h"
#include "../jrd/constants.h"
#include "../jrd/gds_proto.h"
#define MAX_USER_LENGTH 33
#define MAX_PASSWORD_LENGTH 33
extern enum lang_t sw_language;
extern USHORT sw_cstring;
extern DBB isc_databases;
static CONST UCHAR blr_bpb[] = { isc_bpb_version1,
isc_bpb_source_type, 1, BLOB_blr,
isc_bpb_target_type, 1, BLOB_blr
};
#ifdef SCROLLABLE_CURSORS
static SCHAR db_version_info[] = { gds__info_base_level };
#endif
static SLONG array_size(FLD);
static void get_array(DBB, TEXT *, FLD);
static int get_intl_char_subtype(SSHORT *, UCHAR *, USHORT, DBB);
static int resolve_charset_and_collation(SSHORT *, UCHAR *, UCHAR *);
static int symbol_length(TEXT *);
static int upcase(TEXT *, TEXT *);
/*____________________________________________________________
*
* Lookup a field by name in a context.
* If found, return field block. If not, return NULL.
*/
FLD MET_context_field( CTX context, char *string)
{
SYM symbol;
PRC procedure;
FLD field;
SCHAR name[NAME_SIZE];
SSHORT length;
if (context->ctx_relation) {
return (MET_field(context->ctx_relation, string));
}
if (!context->ctx_procedure) {
return NULL;
}
strcpy(name, string);
procedure = context->ctx_procedure;
/* At this point the procedure should have been scanned, so all
* its fields are in the symbol table.
*/
field = NULL;
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym) {
if (symbol->sym_type == SYM_field &&
(field = (FLD) symbol->sym_object) &&
field->fld_procedure == procedure)
{
return field;
}
}
return field;
}
/*____________________________________________________________
*
* Initialize meta data access to database. If the
* database can't be opened, return FALSE.
*/
BOOLEAN MET_database(DBB dbb, BOOLEAN print_version)
{
SCHAR dpb[MAX_PASSWORD_LENGTH + MAX_USER_LENGTH + 5], *d, *p;
SCHAR buffer[16], *data;
SSHORT l;
static CONST UCHAR sql_version_info[] = { isc_info_base_level,
isc_info_ods_version,
isc_info_db_sql_dialect,
isc_info_end
};
/*
** Each info item requested will return
**
** 1 byte for the info item tag
** 2 bytes for the length of the information that follows
** 1 to 4 bytes of integer information
**
** isc_info_end will not have a 2-byte length - which gives us
** some padding in the buffer.
*/
UCHAR sql_buffer[sizeof(sql_version_info) * (1 + 2 + 4)];
UCHAR *ptr;
#ifndef REQUESTER
if (sw_language == lang_internal) {
JRDMET_init(dbb);
return TRUE;
}
#endif
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Lookup a domain by name.
* Initialize the size of the field.
*/
USHORT MET_domain_lookup(REQ request, FLD field, char *string)
{
SYM symbol;
DBB dbb;
SCHAR name[NAME_SIZE];
FLD d_field;
SSHORT length;
SSHORT found = FALSE;
strcpy(name, string);
/* Lookup domain. If we find it in the hash table, and it is not the
* field we a currently looking at, use it. Else look it up from the
* database.
*/
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_field) &&
((d_field = (FLD) symbol->sym_object) && (d_field != field))) {
field->fld_length = d_field->fld_length;
field->fld_scale = d_field->fld_scale;
field->fld_sub_type = d_field->fld_sub_type;
field->fld_dtype = d_field->fld_dtype;
field->fld_ttype = d_field->fld_ttype;
field->fld_charset_id = d_field->fld_charset_id;
field->fld_collate_id = d_field->fld_collate_id;
field->fld_char_length = d_field->fld_char_length;
return TRUE;
}
if (!request)
return FALSE;
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Gets the default value for a domain of an existing table
*/
BOOLEAN MET_get_domain_default(DBB dbb,
TEXT * domain_name,
TEXT * buffer, USHORT buff_length)
{
SLONG *DB, *gds__trans;
SCHAR name[NAME_SIZE];
SSHORT length;
BOOLEAN has_default;
ISC_STATUS status_vect[20];
isc_blob_handle blob_handle = NULL;
ISC_QUAD *blob_id;
TEXT *ptr_in_buffer;
STATUS stat;
strcpy(name, domain_name);
has_default = FALSE;
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Gets the default value for a column of an existing table.
* Will check the default for the column of the table, if that is
* not present, will check for the default of the relevant domain
*
* The default blr is returned in buffer. The blr is of the form
* blr_version4 blr_literal ..... blr_eoc
*
* Reads the system tables RDB$FIELDS and RDB$RELATION_FIELDS.
*/
BOOLEAN MET_get_column_default(REL relation,
TEXT * column_name,
TEXT * buffer, USHORT buff_length)
{
DBB dbb;
SLONG *DB, *gds__trans;
SCHAR name[NAME_SIZE];
SSHORT length;
BOOLEAN has_default;
ISC_STATUS status_vect[20];
isc_blob_handle blob_handle = NULL;
ISC_QUAD *blob_id;
TEXT *ptr_in_buffer;
STATUS stat;
strcpy(name, column_name);
has_default = FALSE;
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Lookup the fields for the primary key
* index on a relation, returning a list
* of the fields.
*/
LLS MET_get_primary_key(DBB dbb, TEXT * relation_name)
{
LLS fields = NULL, *ptr_fields;
SLONG *DB, *gds__trans;
SCHAR name[NAME_SIZE];
STR field_name;
TEXT *tmp;
strcpy(name, relation_name);
if (dbb == NULL)
return NULL;
if ((dbb->dbb_handle == NULL) && !MET_database(dbb, FALSE))
CPR_exit(FINI_ERROR);
assert(dbb->dbb_transaction == NULL);
gds__trans = NULL;
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Lookup a field by name in a relation.
* If found, return field block. If not, return NULL.
*/
FLD MET_field(REL relation, char *string)
{
SYM symbol;
FLD field;
DBB dbb;
SCHAR name[NAME_SIZE];
SSHORT length;
strcpy(name, string);
length = strlen(name);
/* Lookup field. If we find it, nifty. If not, look it up in the
* database.
*/
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if (symbol->sym_type == SYM_keyword &&
symbol->sym_keyword == (int) KW_DBKEY) return relation->rel_dbkey;
else if (symbol->sym_type == SYM_field &&
(field = (FLD) symbol->sym_object) &&
field->fld_relation == relation) return field;
if (sw_language == lang_internal)
return NULL;
assert(0);
return NULL;
}
/*____________________________________________________________
*
* Return a list of the fields in a relation
*/
NOD MET_fields(CTX context)
{
DBB dbb;
FLD field;
LLS stack;
NOD node, field_node;
REF reference;
PRC procedure;
REL relation;
TEXT *p;
int count;
if (procedure = context->ctx_procedure) {
node = MAKE_NODE(nod_list, procedure->prc_out_count);
count = 0;
for (field = procedure->prc_outputs; field; field = field->fld_next) {
reference = (REF) ALLOC(REF_LEN);
reference->ref_field = field;
reference->ref_context = context;
field_node = MSC_unary(nod_field, (NOD)reference);
node->nod_arg[field->fld_position] = field_node;
count++;
}
return node;
}
relation = context->ctx_relation;
if (relation->rel_meta) {
for (count = 0, field = relation->rel_fields; field;
field = field->fld_next) count++;
node = MAKE_NODE(nod_list, count);
count = 0;
for (field = relation->rel_fields; field; field = field->fld_next) {
reference = (REF) ALLOC(REF_LEN);
reference->ref_field = field;
reference->ref_context = context;
field_node = MSC_unary(nod_field, (NOD)reference);
node->nod_arg[field->fld_position] = field_node;
count++;
}
return node;
}
if (sw_language == lang_internal)
return NULL;
assert(0);
return NULL;
}
/*____________________________________________________________
*
* Shutdown all attached databases.
*/
void MET_fini( DBB end)
{
DBB dbb;
return;
}
/*____________________________________________________________
*
* Lookup a generator by name.
* If found, return string. If not, return NULL.
*/
SCHAR *MET_generator(TEXT * string, DBB dbb)
{
SYM symbol;
SCHAR *gen_name = NULL;
SCHAR name[NAME_SIZE];
SSHORT length;
strcpy(name, string);
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if ((symbol->sym_type == SYM_generator) &&
(dbb == (DBB) (symbol->sym_object))) return symbol->sym_string;
return NULL;
}
/*____________________________________________________________
*
* Compute internal datatype and length based on system relation field values.
*/
USHORT MET_get_dtype(USHORT blr_dtype, USHORT sub_type, USHORT * length)
{
USHORT l, dtype;
l = *length;
switch (blr_dtype) {
case blr_varying:
case blr_text:
dtype = dtype_text;
if (sw_cstring && !SUBTYPE_ALLOWS_NULLS(sub_type)) {
++l;
dtype = dtype_cstring;
}
break;
case blr_cstring:
dtype = dtype_cstring;
++l;
break;
case blr_short:
dtype = dtype_short;
l = sizeof(SSHORT);
break;
case blr_long:
dtype = dtype_long;
l = sizeof(SLONG);
break;
case blr_quad:
dtype = dtype_quad;
l = sizeof(GDS__QUAD);
break;
case blr_float:
dtype = dtype_real;
l = sizeof(float);
break;
case blr_double:
dtype = dtype_double;
l = sizeof(double);
break;
case blr_blob:
dtype = dtype_blob;
l = sizeof(GDS__QUAD);
break;
/** Begin sql date/time/timestamp **/
case blr_sql_date:
dtype = dtype_sql_date;
l = sizeof(ISC_DATE);
break;
case blr_sql_time:
dtype = dtype_sql_time;
l = sizeof(ISC_TIME);
break;
case blr_timestamp:
dtype = dtype_timestamp;
l = sizeof(ISC_TIMESTAMP);
break;
/** Begin sql date/time/timestamp **/
case blr_int64:
dtype = dtype_int64;
l = sizeof(ISC_INT64);
break;
default:
CPR_error("datatype not supported");
}
*length = l;
return dtype;
}
/*____________________________________________________________
*
* Lookup a procedure (represented by a token) in a database.
* Return a procedure block (if name is found) or NULL.
*
* This function has been cloned into MET_get_udf
*/
PRC MET_get_procedure(DBB dbb, TEXT * string, TEXT * owner_name)
{
SYM symbol;
FLD *fld_list, field;
PRC procedure;
USHORT length, type, count;
SCHAR name[NAME_SIZE], owner[NAME_SIZE];
strcpy(name, string);
strcpy(owner, owner_name);
procedure = NULL;
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if (symbol->sym_type == SYM_procedure &&
(procedure = (PRC) symbol->sym_object) &&
procedure->prc_database == dbb &&
(!owner[0] ||
(procedure->prc_owner
&& !strcmp(owner, procedure->prc_owner->sym_string)))) break;
if (!procedure)
return NULL;
if (procedure->prc_flags & PRC_scanned)
return procedure;
assert(0);
return NULL;
}
/*____________________________________________________________
*
* Lookup a relation (represented by a token) in a database.
* Return a relation block (if name is found) or NULL.
*/
REL MET_get_relation(DBB dbb, TEXT * string, TEXT * owner_name)
{
SYM symbol;
REL relation;
SCHAR name[NAME_SIZE], owner[NAME_SIZE];
strcpy(name, string);
strcpy(owner, owner_name);
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if (symbol->sym_type == SYM_relation &&
(relation = (REL) symbol->sym_object) &&
relation->rel_database == dbb &&
(!owner[0] ||
(relation->rel_owner
&& !strcmp(owner,
relation->rel_owner->sym_string)))) return relation;
return NULL;
}
/*____________________________________________________________
*
*/
INTLSYM MET_get_text_subtype(SSHORT ttype)
{
INTLSYM p;
for (p = text_subtypes; p; p = p->intlsym_next)
if (p->intlsym_ttype == ttype)
return p;
return NULL;
}
/*____________________________________________________________
*
* Lookup a udf (represented by a token) in a database.
* Return a udf block (if name is found) or NULL.
*
* This function was cloned from MET_get_procedure
*/
UDF MET_get_udf(DBB dbb, TEXT * string)
{
SYM symbol;
FLD field;
UDF udf;
USHORT length, count;
SCHAR name[NAME_SIZE];
strcpy(name, string);
udf = NULL;
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if (symbol->sym_type == SYM_udf &&
(udf = (UDF) symbol->sym_object) && udf->udf_database == dbb)
break;
if (!udf)
return NULL;
assert(0);
return NULL;
}
/*____________________________________________________________
*
* Return TRUE if the passed view_name represents a
* view with the passed relation as a base table
* (the relation could be an alias).
*/
REL MET_get_view_relation(REQ request,
char *view_name,
char *relation_or_alias, USHORT level)
{
DBB dbb;
TEXT *p;
REL relation;
assert(0);
return NULL;
}
/*____________________________________________________________
*
* Lookup an index for a database.
* Return an index block (if name is found) or NULL.
*/
IND MET_index(DBB dbb, TEXT * string)
{
SYM symbol;
IND index;
SCHAR name[NAME_SIZE];
SSHORT length;
strcpy(name, string);
length = strlen(name);
for (symbol = HSH_lookup(name); symbol; symbol = symbol->sym_homonym)
if (symbol->sym_type == SYM_index &&
(index = (IND) symbol->sym_object) &&
index->ind_relation->rel_database == dbb)
return index;
if (sw_language == lang_internal)
return NULL;
assert(0);
return NULL;
}
/*____________________________________________________________
*
* Load all of the relation names
* and user defined function names
* into the symbol (hash) table.
*/
void MET_load_hash_table( DBB dbb)
{
REL relation;
PRC procedure;
SYM symbol;
FLD dbkey;
UDF udf;
TEXT *p;
int *handle, *handle2;
USHORT post_v3_flag;
SLONG length;
INTLSYM iname;
/* If this is an internal ISC access method invocation, don't do any of this
* stuff
*/
if (sw_language == lang_internal)
return;
assert(0);
return;
}
/*____________________________________________________________
*
* Make a field symbol.
*/
FLD MET_make_field(SCHAR * name,
SSHORT dtype, SSHORT length, BOOLEAN insert_flag)
{
FLD field;
SYM symbol;
field = (FLD) ALLOC(FLD_LEN);
field->fld_length = length;
field->fld_dtype = dtype;
field->fld_symbol = symbol =
MSC_symbol(SYM_field, name, strlen(name), (CTX)field);
if (insert_flag)
HSH_insert(symbol);
return field;
}
/*____________________________________________________________
*
* Make an index symbol.
*/
IND MET_make_index(SCHAR * name)
{
IND index;
index = (IND) ALLOC(IND_LEN);
index->ind_symbol = MSC_symbol(SYM_index, name, strlen(name), (CTX)index);
return index;
}
/*____________________________________________________________
*
* Make an relation symbol.
*/
REL MET_make_relation(SCHAR * name)
{
REL relation;
relation = (REL) ALLOC(REL_LEN);
relation->rel_symbol =
MSC_symbol(SYM_relation, name, strlen(name), (CTX)relation);
return relation;
}
/*____________________________________________________________
*
* Lookup a type name for a field.
*/
BOOLEAN MET_type(FLD field, TEXT * string, SSHORT * ptr)
{
REL relation;
DBB dbb;
SYM symbol;
TYP type;
UCHAR buffer[32]; /* BASED ON RDB$TYPES.RDB$TYPE_NAME */
UCHAR *p;
for (symbol = HSH_lookup(string); symbol; symbol = symbol->sym_homonym)
if (symbol->sym_type == SYM_type &&
(type = (TYP) symbol->sym_object) &&
(!type->typ_field || type->typ_field == field)) {
*ptr = type->typ_value;
return TRUE;
}
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Lookup an index for a database.
*
* Return: TRUE if the trigger exists
* FALSE otherwise
*/
BOOLEAN MET_trigger_exists(DBB dbb, TEXT * trigger_name)
{
SCHAR name[NAME_SIZE];
SSHORT length;
strcpy(name, trigger_name);
assert(0);
return FALSE;
}
/*____________________________________________________________
*
* Compute and return the size of the array.
*/
static SLONG array_size( FLD field)
{
ARY array_block;
DIM dimension;
SLONG count;
array_block = field->fld_array_info;
count = field->fld_array->fld_length;
for (dimension = array_block->ary_dimension; dimension;
dimension = dimension->dim_next) count =
count * (dimension->dim_upper - dimension->dim_lower + 1);
return count;
}
/*____________________________________________________________
*
* See if field is array.
*/
static void get_array( DBB dbb, TEXT * field_name, FLD field)
{
FLD sub_field;
ARY array_block;
DIM dimension_block, last_dimension_block;
assert(0);
return;
}
/*____________________________________________________________
*
* Character types can be specified as either:
* b) A POSIX style locale name "<collation>.<characterset>"
* or
* c) A simple <characterset> name (using default collation)
* d) A simple <collation> name (use charset for collation)
*
* Given an ASCII7 string which could be any of the above, try to
* resolve the name in the order b, c, d.
* b) is only tried iff the name contains a period.
* (in which case c) and d) are not tried).
*
* Return:
* 1 if no errors (and *id is set).
* 0 if the name could not be resolved.
*/
static int get_intl_char_subtype(
SSHORT * id,
UCHAR * name, USHORT length, DBB dbb)
{
UCHAR buffer[32]; /* BASED ON RDB$COLLATION_NAME */
UCHAR *p;
UCHAR *period = NULL;
UCHAR *end_name;
int found_it = 0;
assert(id != NULL);
assert(name != NULL);
assert(dbb != NULL);
assert(0);
return (0);
}
/*____________________________________________________________
*
* Given ASCII7 name of charset & collation
* resolve the specification to a ttype (id) that implements
* it.
*
* Inputs:
* (charset)
* ASCII7z name of characterset.
* NULL (implying unspecified) means use the character set
* for defined for (collation).
*
* (collation)
* ASCII7z name of collation.
* NULL means use the default collation for (charset).
*
* Outputs:
* (*id)
* Set to subtype specified by this name.
*
* Return:
* 1 if no errors (and *id is set).
* 0 if either name not found.
* or if names found, but the collation isn't for the specified
* character set.
*/
static int resolve_charset_and_collation(
SSHORT * id,
UCHAR * charset, UCHAR * collation)
{
int found = 0;
int *request = NULL;
assert(id != NULL);
assert(0);
return (0);
}
/*____________________________________________________________
*
* Compute significant length of symbol.
*/
static int symbol_length( TEXT * string)
{
TEXT *p;
int len;
len = strlen(string);
p = string + (len - 1);
for (; p >= string && *p == ' '; p--);
if (p < string)
return 0;
++p;
return p - string;
}
/*____________________________________________________________
*
* Upcase a string into another string. Return
* length of string.
*/
static int upcase( TEXT * from, TEXT * to)
{
TEXT *p, *end, c;
p = to;
end = to + NAME_SIZE;
while (p < end && (c = *from++)) {
*p++ = UPPER(c);
#ifdef JPN_SJIS
/* Do not upcase second byte of a sjis kanji character */
if (SJIS1(c) && p < end && (c = *from++))
*p++ = c;
#endif
}
*p = 0;
return p - to;
}
STATUS API_ROUTINE isc_print_blr(SCHAR * blr,
void (*callback) (), void *callback_argument, SSHORT language)
{
return gds__print_blr((UCHAR *) blr, callback,
(SCHAR *) callback_argument, language);
}
void DLL_EXPORT CVT_move (struct dsc * a, struct dsc * b, FPTR_VOID c)
{
assert(0);
/* Not available in boot_gpre */
}

787
src/gpre/int_cxx.cpp Normal file
View File

@ -0,0 +1,787 @@
//____________________________________________________________
//
// PROGRAM: C preprocess
// MODULE: int.cpp
// DESCRIPTION: Code generate for internal JRD modules
//
// The contents of this file are subject to the Interbase Public
// License Version 1.0 (the "License"); you may not use this file
// except in compliance with the License. You may obtain a copy
// of the License at http://www.Inprise.com/IPL.html
//
// Software distributed under the License is distributed on an
// "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
// or implied. See the License for the specific language governing
// rights and limitations under the License.
//
// The Original Code was created by Inprise Corporation
// and its predecessors. Portions created by Inprise Corporation are
// Copyright (C) Inprise Corporation.
//
// All Rights Reserved.
// Contributor(s): ______________________________________.
// TMN (Mike Nordell) 11.APR.2001 - Reduce compiler warnings in generated code
//
//
//____________________________________________________________
//
// $Id: int_cxx.cpp,v 1.1 2001-07-12 06:32:02 bellardo Exp $
//
#include "../jrd/ib_stdio.h"
#include "../jrd/common.h"
#include <stdarg.h>
#include "../include/jrd/gds.h"
#include "../gpre/gpre.h"
#include "../gpre/gpre_proto.h"
#include "../gpre/lang_proto.h"
#include "../jrd/gds_proto.h"
static void align(int);
static void asgn_from(REF, int);
static void asgn_to(REF);
static void gen_at_end(ACT, int);
static int gen_blr(int *, int, TEXT *);
static void gen_compile(REQ, int);
static void gen_database(ACT, int);
static void gen_emodify(ACT, int);
static void gen_estore(ACT, int);
static void gen_endfor(ACT, int);
static void gen_erase(ACT, int);
static void gen_for(ACT, int);
static TEXT *gen_name(TEXT *, REF);
static void gen_raw(REQ);
static void gen_receive(REQ, POR);
static void gen_request(REQ);
static void gen_routine(ACT, int);
static void gen_s_end(ACT, int);
static void gen_s_fetch(ACT, int);
static void gen_s_start(ACT, int);
static void gen_send(REQ, POR, int);
static void gen_start(REQ, POR, int);
static void gen_type(ACT, int);
static void gen_variable(ACT, int);
static void make_port(POR, int);
static void printa(int, TEXT *, ...);
static int first_flag = 0;
#define INDENT 3
#define BEGIN printa (column, "{")
#define END printa (column, "}")
#if !(defined JPN_SJIS || defined JPN_EUC)
#define GDS_VTOV "gds__vtov"
#define JRD_VTOF "jrd_vtof"
#define VTO_CALL "%s ((SCHAR*)%s, (SCHAR*)%s, %d);"
#else
#define GDS_VTOV "gds__vtov2"
#define JRD_VTOF "jrd_vtof2"
#define VTO_CALL "%s (%s, %s, %d, %d);"
#endif
//____________________________________________________________
//
//
void INT_CXX_action( ACT action, int column)
{
// Put leading braces where required
switch (action->act_type) {
case ACT_for:
case ACT_insert:
case ACT_modify:
case ACT_store:
case ACT_s_fetch:
case ACT_s_start:
BEGIN;
align(column);
}
switch (action->act_type) {
case ACT_at_end:
gen_at_end(action, column);
return;
case ACT_b_declare:
case ACT_database:
gen_database(action, column);
return;
case ACT_endfor:
gen_endfor(action, column);
break;
case ACT_endmodify:
gen_emodify(action, column);
break;
case ACT_endstore:
gen_estore(action, column);
break;
case ACT_erase:
gen_erase(action, column);
return;
case ACT_for:
gen_for(action, column);
return;
case ACT_hctef:
break;
case ACT_insert:
case ACT_routine:
gen_routine(action, column);
return;
case ACT_s_end:
gen_s_end(action, column);
return;
case ACT_s_fetch:
gen_s_fetch(action, column);
return;
case ACT_s_start:
gen_s_start(action, column);
break;
case ACT_type:
gen_type(action, column);
return;
case ACT_variable:
gen_variable(action, column);
return;
default:
return;
}
// Put in a trailing brace for those actions still with us
END;
}
//____________________________________________________________
//
// Align output to a specific column for output.
//
static void align( int column)
{
int i;
if (column < 0)
return;
ib_putc('\n', out_file);
for (i = column / 8; i; --i)
ib_putc('\t', out_file);
for (i = column % 8; i; --i)
ib_putc(' ', out_file);
}
//____________________________________________________________
//
// Build an assignment from a host language variable to
// a port variable.
//
static void asgn_from( REF reference, int column)
{
FLD field;
TEXT *value, variable[20], temp[20];
for (; reference; reference = reference->ref_next) {
field = reference->ref_field;
align(column);
gen_name(variable, reference);
if (reference->ref_source)
value = gen_name(temp, reference->ref_source);
else
value = reference->ref_value;
/* To avoid chopping off a double byte kanji character in between
the two bytes, generate calls to gds__ftof2 gds$_vtof2,
gds$_vtov2 and jrd_vtof2 wherever necessary */
if (!field || field->fld_dtype == dtype_text)
ib_fprintf(out_file, VTO_CALL,
JRD_VTOF,
value, variable, field->fld_length, sw_interp);
else if (!field || field->fld_dtype == dtype_cstring)
ib_fprintf(out_file, VTO_CALL,
GDS_VTOV,
value, variable, field->fld_length, sw_interp);
else
ib_fprintf(out_file, "%s = %s;", variable, value);
}
}
//____________________________________________________________
//
// Build an assignment to a host language variable from
// a port variable.
//
static void asgn_to( REF reference)
{
FLD field;
REF source;
TEXT s[20];
source = reference->ref_friend;
field = source->ref_field;
gen_name(s, source);
#if (! (defined JPN_SJIS || defined JPN_EUC) )
if (!field || field->fld_dtype == dtype_text)
ib_fprintf(out_file, "gds__ftov (%s, %d, %s, sizeof (%s));",
s,
field->fld_length,
reference->ref_value, reference->ref_value);
else if (!field || field->fld_dtype == dtype_cstring)
ib_fprintf(out_file, "gds__vtov ((SCHAR*)%s, (SCHAR*)%s, sizeof (%s));",
s, reference->ref_value, reference->ref_value);
#else
// To avoid chopping off a double byte kanji character in between
// the two bytes, generate calls to gds__ftof2 gds$_vtof2 and
// gds$_vtov2 wherever necessary
if (!field || field->fld_dtype == dtype_text)
ib_fprintf(out_file, "gds__ftov2 (%s, %d, %s, sizeof (%s), %d);",
s,
field->fld_length,
reference->ref_value, reference->ref_value, sw_interp);
else if (!field || field->fld_dtype == dtype_cstring)
ib_fprintf(out_file, "gds__vtov2 (%s, %s, sizeof (%s), %d);",
s, reference->ref_value, reference->ref_value, sw_interp);
#endif
else
ib_fprintf(out_file, "%s = %s;", reference->ref_value, s);
}
//____________________________________________________________
//
// Generate code for AT END clause of FETCH.
//
static void gen_at_end( ACT action, int column)
{
REQ request;
TEXT s[20];
request = action->act_request;
printa(column, "if (!%s) ", gen_name(s, request->req_eof));
}
//____________________________________________________________
//
// Callback routine for BLR pretty printer.
//
static int gen_blr( int *user_arg, int offset, TEXT * string)
{
ib_fprintf(out_file, "%s\n", string);
return TRUE;
}
//____________________________________________________________
//
// Generate text to compile a request.
//
static void gen_compile( REQ request, int column)
{
DBB db;
SYM symbol;
column += INDENT;
db = request->req_database;
symbol = db->dbb_name;
ib_fprintf(out_file, "if (!%s)", request->req_handle);
align(column);
ib_fprintf(out_file,
"%s = (BLK) CMP_compile2 (tdbb, (UCHAR*)jrd_%d, TRUE);",
request->req_handle, request->req_ident);
}
//____________________________________________________________
//
// Generate insertion text for the database statement.
//
static void gen_database( ACT action, int column)
{
REQ request;
if (first_flag++ != 0)
return;
align(0);
for (request = requests; request; request = request->req_next)
gen_request(request);
}
//____________________________________________________________
//
// Generate substitution text for END_MODIFY.
//
static void gen_emodify( ACT action, int column)
{
UPD modify;
REF reference, source;
FLD field;
TEXT s1[20], s2[20];
modify = (UPD) action->act_object;
for (reference = modify->upd_port->por_references; reference;
reference = reference->ref_next) {
if (!(source = reference->ref_source))
continue;
field = reference->ref_field;
align(column);
#if (! (defined JPN_SJIS || defined JPN_EUC) )
if (field->fld_dtype == dtype_text)
ib_fprintf(out_file, "jrd_ftof (%s, %d, %s, %d);",
gen_name(s1, source),
field->fld_length,
gen_name(s2, reference), field->fld_length);
else if (field->fld_dtype == dtype_cstring)
ib_fprintf(out_file, "gds__vtov ((SCHAR*)%s, (SCHAR*)%s, %d);",
gen_name(s1, source),
gen_name(s2, reference), field->fld_length);
#else
/* To avoid chopping off a double byte kanji character in between
the two bytes, generate calls to gds__ftof2 gds$_vtof2 and
gds$_vtov2 wherever necessary
Cannot find where jrd_fof is defined. It needs Japanization too */
if (field->fld_dtype == dtype_text)
ib_fprintf(out_file, "jrd_ftof (%s, %d, %s, %d);",
gen_name(s1, source),
field->fld_length,
gen_name(s2, reference), field->fld_length);
else if (field->fld_dtype == dtype_cstring)
ib_fprintf(out_file, "gds__vtov2 (%s, %s, %d, %d);",
gen_name(s1, source),
gen_name(s2, reference), field->fld_length, sw_interp);
#endif
else
ib_fprintf(out_file, "%s = %s;",
gen_name(s1, reference), gen_name(s2, source));
}
gen_send(action->act_request, modify->upd_port, column);
}
//____________________________________________________________
//
// Generate substitution text for END_STORE.
//
static void gen_estore( ACT action, int column)
{
REQ request;
request = action->act_request;
align(column);
gen_compile(request, column);
gen_start(request, request->req_primary, column);
}
//____________________________________________________________
//
// Generate definitions associated with a single request.
//
static void gen_endfor( ACT action, int column)
{
REQ request;
request = action->act_request;
column += INDENT;
if (request->req_sync)
gen_send(request, request->req_sync, column);
END;
}
//____________________________________________________________
//
// Generate substitution text for ERASE.
//
static void gen_erase( ACT action, int column)
{
UPD erase;
erase = (UPD) action->act_object;
gen_send(erase->upd_request, erase->upd_port, column);
}
//____________________________________________________________
//
// Generate substitution text for FOR statement.
//
static void gen_for( ACT action, int column)
{
REQ request;
TEXT s[20];
gen_s_start(action, column);
align(column);
request = action->act_request;
ib_fprintf(out_file, "while (1)");
column += INDENT;
BEGIN;
align(column);
gen_receive(action->act_request, request->req_primary);
align(column);
ib_fprintf(out_file, "if (!%s) break;", gen_name(s, request->req_eof));
}
//____________________________________________________________
//
// Generate a name for a reference. Name is constructed from
// port and parameter idents.
//
static TEXT *gen_name( TEXT * string, REF reference)
{
sprintf(string, "jrd_%d.jrd_%d",
reference->ref_port->por_ident, reference->ref_ident);
return string;
}
//____________________________________________________________
//
// Generate BLR in raw, numeric form. Ugly but dense.
//
static void gen_raw( REQ request)
{
UCHAR *blr, c;
TEXT buffer[80], *p;
int blr_length;
blr = request->req_blr;
blr_length = request->req_length;
p = buffer;
align(0);
while (--blr_length) {
c = *blr++;
if ((c >= 'A' && c <= 'Z') || c == '$' || c == '_')
sprintf(p, "'%c',", c);
else
sprintf(p, "%d,", c);
while (*p)
p++;
if (p - buffer > 60) {
ib_fprintf(out_file, "%s\n", buffer);
p = buffer;
*p = 0;
}
}
ib_fprintf(out_file, "%s%d", buffer, blr_eoc);
}
//____________________________________________________________
//
// Generate a send or receive call for a port.
//
static void gen_receive( REQ request, POR port)
{
ib_fprintf(out_file,
"EXE_receive (tdbb, (REQ)%s, %d, %d, (UCHAR*)&jrd_%d);",
request->req_handle, port->por_msg_number, port->por_length,
port->por_ident);
}
//____________________________________________________________
//
// Generate definitions associated with a single request.
//
static void gen_request( REQ request)
{
if (!(request->req_flags & REQ_exp_hand))
ib_fprintf(out_file, "static void\t*%s;\t/* request handle */\n",
request->req_handle);
ib_fprintf(out_file, "static CONST UCHAR\tjrd_%d [%d] =",
request->req_ident, request->req_length);
align(INDENT);
ib_fprintf(out_file, "{\t/* blr string */\n", request->req_ident);
if (sw_raw)
gen_raw(request);
else
gds__print_blr(request->req_blr, (FPTR_VOID) gen_blr, 0, 0);
printa(INDENT, "};\t/* end of blr string */\n");
}
//____________________________________________________________
//
// Process routine head. If there are requests in the
// routine, insert local definitions.
//
static void gen_routine( ACT action, int column)
{
REQ request;
POR port;
for (request = (REQ) action->act_object; request;
request = request->req_routine) for (port = request->req_ports; port;
port = port->por_next)
make_port(port, column + INDENT);
}
//____________________________________________________________
//
// Generate substitution text for END_STREAM.
//
static void gen_s_end( ACT action, int column)
{
REQ request;
request = action->act_request;
printa(column, "EXE_unwind (tdbb, %s);", request->req_handle);
}
//____________________________________________________________
//
// Generate substitution text for FETCH.
//
static void gen_s_fetch( ACT action, int column)
{
REQ request;
request = action->act_request;
if (request->req_sync)
gen_send(request, request->req_sync, column);
gen_receive(action->act_request, request->req_primary);
}
//____________________________________________________________
//
// Generate text to compile and start a stream. This is
// used both by START_STREAM and FOR
//
static void gen_s_start( ACT action, int column)
{
REQ request;
POR port;
request = action->act_request;
gen_compile(request, column);
if (port = request->req_vport)
asgn_from(port->por_references, column);
gen_start(request, port, column);
}
//____________________________________________________________
//
// Generate a send or receive call for a port.
//
static void gen_send( REQ request, POR port, int column)
{
align(column);
ib_fprintf(out_file, "EXE_send (tdbb, (REQ)%s, %d, %d, (UCHAR*)&jrd_%d);",
request->req_handle,
port->por_msg_number, port->por_length, port->por_ident);
}
//____________________________________________________________
//
// Generate a START.
//
static void gen_start( REQ request, POR port, int column)
{
align(column);
ib_fprintf(out_file, "EXE_start (tdbb, (REQ)%s, %s);",
request->req_handle, request->req_trans);
if (port)
gen_send(request, port, column);
}
//____________________________________________________________
//
// Substitute for a variable reference.
//
static void gen_type( ACT action, int column)
{
printa(column, "%ld", action->act_object);
}
//____________________________________________________________
//
// Substitute for a variable reference.
//
static void gen_variable( ACT action, int column)
{
TEXT s[20];
align(column);
ib_fprintf(out_file, gen_name(s, action->act_object));
}
//____________________________________________________________
//
// Insert a port record description in output.
//
static void make_port( POR port, int column)
{
FLD field;
REF reference;
SYM symbol;
TEXT *name, s[50];
printa(column, "struct {");
for (reference = port->por_references; reference;
reference = reference->ref_next) {
align(column + INDENT);
field = reference->ref_field;
symbol = field->fld_symbol;
name = symbol->sym_string;
switch (field->fld_dtype) {
case dtype_short:
ib_fprintf(out_file, " SSHORT jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
case dtype_long:
ib_fprintf(out_file, " SLONG jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
// ** Begin sql date/time/timestamp *
case dtype_sql_date:
ib_fprintf(out_file, " ISC_DATE jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
case dtype_sql_time:
ib_fprintf(out_file, " ISC_TIME jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
case dtype_timestamp:
ib_fprintf(out_file, " ISC_TIMESTAMP jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
// ** End sql date/time/timestamp *
case dtype_int64:
ib_fprintf(out_file, " ISC_INT64 jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
case dtype_quad:
case dtype_blob:
ib_fprintf(out_file, " GDS__QUAD jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
case dtype_cstring:
case dtype_text:
ib_fprintf(out_file, " TEXT jrd_%d [%d];\t/* %s */",
reference->ref_ident, field->fld_length, name);
break;
case dtype_float:
ib_fprintf(out_file, " float jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
case dtype_double:
ib_fprintf(out_file, " double jrd_%d;\t/* %s */",
reference->ref_ident, name);
break;
default:
sprintf(s, "datatype %d unknown for field %s, msg %d",
field->fld_dtype, name, port->por_msg_number);
CPR_error(s);
return;
}
}
align(column);
ib_fprintf(out_file, "} jrd_%d;", port->por_ident);
}
//____________________________________________________________
//
// Print a fixed string at a particular column.
//
static void printa( int column, TEXT * string, ...)
{
va_list ptr;
VA_START(ptr, string);
align(column);
ib_vfprintf(out_file, string, ptr);
}

View File

@ -19,7 +19,7 @@
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
* $Id: extract.e,v 1.1.1.1 2001-05-23 13:26:02 tamlin Exp $
* $Id: extract.epp,v 1.1 2001-07-12 06:32:02 bellardo Exp $
* Revision 1.3 2000/11/22 17:07:25 patrickgriffin
* In get_procedure_args change comment style from // to /*
*
@ -124,9 +124,9 @@ SSHORT EXTRACT_ddl( int flag, SCHAR * tabname)
if (!DB)
{
if (isc_attach_database(gds__status, 0, Db_name, &DB, 0, (SCHAR *) 0))
if (isc_attach_database(gds_status, 0, Db_name, &DB, 0, (SCHAR *) 0))
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return (SSHORT) FINI_ERROR;
}
did_attach = TRUE;
@ -174,16 +174,16 @@ SSHORT EXTRACT_ddl( int flag, SCHAR * tabname)
sprintf(Print_buffer, " %s", NEWLINE);
ISQL_printf(Out, Print_buffer);
if (!gds__trans)
if (!gds_trans)
{
if (isc_start_transaction(gds__status,
&gds__trans,
if (isc_start_transaction(gds_status,
&gds_trans,
1,
&DB,
0,
(SCHAR *) 0))
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return (SSHORT) FINI_ERROR;
}
did_start = TRUE;
@ -220,18 +220,18 @@ SSHORT EXTRACT_ddl( int flag, SCHAR * tabname)
list_all_grants();
}
if (gds__trans && did_start)
if (isc_commit_transaction(gds__status, &gds__trans))
if (gds_trans && did_start)
if (isc_commit_transaction(gds_status, &gds_trans))
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return (SSHORT) FINI_ERROR;
}
if (DB && did_attach)
{
if (isc_detach_database(gds__status, &DB))
if (isc_detach_database(gds_status, &DB))
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return (SSHORT) FINI_ERROR;
}
DB = NULL;
@ -343,9 +343,9 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
if (new_name)
ISQL_copy_SQL_id (new_name, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (new_name, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
ISQL_copy_SQL_id (relation_name, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (relation_name, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "CREATE TABLE %s ", SQL_identifier);
}
else
@ -354,7 +354,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
ISQL_printf (Out, Print_buffer);
if (!REL.RDB$EXTERNAL_FILE.NULL)
{
ISQL_copy_SQL_id (REL.RDB$EXTERNAL_FILE, &SQL_identifier2,
ISQL_copy_SQL_id (REL.RDB$EXTERNAL_FILE, (TEXT**) &SQL_identifier2,
SINGLE_QUOTE);
sprintf (Print_buffer, "EXTERNAL FILE %s ", SQL_identifier2);
ISQL_printf (Out, Print_buffer);
@ -370,7 +370,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (ISQL_blankterm (RFR.RDB$FIELD_NAME),
&SQL_identifier, DBL_QUOTE);
(TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "%s ", SQL_identifier);
}
else
@ -388,7 +388,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
{
ISQL_printf (Out, "COMPUTED BY ");
if (!FLD.RDB$COMPUTED_SOURCE.NULL)
ISQL_print_validation (Out, &FLD.RDB$COMPUTED_SOURCE, 1, gds__trans);
ISQL_print_validation (Out, &FLD.RDB$COMPUTED_SOURCE, 1, (SLONG*) gds_trans);
}
else if (!((strncmp(FLD.RDB$FIELD_NAME, "RDB$", 4) == 0) &&
isdigit (FLD.RDB$FIELD_NAME[4]) &&
@ -397,7 +397,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
ISQL_blankterm (FLD.RDB$FIELD_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (FLD.RDB$FIELD_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (FLD.RDB$FIELD_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "%s", SQL_identifier);
}
else
@ -579,7 +579,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (CON.RDB$CONSTRAINT_NAME, &SQL_identifier,
ISQL_copy_SQL_id (CON.RDB$CONSTRAINT_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf (Print_buffer, " CONSTRAINT %s", SQL_identifier);
}
@ -590,7 +590,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
}
END_FOR
ON_ERROR
ISQL_errmsg (gds__status);
ISQL_errmsg (gds_status);
return (SSHORT)FINI_ERROR;
END_ERROR;
@ -625,7 +625,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
ON_ERROR
if (!V33)
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return (SSHORT) FINI_ERROR;
}
END_ERROR;
@ -656,7 +656,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
ISQL_blankterm(RELC.RDB$CONSTRAINT_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (RELC.RDB$CONSTRAINT_NAME, &SQL_identifier,
ISQL_copy_SQL_id (RELC.RDB$CONSTRAINT_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf (Print_buffer, "CONSTRAINT %s ", SQL_identifier);
}
@ -681,7 +681,7 @@ SSHORT EXTRACT_list_table(SCHAR * relation_name,
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
if (collist)
ISQL_FREE(collist);
return (SSHORT) FINI_ERROR;
@ -717,13 +717,13 @@ void EXTRACT_list_view( SCHAR * viewname)
SSHORT first;
if (!DB)
if (isc_attach_database(gds__status, 0, Db_name, &DB, 0, (SCHAR *) 0))
if (isc_attach_database(gds_status, 0, Db_name, &DB, 0, (SCHAR *) 0))
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return (SSHORT) FINI_ERROR;
}
if (!gds__trans)
isc_start_transaction(gds__status, &gds__trans, 1, &DB, 0,
if (!gds_trans)
isc_start_transaction(gds_status, &gds_trans, 1, &DB, 0,
(SCHAR *) 0);
/* If this is a view, use print_blob to print the view text */
@ -739,7 +739,7 @@ void EXTRACT_list_view( SCHAR * viewname)
ISQL_blankterm (REL.RDB$RELATION_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (REL.RDB$RELATION_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (REL.RDB$RELATION_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, REL.RDB$RELATION_NAME);
@ -773,7 +773,7 @@ void EXTRACT_list_view( SCHAR * viewname)
END_FOR
ON_ERROR
ISQL_errmsg (gds__status);
ISQL_errmsg (gds_status);
return;
END_ERROR;
@ -786,7 +786,7 @@ void EXTRACT_list_view( SCHAR * viewname)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}
@ -962,7 +962,7 @@ static void get_procedure_args( SCHAR * proc_name)
ON_ERROR
if (!V33)
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
}
END_ERROR;
@ -1041,7 +1041,7 @@ static void list_all_grants(void)
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (XX.RDB$ROLE_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (XX.RDB$ROLE_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "CREATE ROLE %s;%s",
SQL_identifier, NEWLINE);
}
@ -1052,7 +1052,7 @@ static void list_all_grants(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}
@ -1084,7 +1084,7 @@ static void list_all_grants(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -1119,7 +1119,7 @@ static void list_all_grants(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -1172,7 +1172,7 @@ static void list_all_procs()
ISQL_blankterm (PRC.RDB$PROCEDURE_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (PRC.RDB$PROCEDURE_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (PRC.RDB$PROCEDURE_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, create_procedure_str1,
SQL_identifier);
ISQL_printf (Out, Print_buffer);
@ -1193,7 +1193,7 @@ static void list_all_procs()
ON_ERROR
if (!V33)
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
}
END_ERROR;
@ -1207,7 +1207,7 @@ static void list_all_procs()
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (PRC.RDB$PROCEDURE_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (PRC.RDB$PROCEDURE_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "%sALTER PROCEDURE %s ", NEWLINE,
SQL_identifier);
}
@ -1227,10 +1227,10 @@ static void list_all_procs()
END_FOR
ON_ERROR
ISQL_msg_get(GEN_ERR, msg, (TEXT *) isc_sqlcode(gds__status), NULL,
ISQL_msg_get(GEN_ERR, msg, (TEXT *) isc_sqlcode(gds_status), NULL,
NULL, NULL, NULL);
STDERROUT(msg, 1); /* Statement failed, SQLCODE = %d\n\n */
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -1282,7 +1282,7 @@ static void list_all_tables( SSHORT flag, SSHORT default_char_set_id)
EXTRACT_list_table (REL.RDB$RELATION_NAME, NULL, 0,default_char_set_id);
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
ROLLBACK;
return;
END_ERROR;
@ -1339,8 +1339,8 @@ static void list_all_triggers()
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (TRG.RDB$TRIGGER_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (TRG.RDB$RELATION_NAME, &SQL_identifier2, DBL_QUOTE);
ISQL_copy_SQL_id (TRG.RDB$TRIGGER_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (TRG.RDB$RELATION_NAME, (TEXT**) &SQL_identifier2, DBL_QUOTE);
}
else
{
@ -1371,7 +1371,7 @@ static void list_all_triggers()
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -1417,7 +1417,7 @@ static void list_check(void)
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (TRG.RDB$RELATION_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (TRG.RDB$RELATION_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "ALTER TABLE %s ADD %s%s",
SQL_identifier, NEWLINE, TAB);
}
@ -1432,7 +1432,7 @@ static void list_check(void)
ISQL_blankterm(CHK.RDB$CONSTRAINT_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (CHK.RDB$CONSTRAINT_NAME, &SQL_identifier,
ISQL_copy_SQL_id (CHK.RDB$CONSTRAINT_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf (Print_buffer, "CONSTRAINT %s ", SQL_identifier);
}
@ -1449,7 +1449,7 @@ static void list_check(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}
@ -1529,7 +1529,7 @@ static void list_create_db(void)
ISQL_printf(Out, Print_buffer);
/* Get the page size from db_info call */
SHOW_dbb_parameters(DB, info_buf, page_items, sizeof(page_items),
SHOW_dbb_parameters((SLONG*) DB, info_buf, page_items, sizeof(page_items),
translate);
sprintf(Print_buffer, " %s", info_buf);
ISQL_printf(Out, Print_buffer);
@ -1544,7 +1544,7 @@ static void list_create_db(void)
ON_ERROR
if (!V33)
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
}
END_ERROR;
@ -1656,7 +1656,7 @@ static void list_create_db(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -1731,7 +1731,7 @@ static void list_create_db(void)
ON_ERROR
if (!V33)
{
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
}
END_ERROR;
@ -1758,7 +1758,7 @@ static void list_create_db(void)
}
if (!isc_database_info
(gds__status, &DB, sizeof(wal_items), wal_items, BUFFER_LENGTH128,
(gds_status, &DB, sizeof(wal_items), wal_items, BUFFER_LENGTH128,
buffer))
{
for (d = buffer; *d != isc_info_end;)
@ -1985,7 +1985,7 @@ static void list_domain_table( SCHAR * table_name, SSHORT default_char_set_id)
{
sprintf (Print_buffer, "%s%s ", NEWLINE, TAB);
ISQL_printf (Out, Print_buffer);
ISQL_print_validation (Out, &FLD.RDB$VALIDATION_SOURCE, 0, gds__trans);
ISQL_print_validation (Out, &FLD.RDB$VALIDATION_SOURCE, 0, (SLONG*) gds_trans);
}
if (FLD.RDB$NULL_FLAG == 1)
ISQL_printf (Out, " NOT NULL");
@ -2010,7 +2010,7 @@ static void list_domain_table( SCHAR * table_name, SSHORT default_char_set_id)
ISQL_printf (Out, Print_buffer);
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}
@ -2051,7 +2051,7 @@ static void list_domains( SSHORT default_char_set_id)
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id(FLD.RDB$FIELD_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id(FLD.RDB$FIELD_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "CREATE DOMAIN %s AS ", SQL_identifier);
}
else
@ -2176,7 +2176,7 @@ static void list_domains( SSHORT default_char_set_id)
{
sprintf (Print_buffer, "%s%s ", NEWLINE, TAB);
ISQL_printf (Out, Print_buffer);
ISQL_print_validation (Out, &FLD.RDB$VALIDATION_SOURCE, 0, gds__trans);
ISQL_print_validation (Out, &FLD.RDB$VALIDATION_SOURCE, 0, (SLONG*) gds_trans);
}
if (FLD.RDB$NULL_FLAG == 1)
ISQL_printf (Out, " NOT NULL");
@ -2201,7 +2201,7 @@ static void list_domains( SSHORT default_char_set_id)
ISQL_printf (Out, Print_buffer);
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}
@ -2234,10 +2234,10 @@ static void list_exception(void)
first = FALSE;
ISQL_blankterm (EXC.RDB$EXCEPTION_NAME);
ISQL_copy_SQL_id (EXC.RDB$MESSAGE, &SQL_identifier2, SINGLE_QUOTE);
ISQL_copy_SQL_id (EXC.RDB$MESSAGE, (TEXT**) &SQL_identifier2, SINGLE_QUOTE);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (EXC.RDB$EXCEPTION_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (EXC.RDB$EXCEPTION_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "CREATE EXCEPTION %s %s%s%s",
SQL_identifier, SQL_identifier2, Term, NEWLINE);
}
@ -2250,7 +2250,7 @@ static void list_exception(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}
@ -2298,7 +2298,7 @@ static void list_filters(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -2354,7 +2354,7 @@ static void list_foreign()
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (RELC1.RDB$RELATION_NAME, &SQL_identifier,
ISQL_copy_SQL_id (RELC1.RDB$RELATION_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf (Print_buffer, "ALTER TABLE %s ADD ", SQL_identifier);
}
@ -2372,7 +2372,7 @@ static void list_foreign()
strlen(RELC1.RDB$CONSTRAINT_NAME));
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (RELC1.RDB$CONSTRAINT_NAME, &SQL_identifier,
ISQL_copy_SQL_id (RELC1.RDB$CONSTRAINT_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf (Print_buffer, "CONSTRAINT %s ", SQL_identifier);
}
@ -2384,7 +2384,7 @@ static void list_foreign()
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (RELC2.RDB$RELATION_NAME, &SQL_identifier,
ISQL_copy_SQL_id (RELC2.RDB$RELATION_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf (Print_buffer, "FOREIGN KEY (%s) REFERENCES %s ",
collist, SQL_identifier);
@ -2422,7 +2422,7 @@ static void list_foreign()
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
ISQL_FREE(collist);
return;
END_ERROR;
@ -2544,7 +2544,7 @@ static void list_functions(void)
END_FOR
ON_ERROR
ISQL_errmsg (gds__status);
ISQL_errmsg (gds_status);
return;
END_ERROR;
@ -2649,7 +2649,7 @@ static void list_functions(void)
END_FOR
ON_ERROR
ISQL_errmsg (gds__status);
ISQL_errmsg (gds_status);
ISQL_FREE (type_buffer);
ISQL_FREE (return_buffer);
ISQL_FREE (buffer);
@ -2674,7 +2674,7 @@ static void list_functions(void)
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
ISQL_FREE(type_buffer);
ISQL_FREE(return_buffer);
ISQL_FREE(buffer);
@ -2713,7 +2713,7 @@ static void list_generators(void)
ISQL_blankterm (GEN.RDB$GENERATOR_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (GEN.RDB$GENERATOR_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (GEN.RDB$GENERATOR_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, GEN.RDB$GENERATOR_NAME);
@ -2724,7 +2724,7 @@ static void list_generators(void)
ISQL_printf (Out, Print_buffer);
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
@ -2786,8 +2786,8 @@ static void list_index()
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (IDX.RDB$INDEX_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (IDX.RDB$RELATION_NAME, &SQL_identifier2, DBL_QUOTE);
ISQL_copy_SQL_id (IDX.RDB$INDEX_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (IDX.RDB$RELATION_NAME, (TEXT**) &SQL_identifier2, DBL_QUOTE);
sprintf (Print_buffer, "CREATE%s%s INDEX %s ON %s(",
(IDX.RDB$UNIQUE_FLAG ? " UNIQUE" : ""),
(IDX.RDB$INDEX_TYPE ? " DESCENDING" : ""),
@ -2812,7 +2812,7 @@ static void list_index()
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
ISQL_FREE(collist);
return;
END_ERROR;
@ -2849,7 +2849,7 @@ static void list_views()
ISQL_blankterm (REL.RDB$RELATION_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (REL.RDB$RELATION_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (REL.RDB$RELATION_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, REL.RDB$RELATION_NAME);
@ -2872,7 +2872,7 @@ static void list_views()
ISQL_blankterm (RFR.RDB$FIELD_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (RFR.RDB$FIELD_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (RFR.RDB$FIELD_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, RFR.RDB$FIELD_NAME);
@ -2882,7 +2882,7 @@ static void list_views()
END_FOR
ON_ERROR
ISQL_errmsg (gds__status);
ISQL_errmsg (gds_status);
return;
END_ERROR;
sprintf (Print_buffer, ") AS%s", NEWLINE);
@ -2896,7 +2896,7 @@ static void list_views()
END_FOR
ON_ERROR
ISQL_errmsg(gds__status);
ISQL_errmsg(gds_status);
return;
END_ERROR;
}

File diff suppressed because it is too large Load Diff

View File

@ -19,7 +19,7 @@
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
* $Id: show.e,v 1.1.1.1 2001-05-23 13:26:03 tamlin Exp $
* $Id: show.epp,v 1.1 2001-07-12 06:32:02 bellardo Exp $
* Revision 1.2 2000/11/19 07:02:49 fsg
* Change in show.e to use CHARACTER_LENGTH instead of FIELD_LENGTH in
* SHOW PROCEDURE
@ -50,6 +50,10 @@
#include "../jrd/obj.h"
#include "../jrd/ods.h"
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
ASSERT_FILENAME
DATABASE DB = EXTERN COMPILETIME "yachts.lnk";
@ -266,7 +270,7 @@ void SHOW_dbb_parameters(SLONG * db_handle,
}
if (isc_database_info(status_vector,
&db_handle,
(void**) &db_handle,
item_length,
db_items,
BUFFER_LENGTH128,
@ -616,12 +620,12 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
prev_field_null != PRV.RDB$FIELD_NAME.NULL) ||
(!prev_field_null && strcmp (prev_field, PRV.RDB$FIELD_NAME)) ||
(prev_option != -1 && prev_option != PRV.RDB$GRANT_OPTION)) {
make_priv_string (priv_flags, priv_string);
make_priv_string (priv_flags, (UCHAR*) priv_string);
first = FALSE;
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (object, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (object, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, object);
@ -652,7 +656,7 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
case obj_procedure:
case obj_sql_role:
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION) {
ISQL_copy_SQL_id (PRV.RDB$USER, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (PRV.RDB$USER, (TEXT**) &SQL_identifier, DBL_QUOTE);
}
else
strcpy (SQL_identifier, PRV.RDB$USER);
@ -714,7 +718,7 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
ISQL_blankterm (PRV.RDB$FIELD_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
{
ISQL_copy_SQL_id (PRV.RDB$FIELD_NAME, &SQL_identifier,
ISQL_copy_SQL_id (PRV.RDB$FIELD_NAME, (TEXT**) &SQL_identifier,
DBL_QUOTE);
sprintf(col_string, " (%s)", SQL_identifier);
}
@ -736,11 +740,11 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
/* Print last case if there was anything to print */
if (prev_option != -1) {
make_priv_string (priv_flags, priv_string);
make_priv_string (priv_flags, (UCHAR*) priv_string);
first = FALSE;
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (object, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (object, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, object);
@ -784,7 +788,7 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
case obj_procedure:
case obj_sql_role:
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION) {
ISQL_copy_SQL_id (PRV.RDB$USER, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (PRV.RDB$USER, (TEXT**) &SQL_identifier, DBL_QUOTE);
}
else
strcpy (SQL_identifier, PRV.RDB$USER);
@ -816,7 +820,7 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION) {
ISQL_copy_SQL_id (object, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (object, (TEXT**) &SQL_identifier, DBL_QUOTE);
}
else
strcpy (SQL_identifier, object);
@ -854,7 +858,7 @@ int SHOW_grants( SCHAR * object, SCHAR * terminator)
ISQL_blankterm (PRV.RDB$RELATION_NAME);
strcpy (role_name, PRV.RDB$RELATION_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (role_name, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (role_name, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, role_name);
@ -927,7 +931,7 @@ void SHOW_grant_roles( SCHAR * terminator)
ISQL_blankterm (PRV.RDB$RELATION_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION) {
ISQL_copy_SQL_id (PRV.RDB$RELATION_NAME, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (PRV.RDB$RELATION_NAME, (TEXT**) &SQL_identifier, DBL_QUOTE);
sprintf (Print_buffer, "GRANT %s TO %s%s%s%s", SQL_identifier,
user_string, with_option, terminator, NEWLINE);
}
@ -963,11 +967,11 @@ void SHOW_print_metadata_text_blob( IB_FILE * fp, ISC_QUAD * blobid)
/* Don't bother with null blobs */
if (blobid->isc_quad_high == 0 && blobid->gds_quad_low == 0)
if (blobid->gds_quad_high == 0 && blobid->gds_quad_low == 0)
return;
blob_handle = NULL;
if (isc_open_blob2(isc_status, &DB, &gds__trans, &blob_handle, blobid,
if (isc_open_blob2(isc_status, &DB, &gds_trans, &blob_handle, blobid,
sizeof(metadata_text_bpb), metadata_text_bpb)) {
ISQL_errmsg(isc_status);
return;
@ -983,7 +987,7 @@ void SHOW_print_metadata_text_blob( IB_FILE * fp, ISC_QUAD * blobid)
}
while (!isc_get_segment(isc_status, &blob_handle, &length,
(USHORT) (BUFFER_LENGTH512 - 1), buffer) ||
(USHORT) (BUFFER_LENGTH512 - 1), (char*) buffer) ||
isc_status[1] == isc_segment) {
/*
* Need to step through the buffer until we hit a '\n' and then print the
@ -995,7 +999,7 @@ void SHOW_print_metadata_text_blob( IB_FILE * fp, ISC_QUAD * blobid)
if (*b == '\n') {
*b = 0;
sprintf(Print_buffer, "%s%s", start, NEWLINE);
ISQL_printf(fp, Print_buffer);
ISQL_printf(fp, (TEXT*) Print_buffer);
start = b + 1;
}
}
@ -1003,7 +1007,7 @@ void SHOW_print_metadata_text_blob( IB_FILE * fp, ISC_QUAD * blobid)
ISQL_printf(fp, Print_buffer);
#else
buffer[length] = 0;
ISQL_printf(fp, buffer);
ISQL_printf(fp, (TEXT*) buffer);
#endif
}
#ifdef GUI_TOOLS
@ -1049,8 +1053,8 @@ int SHOW_metadata( SCHAR ** cmd, SCHAR ** lcmd)
if ((!strcmp(cmd[1], "VERSION")) || (!strcmp(cmd[1], "VER"))) {
gds__msg_format(NULL_PTR, ISQL_MSG_FAC, VERSION, sizeof(msg_string),
msg_string, GDS_VERSION, NULL_PTR, NULL_PTR, NULL_PTR,
NULL_PTR);
msg_string, GDS_VERSION, (TEXT*) NULL_PTR, (TEXT*) NULL_PTR, (TEXT*) NULL_PTR,
(TEXT*) NULL_PTR);
sprintf(Print_buffer, "%s%s", msg_string, NEWLINE);
ISQL_printf(Out, Print_buffer);
isc_version(&DB, (FPTR_VOID) local_fprintf, NULL);
@ -1365,12 +1369,12 @@ int SHOW_metadata( SCHAR ** cmd, SCHAR ** lcmd)
if (ret == NOT_FOUND) {
if (*cmd[2] == '"')
gds__msg_format(NULL_PTR, ISQL_MSG_FAC, key, sizeof(msg_string),
msg_string, lcmd[2], NULL_PTR, NULL_PTR,
NULL_PTR, NULL_PTR);
msg_string, lcmd[2], (TEXT*) NULL_PTR, (TEXT*) NULL_PTR,
(TEXT*) NULL_PTR, (TEXT*) NULL_PTR);
else
gds__msg_format(NULL_PTR, ISQL_MSG_FAC, key, sizeof(msg_string),
msg_string, cmd[2], NULL_PTR, NULL_PTR, NULL_PTR,
NULL_PTR);
msg_string, cmd[2], (TEXT*) NULL_PTR, (TEXT*) NULL_PTR, (TEXT*) NULL_PTR,
(TEXT*) NULL_PTR);
STDERROUT(msg_string, 1);
}
@ -1418,10 +1422,10 @@ static SCHAR *remove_delimited_double_quotes( TEXT * string)
UCHAR *p, *q, *next_char, *end_of_str;
USHORT cmd_len, cnt;
p = string;
q = string;
p = (UCHAR*) string;
q = (UCHAR*) string;
cmd_len = strlen(string);
end_of_str = string + cmd_len;
end_of_str = (UCHAR*) (string + cmd_len);
for (cnt = 1; cnt < cmd_len && p < end_of_str; cnt++) {
p++;
@ -1463,8 +1467,8 @@ static void make_priv_string( USHORT flags, UCHAR * string)
for (i = 0; privs[i].priv_string; i++) {
if (flags & privs[i].priv_flag) {
if (*string)
strcat(string, ", ");
strcat(string, privs[i].priv_string);
strcat((char*) string, ", ");
strcat((char*) string, privs[i].priv_string);
}
}
}
@ -1777,7 +1781,7 @@ static void show_charsets( SCHAR * relation_name, SCHAR * field_name)
}
static show_check( SCHAR * object)
static int show_check( SCHAR * object)
{
/**************************************
*
@ -1952,7 +1956,7 @@ static void show_db(void)
/* First general database parameters */
SHOW_dbb_parameters(DB, info_buf, db_items, sizeof(db_items), translate);
SHOW_dbb_parameters((SLONG*) DB, info_buf, db_items, sizeof(db_items), translate);
ISQL_printf(Out, info_buf);
/* Only v4 databases have log_files */
@ -2014,7 +2018,7 @@ static void show_db(void)
/* And now for Rich's show db parameters */
if (is_wal) {
SHOW_dbb_parameters(DB, info_buf, wal_items, sizeof(wal_items),
SHOW_dbb_parameters((SLONG*) DB, info_buf, wal_items, sizeof(wal_items),
translate);
ISQL_printf(Out, info_buf);
}
@ -2704,7 +2708,7 @@ static int show_generators( SCHAR * object)
generator, as in V5. Otherwise, we show him the whole 64-bit
value.
*/
if (isc_dsql_prepare (isc_status, &gds__trans, &stmt, 0, query,
if (isc_dsql_prepare (isc_status, &gds_trans, &stmt, 0, query,
SQL_dialect, &sqlda)) {
ISQL_errmsg (isc_status);
continue;
@ -2716,7 +2720,7 @@ static int show_generators( SCHAR * object)
sqlda.sqlvar[0].sqlind = &indicator;
/* Singleton select needs no fetch */
if (isc_dsql_execute2 (isc_status, &gds__trans, &stmt,
if (isc_dsql_execute2 (isc_status, &gds_trans, &stmt,
SQL_dialect, NULL, &sqlda))
{
ISQL_errmsg (isc_status);
@ -3151,7 +3155,7 @@ static int show_role( SCHAR * object)
ISQL_blankterm (PRV.RDB$RELATION_NAME);
strcpy (role_name, PRV.RDB$RELATION_NAME);
if (db_SQL_dialect > SQL_DIALECT_V6_TRANSITION)
ISQL_copy_SQL_id (role_name, &SQL_identifier, DBL_QUOTE);
ISQL_copy_SQL_id (role_name, (TEXT**) &SQL_identifier, DBL_QUOTE);
else
strcpy (SQL_identifier, role_name);

View File

@ -1,6 +1,6 @@
/*
* PROGRAM: JRD Access Method
* MODULE: blf.e
* MODULE: blf.epp
* DESCRIPTION: Blob filter driver
*
* The contents of this file are subject to the Interbase Public
@ -51,6 +51,7 @@
#include "../jrd/thd_proto.h"
#include "../jrd/isc_s_proto.h"
#include "../jrd/all_proto.h"
#include "../jrd/codes.h"
/* System provided internal filters for filtering internal
* subtypes to text.
@ -73,7 +74,7 @@ static STATUS open_blob(TDBB,
CTL*,
SLONG*,
USHORT,
SCHAR*,
UCHAR*,
PTR,
USHORT,
BLF);
@ -141,7 +142,7 @@ STATUS DLL_EXPORT BLF_create_blob(TDBB tdbb,
CTL * filter_handle,
SLONG * blob_id,
USHORT bpb_length,
UCHAR * bpb, PTR callback, BLF filter)
UCHAR * bpb, STATUS (*callback)(), BLF filter)
{
/**************************************
*
@ -155,7 +156,7 @@ STATUS DLL_EXPORT BLF_create_blob(TDBB tdbb,
**************************************/
return open_blob(tdbb, tra_handle, filter_handle,
blob_id, bpb_length, bpb, callback, ACTION_create,
blob_id, bpb_length, bpb, (STATUS (*)(USHORT, CTL)) callback, ACTION_create,
filter);
}
@ -238,7 +239,8 @@ BLF DLL_EXPORT BLF_lookup_internal_filter(TDBB tdbb, SSHORT from, SSHORT to)
blf->blf_to = to;
blf->blf_filter = filters[from];
exception_msg = (STR) ALLOCPV(type_str, 100);
sprintf(exception_msg->str_data,
// SIGN ISSUE, arg 1
sprintf((char*)exception_msg->str_data,
"Exception occurred in system provided internal filters for filtering internal subtype %d to text.",
from);
blf->blf_exception_message = exception_msg;
@ -254,7 +256,7 @@ STATUS DLL_EXPORT BLF_open_blob(TDBB tdbb,
CTL * filter_handle,
SLONG * blob_id,
USHORT bpb_length,
UCHAR * bpb, PTR callback, BLF filter)
UCHAR * bpb, STATUS (*callback)(), BLF filter)
{
/**************************************
*
@ -268,7 +270,7 @@ STATUS DLL_EXPORT BLF_open_blob(TDBB tdbb,
**************************************/
return open_blob(tdbb, tra_handle, filter_handle,
blob_id, bpb_length, bpb, callback, ACTION_open, filter);
blob_id, bpb_length, bpb, (STATUS (*)(USHORT, CTL)) callback, ACTION_open, filter);
}
@ -321,7 +323,7 @@ static STATUS open_blob(
TRA tra_handle,
CTL * filter_handle,
SLONG * blob_id,
USHORT bpb_length, SCHAR * bpb, PTR callback, USHORT action, BLF filter)
USHORT bpb_length, UCHAR * bpb, PTR callback, USHORT action, BLF filter)
{
/**************************************
*
@ -336,7 +338,7 @@ USHORT bpb_length, SCHAR * bpb, PTR callback, USHORT action, BLF filter)
STATUS status;
CTL prior, control;
SSHORT from, to;
SSHORT from_charset, to_charset;
USHORT from_charset, to_charset;
struct ctl temp;
DBB dbb;
STATUS *user_status;

1451
src/jrd/boot_codes/codes.h Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,713 @@
/*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
/*
*
* File generated by codes.e - do not edit!
*
*/
"arith_except", 335544321,
"bad_dbkey", 335544322,
"bad_db_format", 335544323,
"bad_db_handle", 335544324,
"bad_dpb_content", 335544325,
"bad_dpb_form", 335544326,
"bad_req_handle", 335544327,
"bad_segstr_handle", 335544328,
"bad_segstr_id", 335544329,
"bad_tpb_content", 335544330,
"bad_tpb_form", 335544331,
"bad_trans_handle", 335544332,
"bug_check", 335544333,
"convert_error", 335544334,
"db_corrupt", 335544335,
"deadlock", 335544336,
"excess_trans", 335544337,
"from_no_match", 335544338,
"infinap", 335544339,
"infona", 335544340,
"infunk", 335544341,
"integ_fail", 335544342,
"invalid_blr", 335544343,
"io_error", 335544344,
"lock_conflict", 335544345,
"metadata_corrupt", 335544346,
"not_valid", 335544347,
"no_cur_rec", 335544348,
"no_dup", 335544349,
"no_finish", 335544350,
"no_meta_update", 335544351,
"no_priv", 335544352,
"no_recon", 335544353,
"no_record", 335544354,
"no_segstr_close", 335544355,
"obsolete_metadata", 335544356,
"open_trans", 335544357,
"port_len", 335544358,
"read_only_field", 335544359,
"read_only_rel", 335544360,
"read_only_trans", 335544361,
"read_only_view", 335544362,
"req_no_trans", 335544363,
"req_sync", 335544364,
"req_wrong_db", 335544365,
"segment", 335544366,
"segstr_eof", 335544367,
"segstr_no_op", 335544368,
"segstr_no_read", 335544369,
"segstr_no_trans", 335544370,
"segstr_no_write", 335544371,
"segstr_wrong_db", 335544372,
"sys_request", 335544373,
"stream_eof", 335544374,
"unavailable", 335544375,
"unres_rel", 335544376,
"uns_ext", 335544377,
"wish_list", 335544378,
"wrong_ods", 335544379,
"wronumarg", 335544380,
"imp_exc", 335544381,
"random", 335544382,
"fatal_conflict", 335544383,
"badblk", 335544384,
"invpoolcl", 335544385,
"nopoolids", 335544386,
"relbadblk", 335544387,
"blktoobig", 335544388,
"bufexh", 335544389,
"syntaxerr", 335544390,
"bufinuse", 335544391,
"bdbincon", 335544392,
"reqinuse", 335544393,
"badodsver", 335544394,
"relnotdef", 335544395,
"fldnotdef", 335544396,
"dirtypage", 335544397,
"waifortra", 335544398,
"doubleloc", 335544399,
"nodnotfnd", 335544400,
"dupnodfnd", 335544401,
"locnotmar", 335544402,
"badpagtyp", 335544403,
"corrupt", 335544404,
"badpage", 335544405,
"badindex", 335544406,
"dbbnotzer", 335544407,
"tranotzer", 335544408,
"trareqmis", 335544409,
"badhndcnt", 335544410,
"wrotpbver", 335544411,
"wroblrver", 335544412,
"wrodpbver", 335544413,
"blobnotsup", 335544414,
"badrelation", 335544415,
"nodetach", 335544416,
"notremote", 335544417,
"trainlim", 335544418,
"notinlim", 335544419,
"traoutsta", 335544420,
"connect_reject", 335544421,
"dbfile", 335544422,
"orphan", 335544423,
"no_lock_mgr", 335544424,
"ctxinuse", 335544425,
"ctxnotdef", 335544426,
"datnotsup", 335544427,
"badmsgnum", 335544428,
"badparnum", 335544429,
"virmemexh", 335544430,
"blocking_signal", 335544431,
"lockmanerr", 335544432,
"journerr", 335544433,
"keytoobig", 335544434,
"nullsegkey", 335544435,
"sqlerr", 335544436,
"wrodynver", 335544437,
"funnotdef", 335544438,
"funmismat", 335544439,
"bad_msg_vec", 335544440,
"bad_detach", 335544441,
"noargacc_read", 335544442,
"noargacc_write", 335544443,
"read_only", 335544444,
"ext_err", 335544445,
"non_updatable", 335544446,
"no_rollback", 335544447,
"bad_sec_info", 335544448,
"invalid_sec_info", 335544449,
"misc_interpreted", 335544450,
"update_conflict", 335544451,
"unlicensed", 335544452,
"obj_in_use", 335544453,
"nofilter", 335544454,
"shadow_accessed", 335544455,
"invalid_sdl", 335544456,
"out_of_bounds", 335544457,
"invalid_dimension", 335544458,
"rec_in_limbo", 335544459,
"shadow_missing", 335544460,
"cant_validate", 335544461,
"cant_start_journal", 335544462,
"gennotdef", 335544463,
"cant_start_logging", 335544464,
"bad_segstr_type", 335544465,
"foreign_key", 335544466,
"high_minor", 335544467,
"tra_state", 335544468,
"trans_invalid", 335544469,
"buf_invalid", 335544470,
"indexnotdefined", 335544471,
"login", 335544472,
"invalid_bookmark", 335544473,
"bad_lock_level", 335544474,
"relation_lock", 335544475,
"record_lock", 335544476,
"max_idx", 335544477,
"jrn_enable", 335544478,
"old_failure", 335544479,
"old_in_progress", 335544480,
"old_no_space", 335544481,
"no_wal_no_jrn", 335544482,
"num_old_files", 335544483,
"wal_file_open", 335544484,
"bad_stmt_handle", 335544485,
"wal_failure", 335544486,
"walw_err", 335544487,
"logh_small", 335544488,
"logh_inv_version", 335544489,
"logh_open_flag", 335544490,
"logh_open_flag2", 335544491,
"logh_diff_dbname", 335544492,
"logf_unexpected_eof", 335544493,
"logr_incomplete", 335544494,
"logr_header_small", 335544495,
"logb_small", 335544496,
"wal_illegal_attach", 335544497,
"wal_invalid_wpb", 335544498,
"wal_err_rollover", 335544499,
"no_wal", 335544500,
"drop_wal", 335544501,
"stream_not_defined", 335544502,
"wal_subsys_error", 335544503,
"wal_subsys_corrupt", 335544504,
"no_archive", 335544505,
"shutinprog", 335544506,
"range_in_use", 335544507,
"range_not_found", 335544508,
"charset_not_found", 335544509,
"lock_timeout", 335544510,
"prcnotdef", 335544511,
"prcmismat", 335544512,
"wal_bugcheck", 335544513,
"wal_cant_expand", 335544514,
"codnotdef", 335544515,
"xcpnotdef", 335544516,
"except", 335544517,
"cache_restart", 335544518,
"bad_lock_handle", 335544519,
"jrn_present", 335544520,
"wal_err_rollover2", 335544521,
"wal_err_logwrite", 335544522,
"wal_err_jrn_comm", 335544523,
"wal_err_expansion", 335544524,
"wal_err_setup", 335544525,
"wal_err_ww_sync", 335544526,
"wal_err_ww_start", 335544527,
"shutdown", 335544528,
"existing_priv_mod", 335544529,
"primary_key_ref", 335544530,
"primary_key_notnull", 335544531,
"ref_cnstrnt_notfound", 335544532,
"foreign_key_notfound", 335544533,
"ref_cnstrnt_update", 335544534,
"check_cnstrnt_update", 335544535,
"check_cnstrnt_del", 335544536,
"integ_index_seg_del", 335544537,
"integ_index_seg_mod", 335544538,
"integ_index_del", 335544539,
"integ_index_mod", 335544540,
"check_trig_del", 335544541,
"check_trig_update", 335544542,
"cnstrnt_fld_del", 335544543,
"cnstrnt_fld_rename", 335544544,
"rel_cnstrnt_update", 335544545,
"constaint_on_view", 335544546,
"invld_cnstrnt_type", 335544547,
"primary_key_exists", 335544548,
"systrig_update", 335544549,
"not_rel_owner", 335544550,
"grant_obj_notfound", 335544551,
"grant_fld_notfound", 335544552,
"grant_nopriv", 335544553,
"nonsql_security_rel", 335544554,
"nonsql_security_fld", 335544555,
"wal_cache_err", 335544556,
"shutfail", 335544557,
"check_constraint", 335544558,
"bad_svc_handle", 335544559,
"shutwarn", 335544560,
"wrospbver", 335544561,
"bad_spb_form", 335544562,
"svcnotdef", 335544563,
"no_jrn", 335544564,
"transliteration_failed", 335544565,
"start_cm_for_wal", 335544566,
"wal_ovflow_log_required", 335544567,
"text_subtype", 335544568,
"dsql_error", 335544569,
"dsql_command_err", 335544570,
"dsql_constant_err", 335544571,
"dsql_cursor_err", 335544572,
"dsql_datatype_err", 335544573,
"dsql_decl_err", 335544574,
"dsql_cursor_update_err", 335544575,
"dsql_cursor_open_err", 335544576,
"dsql_cursor_close_err", 335544577,
"dsql_field_err", 335544578,
"dsql_internal_err", 335544579,
"dsql_relation_err", 335544580,
"dsql_procedure_err", 335544581,
"dsql_request_err", 335544582,
"dsql_sqlda_err", 335544583,
"dsql_var_count_err", 335544584,
"dsql_stmt_handle", 335544585,
"dsql_function_err", 335544586,
"dsql_blob_err", 335544587,
"collation_not_found", 335544588,
"collation_not_for_charset", 335544589,
"dsql_dup_option", 335544590,
"dsql_tran_err", 335544591,
"dsql_invalid_array", 335544592,
"dsql_max_arr_dim_exceeded", 335544593,
"dsql_arr_range_error", 335544594,
"dsql_trigger_err", 335544595,
"dsql_subselect_err", 335544596,
"dsql_crdb_prepare_err", 335544597,
"specify_field_err", 335544598,
"num_field_err", 335544599,
"col_name_err", 335544600,
"where_err", 335544601,
"table_view_err", 335544602,
"distinct_err", 335544603,
"key_field_count_err", 335544604,
"subquery_err", 335544605,
"expression_eval_err", 335544606,
"node_err", 335544607,
"command_end_err", 335544608,
"index_name", 335544609,
"exception_name", 335544610,
"field_name", 335544611,
"token_err", 335544612,
"union_err", 335544613,
"dsql_construct_err", 335544614,
"field_aggregate_err", 335544615,
"field_ref_err", 335544616,
"order_by_err", 335544617,
"return_mode_err", 335544618,
"extern_func_err", 335544619,
"alias_conflict_err", 335544620,
"procedure_conflict_error", 335544621,
"relation_conflict_err", 335544622,
"dsql_domain_err", 335544623,
"idx_seg_err", 335544624,
"node_name_err", 335544625,
"table_name", 335544626,
"proc_name", 335544627,
"idx_create_err", 335544628,
"wal_shadow_err", 335544629,
"dependency", 335544630,
"idx_key_err", 335544631,
"dsql_file_length_err", 335544632,
"dsql_shadow_number_err", 335544633,
"dsql_token_unk_err", 335544634,
"dsql_no_relation_alias", 335544635,
"indexname", 335544636,
"no_stream_plan", 335544637,
"stream_twice", 335544638,
"stream_not_found", 335544639,
"collation_requires_text", 335544640,
"dsql_domain_not_found", 335544641,
"index_unused", 335544642,
"dsql_self_join", 335544643,
"stream_bof", 335544644,
"stream_crack", 335544645,
"db_or_file_exists", 335544646,
"invalid_operator", 335544647,
"conn_lost", 335544648,
"bad_checksum", 335544649,
"page_type_err", 335544650,
"ext_readonly_err", 335544651,
"sing_select_err", 335544652,
"psw_attach", 335544653,
"psw_start_trans", 335544654,
"invalid_direction", 335544655,
"dsql_var_conflict", 335544656,
"dsql_no_blob_array", 335544657,
"dsql_base_table", 335544658,
"duplicate_base_table", 335544659,
"view_alias", 335544660,
"index_root_page_full", 335544661,
"dsql_blob_type_unknown", 335544662,
"req_max_clones_exceeded", 335544663,
"dsql_duplicate_spec", 335544664,
"unique_key_violation", 335544665,
"srvr_version_too_old", 335544666,
"drdb_completed_with_errs", 335544667,
"dsql_procedure_use_err", 335544668,
"dsql_count_mismatch", 335544669,
"blob_idx_err", 335544670,
"array_idx_err", 335544671,
"key_field_err", 335544672,
"no_delete", 335544673,
"del_last_field", 335544674,
"sort_err", 335544675,
"sort_mem_err", 335544676,
"version_err", 335544677,
"inval_key_posn", 335544678,
"no_segments_err", 335544679,
"crrp_data_err", 335544680,
"rec_size_err", 335544681,
"dsql_field_ref", 335544682,
"req_depth_exceeded", 335544683,
"no_field_access", 335544684,
"no_dbkey", 335544685,
"jrn_format_err", 335544686,
"jrn_file_full", 335544687,
"dsql_open_cursor_request", 335544688,
"ib_error", 335544689,
"cache_redef", 335544690,
"cache_too_small", 335544691,
"log_redef", 335544692,
"log_too_small", 335544693,
"partition_too_small", 335544694,
"partition_not_supp", 335544695,
"log_length_spec", 335544696,
"precision_err", 335544697,
"scale_nogt", 335544698,
"expec_short", 335544699,
"expec_long", 335544700,
"expec_ushort", 335544701,
"like_escape_invalid", 335544702,
"svcnoexe", 335544703,
"net_lookup_err", 335544704,
"service_unknown", 335544705,
"host_unknown", 335544706,
"grant_nopriv_on_base", 335544707,
"dyn_fld_ambiguous", 335544708,
"dsql_agg_ref_err", 335544709,
"complex_view", 335544710,
"unprepared_stmt", 335544711,
"expec_positive", 335544712,
"dsql_sqlda_value_err", 335544713,
"invalid_array_id", 335544714,
"extfile_uns_op", 335544715,
"svc_in_use", 335544716,
"err_stack_limit", 335544717,
"invalid_key", 335544718,
"net_init_error", 335544719,
"loadlib_failure", 335544720,
"network_error", 335544721,
"net_connect_err", 335544722,
"net_connect_listen_err", 335544723,
"net_event_connect_err", 335544724,
"net_event_listen_err", 335544725,
"net_read_err", 335544726,
"net_write_err", 335544727,
"integ_index_deactivate", 335544728,
"integ_deactivate_primary", 335544729,
"cse_not_supported", 335544730,
"tra_must_sweep", 335544731,
"unsupported_network_drive", 335544732,
"io_create_err", 335544733,
"io_open_err", 335544734,
"io_close_err", 335544735,
"io_read_err", 335544736,
"io_write_err", 335544737,
"io_delete_err", 335544738,
"io_access_err", 335544739,
"udf_exception", 335544740,
"lost_db_connection", 335544741,
"no_write_user_priv", 335544742,
"token_too_long", 335544743,
"max_att_exceeded", 335544744,
"login_same_as_role_name", 335544745,
"reftable_requires_pk", 335544746,
"usrname_too_long", 335544747,
"password_too_long", 335544748,
"usrname_required", 335544749,
"password_required", 335544750,
"bad_protocol", 335544751,
"dup_usrname_found", 335544752,
"usrname_not_found", 335544753,
"error_adding_sec_record", 335544754,
"error_modifying_sec_record", 335544755,
"error_deleting_sec_record", 335544756,
"error_updating_sec_db", 335544757,
"sort_rec_size_err", 335544758,
"bad_default_value", 335544759,
"invalid_clause", 335544760,
"too_many_handles", 335544761,
"optimizer_blk_exc", 335544762,
"invalid_string_constant", 335544763,
"transitional_date", 335544764,
"read_only_database", 335544765,
"must_be_dialect_2_and_up", 335544766,
"blob_filter_exception", 335544767,
"exception_access_violation", 335544768,
"exception_datatype_missalignmen", 335544769,
"exception_array_bounds_exceeded", 335544770,
"exception_float_denormal_operan", 335544771,
"exception_float_divide_by_zero", 335544772,
"exception_float_inexact_result", 335544773,
"exception_float_invalid_operand", 335544774,
"exception_float_overflow", 335544775,
"exception_float_stack_check", 335544776,
"exception_float_underflow", 335544777,
"exception_integer_divide_by_zer", 335544778,
"exception_integer_overflow", 335544779,
"exception_unknown", 335544780,
"exception_stack_overflow", 335544781,
"exception_sigsegv", 335544782,
"exception_sigill", 335544783,
"exception_sigbus", 335544784,
"exception_sigfpe", 335544785,
"ext_file_delete", 335544786,
"ext_file_modify", 335544787,
"adm_task_denied", 335544788,
"extract_input_mismatch", 335544789,
"insufficient_svc_privileges", 335544790,
"file_in_use", 335544791,
"service_att_err", 335544792,
"ddl_not_allowed_by_db_sql_dial", 335544793,
"cancelled", 335544794,
"unexp_spb_form", 335544795,
"sql_dialect_datatype_unsupport", 335544796,
"svcnouser", 335544797,
"depend_on_uncommitted_rel", 335544798,
"svc_name_missing", 335544799,
"too_many_contexts", 335544800,
"datype_notsup", 335544801,
"dialect_reset_warning", 335544802,
"dialect_not_changed", 335544803,
"database_create_failed", 335544804,
"inv_dialect_specified", 335544805,
"valid_db_dialects", 335544806,
"sqlwarn", 335544807,
"dtype_renamed", 335544808,
"extern_func_dir_error", 335544809,
"date_range_exceeded", 335544810,
"inv_client_dialect_specified", 335544811,
"valid_client_dialects", 335544812,
"optimizer_between_err", 335544813,
"service_not_supported", 335544814,
"gfix_db_name", 335740929,
"gfix_invalid_sw", 335740930,
"gfix_incmp_sw", 335740932,
"gfix_replay_req", 335740933,
"gfix_pgbuf_req", 335740934,
"gfix_val_req", 335740935,
"gfix_pval_req", 335740936,
"gfix_trn_req", 335740937,
"gfix_full_req", 335740940,
"gfix_usrname_req", 335740941,
"gfix_pass_req", 335740942,
"gfix_subs_name", 335740943,
"gfix_wal_req", 335740944,
"gfix_sec_req", 335740945,
"gfix_nval_req", 335740946,
"gfix_type_shut", 335740947,
"gfix_retry", 335740948,
"gfix_retry_db", 335740951,
"gfix_exceed_max", 335740991,
"gfix_corrupt_pool", 335740992,
"gfix_mem_exhausted", 335740993,
"gfix_bad_pool", 335740994,
"gfix_trn_not_valid", 335740995,
"gfix_unexp_eoi", 335741012,
"gfix_recon_fail", 335741018,
"gfix_trn_unknown", 335741036,
"gfix_mode_req", 335741038,
"gfix_opt_SQL_dialect", 335741039,
"dsql_dbkey_from_non_table", 336003074,
"dsql_transitional_numeric", 336003075,
"dsql_dialect_warning_expr", 336003076,
"sql_db_dialect_dtype_unsupport", 336003077,
"isc_sql_dialect_conflict_num", 336003079,
"dsql_warning_number_ambiguous", 336003080,
"dsql_warning_number_ambiguous1", 336003081,
"dsql_warn_precision_ambiguous", 336003082,
"dsql_warn_precision_ambiguous1", 336003083,
"dsql_warn_precision_ambiguous2", 336003084,
"dyn_role_does_not_exist", 336068796,
"dyn_no_grant_admin_opt", 336068797,
"dyn_user_not_role_member", 336068798,
"dyn_delete_role_failed", 336068799,
"dyn_grant_role_to_user", 336068800,
"dyn_inv_sql_role_name", 336068801,
"dyn_dup_sql_role", 336068802,
"dyn_kywd_spec_for_role", 336068803,
"dyn_roles_not_supported", 336068804,
"dyn_domain_name_exists", 336068812,
"dyn_field_name_exists", 336068813,
"dyn_dependency_exists", 336068814,
"dyn_dtype_invalid", 336068815,
"dyn_char_fld_too_small", 336068816,
"dyn_invalid_dtype_conversion", 336068817,
"dyn_dtype_conv_invalid", 336068818,
"dyn_zero_len_id", 336068820,
"gbak_unknown_switch", 336330753,
"gbak_page_size_missing", 336330754,
"gbak_page_size_toobig", 336330755,
"gbak_redir_ouput_missing", 336330756,
"gbak_switches_conflict", 336330757,
"gbak_unknown_device", 336330758,
"gbak_no_protection", 336330759,
"gbak_page_size_not_allowed", 336330760,
"gbak_multi_source_dest", 336330761,
"gbak_filename_missing", 336330762,
"gbak_dup_inout_names", 336330763,
"gbak_inv_page_size", 336330764,
"gbak_db_specified", 336330765,
"gbak_db_exists", 336330766,
"gbak_unk_device", 336330767,
"gbak_blob_info_failed", 336330772,
"gbak_unk_blob_item", 336330773,
"gbak_get_seg_failed", 336330774,
"gbak_close_blob_failed", 336330775,
"gbak_open_blob_failed", 336330776,
"gbak_put_blr_gen_id_failed", 336330777,
"gbak_unk_type", 336330778,
"gbak_comp_req_failed", 336330779,
"gbak_start_req_failed", 336330780,
"gbak_rec_failed", 336330781,
"gbak_rel_req_failed", 336330782,
"gbak_db_info_failed", 336330783,
"gbak_no_db_desc", 336330784,
"gbak_db_create_failed", 336330785,
"gbak_decomp_len_error", 336330786,
"gbak_tbl_missing", 336330787,
"gbak_blob_col_missing", 336330788,
"gbak_create_blob_failed", 336330789,
"gbak_put_seg_failed", 336330790,
"gbak_rec_len_exp", 336330791,
"gbak_inv_rec_len", 336330792,
"gbak_exp_data_type", 336330793,
"gbak_gen_id_failed", 336330794,
"gbak_unk_rec_type", 336330795,
"gbak_inv_bkup_ver", 336330796,
"gbak_missing_bkup_desc", 336330797,
"gbak_string_trunc", 336330798,
"gbak_cant_rest_record", 336330799,
"gbak_send_failed", 336330800,
"gbak_no_tbl_name", 336330801,
"gbak_unexp_eof", 336330802,
"gbak_db_format_too_old", 336330803,
"gbak_inv_array_dim", 336330804,
"gbak_xdr_len_expected", 336330807,
"gbak_open_bkup_error", 336330817,
"gbak_open_error", 336330818,
"gbak_missing_block_fac", 336330934,
"gbak_inv_block_fac", 336330935,
"gbak_block_fac_specified", 336330936,
"gbak_missing_username", 336330940,
"gbak_missing_password", 336330941,
"gbak_missing_skipped_bytes", 336330952,
"gbak_inv_skipped_bytes", 336330953,
"gbak_err_restore_charset", 336330965,
"gbak_err_restore_collation", 336330967,
"gbak_read_error", 336330972,
"gbak_write_error", 336330973,
"gbak_db_in_use", 336330985,
"gbak_sysmemex", 336330990,
"gbak_restore_role_failed", 336331002,
"gbak_role_op_missing", 336331005,
"gbak_page_buffers_missing", 336331010,
"gbak_page_buffers_wrong_param", 336331011,
"gbak_page_buffers_restore", 336331012,
"gbak_inv_size", 336331014,
"gbak_file_outof_sequence", 336331015,
"gbak_join_file_missing", 336331016,
"gbak_stdin_not_supptd", 336331017,
"gbak_stdout_not_supptd", 336331018,
"gbak_bkup_corrupt", 336331019,
"gbak_unk_db_file_spec", 336331020,
"gbak_hdr_write_failed", 336331021,
"gbak_disk_space_ex", 336331022,
"gbak_size_lt_min", 336331023,
"gbak_svc_name_missing", 336331025,
"gbak_not_ownr", 336331026,
"gbak_mode_req", 336331031,
"gsec_cant_open_db", 336723983,
"gsec_switches_error", 336723984,
"gsec_no_op_spec", 336723985,
"gsec_no_usr_name", 336723986,
"gsec_err_add", 336723987,
"gsec_err_modify", 336723988,
"gsec_err_find_mod", 336723989,
"gsec_err_rec_not_found", 336723990,
"gsec_err_delete", 336723991,
"gsec_err_find_del", 336723992,
"gsec_err_find_disp", 336723996,
"gsec_inv_param", 336723997,
"gsec_op_specified", 336723998,
"gsec_pw_specified", 336723999,
"gsec_uid_specified", 336724000,
"gsec_gid_specified", 336724001,
"gsec_proj_specified", 336724002,
"gsec_org_specified", 336724003,
"gsec_fname_specified", 336724004,
"gsec_mname_specified", 336724005,
"gsec_lname_specified", 336724006,
"gsec_inv_switch", 336724008,
"gsec_amb_switch", 336724009,
"gsec_no_op_specified", 336724010,
"gsec_params_not_allowed", 336724011,
"gsec_incompat_switch", 336724012,
"gsec_inv_username", 336724044,
"gsec_inv_pw_length", 336724045,
"gsec_db_specified", 336724046,
"gsec_db_admin_specified", 336724047,
"gsec_db_admin_pw_specified", 336724048,
"gsec_sql_role_specified", 336724049,
"license_no_file", 336789504,
"license_op_specified", 336789523,
"license_op_missing", 336789524,
"license_inv_switch", 336789525,
"license_inv_switch_combo", 336789526,
"license_inv_op_combo", 336789527,
"license_amb_switch", 336789528,
"license_inv_parameter", 336789529,
"license_param_specified", 336789530,
"license_param_req", 336789531,
"license_syntx_error", 336789532,
"license_dup_id", 336789534,
"license_inv_id_key", 336789535,
"license_err_remove", 336789536,
"license_err_update", 336789537,
"license_err_convert", 336789538,
"license_err_unk", 336789539,
"license_svc_err_add", 336789540,
"license_svc_err_remove", 336789541,
"license_eval_exists", 336789563,
"gstat_unknown_switch", 336920577,
"gstat_retry", 336920578,
"gstat_wrong_ods", 336920579,
"gstat_unexpected_eof", 336920580,
"gstat_open_err", 336920605,
"gstat_read_err", 336920606,
"gstat_sysmemex", 336920607,

View File

@ -0,0 +1,9 @@
gds_codes.pas
gds_codes.ftn
codes.h
iberror.h
codetext.h
msgs.h
rdb_codes.h
sql_code.h
msg_facs.h

View File

@ -0,0 +1,727 @@
/*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
/*
*
* File generated by codes.e - do not edit!
*
*/
/*
* MODULE: iberror.h
* DESCRIPTION: ISC error codes
*
*/
/***********************/
/* ISC Error Codes */
/***********************/
#define isc_arith_except 335544321L
#define isc_bad_dbkey 335544322L
#define isc_bad_db_format 335544323L
#define isc_bad_db_handle 335544324L
#define isc_bad_dpb_content 335544325L
#define isc_bad_dpb_form 335544326L
#define isc_bad_req_handle 335544327L
#define isc_bad_segstr_handle 335544328L
#define isc_bad_segstr_id 335544329L
#define isc_bad_tpb_content 335544330L
#define isc_bad_tpb_form 335544331L
#define isc_bad_trans_handle 335544332L
#define isc_bug_check 335544333L
#define isc_convert_error 335544334L
#define isc_db_corrupt 335544335L
#define isc_deadlock 335544336L
#define isc_excess_trans 335544337L
#define isc_from_no_match 335544338L
#define isc_infinap 335544339L
#define isc_infona 335544340L
#define isc_infunk 335544341L
#define isc_integ_fail 335544342L
#define isc_invalid_blr 335544343L
#define isc_io_error 335544344L
#define isc_lock_conflict 335544345L
#define isc_metadata_corrupt 335544346L
#define isc_not_valid 335544347L
#define isc_no_cur_rec 335544348L
#define isc_no_dup 335544349L
#define isc_no_finish 335544350L
#define isc_no_meta_update 335544351L
#define isc_no_priv 335544352L
#define isc_no_recon 335544353L
#define isc_no_record 335544354L
#define isc_no_segstr_close 335544355L
#define isc_obsolete_metadata 335544356L
#define isc_open_trans 335544357L
#define isc_port_len 335544358L
#define isc_read_only_field 335544359L
#define isc_read_only_rel 335544360L
#define isc_read_only_trans 335544361L
#define isc_read_only_view 335544362L
#define isc_req_no_trans 335544363L
#define isc_req_sync 335544364L
#define isc_req_wrong_db 335544365L
#define isc_segment 335544366L
#define isc_segstr_eof 335544367L
#define isc_segstr_no_op 335544368L
#define isc_segstr_no_read 335544369L
#define isc_segstr_no_trans 335544370L
#define isc_segstr_no_write 335544371L
#define isc_segstr_wrong_db 335544372L
#define isc_sys_request 335544373L
#define isc_stream_eof 335544374L
#define isc_unavailable 335544375L
#define isc_unres_rel 335544376L
#define isc_uns_ext 335544377L
#define isc_wish_list 335544378L
#define isc_wrong_ods 335544379L
#define isc_wronumarg 335544380L
#define isc_imp_exc 335544381L
#define isc_random 335544382L
#define isc_fatal_conflict 335544383L
#define isc_badblk 335544384L
#define isc_invpoolcl 335544385L
#define isc_nopoolids 335544386L
#define isc_relbadblk 335544387L
#define isc_blktoobig 335544388L
#define isc_bufexh 335544389L
#define isc_syntaxerr 335544390L
#define isc_bufinuse 335544391L
#define isc_bdbincon 335544392L
#define isc_reqinuse 335544393L
#define isc_badodsver 335544394L
#define isc_relnotdef 335544395L
#define isc_fldnotdef 335544396L
#define isc_dirtypage 335544397L
#define isc_waifortra 335544398L
#define isc_doubleloc 335544399L
#define isc_nodnotfnd 335544400L
#define isc_dupnodfnd 335544401L
#define isc_locnotmar 335544402L
#define isc_badpagtyp 335544403L
#define isc_corrupt 335544404L
#define isc_badpage 335544405L
#define isc_badindex 335544406L
#define isc_dbbnotzer 335544407L
#define isc_tranotzer 335544408L
#define isc_trareqmis 335544409L
#define isc_badhndcnt 335544410L
#define isc_wrotpbver 335544411L
#define isc_wroblrver 335544412L
#define isc_wrodpbver 335544413L
#define isc_blobnotsup 335544414L
#define isc_badrelation 335544415L
#define isc_nodetach 335544416L
#define isc_notremote 335544417L
#define isc_trainlim 335544418L
#define isc_notinlim 335544419L
#define isc_traoutsta 335544420L
#define isc_connect_reject 335544421L
#define isc_dbfile 335544422L
#define isc_orphan 335544423L
#define isc_no_lock_mgr 335544424L
#define isc_ctxinuse 335544425L
#define isc_ctxnotdef 335544426L
#define isc_datnotsup 335544427L
#define isc_badmsgnum 335544428L
#define isc_badparnum 335544429L
#define isc_virmemexh 335544430L
#define isc_blocking_signal 335544431L
#define isc_lockmanerr 335544432L
#define isc_journerr 335544433L
#define isc_keytoobig 335544434L
#define isc_nullsegkey 335544435L
#define isc_sqlerr 335544436L
#define isc_wrodynver 335544437L
#define isc_funnotdef 335544438L
#define isc_funmismat 335544439L
#define isc_bad_msg_vec 335544440L
#define isc_bad_detach 335544441L
#define isc_noargacc_read 335544442L
#define isc_noargacc_write 335544443L
#define isc_read_only 335544444L
#define isc_ext_err 335544445L
#define isc_non_updatable 335544446L
#define isc_no_rollback 335544447L
#define isc_bad_sec_info 335544448L
#define isc_invalid_sec_info 335544449L
#define isc_misc_interpreted 335544450L
#define isc_update_conflict 335544451L
#define isc_unlicensed 335544452L
#define isc_obj_in_use 335544453L
#define isc_nofilter 335544454L
#define isc_shadow_accessed 335544455L
#define isc_invalid_sdl 335544456L
#define isc_out_of_bounds 335544457L
#define isc_invalid_dimension 335544458L
#define isc_rec_in_limbo 335544459L
#define isc_shadow_missing 335544460L
#define isc_cant_validate 335544461L
#define isc_cant_start_journal 335544462L
#define isc_gennotdef 335544463L
#define isc_cant_start_logging 335544464L
#define isc_bad_segstr_type 335544465L
#define isc_foreign_key 335544466L
#define isc_high_minor 335544467L
#define isc_tra_state 335544468L
#define isc_trans_invalid 335544469L
#define isc_buf_invalid 335544470L
#define isc_indexnotdefined 335544471L
#define isc_login 335544472L
#define isc_invalid_bookmark 335544473L
#define isc_bad_lock_level 335544474L
#define isc_relation_lock 335544475L
#define isc_record_lock 335544476L
#define isc_max_idx 335544477L
#define isc_jrn_enable 335544478L
#define isc_old_failure 335544479L
#define isc_old_in_progress 335544480L
#define isc_old_no_space 335544481L
#define isc_no_wal_no_jrn 335544482L
#define isc_num_old_files 335544483L
#define isc_wal_file_open 335544484L
#define isc_bad_stmt_handle 335544485L
#define isc_wal_failure 335544486L
#define isc_walw_err 335544487L
#define isc_logh_small 335544488L
#define isc_logh_inv_version 335544489L
#define isc_logh_open_flag 335544490L
#define isc_logh_open_flag2 335544491L
#define isc_logh_diff_dbname 335544492L
#define isc_logf_unexpected_eof 335544493L
#define isc_logr_incomplete 335544494L
#define isc_logr_header_small 335544495L
#define isc_logb_small 335544496L
#define isc_wal_illegal_attach 335544497L
#define isc_wal_invalid_wpb 335544498L
#define isc_wal_err_rollover 335544499L
#define isc_no_wal 335544500L
#define isc_drop_wal 335544501L
#define isc_stream_not_defined 335544502L
#define isc_wal_subsys_error 335544503L
#define isc_wal_subsys_corrupt 335544504L
#define isc_no_archive 335544505L
#define isc_shutinprog 335544506L
#define isc_range_in_use 335544507L
#define isc_range_not_found 335544508L
#define isc_charset_not_found 335544509L
#define isc_lock_timeout 335544510L
#define isc_prcnotdef 335544511L
#define isc_prcmismat 335544512L
#define isc_wal_bugcheck 335544513L
#define isc_wal_cant_expand 335544514L
#define isc_codnotdef 335544515L
#define isc_xcpnotdef 335544516L
#define isc_except 335544517L
#define isc_cache_restart 335544518L
#define isc_bad_lock_handle 335544519L
#define isc_jrn_present 335544520L
#define isc_wal_err_rollover2 335544521L
#define isc_wal_err_logwrite 335544522L
#define isc_wal_err_jrn_comm 335544523L
#define isc_wal_err_expansion 335544524L
#define isc_wal_err_setup 335544525L
#define isc_wal_err_ww_sync 335544526L
#define isc_wal_err_ww_start 335544527L
#define isc_shutdown 335544528L
#define isc_existing_priv_mod 335544529L
#define isc_primary_key_ref 335544530L
#define isc_primary_key_notnull 335544531L
#define isc_ref_cnstrnt_notfound 335544532L
#define isc_foreign_key_notfound 335544533L
#define isc_ref_cnstrnt_update 335544534L
#define isc_check_cnstrnt_update 335544535L
#define isc_check_cnstrnt_del 335544536L
#define isc_integ_index_seg_del 335544537L
#define isc_integ_index_seg_mod 335544538L
#define isc_integ_index_del 335544539L
#define isc_integ_index_mod 335544540L
#define isc_check_trig_del 335544541L
#define isc_check_trig_update 335544542L
#define isc_cnstrnt_fld_del 335544543L
#define isc_cnstrnt_fld_rename 335544544L
#define isc_rel_cnstrnt_update 335544545L
#define isc_constaint_on_view 335544546L
#define isc_invld_cnstrnt_type 335544547L
#define isc_primary_key_exists 335544548L
#define isc_systrig_update 335544549L
#define isc_not_rel_owner 335544550L
#define isc_grant_obj_notfound 335544551L
#define isc_grant_fld_notfound 335544552L
#define isc_grant_nopriv 335544553L
#define isc_nonsql_security_rel 335544554L
#define isc_nonsql_security_fld 335544555L
#define isc_wal_cache_err 335544556L
#define isc_shutfail 335544557L
#define isc_check_constraint 335544558L
#define isc_bad_svc_handle 335544559L
#define isc_shutwarn 335544560L
#define isc_wrospbver 335544561L
#define isc_bad_spb_form 335544562L
#define isc_svcnotdef 335544563L
#define isc_no_jrn 335544564L
#define isc_transliteration_failed 335544565L
#define isc_start_cm_for_wal 335544566L
#define isc_wal_ovflow_log_required 335544567L
#define isc_text_subtype 335544568L
#define isc_dsql_error 335544569L
#define isc_dsql_command_err 335544570L
#define isc_dsql_constant_err 335544571L
#define isc_dsql_cursor_err 335544572L
#define isc_dsql_datatype_err 335544573L
#define isc_dsql_decl_err 335544574L
#define isc_dsql_cursor_update_err 335544575L
#define isc_dsql_cursor_open_err 335544576L
#define isc_dsql_cursor_close_err 335544577L
#define isc_dsql_field_err 335544578L
#define isc_dsql_internal_err 335544579L
#define isc_dsql_relation_err 335544580L
#define isc_dsql_procedure_err 335544581L
#define isc_dsql_request_err 335544582L
#define isc_dsql_sqlda_err 335544583L
#define isc_dsql_var_count_err 335544584L
#define isc_dsql_stmt_handle 335544585L
#define isc_dsql_function_err 335544586L
#define isc_dsql_blob_err 335544587L
#define isc_collation_not_found 335544588L
#define isc_collation_not_for_charset 335544589L
#define isc_dsql_dup_option 335544590L
#define isc_dsql_tran_err 335544591L
#define isc_dsql_invalid_array 335544592L
#define isc_dsql_max_arr_dim_exceeded 335544593L
#define isc_dsql_arr_range_error 335544594L
#define isc_dsql_trigger_err 335544595L
#define isc_dsql_subselect_err 335544596L
#define isc_dsql_crdb_prepare_err 335544597L
#define isc_specify_field_err 335544598L
#define isc_num_field_err 335544599L
#define isc_col_name_err 335544600L
#define isc_where_err 335544601L
#define isc_table_view_err 335544602L
#define isc_distinct_err 335544603L
#define isc_key_field_count_err 335544604L
#define isc_subquery_err 335544605L
#define isc_expression_eval_err 335544606L
#define isc_node_err 335544607L
#define isc_command_end_err 335544608L
#define isc_index_name 335544609L
#define isc_exception_name 335544610L
#define isc_field_name 335544611L
#define isc_token_err 335544612L
#define isc_union_err 335544613L
#define isc_dsql_construct_err 335544614L
#define isc_field_aggregate_err 335544615L
#define isc_field_ref_err 335544616L
#define isc_order_by_err 335544617L
#define isc_return_mode_err 335544618L
#define isc_extern_func_err 335544619L
#define isc_alias_conflict_err 335544620L
#define isc_procedure_conflict_error 335544621L
#define isc_relation_conflict_err 335544622L
#define isc_dsql_domain_err 335544623L
#define isc_idx_seg_err 335544624L
#define isc_node_name_err 335544625L
#define isc_table_name 335544626L
#define isc_proc_name 335544627L
#define isc_idx_create_err 335544628L
#define isc_wal_shadow_err 335544629L
#define isc_dependency 335544630L
#define isc_idx_key_err 335544631L
#define isc_dsql_file_length_err 335544632L
#define isc_dsql_shadow_number_err 335544633L
#define isc_dsql_token_unk_err 335544634L
#define isc_dsql_no_relation_alias 335544635L
#define isc_indexname 335544636L
#define isc_no_stream_plan 335544637L
#define isc_stream_twice 335544638L
#define isc_stream_not_found 335544639L
#define isc_collation_requires_text 335544640L
#define isc_dsql_domain_not_found 335544641L
#define isc_index_unused 335544642L
#define isc_dsql_self_join 335544643L
#define isc_stream_bof 335544644L
#define isc_stream_crack 335544645L
#define isc_db_or_file_exists 335544646L
#define isc_invalid_operator 335544647L
#define isc_conn_lost 335544648L
#define isc_bad_checksum 335544649L
#define isc_page_type_err 335544650L
#define isc_ext_readonly_err 335544651L
#define isc_sing_select_err 335544652L
#define isc_psw_attach 335544653L
#define isc_psw_start_trans 335544654L
#define isc_invalid_direction 335544655L
#define isc_dsql_var_conflict 335544656L
#define isc_dsql_no_blob_array 335544657L
#define isc_dsql_base_table 335544658L
#define isc_duplicate_base_table 335544659L
#define isc_view_alias 335544660L
#define isc_index_root_page_full 335544661L
#define isc_dsql_blob_type_unknown 335544662L
#define isc_req_max_clones_exceeded 335544663L
#define isc_dsql_duplicate_spec 335544664L
#define isc_unique_key_violation 335544665L
#define isc_srvr_version_too_old 335544666L
#define isc_drdb_completed_with_errs 335544667L
#define isc_dsql_procedure_use_err 335544668L
#define isc_dsql_count_mismatch 335544669L
#define isc_blob_idx_err 335544670L
#define isc_array_idx_err 335544671L
#define isc_key_field_err 335544672L
#define isc_no_delete 335544673L
#define isc_del_last_field 335544674L
#define isc_sort_err 335544675L
#define isc_sort_mem_err 335544676L
#define isc_version_err 335544677L
#define isc_inval_key_posn 335544678L
#define isc_no_segments_err 335544679L
#define isc_crrp_data_err 335544680L
#define isc_rec_size_err 335544681L
#define isc_dsql_field_ref 335544682L
#define isc_req_depth_exceeded 335544683L
#define isc_no_field_access 335544684L
#define isc_no_dbkey 335544685L
#define isc_jrn_format_err 335544686L
#define isc_jrn_file_full 335544687L
#define isc_dsql_open_cursor_request 335544688L
#define isc_ib_error 335544689L
#define isc_cache_redef 335544690L
#define isc_cache_too_small 335544691L
#define isc_log_redef 335544692L
#define isc_log_too_small 335544693L
#define isc_partition_too_small 335544694L
#define isc_partition_not_supp 335544695L
#define isc_log_length_spec 335544696L
#define isc_precision_err 335544697L
#define isc_scale_nogt 335544698L
#define isc_expec_short 335544699L
#define isc_expec_long 335544700L
#define isc_expec_ushort 335544701L
#define isc_like_escape_invalid 335544702L
#define isc_svcnoexe 335544703L
#define isc_net_lookup_err 335544704L
#define isc_service_unknown 335544705L
#define isc_host_unknown 335544706L
#define isc_grant_nopriv_on_base 335544707L
#define isc_dyn_fld_ambiguous 335544708L
#define isc_dsql_agg_ref_err 335544709L
#define isc_complex_view 335544710L
#define isc_unprepared_stmt 335544711L
#define isc_expec_positive 335544712L
#define isc_dsql_sqlda_value_err 335544713L
#define isc_invalid_array_id 335544714L
#define isc_extfile_uns_op 335544715L
#define isc_svc_in_use 335544716L
#define isc_err_stack_limit 335544717L
#define isc_invalid_key 335544718L
#define isc_net_init_error 335544719L
#define isc_loadlib_failure 335544720L
#define isc_network_error 335544721L
#define isc_net_connect_err 335544722L
#define isc_net_connect_listen_err 335544723L
#define isc_net_event_connect_err 335544724L
#define isc_net_event_listen_err 335544725L
#define isc_net_read_err 335544726L
#define isc_net_write_err 335544727L
#define isc_integ_index_deactivate 335544728L
#define isc_integ_deactivate_primary 335544729L
#define isc_cse_not_supported 335544730L
#define isc_tra_must_sweep 335544731L
#define isc_unsupported_network_drive 335544732L
#define isc_io_create_err 335544733L
#define isc_io_open_err 335544734L
#define isc_io_close_err 335544735L
#define isc_io_read_err 335544736L
#define isc_io_write_err 335544737L
#define isc_io_delete_err 335544738L
#define isc_io_access_err 335544739L
#define isc_udf_exception 335544740L
#define isc_lost_db_connection 335544741L
#define isc_no_write_user_priv 335544742L
#define isc_token_too_long 335544743L
#define isc_max_att_exceeded 335544744L
#define isc_login_same_as_role_name 335544745L
#define isc_reftable_requires_pk 335544746L
#define isc_usrname_too_long 335544747L
#define isc_password_too_long 335544748L
#define isc_usrname_required 335544749L
#define isc_password_required 335544750L
#define isc_bad_protocol 335544751L
#define isc_dup_usrname_found 335544752L
#define isc_usrname_not_found 335544753L
#define isc_error_adding_sec_record 335544754L
#define isc_error_modifying_sec_record 335544755L
#define isc_error_deleting_sec_record 335544756L
#define isc_error_updating_sec_db 335544757L
#define isc_sort_rec_size_err 335544758L
#define isc_bad_default_value 335544759L
#define isc_invalid_clause 335544760L
#define isc_too_many_handles 335544761L
#define isc_optimizer_blk_exc 335544762L
#define isc_invalid_string_constant 335544763L
#define isc_transitional_date 335544764L
#define isc_read_only_database 335544765L
#define isc_must_be_dialect_2_and_up 335544766L
#define isc_blob_filter_exception 335544767L
#define isc_exception_access_violation 335544768L
#define isc_exception_datatype_missalignment 335544769L
#define isc_exception_array_bounds_exceeded 335544770L
#define isc_exception_float_denormal_operand 335544771L
#define isc_exception_float_divide_by_zero 335544772L
#define isc_exception_float_inexact_result 335544773L
#define isc_exception_float_invalid_operand 335544774L
#define isc_exception_float_overflow 335544775L
#define isc_exception_float_stack_check 335544776L
#define isc_exception_float_underflow 335544777L
#define isc_exception_integer_divide_by_zero 335544778L
#define isc_exception_integer_overflow 335544779L
#define isc_exception_unknown 335544780L
#define isc_exception_stack_overflow 335544781L
#define isc_exception_sigsegv 335544782L
#define isc_exception_sigill 335544783L
#define isc_exception_sigbus 335544784L
#define isc_exception_sigfpe 335544785L
#define isc_ext_file_delete 335544786L
#define isc_ext_file_modify 335544787L
#define isc_adm_task_denied 335544788L
#define isc_extract_input_mismatch 335544789L
#define isc_insufficient_svc_privileges 335544790L
#define isc_file_in_use 335544791L
#define isc_service_att_err 335544792L
#define isc_ddl_not_allowed_by_db_sql_dial 335544793L
#define isc_cancelled 335544794L
#define isc_unexp_spb_form 335544795L
#define isc_sql_dialect_datatype_unsupport 335544796L
#define isc_svcnouser 335544797L
#define isc_depend_on_uncommitted_rel 335544798L
#define isc_svc_name_missing 335544799L
#define isc_too_many_contexts 335544800L
#define isc_datype_notsup 335544801L
#define isc_dialect_reset_warning 335544802L
#define isc_dialect_not_changed 335544803L
#define isc_database_create_failed 335544804L
#define isc_inv_dialect_specified 335544805L
#define isc_valid_db_dialects 335544806L
#define isc_sqlwarn 335544807L
#define isc_dtype_renamed 335544808L
#define isc_extern_func_dir_error 335544809L
#define isc_date_range_exceeded 335544810L
#define isc_inv_client_dialect_specified 335544811L
#define isc_valid_client_dialects 335544812L
#define isc_optimizer_between_err 335544813L
#define isc_service_not_supported 335544814L
#define isc_gfix_db_name 335740929L
#define isc_gfix_invalid_sw 335740930L
#define isc_gfix_incmp_sw 335740932L
#define isc_gfix_replay_req 335740933L
#define isc_gfix_pgbuf_req 335740934L
#define isc_gfix_val_req 335740935L
#define isc_gfix_pval_req 335740936L
#define isc_gfix_trn_req 335740937L
#define isc_gfix_full_req 335740940L
#define isc_gfix_usrname_req 335740941L
#define isc_gfix_pass_req 335740942L
#define isc_gfix_subs_name 335740943L
#define isc_gfix_wal_req 335740944L
#define isc_gfix_sec_req 335740945L
#define isc_gfix_nval_req 335740946L
#define isc_gfix_type_shut 335740947L
#define isc_gfix_retry 335740948L
#define isc_gfix_retry_db 335740951L
#define isc_gfix_exceed_max 335740991L
#define isc_gfix_corrupt_pool 335740992L
#define isc_gfix_mem_exhausted 335740993L
#define isc_gfix_bad_pool 335740994L
#define isc_gfix_trn_not_valid 335740995L
#define isc_gfix_unexp_eoi 335741012L
#define isc_gfix_recon_fail 335741018L
#define isc_gfix_trn_unknown 335741036L
#define isc_gfix_mode_req 335741038L
#define isc_gfix_opt_SQL_dialect 335741039L
#define isc_dsql_dbkey_from_non_table 336003074L
#define isc_dsql_transitional_numeric 336003075L
#define isc_dsql_dialect_warning_expr 336003076L
#define isc_sql_db_dialect_dtype_unsupport 336003077L
#define isc_isc_sql_dialect_conflict_num 336003079L
#define isc_dsql_warning_number_ambiguous 336003080L
#define isc_dsql_warning_number_ambiguous1 336003081L
#define isc_dsql_warn_precision_ambiguous 336003082L
#define isc_dsql_warn_precision_ambiguous1 336003083L
#define isc_dsql_warn_precision_ambiguous2 336003084L
#define isc_dyn_role_does_not_exist 336068796L
#define isc_dyn_no_grant_admin_opt 336068797L
#define isc_dyn_user_not_role_member 336068798L
#define isc_dyn_delete_role_failed 336068799L
#define isc_dyn_grant_role_to_user 336068800L
#define isc_dyn_inv_sql_role_name 336068801L
#define isc_dyn_dup_sql_role 336068802L
#define isc_dyn_kywd_spec_for_role 336068803L
#define isc_dyn_roles_not_supported 336068804L
#define isc_dyn_domain_name_exists 336068812L
#define isc_dyn_field_name_exists 336068813L
#define isc_dyn_dependency_exists 336068814L
#define isc_dyn_dtype_invalid 336068815L
#define isc_dyn_char_fld_too_small 336068816L
#define isc_dyn_invalid_dtype_conversion 336068817L
#define isc_dyn_dtype_conv_invalid 336068818L
#define isc_dyn_zero_len_id 336068820L
#define isc_gbak_unknown_switch 336330753L
#define isc_gbak_page_size_missing 336330754L
#define isc_gbak_page_size_toobig 336330755L
#define isc_gbak_redir_ouput_missing 336330756L
#define isc_gbak_switches_conflict 336330757L
#define isc_gbak_unknown_device 336330758L
#define isc_gbak_no_protection 336330759L
#define isc_gbak_page_size_not_allowed 336330760L
#define isc_gbak_multi_source_dest 336330761L
#define isc_gbak_filename_missing 336330762L
#define isc_gbak_dup_inout_names 336330763L
#define isc_gbak_inv_page_size 336330764L
#define isc_gbak_db_specified 336330765L
#define isc_gbak_db_exists 336330766L
#define isc_gbak_unk_device 336330767L
#define isc_gbak_blob_info_failed 336330772L
#define isc_gbak_unk_blob_item 336330773L
#define isc_gbak_get_seg_failed 336330774L
#define isc_gbak_close_blob_failed 336330775L
#define isc_gbak_open_blob_failed 336330776L
#define isc_gbak_put_blr_gen_id_failed 336330777L
#define isc_gbak_unk_type 336330778L
#define isc_gbak_comp_req_failed 336330779L
#define isc_gbak_start_req_failed 336330780L
#define isc_gbak_rec_failed 336330781L
#define isc_gbak_rel_req_failed 336330782L
#define isc_gbak_db_info_failed 336330783L
#define isc_gbak_no_db_desc 336330784L
#define isc_gbak_db_create_failed 336330785L
#define isc_gbak_decomp_len_error 336330786L
#define isc_gbak_tbl_missing 336330787L
#define isc_gbak_blob_col_missing 336330788L
#define isc_gbak_create_blob_failed 336330789L
#define isc_gbak_put_seg_failed 336330790L
#define isc_gbak_rec_len_exp 336330791L
#define isc_gbak_inv_rec_len 336330792L
#define isc_gbak_exp_data_type 336330793L
#define isc_gbak_gen_id_failed 336330794L
#define isc_gbak_unk_rec_type 336330795L
#define isc_gbak_inv_bkup_ver 336330796L
#define isc_gbak_missing_bkup_desc 336330797L
#define isc_gbak_string_trunc 336330798L
#define isc_gbak_cant_rest_record 336330799L
#define isc_gbak_send_failed 336330800L
#define isc_gbak_no_tbl_name 336330801L
#define isc_gbak_unexp_eof 336330802L
#define isc_gbak_db_format_too_old 336330803L
#define isc_gbak_inv_array_dim 336330804L
#define isc_gbak_xdr_len_expected 336330807L
#define isc_gbak_open_bkup_error 336330817L
#define isc_gbak_open_error 336330818L
#define isc_gbak_missing_block_fac 336330934L
#define isc_gbak_inv_block_fac 336330935L
#define isc_gbak_block_fac_specified 336330936L
#define isc_gbak_missing_username 336330940L
#define isc_gbak_missing_password 336330941L
#define isc_gbak_missing_skipped_bytes 336330952L
#define isc_gbak_inv_skipped_bytes 336330953L
#define isc_gbak_err_restore_charset 336330965L
#define isc_gbak_err_restore_collation 336330967L
#define isc_gbak_read_error 336330972L
#define isc_gbak_write_error 336330973L
#define isc_gbak_db_in_use 336330985L
#define isc_gbak_sysmemex 336330990L
#define isc_gbak_restore_role_failed 336331002L
#define isc_gbak_role_op_missing 336331005L
#define isc_gbak_page_buffers_missing 336331010L
#define isc_gbak_page_buffers_wrong_param 336331011L
#define isc_gbak_page_buffers_restore 336331012L
#define isc_gbak_inv_size 336331014L
#define isc_gbak_file_outof_sequence 336331015L
#define isc_gbak_join_file_missing 336331016L
#define isc_gbak_stdin_not_supptd 336331017L
#define isc_gbak_stdout_not_supptd 336331018L
#define isc_gbak_bkup_corrupt 336331019L
#define isc_gbak_unk_db_file_spec 336331020L
#define isc_gbak_hdr_write_failed 336331021L
#define isc_gbak_disk_space_ex 336331022L
#define isc_gbak_size_lt_min 336331023L
#define isc_gbak_svc_name_missing 336331025L
#define isc_gbak_not_ownr 336331026L
#define isc_gbak_mode_req 336331031L
#define isc_gsec_cant_open_db 336723983L
#define isc_gsec_switches_error 336723984L
#define isc_gsec_no_op_spec 336723985L
#define isc_gsec_no_usr_name 336723986L
#define isc_gsec_err_add 336723987L
#define isc_gsec_err_modify 336723988L
#define isc_gsec_err_find_mod 336723989L
#define isc_gsec_err_rec_not_found 336723990L
#define isc_gsec_err_delete 336723991L
#define isc_gsec_err_find_del 336723992L
#define isc_gsec_err_find_disp 336723996L
#define isc_gsec_inv_param 336723997L
#define isc_gsec_op_specified 336723998L
#define isc_gsec_pw_specified 336723999L
#define isc_gsec_uid_specified 336724000L
#define isc_gsec_gid_specified 336724001L
#define isc_gsec_proj_specified 336724002L
#define isc_gsec_org_specified 336724003L
#define isc_gsec_fname_specified 336724004L
#define isc_gsec_mname_specified 336724005L
#define isc_gsec_lname_specified 336724006L
#define isc_gsec_inv_switch 336724008L
#define isc_gsec_amb_switch 336724009L
#define isc_gsec_no_op_specified 336724010L
#define isc_gsec_params_not_allowed 336724011L
#define isc_gsec_incompat_switch 336724012L
#define isc_gsec_inv_username 336724044L
#define isc_gsec_inv_pw_length 336724045L
#define isc_gsec_db_specified 336724046L
#define isc_gsec_db_admin_specified 336724047L
#define isc_gsec_db_admin_pw_specified 336724048L
#define isc_gsec_sql_role_specified 336724049L
#define isc_license_no_file 336789504L
#define isc_license_op_specified 336789523L
#define isc_license_op_missing 336789524L
#define isc_license_inv_switch 336789525L
#define isc_license_inv_switch_combo 336789526L
#define isc_license_inv_op_combo 336789527L
#define isc_license_amb_switch 336789528L
#define isc_license_inv_parameter 336789529L
#define isc_license_param_specified 336789530L
#define isc_license_param_req 336789531L
#define isc_license_syntx_error 336789532L
#define isc_license_dup_id 336789534L
#define isc_license_inv_id_key 336789535L
#define isc_license_err_remove 336789536L
#define isc_license_err_update 336789537L
#define isc_license_err_convert 336789538L
#define isc_license_err_unk 336789539L
#define isc_license_svc_err_add 336789540L
#define isc_license_svc_err_remove 336789541L
#define isc_license_eval_exists 336789563L
#define isc_gstat_unknown_switch 336920577L
#define isc_gstat_retry 336920578L
#define isc_gstat_wrong_ods 336920579L
#define isc_gstat_unexpected_eof 336920580L
#define isc_gstat_open_err 336920605L
#define isc_gstat_read_err 336920606L
#define isc_gstat_sysmemex 336920607L
#define isc_err_max 690

View File

@ -0,0 +1,52 @@
/*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
/*
*
* File generated by codes.e - do not edit!
*
*/
/*
* MODULE: msg_facs.h
* DESCRIPTION: ISC message facilities
*
*/
/******************************/
/* ISC message facilities */
/******************************/
typedef struct _facilities {
int fac_code;
char *facility;
};
static CONST struct _facilities facilities[] = {
0, "JRD ",
3, "GFIX ",
7, "DSQL ",
8, "DYN ",
12, "GBAK ",
18, "GSEC ",
19, "LICENSE ",
21, "GSTAT ",
0, NULL};

715
src/jrd/boot_codes/msgs.h Normal file
View File

@ -0,0 +1,715 @@
/*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
/*
*
* File generated by codes.e - do not edit!
*
*/
"unassigned code",
"arithmetic exception, numeric overflow, or string truncation", /*1, arith_except */
"invalid database key", /*2, bad_dbkey */
"file %s is not a valid database", /*3, bad_db_format */
"invalid database handle (no active connection)", /*4, bad_db_handle */
"bad parameters on attach or create database", /*5, bad_dpb_content */
"unrecognized database parameter block", /*6, bad_dpb_form */
"invalid request handle", /*7, bad_req_handle */
"invalid BLOB handle", /*8, bad_segstr_handle */
"invalid BLOB ID", /*9, bad_segstr_id */
"invalid parameter in transaction parameter block", /*10, bad_tpb_content */
"invalid format for transaction parameter block", /*11, bad_tpb_form */
"invalid transaction handle (expecting explicit transaction start)", /*12, bad_trans_handle */
"internal gds software consistency check (%s)", /*13, bug_check */
"conversion error from string \"%s\"", /*14, convert_error */
"database file appears corrupt (%s)", /*15, db_corrupt */
"deadlock", /*16, deadlock */
"attempt to start more than %ld transactions", /*17, excess_trans */
"no match for first value expression", /*18, from_no_match */
"information type inappropriate for object specified", /*19, infinap */
"no information of this type available for object specified", /*20, infona */
"unknown information item", /*21, infunk */
"action cancelled by trigger (%ld) to preserve data integrity", /*22, integ_fail */
"invalid request BLR at offset %ld", /*23, invalid_blr */
"I/O error for file %.0s\"%s\"", /*24, io_error */
"lock conflict on no wait transaction", /*25, lock_conflict */
"corrupt system table", /*26, metadata_corrupt */
"validation error for column %s, value \"%s\"", /*27, not_valid */
"no current record for fetch operation", /*28, no_cur_rec */
"attempt to store duplicate value (visible to active transactions) in unique index \"%s\"", /*29, no_dup */
"program attempted to exit without finishing database", /*30, no_finish */
"unsuccessful metadata update", /*31, no_meta_update */
"no permission for %s access to %s %s", /*32, no_priv */
"transaction is not in limbo", /*33, no_recon */
"invalid database key", /*34, no_record */
"BLOB was not closed", /*35, no_segstr_close */
"metadata is obsolete", /*36, obsolete_metadata */
"cannot disconnect database with open transactions (%ld active)", /*37, open_trans */
"message length error (encountered %ld, expected %ld)", /*38, port_len */
"attempted update of read-only column", /*39, read_only_field */
"attempted update of read-only table", /*40, read_only_rel */
"attempted update during read-only transaction", /*41, read_only_trans */
"cannot update read-only view %s", /*42, read_only_view */
"no transaction for request", /*43, req_no_trans */
"request synchronization error", /*44, req_sync */
"request referenced an unavailable database", /*45, req_wrong_db */
"segment buffer length shorter than expected", /*46, segment */
"attempted retrieval of more segments than exist", /*47, segstr_eof */
"attempted invalid operation on a BLOB", /*48, segstr_no_op */
"attempted read of a new, open BLOB", /*49, segstr_no_read */
"attempted action on blob outside transaction", /*50, segstr_no_trans */
"attempted write to read-only BLOB", /*51, segstr_no_write */
"attempted reference to BLOB in unavailable database", /*52, segstr_wrong_db */
"operating system directive %s failed", /*53, sys_request */
"attempt to fetch past the last record in a record stream", /*54, stream_eof */
"unavailable database", /*55, unavailable */
"table %s was omitted from the transaction reserving list", /*56, unres_rel */
"request includes a DSRI extension not supported in this implementation", /*57, uns_ext */
"feature is not supported", /*58, wish_list */
"unsupported on-disk structure for file %s; found %ld, support %ld", /*59, wrong_ods */
"wrong number of arguments on call", /*60, wronumarg */
"Implementation limit exceeded", /*61, imp_exc */
"%s", /*62, random */
"unrecoverable conflict with limbo transaction %ld", /*63, fatal_conflict */
"internal error", /*64, badblk */
"internal error", /*65, invpoolcl */
"too many requests", /*66, nopoolids */
"internal error", /*67, relbadblk */
"block size exceeds implementation restriction", /*68, blktoobig */
"buffer exhausted", /*69, bufexh */
"BLR syntax error: expected %s at offset %ld, encountered %ld", /*70, syntaxerr */
"buffer in use", /*71, bufinuse */
"internal error", /*72, bdbincon */
"request in use", /*73, reqinuse */
"incompatible version of on-disk structure", /*74, badodsver */
"table %s is not defined", /*75, relnotdef */
"column %s is not defined in table %s", /*76, fldnotdef */
"internal error", /*77, dirtypage */
"internal error", /*78, waifortra */
"internal error", /*79, doubleloc */
"internal error", /*80, nodnotfnd */
"internal error", /*81, dupnodfnd */
"internal error", /*82, locnotmar */
"page %ld is of wrong type (expected %ld, found %ld)", /*83, badpagtyp */
"database corrupted", /*84, corrupt */
"checksum error on database page %ld", /*85, badpage */
"index is broken", /*86, badindex */
"database handle not zero", /*87, dbbnotzer */
"transaction handle not zero", /*88, tranotzer */
"transaction--request mismatch (synchronization error)", /*89, trareqmis */
"bad handle count", /*90, badhndcnt */
"wrong version of transaction parameter block", /*91, wrotpbver */
"unsupported BLR version (expected %ld, encountered %ld)", /*92, wroblrver */
"wrong version of database parameter block", /*93, wrodpbver */
"BLOB and array data types are not supported for %s operation", /*94, blobnotsup */
"database corrupted", /*95, badrelation */
"internal error", /*96, nodetach */
"internal error", /*97, notremote */
"transaction in limbo", /*98, trainlim */
"transaction not in limbo", /*99, notinlim */
"transaction outstanding", /*100, traoutsta */
"connection rejected by remote interface", /*101, connect_reject */
"internal error", /*102, dbfile */
"internal error", /*103, orphan */
"no lock manager available", /*104, no_lock_mgr */
"context already in use (BLR error)", /*105, ctxinuse */
"context not defined (BLR error)", /*106, ctxnotdef */
"data operation not supported", /*107, datnotsup */
"undefined message number", /*108, badmsgnum */
"bad parameter number", /*109, badparnum */
"unable to allocate memory from operating system", /*110, virmemexh */
"blocking signal has been received", /*111, blocking_signal */
"lock manager error", /*112, lockmanerr */
"communication error with journal \"%s\"", /*113, journerr */
"key size exceeds implementation restriction for index \"%s\"", /*114, keytoobig */
"null segment of UNIQUE KEY", /*115, nullsegkey */
"SQL error code = %ld", /*116, sqlerr */
"wrong DYN version", /*117, wrodynver */
"function %s is not defined", /*118, funnotdef */
"function %s could not be matched", /*119, funmismat */
"", /*120, bad_msg_vec */
"database detach completed with errors", /*121, bad_detach */
"database system cannot read argument %ld", /*122, noargacc_read */
"database system cannot write argument %ld", /*123, noargacc_write */
"operation not supported", /*124, read_only */
"%s extension error", /*125, ext_err */
"not updatable", /*126, non_updatable */
"no rollback performed", /*127, no_rollback */
"", /*128, bad_sec_info */
"", /*129, invalid_sec_info */
"%s", /*130, misc_interpreted */
"update conflicts with concurrent update", /*131, update_conflict */
"product %s is not licensed", /*132, unlicensed */
"object %s is in use", /*133, obj_in_use */
"filter not found to convert type %ld to type %ld", /*134, nofilter */
"cannot attach active shadow file", /*135, shadow_accessed */
"invalid slice description language at offset %ld", /*136, invalid_sdl */
"subscript out of bounds", /*137, out_of_bounds */
"column not array or invalid dimensions (expected %ld, encountered %ld)", /*138, invalid_dimension */
"record from transaction %ld is stuck in limbo", /*139, rec_in_limbo */
"a file in manual shadow %ld is unavailable", /*140, shadow_missing */
"secondary server attachments cannot validate databases", /*141, cant_validate */
"secondary server attachments cannot start journaling", /*142, cant_start_journal */
"generator %s is not defined", /*143, gennotdef */
"secondary server attachments cannot start logging", /*144, cant_start_logging */
"invalid BLOB type for operation", /*145, bad_segstr_type */
"violation of FOREIGN KEY constraint \"%s\" on table \"%s\"", /*146, foreign_key */
"minor version too high found %ld expected %ld", /*147, high_minor */
"transaction %ld is %s", /*148, tra_state */
"transaction marked invalid by I/O error", /*149, trans_invalid */
"cache buffer for page %ld invalid", /*150, buf_invalid */
"there is no index in table %s with id %d", /*151, indexnotdefined */
"Your user name and password are not defined. Ask your database administrator to set up an InterBase login.", /*152, login */
"invalid bookmark handle", /*153, invalid_bookmark */
"invalid lock level %d", /*154, bad_lock_level */
"lock on table %s conflicts with existing lock", /*155, relation_lock */
"requested record lock conflicts with existing lock", /*156, record_lock */
"maximum indexes per table (%d) exceeded", /*157, max_idx */
"enable journal for database before starting online dump", /*158, jrn_enable */
"online dump failure. Retry dump", /*159, old_failure */
"an online dump is already in progress", /*160, old_in_progress */
"no more disk/tape space. Cannot continue online dump", /*161, old_no_space */
"journaling allowed only if database has Write-ahead Log", /*162, no_wal_no_jrn */
"maximum number of online dump files that can be specified is 16", /*163, num_old_files */
"error in opening Write-ahead Log file during recovery", /*164, wal_file_open */
"invalid statement handle", /*165, bad_stmt_handle */
"Write-ahead log subsystem failure", /*166, wal_failure */
"WAL Writer error", /*167, walw_err */
"Log file header of %s too small", /*168, logh_small */
"Invalid version of log file %s", /*169, logh_inv_version */
"Log file %s not latest in the chain but open flag still set", /*170, logh_open_flag */
"Log file %s not closed properly; database recovery may be required", /*171, logh_open_flag2 */
"Database name in the log file %s is different", /*172, logh_diff_dbname */
"Unexpected end of log file %s at offset %ld", /*173, logf_unexpected_eof */
"Incomplete log record at offset %ld in log file %s", /*174, logr_incomplete */
"Log record header too small at offset %ld in log file %s", /*175, logr_header_small */
"Log block too small at offset %ld in log file %s", /*176, logb_small */
"Illegal attempt to attach to an uninitialized WAL segment for %s", /*177, wal_illegal_attach */
"Invalid WAL parameter block option %s", /*178, wal_invalid_wpb */
"Cannot roll over to the next log file %s", /*179, wal_err_rollover */
"database does not use Write-ahead Log", /*180, no_wal */
"cannot drop log file when journaling is enabled", /*181, drop_wal */
"reference to invalid stream number", /*182, stream_not_defined */
"WAL subsystem encountered error", /*183, wal_subsys_error */
"WAL subsystem corrupted", /*184, wal_subsys_corrupt */
"must specify archive file when enabling long term journal for databases with round-robin log files", /*185, no_archive */
"database %s shutdown in progress", /*186, shutinprog */
"refresh range number %ld already in use", /*187, range_in_use */
"refresh range number %ld not found", /*188, range_not_found */
"CHARACTER SET %s is not defined", /*189, charset_not_found */
"lock time-out on wait transaction", /*190, lock_timeout */
"procedure %s is not defined", /*191, prcnotdef */
"parameter mismatch for procedure %s", /*192, prcmismat */
"Database %s: WAL subsystem bug for pid %d\
%s", /*193, wal_bugcheck */
"Could not expand the WAL segment for database %s", /*194, wal_cant_expand */
"status code %s unknown", /*195, codnotdef */
"exception %s not defined", /*196, xcpnotdef */
"exception %d", /*197, except */
"restart shared cache manager", /*198, cache_restart */
"invalid lock handle", /*199, bad_lock_handle */
"long-term journaling already enabled", /*200, jrn_present */
"Unable to roll over; please see InterBase log.", /*201, wal_err_rollover2 */
"WAL I/O error. Please see InterBase log.", /*202, wal_err_logwrite */
"WAL writer - Journal server communication error. Please see InterBase log.", /*203, wal_err_jrn_comm */
"WAL buffers cannot be increased. Please see InterBase log.", /*204, wal_err_expansion */
"WAL setup error. Please see InterBase log.", /*205, wal_err_setup */
"WAL writer synchronization error for the database %s", /*206, wal_err_ww_sync */
"Cannot start WAL writer for the database %s", /*207, wal_err_ww_start */
"database %s shutdown", /*208, shutdown */
"cannot modify an existing user privilege", /*209, existing_priv_mod */
"Cannot delete PRIMARY KEY being used in FOREIGN KEY definition.", /*210, primary_key_ref */
"Column used in a PRIMARY/UNIQUE constraint must be NOT NULL.", /*211, primary_key_notnull */
"Name of Referential Constraint not defined in constraints table.", /*212, ref_cnstrnt_notfound */
"Non-existent PRIMARY or UNIQUE KEY specified for FOREIGN KEY.", /*213, foreign_key_notfound */
"Cannot update constraints (RDB$REF_CONSTRAINTS).", /*214, ref_cnstrnt_update */
"Cannot update constraints (RDB$CHECK_CONSTRAINTS).", /*215, check_cnstrnt_update */
"Cannot delete CHECK constraint entry (RDB$CHECK_CONSTRAINTS)", /*216, check_cnstrnt_del */
"Cannot delete index segment used by an Integrity Constraint", /*217, integ_index_seg_del */
"Cannot update index segment used by an Integrity Constraint", /*218, integ_index_seg_mod */
"Cannot delete index used by an Integrity Constraint", /*219, integ_index_del */
"Cannot modify index used by an Integrity Constraint", /*220, integ_index_mod */
"Cannot delete trigger used by a CHECK Constraint", /*221, check_trig_del */
"Cannot update trigger used by a CHECK Constraint", /*222, check_trig_update */
"Cannot delete column being used in an Integrity Constraint.", /*223, cnstrnt_fld_del */
"Cannot rename column being used in an Integrity Constraint.", /*224, cnstrnt_fld_rename */
"Cannot update constraints (RDB$RELATION_CONSTRAINTS).", /*225, rel_cnstrnt_update */
"Cannot define constraints on views", /*226, constaint_on_view */
"internal gds software consistency check (invalid RDB$CONSTRAINT_TYPE)", /*227, invld_cnstrnt_type */
"Attempt to define a second PRIMARY KEY for the same table", /*228, primary_key_exists */
"cannot modify or erase a system trigger", /*229, systrig_update */
"only the owner of a table may reassign ownership", /*230, not_rel_owner */
"could not find table/procedure for GRANT", /*231, grant_obj_notfound */
"could not find column for GRANT", /*232, grant_fld_notfound */
"user does not have GRANT privileges for operation", /*233, grant_nopriv */
"table/procedure has non-SQL security class defined", /*234, nonsql_security_rel */
"column has non-SQL security class defined", /*235, nonsql_security_fld */
"Write-ahead Log without shared cache configuration not allowed", /*236, wal_cache_err */
"database shutdown unsuccessful", /*237, shutfail */
"Operation violates CHECK constraint %s on view or table %s", /*238, check_constraint */
"invalid service handle", /*239, bad_svc_handle */
"database %s shutdown in %d seconds", /*240, shutwarn */
"wrong version of service parameter block", /*241, wrospbver */
"unrecognized service parameter block", /*242, bad_spb_form */
"service %s is not defined", /*243, svcnotdef */
"long-term journaling not enabled", /*244, no_jrn */
"Cannot transliterate character between character sets", /*245, transliteration_failed */
"WAL defined; Cache Manager must be started first", /*246, start_cm_for_wal */
"Overflow log specification required for round-robin log", /*247, wal_ovflow_log_required */
"Implementation of text subtype %d not located.", /*248, text_subtype */
"Dynamic SQL Error", /*249, dsql_error */
"Invalid command", /*250, dsql_command_err */
"Data type for constant unknown", /*251, dsql_constant_err */
"Cursor unknown", /*252, dsql_cursor_err */
"Data type unknown", /*253, dsql_datatype_err */
"Declared cursor already exists", /*254, dsql_decl_err */
"Cursor not updatable", /*255, dsql_cursor_update_err */
"Attempt to reopen an open cursor", /*256, dsql_cursor_open_err */
"Attempt to reclose a closed cursor", /*257, dsql_cursor_close_err */
"Column unknown", /*258, dsql_field_err */
"Internal error", /*259, dsql_internal_err */
"Table unknown", /*260, dsql_relation_err */
"Procedure unknown", /*261, dsql_procedure_err */
"Request unknown", /*262, dsql_request_err */
"SQLDA missing or incorrect version, or incorrect number/type of variables", /*263, dsql_sqlda_err */
"Count of columns does not equal count of values", /*264, dsql_var_count_err */
"Invalid statement handle", /*265, dsql_stmt_handle */
"Function unknown", /*266, dsql_function_err */
"Column is not a BLOB", /*267, dsql_blob_err */
"COLLATION %s is not defined", /*268, collation_not_found */
"COLLATION %s is not valid for specified CHARACTER SET", /*269, collation_not_for_charset */
"Option specified more than once", /*270, dsql_dup_option */
"Unknown transaction option", /*271, dsql_tran_err */
"Invalid array reference", /*272, dsql_invalid_array */
"Array declared with too many dimensions", /*273, dsql_max_arr_dim_exceeded */
"Illegal array dimension range", /*274, dsql_arr_range_error */
"Trigger unknown", /*275, dsql_trigger_err */
"Subselect illegal in this context", /*276, dsql_subselect_err */
"Cannot prepare a CREATE DATABASE/SCHEMA statement", /*277, dsql_crdb_prepare_err */
"must specify column name for view select expression", /*278, specify_field_err */
"number of columns does not match select list", /*279, num_field_err */
"Only simple column names permitted for VIEW WITH CHECK OPTION", /*280, col_name_err */
"No WHERE clause for VIEW WITH CHECK OPTION", /*281, where_err */
"Only one table allowed for VIEW WITH CHECK OPTION", /*282, table_view_err */
"DISTINCT, GROUP or HAVING not permitted for VIEW WITH CHECK OPTION", /*283, distinct_err */
"FOREIGN KEY column count does not match PRIMARY KEY", /*284, key_field_count_err */
"No subqueries permitted for VIEW WITH CHECK OPTION", /*285, subquery_err */
"expression evaluation not supported", /*286, expression_eval_err */
"gen.c: node not supported", /*287, node_err */
"Unexpected end of command", /*288, command_end_err */
"INDEX %s", /*289, index_name */
"EXCEPTION %s", /*290, exception_name */
"COLUMN %s", /*291, field_name */
"Token unknown", /*292, token_err */
"union not supported", /*293, union_err */
"Unsupported DSQL construct", /*294, dsql_construct_err */
"column used with aggregate", /*295, field_aggregate_err */
"invalid column reference", /*296, field_ref_err */
"invalid ORDER BY clause", /*297, order_by_err */
"Return mode by value not allowed for this data type", /*298, return_mode_err */
" External functions cannot have more than 10 parameters", /*299, extern_func_err */
"alias %s conflicts with an alias in the same statement", /*300, alias_conflict_err */
"alias %s conflicts with a procedure in the same statement", /*301, procedure_conflict_error */
"alias %s conflicts with a table in the same statement", /*302, relation_conflict_err */
"Illegal use of keyword VALUE", /*303, dsql_domain_err */
"segment count of 0 defined for index %s", /*304, idx_seg_err */
"A node name is not permitted in a secondary, shadow, cache or log file name", /*305, node_name_err */
"TABLE %s", /*306, table_name */
"PROCEDURE %s", /*307, proc_name */
"cannot create index %s", /*308, idx_create_err */
"Write-ahead Log with shadowing configuration not allowed", /*309, wal_shadow_err */
"there are %ld dependencies", /*310, dependency */
"too many keys defined for index %s", /*311, idx_key_err */
"Preceding file did not specify length, so %s must include starting page number", /*312, dsql_file_length_err */
"Shadow number must be a positive integer", /*313, dsql_shadow_number_err */
"Token unknown - line %ld, char %ld", /*314, dsql_token_unk_err */
"there is no alias or table named %s at this scope level", /*315, dsql_no_relation_alias */
"there is no index %s for table %s", /*316, indexname */
"table %s is not referenced in plan", /*317, no_stream_plan */
"table %s is referenced more than once in plan; use aliases to distinguish", /*318, stream_twice */
"table %s is referenced in the plan but not the from list", /*319, stream_not_found */
"Invalid use of CHARACTER SET or COLLATE", /*320, collation_requires_text */
"Specified domain or source column does not exist", /*321, dsql_domain_not_found */
"index %s cannot be used in the specified plan", /*322, index_unused */
"the table %s is referenced twice; use aliases to differentiate", /*323, dsql_self_join */
"illegal operation when at beginning of stream", /*324, stream_bof */
"the current position is on a crack", /*325, stream_crack */
"database or file exists", /*326, db_or_file_exists */
"invalid comparison operator for find operation", /*327, invalid_operator */
"Connection lost to pipe server", /*328, conn_lost */
"bad checksum", /*329, bad_checksum */
"wrong page type", /*330, page_type_err */
"Cannot insert because the file is readonly or is on a read only medium.", /*331, ext_readonly_err */
"multiple rows in singleton select", /*332, sing_select_err */
"cannot attach to password database", /*333, psw_attach */
"cannot start transaction for password database", /*334, psw_start_trans */
"invalid direction for find operation", /*335, invalid_direction */
"variable %s conflicts with parameter in same procedure", /*336, dsql_var_conflict */
"Array/BLOB/DATE data types not allowed in arithmetic", /*337, dsql_no_blob_array */
"%s is not a valid base table of the specified view", /*338, dsql_base_table */
"table %s is referenced twice in view; use an alias to distinguish", /*339, duplicate_base_table */
"view %s has more than one base table; use aliases to distinguish", /*340, view_alias */
"cannot add index, index root page is full.", /*341, index_root_page_full */
"BLOB SUB_TYPE %s is not defined", /*342, dsql_blob_type_unknown */
"Too many concurrent executions of the same request", /*343, req_max_clones_exceeded */
"duplicate specification of %s - not supported", /*344, dsql_duplicate_spec */
"violation of PRIMARY or UNIQUE KEY constraint \"%s\" on table \"%s\"", /*345, unique_key_violation */
"server version too old to support all CREATE DATABASE options", /*346, srvr_version_too_old */
"drop database completed with errors", /*347, drdb_completed_with_errs */
"procedure %s does not return any values", /*348, dsql_procedure_use_err */
"count of column list and variable list do not match", /*349, dsql_count_mismatch */
"attempt to index BLOB column in index %s", /*350, blob_idx_err */
"attempt to index array column in index %s", /*351, array_idx_err */
"too few key columns found for index %s (incorrect column name?)", /*352, key_field_err */
"cannot delete", /*353, no_delete */
"last column in a table cannot be deleted", /*354, del_last_field */
"sort error", /*355, sort_err */
"sort error: not enough memory", /*356, sort_mem_err */
"too many versions", /*357, version_err */
"invalid key position", /*358, inval_key_posn */
"segments not allowed in expression index %s", /*359, no_segments_err */
"sort error: corruption in data structure", /*360, crrp_data_err */
"new record size of %ld bytes is too big", /*361, rec_size_err */
"Inappropriate self-reference of column", /*362, dsql_field_ref */
"request depth exceeded. (Recursive definition?)", /*363, req_depth_exceeded */
"cannot access column %s in view %s", /*364, no_field_access */
"dbkey not available for multi-table views", /*365, no_dbkey */
"journal file wrong format", /*366, jrn_format_err */
"intermediate journal file full", /*367, jrn_file_full */
"The prepare statement identifies a prepare statement with an open cursor", /*368, dsql_open_cursor_request */
"InterBase error", /*369, ib_error */
"Cache redefined", /*370, cache_redef */
"Insufficient memory to allocate page buffer cache", /*371, cache_too_small */
"Log redefined", /*372, log_redef */
"Log size too small", /*373, log_too_small */
"Log partition size too small", /*374, partition_too_small */
"Partitions not supported in series of log file specification", /*375, partition_not_supp */
"Total length of a partitioned log must be specified", /*376, log_length_spec */
"Precision must be from 1 to 18", /*377, precision_err */
"Scale must be between zero and precision", /*378, scale_nogt */
"Short integer expected", /*379, expec_short */
"Long integer expected", /*380, expec_long */
"Unsigned short integer expected", /*381, expec_ushort */
"Invalid ESCAPE sequence", /*382, like_escape_invalid */
"service %s does not have an associated executable", /*383, svcnoexe */
"Failed to locate host machine.", /*384, net_lookup_err */
"Undefined service %s/%s.", /*385, service_unknown */
"The specified name was not found in the hosts file or Domain Name Services.", /*386, host_unknown */
"user does not have GRANT privileges on base table/view for operation", /*387, grant_nopriv_on_base */
"Ambiguous column reference.", /*388, dyn_fld_ambiguous */
"Invalid aggregate reference", /*389, dsql_agg_ref_err */
"navigational stream %ld references a view with more than one base table", /*390, complex_view */
"Attempt to execute an unprepared dynamic SQL statement.", /*391, unprepared_stmt */
"Positive value expected", /*392, expec_positive */
"Incorrect values within SQLDA structure", /*393, dsql_sqlda_value_err */
"invalid blob id", /*394, invalid_array_id */
"Operation not supported for EXTERNAL FILE table %s", /*395, extfile_uns_op */
"Service is currently busy: %s", /*396, svc_in_use */
"stack size insufficent to execute current request", /*397, err_stack_limit */
"Invalid key for find operation", /*398, invalid_key */
"Error initializing the network software.", /*399, net_init_error */
"Unable to load required library %s.", /*400, loadlib_failure */
"Unable to complete network request to host \"%s\".", /*401, network_error */
"Failed to establish a connection.", /*402, net_connect_err */
"Error while listening for an incoming connection.", /*403, net_connect_listen_err */
"Failed to establish a secondary connection for event processing.", /*404, net_event_connect_err */
"Error while listening for an incoming event connection request.", /*405, net_event_listen_err */
"Error reading data from the connection.", /*406, net_read_err */
"Error writing data to the connection.", /*407, net_write_err */
"Cannot deactivate index used by an Integrity Constraint", /*408, integ_index_deactivate */
"Cannot deactivate primary index", /*409, integ_deactivate_primary */
"Client/Server Express not supported in this release", /*410, cse_not_supported */
"", /*411, tra_must_sweep */
"Access to databases on file servers is not supported.", /*412, unsupported_network_drive */
"Error while trying to create file", /*413, io_create_err */
"Error while trying to open file", /*414, io_open_err */
"Error while trying to close file", /*415, io_close_err */
"Error while trying to read from file", /*416, io_read_err */
"Error while trying to write to file", /*417, io_write_err */
"Error while trying to delete file", /*418, io_delete_err */
"Error while trying to access file", /*419, io_access_err */
"A fatal exception occurred during the execution of a user defined function.", /*420, udf_exception */
"connection lost to database", /*421, lost_db_connection */
"User cannot write to RDB$USER_PRIVILEGES", /*422, no_write_user_priv */
"token size exceeds limit", /*423, token_too_long */
"Maximum user count exceeded. Contact your database administrator.", /*424, max_att_exceeded */
"Your login %s is same as one of the SQL role name. Ask your database administrator to set up a valid InterBase login.", /*425, login_same_as_role_name */
"\"REFERENCES table\" without \"(column)\" requires PRIMARY KEY on referenced table", /*426, reftable_requires_pk */
"The username entered is too long. Maximum length is 31 bytes.", /*427, usrname_too_long */
"The password specified is too long. Maximum length is 8 bytes.", /*428, password_too_long */
"A username is required for this operation.", /*429, usrname_required */
"A password is required for this operation", /*430, password_required */
"The network protocol specified is invalid", /*431, bad_protocol */
"A duplicate user name was found in the security database", /*432, dup_usrname_found */
"The user name specified was not found in the security database", /*433, usrname_not_found */
"An error occurred while attempting to add the user.", /*434, error_adding_sec_record */
"An error occurred while attempting to modify the user record.", /*435, error_modifying_sec_record */
"An error occurred while attempting to delete the user record.", /*436, error_deleting_sec_record */
"An error occurred while updating the security database.", /*437, error_updating_sec_db */
"sort record size of %ld bytes is too big", /*438, sort_rec_size_err */
"can not define a not null column with NULL as default value", /*439, bad_default_value */
"invalid clause --- '%s'", /*440, invalid_clause */
"too many open handles to database", /*441, too_many_handles */
"size of optimizer block exceeded", /*442, optimizer_blk_exc */
"a string constant is delimited by double quotes", /*443, invalid_string_constant */
"DATE must be changed to TIMESTAMP", /*444, transitional_date */
"attempted update on read-only database", /*445, read_only_database */
"SQL dialect %s is not supported in this database", /*446, must_be_dialect_2_and_up */
"A fatal exception occurred during the execution of a blob filter.", /*447, blob_filter_exception */
"Access violation. The code attempted to access a virtual address without privilege to do so.", /*448, exception_access_violation */
"Datatype misalignment. The attempted to read or write a value that was not stored on a memory boundary.", /*449, exception_datatype_missalignment*/
"Array bounds exceeded. The code attempted to access an array element that is out of bounds.", /*450, exception_array_bounds_exceeded */
"Float denormal operand. One of the floating-point operands is too small to represent a standard float value.", /*451, exception_float_denormal_operand*/
"Floating-point divide by zero. The code attempted to divide a floating-point value by zero.", /*452, exception_float_divide_by_zero */
"Floating-point inexact result. The result of a floating-point operation cannot be represented as a deciaml fraction.", /*453, exception_float_inexact_result */
"Floating-point invalid operand. An indeterminant error occurred during a floating-point operation.", /*454, exception_float_invalid_operand */
"Floating-point overflow. The exponent of a floating-point operation is greater than the magnitude allowed.", /*455, exception_float_overflow */
"Floating-point stack check. The stack overflowed or underflowed as the result of a floating-point operation.", /*456, exception_float_stack_check */
"Floating-point underflow. The exponent of a floating-point operation is less than the magnitude allowed.", /*457, exception_float_underflow */
"Integer divide by zero. The code attempted to divide an integer value by an integer divisor of zero.", /*458, exception_integer_divide_by_zero*/
"Integer overflow. The result of an integer operation caused the most significant bit of the result to carry.", /*459, exception_integer_overflow */
"An exception occurred that does not have a description. Exception number %X.", /*460, exception_unknown */
"Stack overflow. The resource requirements of the runtime stack have exceeded the memory available to it.", /*461, exception_stack_overflow */
"Segmentation Fault. The code attempted to access memory without priviledges.", /*462, exception_sigsegv */
"Illegal Instruction. The Code attempted to perfrom an illegal operation.", /*463, exception_sigill */
"Bus Error. The Code caused a system bus error.", /*464, exception_sigbus */
"Floating Point Error. The Code caused an Arithmetic Exception or a floating point exception.", /*465, exception_sigfpe */
"Cannot delete rows from external files.", /*466, ext_file_delete */
"Cannot update rows in external files.", /*467, ext_file_modify */
"Unable to perform operation. You must be either SYSDBA or owner of the database", /*468, adm_task_denied */
"Specified EXTRACT part does not exist in input datatype", /*469, extract_input_mismatch */
"Service %s requires SYSDBA permissions. Reattach to the Service Manager using the SYSDBA account.", /*470, insufficient_svc_privileges */
"The file %s is currently in use by another process. Try again later.", /*471, file_in_use */
"Cannot attach to services manager", /*472, service_att_err */
"Metadata update statement is not allowed by the current database SQL dialect %d", /*473, ddl_not_allowed_by_db_sql_dial */
"operation was cancelled", /*474, cancelled */
"unexpected item in service parameter block, expected %s", /*475, unexp_spb_form */
"Client SQL dialect %d does not support reference to %s datatype", /*476, sql_dialect_datatype_unsupport */
"user name and password are required while attaching to the services manager", /*477, svcnouser */
"You created an indirect dependency on uncommitted metadata. You must roll back the current transaction.", /*478, depend_on_uncommitted_rel */
"The service name was not specified.", /*479, svc_name_missing */
"Too many Contexts of Relation/Procedure/Views. Maximum allowed is 127", /*480, too_many_contexts */
"data type not supported for arithmetic", /*481, datype_notsup */
"Database dialect being changed from 3 to 1", /*482, dialect_reset_warning */
"Database dialect not changed.", /*483, dialect_not_changed */
"Unable to create database %s", /*484, database_create_failed */
"Database dialect %d is not a valid dialect.", /*485, inv_dialect_specified */
"Valid database dialects are %s.", /*486, valid_db_dialects */
"SQL warning code = %ld", /*487, sqlwarn */
"DATE data type is now called TIMESTAMP", /*488, dtype_renamed */
"Function %s is in %s, which is not in a permitted directory for external functions.", /*489, extern_func_dir_error */
"value exceeds the range for valid dates", /*490, date_range_exceeded */
"passed client dialect %d is not a valid dialect.", /*491, inv_client_dialect_specified */
"Valid client dialects are %s.", /*492, valid_client_dialects */
"Unsupported field type specified in BETWEEN predicate.", /*493, optimizer_between_err */
"Services functionality will be supported in a later version of the product", /*494, service_not_supported */
"data base file name (%s) already given", /*495, gfix_db_name */
"invalid switch %s", /*496, gfix_invalid_sw */
"incompatible switch combination", /*497, gfix_incmp_sw */
"replay log pathname required", /*498, gfix_replay_req */
"number of page buffers for cache required", /*499, gfix_pgbuf_req */
"numeric value required", /*500, gfix_val_req */
"positive numeric value required", /*501, gfix_pval_req */
"number of transactions per sweep required", /*502, gfix_trn_req */
"\"full\" or \"reserve\" required", /*503, gfix_full_req */
"user name required", /*504, gfix_usrname_req */
"password required", /*505, gfix_pass_req */
"subsystem name", /*506, gfix_subs_name */
"\"wal\" required", /*507, gfix_wal_req */
"number of seconds required", /*508, gfix_sec_req */
"numeric value between 0 and 32767 inclusive required", /*509, gfix_nval_req */
"must specify type of shutdown", /*510, gfix_type_shut */
"please retry, specifying an option", /*511, gfix_retry */
"please retry, giving a database name", /*512, gfix_retry_db */
"internal block exceeds maximum size", /*513, gfix_exceed_max */
"corrupt pool", /*514, gfix_corrupt_pool */
"virtual memory exhausted", /*515, gfix_mem_exhausted */
"bad pool id", /*516, gfix_bad_pool */
"Transaction state %d not in valid range.", /*517, gfix_trn_not_valid */
"unexpected end of input", /*518, gfix_unexp_eoi */
"failed to reconnect to a transaction in database %s", /*519, gfix_recon_fail */
"Transaction description item unknown", /*520, gfix_trn_unknown */
"\"read_only\" or \"read_write\" required", /*521, gfix_mode_req */
" -sql_dialect set database dialect n", /*522, gfix_opt_SQL_dialect */
"Cannot SELECT RDB$DB_KEY from a stored procedure.", /*523, dsql_dbkey_from_non_table */
"Precision 10 to 18 changed from DOUBLE PRECISION in SQL dialect 1 to 64-bit scaled integer in SQL dialect 3", /*524, dsql_transitional_numeric */
"Use of %s expression that returns different results in dialect 1 and dialect 3", /*525, dsql_dialect_warning_expr */
"Database SQL dialect %d does not support reference to %s datatype", /*526, sql_db_dialect_dtype_unsupport */
"DB dialect %d and client dialect %d conflict with respect to numeric precision %d.", /*527, isc_sql_dialect_conflict_num */
"WARNING: Numeric literal %s is interpreted as a floating-point", /*528, dsql_warning_number_ambiguous */
"value in SQL dialect 1, but as an exact numeric value in SQL dialect 3.", /*529, dsql_warning_number_ambiguous1 */
"WARNING: NUMERIC and DECIMAL fields with precision 10 or greater are stored", /*530, dsql_warn_precision_ambiguous */
"as approximate floating-point values in SQL dialect 1, but as 64-bit", /*531, dsql_warn_precision_ambiguous1 */
"integers in SQL dialect 3.", /*532, dsql_warn_precision_ambiguous2 */
"SQL role %s does not exist", /*533, dyn_role_does_not_exist */
"user %s has no grant admin option on SQL role %s", /*534, dyn_no_grant_admin_opt */
"user %s is not a member of SQL role %s", /*535, dyn_user_not_role_member */
"%s is not the owner of SQL role %s", /*536, dyn_delete_role_failed */
"%s is a SQL role and not a user", /*537, dyn_grant_role_to_user */
"user name %s could not be used for SQL role", /*538, dyn_inv_sql_role_name */
"SQL role %s already exists", /*539, dyn_dup_sql_role */
"keyword %s can not be used as a SQL role name", /*540, dyn_kywd_spec_for_role */
"SQL roles are not supported in on older versions of the database. A backup and restore of the database is required.", /*541, dyn_roles_not_supported */
"Cannot rename domain %s to %s. A domain with that name already exists.", /*542, dyn_domain_name_exists */
"Cannot rename column %s to %s. A column with that name already exists in table %s.", /*543, dyn_field_name_exists */
"Column %s from table %s is referenced in %s", /*544, dyn_dependency_exists */
"Cannot change datatype for column %s. Changing datatype is not supported for BLOB or ARRAY columns.", /*545, dyn_dtype_invalid */
"New size specified for column %s must be at least %d characters.", /*546, dyn_char_fld_too_small */
"Cannot change datatype for %s. Conversion from base type %s to %s is not supported.", /*547, dyn_invalid_dtype_conversion */
"Cannot change datatype for column %s from a character type to a non-character type.", /*548, dyn_dtype_conv_invalid */
"Zero length identifiers are not allowed", /*549, dyn_zero_len_id */
"found unknown switch", /*550, gbak_unknown_switch */
"page size parameter missing", /*551, gbak_page_size_missing */
"Page size specified (%ld) greater than limit (8192 bytes)", /*552, gbak_page_size_toobig */
"redirect location for output is not specified", /*553, gbak_redir_ouput_missing */
"conflicting switches for backup/restore", /*554, gbak_switches_conflict */
"device type %s not known", /*555, gbak_unknown_device */
"protection is not there yet", /*556, gbak_no_protection */
"page size is allowed only on restore or create", /*557, gbak_page_size_not_allowed */
"multiple sources or destinations specified", /*558, gbak_multi_source_dest */
"requires both input and output filenames", /*559, gbak_filename_missing */
"input and output have the same name. Disallowed.", /*560, gbak_dup_inout_names */
"expected page size, encountered \"%s\"", /*561, gbak_inv_page_size */
"REPLACE specified, but the first file %s is a database", /*562, gbak_db_specified */
"database %s already exists. To replace it, use the -R switch", /*563, gbak_db_exists */
"device type not specified", /*564, gbak_unk_device */
"gds_$blob_info failed", /*565, gbak_blob_info_failed */
"do not understand BLOB INFO item %ld", /*566, gbak_unk_blob_item */
"gds_$get_segment failed", /*567, gbak_get_seg_failed */
"gds_$close_blob failed", /*568, gbak_close_blob_failed */
"gds_$open_blob failed", /*569, gbak_open_blob_failed */
"Failed in put_blr_gen_id", /*570, gbak_put_blr_gen_id_failed */
"data type %ld not understood", /*571, gbak_unk_type */
"gds_$compile_request failed", /*572, gbak_comp_req_failed */
"gds_$start_request failed", /*573, gbak_start_req_failed */
" gds_$receive failed", /*574, gbak_rec_failed */
"gds_$release_request failed", /*575, gbak_rel_req_failed */
" gds_$database_info failed", /*576, gbak_db_info_failed */
"Expected database description record", /*577, gbak_no_db_desc */
"failed to create database %s", /*578, gbak_db_create_failed */
"RESTORE: decompression length error", /*579, gbak_decomp_len_error */
"cannot find table %s", /*580, gbak_tbl_missing */
"Cannot find column for BLOB", /*581, gbak_blob_col_missing */
"gds_$create_blob failed", /*582, gbak_create_blob_failed */
"gds_$put_segment failed", /*583, gbak_put_seg_failed */
"expected record length", /*584, gbak_rec_len_exp */
"wrong length record, expected %ld encountered %ld", /*585, gbak_inv_rec_len */
"expected data attribute", /*586, gbak_exp_data_type */
"Failed in store_blr_gen_id", /*587, gbak_gen_id_failed */
"do not recognize record type %ld", /*588, gbak_unk_rec_type */
"Expected backup version 1, 2, or 3. Found %ld", /*589, gbak_inv_bkup_ver */
"expected backup description record", /*590, gbak_missing_bkup_desc */
"string truncated", /*591, gbak_string_trunc */
" warning -- record could not be restored", /*592, gbak_cant_rest_record */
"gds_$send failed", /*593, gbak_send_failed */
"no table name for data", /*594, gbak_no_tbl_name */
"unexpected end of file on backup file", /*595, gbak_unexp_eof */
"database format %ld is too old to restore to", /*596, gbak_db_format_too_old */
"array dimension for column %s is invalid", /*597, gbak_inv_array_dim */
"Expected XDR record length", /*598, gbak_xdr_len_expected */
"cannot open backup file %s", /*599, gbak_open_bkup_error */
"cannot open status and error output file %s", /*600, gbak_open_error */
"blocking factor parameter missing", /*601, gbak_missing_block_fac */
"expected blocking factor, encountered \"%s\"", /*602, gbak_inv_block_fac */
"a blocking factor may not be used in conjunction with device CT", /*603, gbak_block_fac_specified */
"user name parameter missing", /*604, gbak_missing_username */
"password parameter missing", /*605, gbak_missing_password */
" missing parameter for the number of bytes to be skipped", /*606, gbak_missing_skipped_bytes */
"expected number of bytes to be skipped, encountered \"%s\"", /*607, gbak_inv_skipped_bytes */
"Bad attribute for RDB$CHARACTER_SETS", /*608, gbak_err_restore_charset */
"Bad attribute for RDB$COLLATIONS", /*609, gbak_err_restore_collation */
"Unexpected I/O error while reading from backup file", /*610, gbak_read_error */
"Unexpected I/O error while writing to backup file", /*611, gbak_write_error */
"could not drop database %s (database might be in use)", /*612, gbak_db_in_use */
"System memory exhausted", /*613, gbak_sysmemex */
"Bad attributes for restoring SQL role", /*614, gbak_restore_role_failed */
"SQL role parameter missing", /*615, gbak_role_op_missing */
"page buffers parameter missing", /*616, gbak_page_buffers_missing */
"expected page buffers, encountered \"%s\"", /*617, gbak_page_buffers_wrong_param */
"page buffers is allowed only on restore or create", /*618, gbak_page_buffers_restore */
"size specification either missing or incorrect for file %s", /*619, gbak_inv_size */
"file %s out of sequence", /*620, gbak_file_outof_sequence */
"can't join -- one of the files missing", /*621, gbak_join_file_missing */
" standard input is not supported when using join operation", /*622, gbak_stdin_not_supptd */
"standard output is not supported when using split operation", /*623, gbak_stdout_not_supptd */
"backup file %s might be corrupt", /*624, gbak_bkup_corrupt */
"database file specification missing", /*625, gbak_unk_db_file_spec */
"can't write a header record to file %s", /*626, gbak_hdr_write_failed */
"free disk space exhausted", /*627, gbak_disk_space_ex */
"file size given (%d) is less than minimum allowed (%d)", /*628, gbak_size_lt_min */
"service name parameter missing", /*629, gbak_svc_name_missing */
"Cannot restore over current database, must be SYSDBA or owner of the existing database.", /*630, gbak_not_ownr */
"\"read_only\" or \"read_write\" required", /*631, gbak_mode_req */
"unable to open database", /*632, gsec_cant_open_db */
"error in switch specifications", /*633, gsec_switches_error */
"no operation specified", /*634, gsec_no_op_spec */
"no user name specified", /*635, gsec_no_usr_name */
"add record error", /*636, gsec_err_add */
"modify record error", /*637, gsec_err_modify */
"find/modify record error", /*638, gsec_err_find_mod */
"record not found for user: %s", /*639, gsec_err_rec_not_found */
"delete record error", /*640, gsec_err_delete */
"find/delete record error", /*641, gsec_err_find_del */
"find/display record error", /*642, gsec_err_find_disp */
"invalid parameter, no switch defined", /*643, gsec_inv_param */
"operation already specified", /*644, gsec_op_specified */
"password already specified", /*645, gsec_pw_specified */
"uid already specified", /*646, gsec_uid_specified */
"gid already specified", /*647, gsec_gid_specified */
"project already specified", /*648, gsec_proj_specified */
"organization already specified", /*649, gsec_org_specified */
"first name already specified", /*650, gsec_fname_specified */
"middle name already specified", /*651, gsec_mname_specified */
"last name already specified", /*652, gsec_lname_specified */
"invalid switch specified", /*653, gsec_inv_switch */
"ambiguous switch specified", /*654, gsec_amb_switch */
"no operation specified for parameters", /*655, gsec_no_op_specified */
"no parameters allowed for this operation", /*656, gsec_params_not_allowed */
"incompatible switches specified", /*657, gsec_incompat_switch */
"Invalid user name (maximum 31 bytes allowed)", /*658, gsec_inv_username */
"Warning - maximum 8 significant bytes of password used", /*659, gsec_inv_pw_length */
"database already specified", /*660, gsec_db_specified */
"database administrator name already specified", /*661, gsec_db_admin_specified */
"database administrator password already specified", /*662, gsec_db_admin_pw_specified */
"SQL role name already specified", /*663, gsec_sql_role_specified */
"The license file does not exist or could not be opened for read", /*664, license_no_file */
"operation already specified", /*665, license_op_specified */
"no operation specified", /*666, license_op_missing */
"invalid switch", /*667, license_inv_switch */
"invalid switch combination", /*668, license_inv_switch_combo */
"illegal operation/switch combination", /*669, license_inv_op_combo */
"ambiguous switch", /*670, license_amb_switch */
"invalid parameter, no switch specified", /*671, license_inv_parameter */
"switch does not take any parameter", /*672, license_param_specified */
"switch requires a parameter", /*673, license_param_req */
"syntax error in command line", /*674, license_syntx_error */
"The certificate was not added. A duplicate ID exists in the license file.", /*675, license_dup_id */
"The certificate was not added. Invalid certificate ID / Key combination.", /*676, license_inv_id_key */
"The certificate was not removed. The key does not exist or corresponds to a temporary evaluation license.", /*677, license_err_remove */
"An error occurred updating the license file. Operation cancelled.", /*678, license_err_update */
"The certificate could not be validated based on the information given. Please recheck the ID and key information.", /*679, license_err_convert */
"Operation failed. An unknown error occurred.", /*680, license_err_unk */
"Add license operation failed, KEY: %s ID: %s", /*681, license_svc_err_add */
"Remove license operation failed, KEY: %s", /*682, license_svc_err_remove */
"The evaluation license has already been used on this server. You need to purchase a non-evaluation license.", /*683, license_eval_exists */
"found unknown switch", /*684, gstat_unknown_switch */
"please retry, giving a database name", /*685, gstat_retry */
"Wrong ODS version, expected %d, encountered %d", /*686, gstat_wrong_ods */
"Unexpected end of database file.", /*687, gstat_unexpected_eof */
"Can't open database file %s", /*688, gstat_open_err */
"Can't read a database page", /*689, gstat_read_err */
"System memory exhausted", /*690, gstat_sysmemex */

View File

@ -0,0 +1,713 @@
/*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
/*
*
* File generated by codes.e - do not edit!
*
*/
195919882,
195919890,
195919898,
195919906,
195919914,
195919922,
195919930,
195919938,
195919946,
195919954,
195919962,
195919970,
195919978,
195919987,
195919995,
195920002,
195920011,
195920019,
20480152,
195920027,
195920036,
195920044,
195920051,
20480196,
195920059,
195920066,
195920074,
195920082,
195920090,
195920098,
195920106,
195920114,
195920122,
195920130,
195920139,
20480290,
20480298,
20480306,
20480314,
20480322,
20480330,
20480338,
20480346,
20480354,
20480362,
20480369,
20480378,
20480386,
20480394,
20480402,
20480410,
20480418,
20480436,
20480426,
195920146,
195920154,
195920162,
195920170,
20480546,
195920186,
195920195,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
20480498,
20480504,
20480516,
20480524,
20480530,
20480538,
20480554,
20480562,
0,
0,
195920202,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,

View File

@ -0,0 +1,716 @@
/*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
/*
*
* File generated by codes.e - do not edit!
*
*/
static CONST SSHORT FAR_VARIABLE gds__sql_code [] = {
0 /* No Error */,
-802 /* 1 arith_except  */,
-901 /* 2 bad_dbkey  */,
-922 /* 3 bad_db_format  */,
-904 /* 4 bad_db_handle  */,
-924 /* 5 bad_dpb_content  */,
-901 /* 6 bad_dpb_form  */,
-501 /* 7 bad_req_handle  */,
-901 /* 8 bad_segstr_handle  */,
-901 /* 9 bad_segstr_id  */,
-901 /* 10 bad_tpb_content  */,
-901 /* 11 bad_tpb_form  */,
-901 /* 12 bad_trans_handle  */,
-902 /* 13 bug_check  */,
-413 /* 14 convert_error  */,
-902 /* 15 db_corrupt  */,
-913 /* 16 deadlock  */,
-901 /* 17 excess_trans  */,
100 /* 18 from_no_match  */,
-901 /* 19 infinap  */,
-901 /* 20 infona  */,
-901 /* 21 infunk  */,
-901 /* 22 integ_fail  */,
-104 /* 23 invalid_blr  */,
-902 /* 24 io_error  */,
-901 /* 25 lock_conflict  */,
-902 /* 26 metadata_corrupt  */,
-625 /* 27 not_valid  */,
-508 /* 28 no_cur_rec  */,
-803 /* 29 no_dup  */,
-901 /* 30 no_finish  */,
-607 /* 31 no_meta_update  */,
-551 /* 32 no_priv  */,
-901 /* 33 no_recon  */,
100 /* 34 no_record  */,
-901 /* 35 no_segstr_close  */,
-820 /* 36 obsolete_metadata  */,
-901 /* 37 open_trans  */,
-901 /* 38 port_len  */,
-151 /* 39 read_only_field  */,
-150 /* 40 read_only_rel  */,
-817 /* 41 read_only_trans  */,
-150 /* 42 read_only_view  */,
-901 /* 43 req_no_trans  */,
-901 /* 44 req_sync  */,
-901 /* 45 req_wrong_db  */,
101 /* 46 segment  */,
100 /* 47 segstr_eof  */,
-402 /* 48 segstr_no_op  */,
-901 /* 49 segstr_no_read  */,
-901 /* 50 segstr_no_trans  */,
-817 /* 51 segstr_no_write  */,
-901 /* 52 segstr_wrong_db  */,
-902 /* 53 sys_request  */,
100 /* 54 stream_eof  */,
-904 /* 55 unavailable  */,
-901 /* 56 unres_rel  */,
-901 /* 57 uns_ext  */,
-901 /* 58 wish_list  */,
-820 /* 59 wrong_ods  */,
-804 /* 60 wronumarg  */,
-904 /* 61 imp_exc  */,
-901 /* 62 random  */,
-901 /* 63 fatal_conflict  */,
-902 /* 64 badblk  */,
-902 /* 65 invpoolcl  */,
-904 /* 66 nopoolids  */,
-902 /* 67 relbadblk  */,
-902 /* 68 blktoobig  */,
-904 /* 69 bufexh  */,
-104 /* 70 syntaxerr  */,
-904 /* 71 bufinuse  */,
-901 /* 72 bdbincon  */,
-904 /* 73 reqinuse  */,
-902 /* 74 badodsver  */,
-219 /* 75 relnotdef  */,
-205 /* 76 fldnotdef  */,
-902 /* 77 dirtypage  */,
-902 /* 78 waifortra  */,
-902 /* 79 doubleloc  */,
-902 /* 80 nodnotfnd  */,
-902 /* 81 dupnodfnd  */,
-902 /* 82 locnotmar  */,
-689 /* 83 badpagtyp  */,
-902 /* 84 corrupt  */,
-902 /* 85 badpage  */,
-902 /* 86 badindex  */,
-901 /* 87 dbbnotzer  */,
-901 /* 88 tranotzer  */,
-902 /* 89 trareqmis  */,
-902 /* 90 badhndcnt  */,
-902 /* 91 wrotpbver  */,
-902 /* 92 wroblrver  */,
-902 /* 93 wrodpbver  */,
-402 /* 94 blobnotsup  */,
-902 /* 95 badrelation  */,
-902 /* 96 nodetach  */,
-902 /* 97 notremote  */,
-901 /* 98 trainlim  */,
-901 /* 99 notinlim  */,
-901 /* 100 traoutsta  */,
-923 /* 101 connect_reject  */,
-902 /* 102 dbfile  */,
-902 /* 103 orphan  */,
-904 /* 104 no_lock_mgr  */,
-104 /* 105 ctxinuse  */,
-104 /* 106 ctxnotdef  */,
-402 /* 107 datnotsup  */,
-901 /* 108 badmsgnum  */,
-104 /* 109 badparnum  */,
-904 /* 110 virmemexh  */,
-901 /* 111 blocking_signal  */,
-902 /* 112 lockmanerr  */,
-924 /* 113 journerr  */,
-664 /* 114 keytoobig  */,
-407 /* 115 nullsegkey  */,
-902 /* 116 sqlerr  */,
-820 /* 117 wrodynver  */,
-172 /* 118 funnotdef  */,
-171 /* 119 funmismat  */,
-104 /* 120 bad_msg_vec  */,
-924 /* 121 bad_detach  */,
-901 /* 122 noargacc_read  */,
-901 /* 123 noargacc_write  */,
-817 /* 124 read_only  */,
-677 /* 125 ext_err  */,
-150 /* 126 non_updatable  */,
-926 /* 127 no_rollback  */,
-902 /* 128 bad_sec_info  */,
-902 /* 129 invalid_sec_info  */,
-901 /* 130 misc_interpreted  */,
-904 /* 131 update_conflict  */,
-906 /* 132 unlicensed  */,
-904 /* 133 obj_in_use  */,
-413 /* 134 nofilter  */,
-904 /* 135 shadow_accessed  */,
-104 /* 136 invalid_sdl  */,
-406 /* 137 out_of_bounds  */,
-171 /* 138 invalid_dimension  */,
-911 /* 139 rec_in_limbo  */,
-904 /* 140 shadow_missing  */,
-923 /* 141 cant_validate  */,
-923 /* 142 cant_start_journal  */,
-204 /* 143 gennotdef  */,
-923 /* 144 cant_start_logging  */,
-685 /* 145 bad_segstr_type  */,
-530 /* 146 foreign_key  */,
-820 /* 147 high_minor  */,
-901 /* 148 tra_state  */,
-532 /* 149 trans_invalid  */,
-902 /* 150 buf_invalid  */,
-902 /* 151 indexnotdefined  */,
-902 /* 152 login  */,
-823 /* 153 invalid_bookmark  */,
-824 /* 154 bad_lock_level  */,
-615 /* 155 relation_lock  */,
-615 /* 156 record_lock  */,
-692 /* 157 max_idx  */,
-902 /* 158 jrn_enable  */,
-902 /* 159 old_failure  */,
-902 /* 160 old_in_progress  */,
-902 /* 161 old_no_space  */,
-902 /* 162 no_wal_no_jrn  */,
-902 /* 163 num_old_files  */,
-902 /* 164 wal_file_open  */,
-901 /* 165 bad_stmt_handle  */,
-902 /* 166 wal_failure  */,
-230 /* 167 walw_err  */,
-231 /* 168 logh_small  */,
-232 /* 169 logh_inv_version  */,
-233 /* 170 logh_open_flag  */,
-234 /* 171 logh_open_flag2  */,
-235 /* 172 logh_diff_dbname  */,
-236 /* 173 logf_unexpected_eof  */,
-237 /* 174 logr_incomplete  */,
-238 /* 175 logr_header_small  */,
-239 /* 176 logb_small  */,
-240 /* 177 wal_illegal_attach  */,
-241 /* 178 wal_invalid_wpb  */,
-242 /* 179 wal_err_rollover  */,
-243 /* 180 no_wal  */,
-615 /* 181 drop_wal  */,
-204 /* 182 stream_not_defined  */,
-244 /* 183 wal_subsys_error  */,
-245 /* 184 wal_subsys_corrupt  */,
-902 /* 185 no_archive  */,
-902 /* 186 shutinprog  */,
-615 /* 187 range_in_use  */,
-834 /* 188 range_not_found  */,
-204 /* 189 charset_not_found  */,
-901 /* 190 lock_timeout  */,
-204 /* 191 prcnotdef  */,
-170 /* 192 prcmismat  */,
-246 /* 193 wal_bugcheck  */,
-247 /* 194 wal_cant_expand  */,
-204 /* 195 codnotdef  */,
-204 /* 196 xcpnotdef  */,
-836 /* 197 except  */,
-837 /* 198 cache_restart  */,
-825 /* 199 bad_lock_handle  */,
-902 /* 200 jrn_present  */,
-248 /* 201 wal_err_rollover2  */,
-249 /* 202 wal_err_logwrite  */,
-250 /* 203 wal_err_jrn_comm  */,
-251 /* 204 wal_err_expansion  */,
-252 /* 205 wal_err_setup  */,
-253 /* 206 wal_err_ww_sync  */,
-254 /* 207 wal_err_ww_start  */,
-902 /* 208 shutdown  */,
-553 /* 209 existing_priv_mod  */,
-616 /* 210 primary_key_ref  */,
-291 /* 211 primary_key_notnull  */,
-204 /* 212 ref_cnstrnt_notfound  */,
-660 /* 213 foreign_key_notfound  */,
-292 /* 214 ref_cnstrnt_update  */,
-293 /* 215 check_cnstrnt_update  */,
-294 /* 216 check_cnstrnt_del  */,
-618 /* 217 integ_index_seg_del  */,
-618 /* 218 integ_index_seg_mod  */,
-616 /* 219 integ_index_del  */,
-616 /* 220 integ_index_mod  */,
-616 /* 221 check_trig_del  */,
-617 /* 222 check_trig_update  */,
-616 /* 223 cnstrnt_fld_del  */,
-617 /* 224 cnstrnt_fld_rename  */,
-295 /* 225 rel_cnstrnt_update  */,
-150 /* 226 constaint_on_view  */,
-296 /* 227 invld_cnstrnt_type  */,
-831 /* 228 primary_key_exists  */,
-607 /* 229 systrig_update  */,
-552 /* 230 not_rel_owner  */,
-204 /* 231 grant_obj_notfound  */,
-205 /* 232 grant_fld_notfound  */,
-552 /* 233 grant_nopriv  */,
-84 /* 234 nonsql_security_rel  */,
-84 /* 235 nonsql_security_fld  */,
-255 /* 236 wal_cache_err  */,
-902 /* 237 shutfail  */,
-297 /* 238 check_constraint  */,
-901 /* 239 bad_svc_handle  */,
-838 /* 240 shutwarn  */,
-901 /* 241 wrospbver  */,
-901 /* 242 bad_spb_form  */,
-901 /* 243 svcnotdef  */,
-902 /* 244 no_jrn  */,
-314 /* 245 transliteration_failed  */,
-257 /* 246 start_cm_for_wal  */,
-258 /* 247 wal_ovflow_log_required  */,
-204 /* 248 text_subtype  */,
-902 /* 249 dsql_error  */,
-104 /* 250 dsql_command_err  */,
-103 /* 251 dsql_constant_err  */,
-504 /* 252 dsql_cursor_err  */,
-204 /* 253 dsql_datatype_err  */,
-502 /* 254 dsql_decl_err  */,
-510 /* 255 dsql_cursor_update_err  */,
-502 /* 256 dsql_cursor_open_err  */,
-501 /* 257 dsql_cursor_close_err  */,
-206 /* 258 dsql_field_err  */,
-104 /* 259 dsql_internal_err  */,
-204 /* 260 dsql_relation_err  */,
-204 /* 261 dsql_procedure_err  */,
-518 /* 262 dsql_request_err  */,
-804 /* 263 dsql_sqlda_err  */,
-804 /* 264 dsql_var_count_err  */,
-826 /* 265 dsql_stmt_handle  */,
-804 /* 266 dsql_function_err  */,
-206 /* 267 dsql_blob_err  */,
-204 /* 268 collation_not_found  */,
-204 /* 269 collation_not_for_charset  */,
-104 /* 270 dsql_dup_option  */,
-104 /* 271 dsql_tran_err  */,
-104 /* 272 dsql_invalid_array  */,
-604 /* 273 dsql_max_arr_dim_exceeded  */,
-604 /* 274 dsql_arr_range_error  */,
-204 /* 275 dsql_trigger_err  */,
-206 /* 276 dsql_subselect_err  */,
-531 /* 277 dsql_crdb_prepare_err  */,
-157 /* 278 specify_field_err  */,
-158 /* 279 num_field_err  */,
-806 /* 280 col_name_err  */,
-807 /* 281 where_err  */,
-808 /* 282 table_view_err  */,
-809 /* 283 distinct_err  */,
-832 /* 284 key_field_count_err  */,
-810 /* 285 subquery_err  */,
-833 /* 286 expression_eval_err  */,
-599 /* 287 node_err  */,
-104 /* 288 command_end_err  */,
-901 /* 289 index_name  */,
-901 /* 290 exception_name  */,
-901 /* 291 field_name  */,
-104 /* 292 token_err  */,
-901 /* 293 union_err  */,
-901 /* 294 dsql_construct_err  */,
-830 /* 295 field_aggregate_err  */,
-829 /* 296 field_ref_err  */,
-208 /* 297 order_by_err  */,
-171 /* 298 return_mode_err  */,
-170 /* 299 extern_func_err  */,
-204 /* 300 alias_conflict_err  */,
-204 /* 301 procedure_conflict_error  */,
-204 /* 302 relation_conflict_err  */,
-901 /* 303 dsql_domain_err  */,
-663 /* 304 idx_seg_err  */,
-599 /* 305 node_name_err  */,
-901 /* 306 table_name  */,
-901 /* 307 proc_name  */,
-660 /* 308 idx_create_err  */,
-259 /* 309 wal_shadow_err  */,
-616 /* 310 dependency  */,
-663 /* 311 idx_key_err  */,
-597 /* 312 dsql_file_length_err  */,
-598 /* 313 dsql_shadow_number_err  */,
-104 /* 314 dsql_token_unk_err  */,
-204 /* 315 dsql_no_relation_alias  */,
-204 /* 316 indexname  */,
-281 /* 317 no_stream_plan  */,
-282 /* 318 stream_twice  */,
-283 /* 319 stream_not_found  */,
-204 /* 320 collation_requires_text  */,
-901 /* 321 dsql_domain_not_found  */,
-284 /* 322 index_unused  */,
-282 /* 323 dsql_self_join  */,
-596 /* 324 stream_bof  */,
-595 /* 325 stream_crack  */,
-601 /* 326 db_or_file_exists  */,
-401 /* 327 invalid_operator  */,
-924 /* 328 conn_lost  */,
-835 /* 329 bad_checksum  */,
-689 /* 330 page_type_err  */,
-816 /* 331 ext_readonly_err  */,
-811 /* 332 sing_select_err  */,
-902 /* 333 psw_attach  */,
-902 /* 334 psw_start_trans  */,
-827 /* 335 invalid_direction  */,
-901 /* 336 dsql_var_conflict  */,
-607 /* 337 dsql_no_blob_array  */,
-155 /* 338 dsql_base_table  */,
-282 /* 339 duplicate_base_table  */,
-282 /* 340 view_alias  */,
-904 /* 341 index_root_page_full  */,
-204 /* 342 dsql_blob_type_unknown  */,
-693 /* 343 req_max_clones_exceeded  */,
-637 /* 344 dsql_duplicate_spec  */,
-803 /* 345 unique_key_violation  */,
-901 /* 346 srvr_version_too_old  */,
-909 /* 347 drdb_completed_with_errs  */,
-84 /* 348 dsql_procedure_use_err  */,
-313 /* 349 dsql_count_mismatch  */,
-685 /* 350 blob_idx_err  */,
-685 /* 351 array_idx_err  */,
-663 /* 352 key_field_err  */,
-901 /* 353 no_delete  */,
-616 /* 354 del_last_field  */,
-901 /* 355 sort_err  */,
-904 /* 356 sort_mem_err  */,
-841 /* 357 version_err  */,
-828 /* 358 inval_key_posn  */,
-690 /* 359 no_segments_err  */,
-600 /* 360 crrp_data_err  */,
-691 /* 361 rec_size_err  */,
-605 /* 362 dsql_field_ref  */,
-904 /* 363 req_depth_exceeded  */,
-694 /* 364 no_field_access  */,
-162 /* 365 no_dbkey  */,
-839 /* 366 jrn_format_err  */,
-840 /* 367 jrn_file_full  */,
-519 /* 368 dsql_open_cursor_request  */,
-999 /* 369 ib_error  */,
-260 /* 370 cache_redef  */,
-239 /* 371 cache_too_small  */,
-260 /* 372 log_redef  */,
-239 /* 373 log_too_small  */,
-239 /* 374 partition_too_small  */,
-261 /* 375 partition_not_supp  */,
-261 /* 376 log_length_spec  */,
-842 /* 377 precision_err  */,
-842 /* 378 scale_nogt  */,
-842 /* 379 expec_short  */,
-842 /* 380 expec_long  */,
-842 /* 381 expec_ushort  */,
-105 /* 382 like_escape_invalid  */,
-901 /* 383 svcnoexe  */,
-901 /* 384 net_lookup_err  */,
-901 /* 385 service_unknown  */,
-901 /* 386 host_unknown  */,
-552 /* 387 grant_nopriv_on_base  */,
-203 /* 388 dyn_fld_ambiguous  */,
-104 /* 389 dsql_agg_ref_err  */,
-282 /* 390 complex_view  */,
-901 /* 391 unprepared_stmt  */,
-842 /* 392 expec_positive  */,
-804 /* 393 dsql_sqlda_value_err  */,
-104 /* 394 invalid_array_id  */,
-816 /* 395 extfile_uns_op  */,
-901 /* 396 svc_in_use  */,
-902 /* 397 err_stack_limit  */,
-827 /* 398 invalid_key  */,
-901 /* 399 net_init_error  */,
-901 /* 400 loadlib_failure  */,
-902 /* 401 network_error  */,
-902 /* 402 net_connect_err  */,
-902 /* 403 net_connect_listen_err  */,
-902 /* 404 net_event_connect_err  */,
-902 /* 405 net_event_listen_err  */,
-902 /* 406 net_read_err  */,
-902 /* 407 net_write_err  */,
-616 /* 408 integ_index_deactivate  */,
-616 /* 409 integ_deactivate_primary  */,
-104 /* 410 cse_not_supported  */,
-901 /* 411 tra_must_sweep  */,
-902 /* 412 unsupported_network_drive  */,
-902 /* 413 io_create_err  */,
-902 /* 414 io_open_err  */,
-902 /* 415 io_close_err  */,
-902 /* 416 io_read_err  */,
-902 /* 417 io_write_err  */,
-902 /* 418 io_delete_err  */,
-902 /* 419 io_access_err  */,
-901 /* 420 udf_exception  */,
-901 /* 421 lost_db_connection  */,
-901 /* 422 no_write_user_priv  */,
-104 /* 423 token_too_long  */,
-906 /* 424 max_att_exceeded  */,
-902 /* 425 login_same_as_role_name  */,
-607 /* 426 reftable_requires_pk  */,
-85 /* 427 usrname_too_long  */,
-85 /* 428 password_too_long  */,
-85 /* 429 usrname_required  */,
-85 /* 430 password_required  */,
-85 /* 431 bad_protocol  */,
-85 /* 432 dup_usrname_found  */,
-85 /* 433 usrname_not_found  */,
-85 /* 434 error_adding_sec_record  */,
-85 /* 435 error_modifying_sec_record  */,
-85 /* 436 error_deleting_sec_record  */,
-85 /* 437 error_updating_sec_db  */,
-904 /* 438 sort_rec_size_err  */,
-204 /* 439 bad_default_value  */,
-204 /* 440 invalid_clause  */,
-904 /* 441 too_many_handles  */,
-904 /* 442 optimizer_blk_exc  */,
-104 /* 443 invalid_string_constant  */,
-104 /* 444 transitional_date  */,
-817 /* 445 read_only_database  */,
-817 /* 446 must_be_dialect_2_and_up  */,
-901 /* 447 blob_filter_exception  */,
-901 /* 448 exception_access_violation  */,
-901 /* 449 exception_datatype_missalignment */,
-901 /* 450 exception_array_bounds_exceeded  */,
-901 /* 451 exception_float_denormal_operand */,
-901 /* 452 exception_float_divide_by_zero  */,
-901 /* 453 exception_float_inexact_result  */,
-901 /* 454 exception_float_invalid_operand  */,
-901 /* 455 exception_float_overflow  */,
-901 /* 456 exception_float_stack_check  */,
-901 /* 457 exception_float_underflow  */,
-901 /* 458 exception_integer_divide_by_zero */,
-901 /* 459 exception_integer_overflow  */,
-901 /* 460 exception_unknown  */,
-901 /* 461 exception_stack_overflow  */,
-901 /* 462 exception_sigsegv  */,
-901 /* 463 exception_sigill  */,
-901 /* 464 exception_sigbus  */,
-901 /* 465 exception_sigfpe  */,
-901 /* 466 ext_file_delete  */,
-901 /* 467 ext_file_modify  */,
-901 /* 468 adm_task_denied  */,
-105 /* 469 extract_input_mismatch  */,
-551 /* 470 insufficient_svc_privileges  */,
-902 /* 471 file_in_use  */,
-904 /* 472 service_att_err  */,
-817 /* 473 ddl_not_allowed_by_db_sql_dial  */,
-901 /* 474 cancelled  */,
-902 /* 475 unexp_spb_form  */,
-104 /* 476 sql_dialect_datatype_unsupport  */,
-901 /* 477 svcnouser  */,
-104 /* 478 depend_on_uncommitted_rel  */,
-904 /* 479 svc_name_missing  */,
-204 /* 480 too_many_contexts  */,
-901 /* 481 datype_notsup  */,
501 /* 482 dialect_reset_warning  */,
-901 /* 483 dialect_not_changed  */,
-901 /* 484 database_create_failed  */,
-901 /* 485 inv_dialect_specified  */,
-901 /* 486 valid_db_dialects  */,
300 /* 487 sqlwarn  */,
301 /* 488 dtype_renamed  */,
-902 /* 489 extern_func_dir_error  */,
-833 /* 490 date_range_exceeded  */,
-901 /* 491 inv_client_dialect_specified  */,
-901 /* 492 valid_client_dialects  */,
-904 /* 493 optimizer_between_err  */,
-901 /* 494 service_not_supported  */,
-901 /* 1 gfix_db_name  */,
-901 /* 2 gfix_invalid_sw  */,
-901 /* 4 gfix_incmp_sw  */,
-901 /* 5 gfix_replay_req  */,
-901 /* 6 gfix_pgbuf_req  */,
-901 /* 7 gfix_val_req  */,
-901 /* 8 gfix_pval_req  */,
-901 /* 9 gfix_trn_req  */,
-901 /* 12 gfix_full_req  */,
-901 /* 13 gfix_usrname_req  */,
-901 /* 14 gfix_pass_req  */,
-901 /* 15 gfix_subs_name  */,
-901 /* 16 gfix_wal_req  */,
-901 /* 17 gfix_sec_req  */,
-901 /* 18 gfix_nval_req  */,
-901 /* 19 gfix_type_shut  */,
-901 /* 20 gfix_retry  */,
-901 /* 23 gfix_retry_db  */,
-901 /* 63 gfix_exceed_max  */,
-901 /* 64 gfix_corrupt_pool  */,
-901 /* 65 gfix_mem_exhausted  */,
-901 /* 66 gfix_bad_pool  */,
-901 /* 67 gfix_trn_not_valid  */,
-901 /* 84 gfix_unexp_eoi  */,
-901 /* 90 gfix_recon_fail  */,
-901 /* 108 gfix_trn_unknown  */,
-901 /* 110 gfix_mode_req  */,
0 /* 111 gfix_opt_SQL_dialect  */,
-607 /* 2 dsql_dbkey_from_non_table  */,
-104 /* 3 dsql_transitional_numeric  */,
301 /* 4 dsql_dialect_warning_expr  */,
-104 /* 5 sql_db_dialect_dtype_unsupport  */,
-817 /* 7 isc_sql_dialect_conflict_num  */,
301 /* 8 dsql_warning_number_ambiguous  */,
301 /* 9 dsql_warning_number_ambiguous1  */,
301 /* 10 dsql_warn_precision_ambiguous  */,
301 /* 11 dsql_warn_precision_ambiguous1  */,
301 /* 12 dsql_warn_precision_ambiguous2  */,
-901 /* 188 dyn_role_does_not_exist  */,
-901 /* 189 dyn_no_grant_admin_opt  */,
-901 /* 190 dyn_user_not_role_member  */,
-901 /* 191 dyn_delete_role_failed  */,
-901 /* 192 dyn_grant_role_to_user  */,
-901 /* 193 dyn_inv_sql_role_name  */,
-901 /* 194 dyn_dup_sql_role  */,
-901 /* 195 dyn_kywd_spec_for_role  */,
-901 /* 196 dyn_roles_not_supported  */,
-612 /* 204 dyn_domain_name_exists  */,
-612 /* 205 dyn_field_name_exists  */,
-383 /* 206 dyn_dependency_exists  */,
-315 /* 207 dyn_dtype_invalid  */,
-829 /* 208 dyn_char_fld_too_small  */,
-829 /* 209 dyn_invalid_dtype_conversion  */,
-829 /* 210 dyn_dtype_conv_invalid  */,
-901 /* 212 dyn_zero_len_id  */,
-901 /* 1 gbak_unknown_switch  */,
-901 /* 2 gbak_page_size_missing  */,
-901 /* 3 gbak_page_size_toobig  */,
-901 /* 4 gbak_redir_ouput_missing  */,
-901 /* 5 gbak_switches_conflict  */,
-901 /* 6 gbak_unknown_device  */,
-901 /* 7 gbak_no_protection  */,
-901 /* 8 gbak_page_size_not_allowed  */,
-901 /* 9 gbak_multi_source_dest  */,
-901 /* 10 gbak_filename_missing  */,
-901 /* 11 gbak_dup_inout_names  */,
-901 /* 12 gbak_inv_page_size  */,
-901 /* 13 gbak_db_specified  */,
-901 /* 14 gbak_db_exists  */,
-901 /* 15 gbak_unk_device  */,
-901 /* 20 gbak_blob_info_failed  */,
-901 /* 21 gbak_unk_blob_item  */,
-901 /* 22 gbak_get_seg_failed  */,
-901 /* 23 gbak_close_blob_failed  */,
-901 /* 24 gbak_open_blob_failed  */,
-901 /* 25 gbak_put_blr_gen_id_failed  */,
-901 /* 26 gbak_unk_type  */,
-901 /* 27 gbak_comp_req_failed  */,
-901 /* 28 gbak_start_req_failed  */,
-901 /* 29 gbak_rec_failed  */,
-901 /* 30 gbak_rel_req_failed  */,
-901 /* 31 gbak_db_info_failed  */,
-901 /* 32 gbak_no_db_desc  */,
-901 /* 33 gbak_db_create_failed  */,
-901 /* 34 gbak_decomp_len_error  */,
-901 /* 35 gbak_tbl_missing  */,
-901 /* 36 gbak_blob_col_missing  */,
-901 /* 37 gbak_create_blob_failed  */,
-901 /* 38 gbak_put_seg_failed  */,
-901 /* 39 gbak_rec_len_exp  */,
-901 /* 40 gbak_inv_rec_len  */,
-901 /* 41 gbak_exp_data_type  */,
-901 /* 42 gbak_gen_id_failed  */,
-901 /* 43 gbak_unk_rec_type  */,
-901 /* 44 gbak_inv_bkup_ver  */,
-901 /* 45 gbak_missing_bkup_desc  */,
-901 /* 46 gbak_string_trunc  */,
-901 /* 47 gbak_cant_rest_record  */,
-901 /* 48 gbak_send_failed  */,
-901 /* 49 gbak_no_tbl_name  */,
-901 /* 50 gbak_unexp_eof  */,
-901 /* 51 gbak_db_format_too_old  */,
-901 /* 52 gbak_inv_array_dim  */,
-901 /* 55 gbak_xdr_len_expected  */,
-901 /* 65 gbak_open_bkup_error  */,
-901 /* 66 gbak_open_error  */,
-901 /* 182 gbak_missing_block_fac  */,
-901 /* 183 gbak_inv_block_fac  */,
-901 /* 184 gbak_block_fac_specified  */,
-901 /* 188 gbak_missing_username  */,
-901 /* 189 gbak_missing_password  */,
-901 /* 200 gbak_missing_skipped_bytes  */,
-901 /* 201 gbak_inv_skipped_bytes  */,
-901 /* 213 gbak_err_restore_charset  */,
-901 /* 215 gbak_err_restore_collation  */,
-901 /* 220 gbak_read_error  */,
-901 /* 221 gbak_write_error  */,
-901 /* 233 gbak_db_in_use  */,
-901 /* 238 gbak_sysmemex  */,
-901 /* 250 gbak_restore_role_failed  */,
-901 /* 253 gbak_role_op_missing  */,
-901 /* 258 gbak_page_buffers_missing  */,
-901 /* 259 gbak_page_buffers_wrong_param  */,
-901 /* 260 gbak_page_buffers_restore  */,
-901 /* 262 gbak_inv_size  */,
-901 /* 263 gbak_file_outof_sequence  */,
-901 /* 264 gbak_join_file_missing  */,
-901 /* 265 gbak_stdin_not_supptd  */,
-901 /* 266 gbak_stdout_not_supptd  */,
-901 /* 267 gbak_bkup_corrupt  */,
-901 /* 268 gbak_unk_db_file_spec  */,
-901 /* 269 gbak_hdr_write_failed  */,
-901 /* 270 gbak_disk_space_ex  */,
-901 /* 271 gbak_size_lt_min  */,
-901 /* 273 gbak_svc_name_missing  */,
-901 /* 274 gbak_not_ownr  */,
-901 /* 279 gbak_mode_req  */,
-901 /* 15 gsec_cant_open_db  */,
-901 /* 16 gsec_switches_error  */,
-901 /* 17 gsec_no_op_spec  */,
-901 /* 18 gsec_no_usr_name  */,
-901 /* 19 gsec_err_add  */,
-901 /* 20 gsec_err_modify  */,
-901 /* 21 gsec_err_find_mod  */,
-901 /* 22 gsec_err_rec_not_found  */,
-901 /* 23 gsec_err_delete  */,
-901 /* 24 gsec_err_find_del  */,
-901 /* 28 gsec_err_find_disp  */,
-901 /* 29 gsec_inv_param  */,
-901 /* 30 gsec_op_specified  */,
-901 /* 31 gsec_pw_specified  */,
-901 /* 32 gsec_uid_specified  */,
-901 /* 33 gsec_gid_specified  */,
-901 /* 34 gsec_proj_specified  */,
-901 /* 35 gsec_org_specified  */,
-901 /* 36 gsec_fname_specified  */,
-901 /* 37 gsec_mname_specified  */,
-901 /* 38 gsec_lname_specified  */,
-901 /* 40 gsec_inv_switch  */,
-901 /* 41 gsec_amb_switch  */,
-901 /* 42 gsec_no_op_specified  */,
-901 /* 43 gsec_params_not_allowed  */,
-901 /* 44 gsec_incompat_switch  */,
-901 /* 76 gsec_inv_username  */,
-901 /* 77 gsec_inv_pw_length  */,
-901 /* 78 gsec_db_specified  */,
-901 /* 79 gsec_db_admin_specified  */,
-901 /* 80 gsec_db_admin_pw_specified  */,
-901 /* 81 gsec_sql_role_specified  */,
-901 /* 0 license_no_file  */,
-901 /* 19 license_op_specified  */,
-901 /* 20 license_op_missing  */,
-901 /* 21 license_inv_switch  */,
-901 /* 22 license_inv_switch_combo  */,
-901 /* 23 license_inv_op_combo  */,
-901 /* 24 license_amb_switch  */,
-901 /* 25 license_inv_parameter  */,
-901 /* 26 license_param_specified  */,
-901 /* 27 license_param_req  */,
-901 /* 28 license_syntx_error  */,
-901 /* 30 license_dup_id  */,
-901 /* 31 license_inv_id_key  */,
-901 /* 32 license_err_remove  */,
-901 /* 33 license_err_update  */,
-901 /* 34 license_err_convert  */,
-901 /* 35 license_err_unk  */,
-901 /* 36 license_svc_err_add  */,
-901 /* 37 license_svc_err_remove  */,
-901 /* 59 license_eval_exists  */,
-901 /* 1 gstat_unknown_switch  */,
-901 /* 2 gstat_retry  */,
-901 /* 3 gstat_wrong_ods  */,
-901 /* 4 gstat_unexpected_eof  */,
-901 /* 29 gstat_open_err  */,
-901 /* 30 gstat_read_err  */,
-901 /* 31 gstat_sysmemex  */
};

View File

@ -27,7 +27,7 @@
* readonly databases.
*/
/*
$Id: common.h,v 1.3 2001-07-12 05:46:05 bellardo Exp $
$Id: common.h,v 1.4 2001-07-12 06:32:03 bellardo Exp $
*/
#ifndef JRD_COMMON_H
@ -1483,4 +1483,7 @@ typedef struct in_sw_tab_t {
} *IN_SW_TAB;
/* Just to be safe we will still define READONLY_DATABASE as it gets phased out */
#define READONLY_DATABASE 1
#endif /* JRD_COMMON_H */

View File

@ -87,6 +87,12 @@
#include "../jrd/seg_proto.h"
#endif
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include "../jrd/codes.h"
/* Pick up system relation ids */
#define RELATION(name,id,ods) id,
@ -725,7 +731,7 @@ void DFW_update_index( DFW work, USHORT id, float selectivity)
FOR(REQUEST_HANDLE request)
IDX IN RDB$INDICES WITH IDX.RDB$INDEX_NAME EQ work->dfw_name
if (!REQUEST(irq_m_index))
REQUEST(irq_m_index) = request;
REQUEST(irq_m_index) = (BLK)request;
MODIFY IDX USING
IDX.RDB$INDEX_ID = id + 1;
IDX.RDB$STATISTICS = selectivity;
@ -1220,7 +1226,7 @@ static BOOLEAN compute_security(TDBB tdbb,
**************************************/
DBB dbb;
BLK handle;
SCL class;
SCL s_class;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -1234,13 +1240,13 @@ static BOOLEAN compute_security(TDBB tdbb,
case 3:
/* Get security class. This may return NULL if it doesn't exist */
class = SCL_recompute_class(tdbb, work->dfw_name);
s_class = SCL_recompute_class(tdbb, work->dfw_name);
handle = NULL;
FOR(REQUEST_HANDLE handle) X IN RDB$DATABASE
WITH X.RDB$SECURITY_CLASS EQ work->dfw_name
tdbb->tdbb_attachment->att_security_class = class;
tdbb->tdbb_attachment->att_security_class = s_class;
END_FOR;
CMP_release(tdbb, (REQ)handle);
@ -1535,7 +1541,7 @@ static BOOLEAN create_index(TDBB tdbb,
defined enforces a foreign key constraint. This will prevent
the constraint from being violated during index construction. */
if (MET_lookup_partner(tdbb, relation, &idx, work->dfw_name) &&
if (MET_lookup_partner(tdbb, relation, &idx, (UCHAR*) work->dfw_name) &&
(partner_relation =
MET_lookup_relation_id( tdbb,
idx.idx_primary_relation,
@ -1553,7 +1559,7 @@ static BOOLEAN create_index(TDBB tdbb,
IDX_create_index( tdbb,
relation,
&idx,
work->dfw_name,
(UCHAR*) work->dfw_name,
&work->dfw_id,
transaction,
&selectivity);
@ -1830,7 +1836,7 @@ static BOOLEAN create_relation(TDBB tdbb,
work->dfw_lock = NULL;
if (!REQUEST(irq_c_relation))
REQUEST(irq_c_relation) = request;
REQUEST(irq_c_relation) = (BLK) request;
/* If relation wasn't found, don't do anymore. This can happen
when the relation is created and deleted in the same transaction. */
@ -1916,7 +1922,7 @@ static BOOLEAN delete_exception(TDBB tdbb,
return FALSE;
case 1:
check_dependencies(tdbb, work->dfw_name, NULL_PTR,
check_dependencies(tdbb, work->dfw_name, (TEXT*)NULL_PTR,
obj_exception, transaction);
return TRUE;
@ -2309,7 +2315,7 @@ static BOOLEAN delete_procedure(TDBB tdbb,
return FALSE;
case 1:
check_dependencies(tdbb, work->dfw_name, NULL_PTR,
check_dependencies(tdbb, work->dfw_name, (TEXT*)NULL_PTR,
obj_procedure, transaction);
return TRUE;
@ -2348,7 +2354,7 @@ static BOOLEAN delete_procedure(TDBB tdbb,
LCK_release(tdbb, procedure->prc_existence_lock);
tdbb->tdbb_database->
dbb_procedures->vec_object[procedure->prc_id] = NULL_PTR;
dbb_procedures->vec_object[procedure->prc_id] = (BLK) NULL_PTR;
return FALSE;
}
@ -2448,7 +2454,7 @@ static BOOLEAN delete_relation(TDBB tdbb,
gds_arg_gds, gds__dependency,
gds_arg_number, (SLONG) view_count,
0); /* Msg310: there are %ld dependencies */
check_dependencies(tdbb, work->dfw_name, NULL_PTR,
check_dependencies(tdbb, work->dfw_name, (TEXT*)NULL_PTR,
obj_relation, transaction);
return TRUE;
@ -2856,7 +2862,7 @@ static BOOLEAN find_depend_in_dfw(TDBB tdbb,
AND FLD.RDB$FIELD_NAME EQ object_name
AND REL.RDB$RELATION_NAME EQ RFR.RDB$RELATION_NAME
if (!REQUEST(irq_ch_cmp_dpd))
REQUEST(irq_ch_cmp_dpd) = request;
REQUEST(irq_ch_cmp_dpd) = (BLK) request;
if (!find_depend_in_dfw(tdbb, RFR.RDB$FIELD_NAME, obj_computed,
REL.RDB$RELATION_ID, transaction))
{
@ -2866,7 +2872,7 @@ static BOOLEAN find_depend_in_dfw(TDBB tdbb,
END_FOR;
if (!REQUEST(irq_ch_cmp_dpd))
REQUEST(irq_ch_cmp_dpd) = request;
REQUEST(irq_ch_cmp_dpd) = (BLK) request;
return TRUE;
}
@ -2889,7 +2895,7 @@ static void get_array_desc( TDBB tdbb, TEXT * field_name, ADS desc)
**************************************/
DBB dbb;
BLK request;
struct ads_repeat *ranges;
struct ads::ads_repeat *ranges;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -2900,7 +2906,7 @@ static void get_array_desc( TDBB tdbb, TEXT * field_name, ADS desc)
D IN RDB$FIELD_DIMENSIONS WITH D.RDB$FIELD_NAME EQ field_name
if (!REQUEST(irq_r_fld_dim))
{
REQUEST(irq_r_fld_dim) = request;
REQUEST(irq_r_fld_dim) = (BLK) request;
}
if (D.RDB$DIMENSION >= 0 && D.RDB$DIMENSION < desc->ads_dimensions)
{
@ -2912,7 +2918,7 @@ static void get_array_desc( TDBB tdbb, TEXT * field_name, ADS desc)
if (!REQUEST(irq_r_fld_dim))
{
REQUEST(irq_r_fld_dim) = (BLK)request;
REQUEST(irq_r_fld_dim) = (BLK) request;
}
desc->ads_count = 1;
@ -2965,14 +2971,14 @@ static void get_procedure_dependencies(DFW work)
X IN RDB$PROCEDURES WITH
X.RDB$PROCEDURE_NAME EQ work->dfw_name
if (!REQUEST(irq_c_prc_dpd))
REQUEST(irq_c_prc_dpd) = handle;
REQUEST(irq_c_prc_dpd) = (BLK) handle;
blob_id = X.RDB$PROCEDURE_BLR;
procedure = MET_lookup_procedure(tdbb, work->dfw_name);
END_FOR;
if (!REQUEST(irq_c_prc_dpd))
REQUEST(irq_c_prc_dpd) = handle;
REQUEST(irq_c_prc_dpd) = (BLK) handle;
/* get any dependencies now by parsing the blr */
@ -2981,12 +2987,12 @@ static void get_procedure_dependencies(DFW work)
old_pool = tdbb->tdbb_default;
tdbb->tdbb_default = ALL_pool();
MET_get_dependencies(tdbb,
NULL_PTR,
NULL_PTR,
NULL_PTR,
(struct rel*)NULL_PTR,
(TEXT*)NULL_PTR,
(struct csb*)NULL_PTR,
(SLONG*)&blob_id,
&request,
NULL_PTR,
(struct csb**)NULL_PTR,
work->dfw_name,
obj_procedure);
if (request)
@ -3032,14 +3038,14 @@ static void get_trigger_dependencies( DFW work)
X IN RDB$TRIGGERS WITH
X.RDB$TRIGGER_NAME EQ work->dfw_name
if (!REQUEST(irq_c_trigger))
REQUEST(irq_c_trigger) = handle;
REQUEST(irq_c_trigger) = (BLK) handle;
blob_id = X.RDB$TRIGGER_BLR;
relation = MET_lookup_relation(tdbb, X.RDB$RELATION_NAME);
END_FOR;
if (!REQUEST(irq_c_trigger))
REQUEST(irq_c_trigger) = handle;
REQUEST(irq_c_trigger) = (BLK) handle;
/* get any dependencies now by parsing the blr */
@ -3048,11 +3054,11 @@ static void get_trigger_dependencies( DFW work)
old_pool = tdbb->tdbb_default;
tdbb->tdbb_default = ALL_pool();
MET_get_dependencies(tdbb, relation,
NULL_PTR,
NULL_PTR,
(TEXT*)NULL_PTR,
(struct csb*)NULL_PTR,
(SLONG*)&blob_id,
&request,
NULL_PTR,
(struct csb**)NULL_PTR,
work->dfw_name,
obj_trigger);
ALL_rlpool(tdbb->tdbb_default);
@ -3178,7 +3184,7 @@ static FMT make_format( TDBB tdbb, REL relation, USHORT version, TFB stack)
STORE(REQUEST_HANDLE request)
FMT IN RDB$FORMATS
if (!REQUEST(irq_format3))
REQUEST(irq_format3) = request;
REQUEST(irq_format3) = (BLK) request;
FMT.RDB$FORMAT = version;
FMT.RDB$RELATION_ID = relation->rel_id;
blob = BLB_create(tdbb, dbb->dbb_sys_trans, (BID)&FMT.RDB$DESCRIPTOR);
@ -3190,7 +3196,7 @@ static FMT make_format( TDBB tdbb, REL relation, USHORT version, TFB stack)
END_STORE;
if (!REQUEST(irq_format3))
REQUEST(irq_format3) = request;
REQUEST(irq_format3) = (BLK) request;
return format;
}
@ -3245,7 +3251,7 @@ static BOOLEAN make_version(TDBB tdbb,
computed_field = FALSE;
for (n = 0; n < TRIGGER_MAX; n++)
triggers[n] = NULL_PTR;
triggers[n] = (VEC) NULL_PTR;
request_fmt1 =
(BLK) CMP_find_request(tdbb, irq_format1, IRQ_REQUESTS);
@ -3253,7 +3259,7 @@ static BOOLEAN make_version(TDBB tdbb,
FOR(REQUEST_HANDLE request_fmt1)
REL IN RDB$RELATIONS WITH REL.RDB$RELATION_NAME EQ work->dfw_name
if (!REQUEST(irq_format1))
REQUEST(irq_format1) = request_fmt1;
REQUEST(irq_format1) = (BLK) request_fmt1;
if (!(relation =
MET_lookup_relation_id(tdbb, REL.RDB$RELATION_ID, FALSE)))
{
@ -3286,7 +3292,7 @@ static BOOLEAN make_version(TDBB tdbb,
RFR.RDB$RELATION_NAME EQ work->dfw_name AND
RFR.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME
if (!REQUEST(irq_format2))
REQUEST(irq_format2) = request_fmtx;
REQUEST(irq_format2) = (BLK) request_fmtx;
/* Update RFR to reflect new fields id */
@ -3344,7 +3350,7 @@ static BOOLEAN make_version(TDBB tdbb,
n = RFR.RDB$FIELD_ID;
put_summary_record(blob, RSR_field_id, (UCHAR*)&n, sizeof(n));
put_summary_record(blob, RSR_field_name,
RFR.RDB$FIELD_NAME,
(UCHAR*) RFR.RDB$FIELD_NAME,
name_length(RFR.RDB$FIELD_NAME));
if (!NULL_BLOB(FLD.RDB$COMPUTED_BLR)
&& !RFR.RDB$VIEW_CONTEXT)
@ -3361,7 +3367,7 @@ static BOOLEAN make_version(TDBB tdbb,
(UCHAR*)&n,
sizeof(n));
put_summary_record(blob, RSR_base_field,
RFR.RDB$BASE_FIELD,
(UCHAR*) RFR.RDB$BASE_FIELD,
name_length(RFR.RDB$BASE_FIELD));
}
put_summary_blob(blob, RSR_missing_value,
@ -3383,7 +3389,7 @@ static BOOLEAN make_version(TDBB tdbb,
n = name_length(RFR.RDB$SECURITY_CLASS);
if (!RFR.RDB$SECURITY_CLASS.NULL && n)
put_summary_record(blob, RSR_security_class,
RFR.RDB$SECURITY_CLASS, n);
(UCHAR*) RFR.RDB$SECURITY_CLASS, n);
/* Make a temporary field block */
@ -3468,7 +3474,7 @@ static BOOLEAN make_version(TDBB tdbb,
END_FOR;
if (!REQUEST(irq_format2))
REQUEST(irq_format2) = request_fmtx;
REQUEST(irq_format2) = (BLK) request_fmtx;
request_fmtx =
(BLK) CMP_find_request(tdbb, irq_format4, IRQ_REQUESTS);
@ -3479,12 +3485,12 @@ static BOOLEAN make_version(TDBB tdbb,
TRG.RDB$SYSTEM_FLAG NOT MISSING
SORTED BY TRG.RDB$TRIGGER_SEQUENCE
if (!REQUEST(irq_format4))
REQUEST(irq_format4) = request_fmtx;
REQUEST(irq_format4) = (BLK) request_fmtx;
if (!TRG.RDB$TRIGGER_INACTIVE)
{
put_summary_record(blob, RSR_trigger_name,
TRG.RDB$TRIGGER_NAME,
(UCHAR*) TRG.RDB$TRIGGER_NAME,
name_length(TRG.RDB$TRIGGER_NAME));
/* for a view, load the trigger temporarily --
@ -3505,7 +3511,7 @@ static BOOLEAN make_version(TDBB tdbb,
END_FOR;
if (!REQUEST(irq_format4))
REQUEST(irq_format4) = request_fmtx;
REQUEST(irq_format4) = (BLK) request_fmtx;
request_fmtx =
(BLK) CMP_find_request(tdbb, irq_format5, IRQ_REQUESTS);
@ -3525,12 +3531,12 @@ static BOOLEAN make_version(TDBB tdbb,
AND TRG.RDB$TRIGGER_SOURCE MISSING)
SORTED BY TRG.RDB$TRIGGER_SEQUENCE
if (!REQUEST(irq_format5))
REQUEST(irq_format5) = request_fmtx;
REQUEST(irq_format5) = (BLK) request_fmtx;
if (!TRG.RDB$TRIGGER_INACTIVE)
{
put_summary_record(blob, RSR_trigger_name,
TRG.RDB$TRIGGER_NAME,
(UCHAR*) TRG.RDB$TRIGGER_NAME,
name_length(TRG.RDB$TRIGGER_NAME));
/* for a view, load the trigger temporarily --
@ -3551,7 +3557,7 @@ static BOOLEAN make_version(TDBB tdbb,
END_FOR;
if (!REQUEST(irq_format5))
REQUEST(irq_format5) = request_fmtx;
REQUEST(irq_format5) = (BLK) request_fmtx;
request_fmtx =
(BLK) CMP_find_request(tdbb, irq_format6, IRQ_REQUESTS);
@ -3565,12 +3571,12 @@ static BOOLEAN make_version(TDBB tdbb,
SORTED BY TRG.RDB$TRIGGER_SEQUENCE
if (!REQUEST(irq_format6))
REQUEST(irq_format6) = request_fmtx;
REQUEST(irq_format6) = (BLK) request_fmtx;
if (!TRG.RDB$TRIGGER_INACTIVE)
{
put_summary_record(blob, RSR_trigger_name,
TRG.RDB$TRIGGER_NAME,
(UCHAR*) TRG.RDB$TRIGGER_NAME,
name_length(TRG.RDB$TRIGGER_NAME));
/* for a view, load the trigger temporarily --
@ -3591,14 +3597,14 @@ static BOOLEAN make_version(TDBB tdbb,
END_FOR;
if (!REQUEST(irq_format6))
REQUEST(irq_format6) = request_fmtx;
REQUEST(irq_format6) = (BLK) request_fmtx;
BLB_close(tdbb, blob);
END_MODIFY;
END_FOR;
if (!REQUEST(irq_format1))
REQUEST(irq_format1) = request_fmt1;
REQUEST(irq_format1) = (BLK) request_fmt1;
/* If we didn't find the relation, it is probably being dropped */
@ -3661,7 +3667,7 @@ static BOOLEAN make_version(TDBB tdbb,
}
relation->rel_flags &= ~REL_scanned;
DFW_post_work(transaction, dfw_scan_relation, NULL_PTR,
DFW_post_work(transaction, dfw_scan_relation, (DSC*) NULL_PTR,
relation->rel_id);
break;
}
@ -3778,7 +3784,7 @@ static BOOLEAN modify_procedure(TDBB tdbb,
}
LCK_release(tdbb, procedure->prc_existence_lock);
tdbb->tdbb_database->
dbb_procedures->vec_object[procedure->prc_id] = NULL_PTR;
dbb_procedures->vec_object[procedure->prc_id] = (BLK) NULL_PTR;
if (!(procedure = MET_lookup_procedure_id(tdbb,
work->dfw_id,
@ -3953,7 +3959,7 @@ static void put_summary_blob( BLB blob, RSR_T type, SLONG blob_id[2])
{
tdbb->tdbb_setjmp = (UCHAR *) old_env;
if (buffer != temp)
ALL_free(buffer);
ALL_free((SCHAR*) buffer);
ERR_punt();
}
@ -3963,7 +3969,7 @@ static void put_summary_blob( BLB blob, RSR_T type, SLONG blob_id[2])
tdbb->tdbb_setjmp = (UCHAR *) old_env;
if (buffer != temp)
ALL_free(buffer);
ALL_free((SCHAR*) buffer);
}
@ -4007,7 +4013,7 @@ static void put_summary_record(BLB blob,
{
tdbb->tdbb_setjmp = (UCHAR *) old_env;
if (buffer != temp)
ALL_free(buffer);
ALL_free((SCHAR*) buffer);
ERR_punt();
}
@ -4016,7 +4022,7 @@ static void put_summary_record(BLB blob,
tdbb->tdbb_setjmp = (UCHAR *) old_env;
if (buffer != temp)
ALL_free(buffer);
ALL_free((SCHAR*) buffer);
}

View File

@ -29,11 +29,6 @@
* Change: Corrected routine to use new variables from PAG_init.
*/
/* 2001.07.06 Sean Leyne - Code Cleanup, removed "#ifdef READONLY_DATABASE"
* conditionals, as the engine now fully supports
* readonly databases.
*/
#include "../jrd/ib_stdio.h"
#include "../jrd/ibsetjmp.h"
#include <string.h>
@ -69,11 +64,15 @@
#include "../jrd/sqz_proto.h"
#include "../jrd/thd_proto.h"
#ifdef DEV_BUILD
#include "../jrd/dbg_proto.h"
#endif
DATABASE DB = FILENAME "ODS.RDB";
#define DECOMPOSE(n, divisor, q, r) {r = n % divisor; q = n / divisor;}
#define DECOMPOSE_QUOTIENT(n, divisor, q) {q = n / divisor;}
#define HIGH_WATER(x) ((SSHORT) sizeof (struct dpg) + (SSHORT) sizeof (struct dpg_repeat) * (x - 1))
#define HIGH_WATER(x) ((SSHORT) sizeof (struct dpg) + (SSHORT) sizeof (dpg::dpg_repeat) * (x - 1))
#define SPACE_FUDGE RHDF_SIZE
static void delete_tail(TDBB, RHDF, USHORT);
@ -140,7 +139,7 @@ void DPM_backout( TDBB tdbb, RPB * rpb)
DPG page;
RHD header;
USHORT n;
struct dpg_repeat *index1, *index2;
dpg::dpg_repeat *index1, *index2;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -206,7 +205,7 @@ int DPM_chain( TDBB tdbb, RPB * org_rpb, RPB * new_rpb)
**************************************
*
* Functional description
* Start here with a plausible, but non-active RPB.
* Start here with a plausible, but non-active RPB.
*
* We need to create a new version of a record. If the new version
* fits on the same page as the old record, things are simple and
@ -214,9 +213,9 @@ int DPM_chain( TDBB tdbb, RPB * org_rpb, RPB * new_rpb)
*
* Note that we also return FALSE if the record fetched doesn't
* match the state of the input rpb, or if there is no record for
* that record number. The caller has to check the results to
* that record number. The caller has to check the results to
* see what failed if FALSE is returned. At the moment, there is
* only one caller, VIO_erase.
* only one caller, VIO_erase.
*
**************************************/
DBB dbb;
@ -228,7 +227,7 @@ int DPM_chain( TDBB tdbb, RPB * org_rpb, RPB * new_rpb)
SLONG length, fill; /* Accomodate max record size i.e. 64K */
USHORT size;
SSHORT top, offset, n, slot, available, space;
struct dpg_repeat *index, *end;
dpg::dpg_repeat *index, *end;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -254,7 +253,7 @@ int DPM_chain( TDBB tdbb, RPB * org_rpb, RPB * new_rpb)
temp = *org_rpb;
size =
SQZ_length(tdbb, new_rpb->rpb_address, (int) new_rpb->rpb_length,
SQZ_length(tdbb, (SCHAR*) new_rpb->rpb_address, (int) new_rpb->rpb_length,
&dcc);
if (!DPM_get(tdbb, org_rpb, LCK_write)) {
@ -334,8 +333,8 @@ int DPM_chain( TDBB tdbb, RPB * org_rpb, RPB * new_rpb)
}
if (slot == page->dpg_count) {
top += sizeof(struct dpg_repeat);
available -= sizeof(struct dpg_repeat);
top += sizeof(dpg::dpg_repeat);
available -= sizeof(dpg::dpg_repeat);
}
/* If the record doesn't fit, punt */
@ -384,7 +383,7 @@ int DPM_chain( TDBB tdbb, RPB * org_rpb, RPB * new_rpb)
header->rhd_b_page = new_rpb->rpb_b_page;
header->rhd_b_line = new_rpb->rpb_b_line;
SQZ_fast(&dcc, new_rpb->rpb_address, header->rhd_data);
SQZ_fast(&dcc, (SCHAR*) new_rpb->rpb_address, (SCHAR*) header->rhd_data);
release_dcc(dcc.dcc_next);
if (fill) {
@ -424,7 +423,7 @@ int DPM_compress( TDBB tdbb, DPG page)
#else
UCHAR temp_page[MAX_PAGE_SIZE];
#endif
struct dpg_repeat *index, *end;
dpg::dpg_repeat *index, *end;
JMP_BUF env, *old_env;
SET_TDBB(tdbb);
@ -533,7 +532,7 @@ void DPM_create_relation( TDBB tdbb, REL relation)
record.jrnda_type = JRNP_DB_HDR_PAGES;
record.jrnda_data = window.win_page;
CCH_journal_record(tdbb, &root_window, (UCHAR*)&record, JRNDA_SIZE,
NULL_PTR, 0);
(UCHAR*) NULL_PTR, 0);
}
CCH_RELEASE(tdbb, &root_window);
}
@ -645,7 +644,7 @@ void DPM_delete( TDBB tdbb, RPB * rpb, SLONG prior_page)
SLONG *ptr, number, sequence;
JRNP journal;
REL relation;
struct dpg_repeat *index;
dpg::dpg_repeat *index;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -800,7 +799,7 @@ void DPM_delete( TDBB tdbb, RPB * rpb, SLONG prior_page)
journal.jrnp_type = JRNP_POINTER_SLOT;
journal.jrnp_index = slot;
journal.jrnp_length = 0;
CCH_journal_record(tdbb, &pwindow, (UCHAR*)&journal, JRNP_SIZE, NULL_PTR, 0);
CCH_journal_record(tdbb, &pwindow, (UCHAR*)&journal, JRNP_SIZE, (UCHAR*) NULL_PTR, 0);
}
CCH_RELEASE(tdbb, &pwindow);
@ -834,7 +833,7 @@ void DPM_delete_relation( TDBB tdbb, REL relation)
UCHAR *flags, pag_flags;
SLONG *page;
RHD header;
struct dpg_repeat *line, *end_line;
dpg::dpg_repeat *line, *end_line;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -1106,8 +1105,8 @@ SINT64 DPM_gen_id(TDBB tdbb, SLONG generator, USHORT initialize, SINT64 val)
*
* Functional description
* Generate relation specific value.
* If initialize is set then value of generator is made
* equal to val else generator is incremented by val.
* If initialize is set then value of generator is made
* equal to val else generator is incremented by val.
* The resulting value is the result of the function.
**************************************/
DBB dbb;
@ -1178,8 +1177,7 @@ SINT64 DPM_gen_id(TDBB tdbb, SLONG generator, USHORT initialize, SINT64 val)
if (val || initialize) {
if (dbb->dbb_flags & DBB_read_only)
ERR_post(isc_read_only_database, 0);
CCH_MARK(tdbb, &window);
CCH_MARK(tdbb, &window);
/* Initialize or increment the quad value in an ODS 10 or later
* generator page, or the long value in ODS <= 9.
@ -1202,7 +1200,7 @@ SINT64 DPM_gen_id(TDBB tdbb, SLONG generator, USHORT initialize, SINT64 val)
journal.jrng_type = JRNP_GENERATOR;
journal.jrng_offset = offset;
journal.jrng_genval = *ptr;
CCH_journal_record(tdbb, &window, (UCHAR*)&journal, JRNG_SIZE, NULL_PTR,
CCH_journal_record(tdbb, &window, (UCHAR*)&journal, JRNG_SIZE, (UCHAR*) NULL_PTR,
0);
}
@ -1309,7 +1307,7 @@ ULONG DPM_get_blob(TDBB tdbb,
*
* Functional description
* Given a blob block, find the associated blob. If blob is level 0,
* get the data clump, otherwise get the vector of pointers.
* get the data clump, otherwise get the vector of pointers.
*
* If the delete flag is set, delete the blob header after access
* and return the page number. This is a kludge, but less code
@ -1327,7 +1325,7 @@ ULONG DPM_get_blob(TDBB tdbb,
VCL vector;
UCHAR *p, *q;
RPB rpb;
struct dpg_repeat *index;
dpg::dpg_repeat *index;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -1507,7 +1505,7 @@ BOOLEAN DPM_next(TDBB tdbb,
rpb->rpb_number--;
else if (rpb->rpb_number < 0) {
/* if the stream was just opened, assume we want to start
at the end of the stream, so compute the last theoretically
at the end of the stream, so compute the last theoretically
possible rpb_number and go down from there */
/** for now, we must force a scan to make sure that we get
the last pointer page: this should be changed to use
@ -1686,7 +1684,7 @@ void DPM_pages(
END_STORE
if (!REQUEST(irq_s_pages))
REQUEST(irq_s_pages) = request;
REQUEST(irq_s_pages) = (BLK) request;
}
@ -1804,7 +1802,7 @@ void DPM_scan_pages( TDBB tdbb)
FOR(REQUEST_HANDLE request) X IN RDB$PAGES
if (!REQUEST(irq_r_pages))
REQUEST(irq_r_pages) = request;
REQUEST(irq_r_pages) = (BLK) request;
relation = MET_relation(tdbb, X.RDB$RELATION_ID);
sequence = X.RDB$PAGE_SEQUENCE;
switch (X.RDB$PAGE_TYPE) {
@ -1838,7 +1836,7 @@ void DPM_scan_pages( TDBB tdbb)
END_FOR;
if (!REQUEST(irq_r_pages))
REQUEST(irq_r_pages) = request;
REQUEST(irq_r_pages) = (BLK) request;
}
@ -1878,7 +1876,7 @@ void DPM_store( TDBB tdbb, register RPB * rpb, LLS * stack, USHORT type)
rpb->rpb_f_line, rpb->rpb_flags);
#endif
size = SQZ_length(tdbb, rpb->rpb_address, (int) rpb->rpb_length, &dcc);
size = SQZ_length(tdbb, (SCHAR*) rpb->rpb_address, (int) rpb->rpb_length, &dcc);
/* If the record isn't going to fit on a page, even if fragmented,
handle it a little differently. */
@ -1893,7 +1891,7 @@ void DPM_store( TDBB tdbb, register RPB * rpb, LLS * stack, USHORT type)
fill = 0;
length = RHD_SIZE + size + fill;
header = locate_space(tdbb, rpb, (SSHORT)length, stack, NULL_PTR, type);
header = locate_space(tdbb, rpb, (SSHORT)length, stack, (REC) NULL_PTR, type);
header->rhd_flags = rpb->rpb_flags;
header->rhd_transaction = rpb->rpb_transaction;
@ -1901,7 +1899,7 @@ void DPM_store( TDBB tdbb, register RPB * rpb, LLS * stack, USHORT type)
header->rhd_b_page = rpb->rpb_b_page;
header->rhd_b_line = rpb->rpb_b_line;
SQZ_fast(&dcc, rpb->rpb_address, header->rhd_data);
SQZ_fast(&dcc, (SCHAR*) rpb->rpb_address, (SCHAR*) header->rhd_data);
release_dcc(dcc.dcc_next);
#ifdef VIO_DEBUG
@ -2100,7 +2098,7 @@ void DPM_update( TDBB tdbb, register RPB * rpb, LLS * stack, TRA transaction)
SLONG length, fill; /* Accomodate max record size i.e. 64K */
USHORT size;
SSHORT top, offset, slot, available, space, old_length;
struct dpg_repeat *index, *end;
dpg::dpg_repeat *index, *end;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
@ -2128,7 +2126,7 @@ void DPM_update( TDBB tdbb, register RPB * rpb, LLS * stack, TRA transaction)
CCH_precedence(tdbb, &rpb->rpb_window, -rpb->rpb_transaction);
CCH_MARK(tdbb, &rpb->rpb_window);
page = (DPG) rpb->rpb_window.win_buffer;
size = SQZ_length(tdbb, rpb->rpb_address, (int) rpb->rpb_length, &dcc);
size = SQZ_length(tdbb, (SCHAR*) rpb->rpb_address, (int) rpb->rpb_length, &dcc);
/* It is critical that the record be padded, if necessary, to the length of
a fragmented record header. Compute the amount of fill required. */
@ -2174,7 +2172,7 @@ void DPM_update( TDBB tdbb, register RPB * rpb, LLS * stack, TRA transaction)
header->rhd_b_page = rpb->rpb_b_page;
header->rhd_b_line = rpb->rpb_b_line;
SQZ_fast(&dcc, rpb->rpb_address, header->rhd_data);
SQZ_fast(&dcc, (SCHAR*) rpb->rpb_address, (SCHAR*) header->rhd_data);
release_dcc(dcc.dcc_next);
#ifdef VIO_DEBUG
@ -2301,7 +2299,7 @@ static void fragment(
* messing with the head until we get back, and, if possible, we'd
* like to keep as much space on the original page as we can get.
* Making matters worse, we may be storing a new version of the
* record or we may be backing out an old one and replacing it
* record or we may be backing out an old one and replacing it
* with one older still (replacing a dead rolled back record with
* the preceding version).
*
@ -2319,7 +2317,7 @@ static void fragment(
* id. Applying deltas to the expanded form of the same version of the
* record is a no-op -- but it doesn't cost much and the case is rare.
*
* If we're backing out a rolled back version, we've got another
* If we're backing out a rolled back version, we've got another
* problem. The rpb we've got is for record version n - 1, not version
* n + 1. (e.g. I'm transaction 32 removing the rolled back record
* created by transaction 28 and reinstating the committed version
@ -2419,7 +2417,7 @@ static void fragment(
first figuring out how much of the original record fits on the
original page. */
pre_header_length = SQZ_compress_length(dcc, rpb->rpb_address,
pre_header_length = SQZ_compress_length(dcc, (SCHAR*) rpb->rpb_address,
(int) (available_space -
RHDF_SIZE));
@ -2461,7 +2459,7 @@ static void fragment(
post_header_length =
SQZ_compress(dcc, rpb->rpb_address, header->rhdf_data,
SQZ_compress(dcc, (SCHAR*) rpb->rpb_address, (SCHAR*) header->rhdf_data,
(int) (available_space - RHDF_SIZE));
#ifdef VIO_DEBUG
@ -2501,7 +2499,7 @@ static void extend_relation( TDBB tdbb, REL relation, WIN * window)
* Functional description
* Extend a relation with a given page. The window points to an
* already allocated, fetched, and marked data page to be inserted
* into the pointer pages for a given relation.
* into the pointer pages for a given relation.
* This routine returns a window on the datapage locked for write
*
**************************************/
@ -2671,14 +2669,14 @@ static UCHAR *find_space(TDBB tdbb,
* data page, and return a pointer to the space.
*
* To maintain page precedence when objects point to objects, a stack
* of pages of high precedence may be passed in.
* of pages of high precedence may be passed in.
*
**************************************/
DBB dbb;
DPG page;
SSHORT i, slot, aligned_size;
SSHORT used, space, reserving;
struct dpg_repeat *index;
dpg::dpg_repeat *index;
RHD header;
SET_TDBB(tdbb);
@ -2712,7 +2710,7 @@ static UCHAR *find_space(TDBB tdbb,
slot = i;
if (!slot)
used += sizeof(struct dpg_repeat);
used += sizeof(dpg::dpg_repeat);
/* If there isn't space, give up */
@ -2768,7 +2766,7 @@ static BOOLEAN get_header( WIN * window, SSHORT line, register RPB * rpb)
**************************************/
DPG page;
register RHDF header;
register struct dpg_repeat *index;
register dpg::dpg_repeat *index;
page = (DPG) window->win_buffer;
if (line >= page->dpg_count)
@ -2873,7 +2871,7 @@ static void journal_segment( TDBB tdbb, WIN * window, USHORT slot)
**************************************/
JRNP journal;
DPG page;
struct dpg_repeat *index;
dpg::dpg_repeat *index;
SET_TDBB(tdbb);
@ -2963,8 +2961,8 @@ static RHD locate_space(
}
/* Sigh. No space. Extend relation. Try for a while
in case someone grabs the page before we can get it
locked, then give up on the assumption that things
in case someone grabs the page before we can get it
locked, then give up on the assumption that things
are really screwed up. */
for (i = 0; i < 20; i++) {
@ -3034,7 +3032,7 @@ static void mark_full( TDBB tdbb, register RPB * rpb)
DECOMPOSE(sequence, dbb->dbb_dp_per_pp, pp_sequence, slot);
/* Fetch the pointer page, then the data page. Since this is a case of
fetching a second page after having fetched the first page with an
fetching a second page after having fetched the first page with an
exclusive latch, care has to be taken to prevent a deadlock. This
is accomplished by timing out the second latch request and retrying
the whole thing. */
@ -3251,13 +3249,13 @@ static void store_big_record(
release_dcc(head_dcc->dcc_next);
size =
SQZ_length(tdbb, rpb->rpb_address, in - (SCHAR *) rpb->rpb_address,
SQZ_length(tdbb, (SCHAR*) rpb->rpb_address, in - (SCHAR *) rpb->rpb_address,
head_dcc);
header = (RHDF)locate_space(tdbb,
rpb,
(SSHORT)(RHDF_SIZE + size),
stack,
NULL_PTR,
(REC) NULL_PTR,
DPM_other);
header->rhdf_flags = rhd_incomplete | rhd_large | rpb->rpb_flags;
@ -3267,7 +3265,7 @@ static void store_big_record(
header->rhdf_b_line = rpb->rpb_b_line;
header->rhdf_f_page = prior;
header->rhdf_f_line = 0;
SQZ_fast(head_dcc, rpb->rpb_address, header->rhdf_data);
SQZ_fast(head_dcc, (SCHAR*) rpb->rpb_address, (SCHAR*) header->rhdf_data);
release_dcc(head_dcc->dcc_next);
if (dbb->dbb_wal)
@ -3293,4 +3291,4 @@ static void store_big_record(
}
else
CCH_RELEASE(tdbb, &rpb->rpb_window);
}
}

View File

@ -111,8 +111,8 @@ void DYN_ddl( ATT attachment, TRA transaction, USHORT length, UCHAR * ddl)
ptr = ddl;
if (*ptr++ != gds__dyn_version_1)
ERR_post(gds__wrodynver, 0);
if (*ptr++ != gds_dyn_version_1)
ERR_post(gds_wrodynver, 0);
status = tdbb->tdbb_status_vector;
*status++ = gds_arg_gds;
@ -171,7 +171,7 @@ void DYN_ddl( ATT attachment, TRA transaction, USHORT length, UCHAR * ddl)
VIO_start_save_point(tdbb, transaction);
transaction->tra_save_point->sav_verb_count++;
DYN_execute(&gbl, &ptr, NULL_PTR, NULL_PTR, NULL_PTR, NULL_PTR, NULL_PTR);
DYN_execute(&gbl, &ptr, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
transaction->tra_save_point->sav_verb_count--;
VIO_verb_cleanup(tdbb, transaction);
@ -339,7 +339,7 @@ void DYN_error(USHORT status_flag,
tdbb = GET_THREAD_DATA;
if (tdbb->tdbb_status_vector[1] == gds__no_meta_update)
if (tdbb->tdbb_status_vector[1] == gds_no_meta_update)
return;
error_buffer =
@ -353,10 +353,10 @@ void DYN_error(USHORT status_flag,
v1 = local_status;
*v1++ = gds_arg_gds;
*v1++ = gds__no_meta_update;
*v1++ = gds_no_meta_update;
if (number) {
*v1++ = gds_arg_gds;
*v1++ = gds__random;
*v1++ = gds_random;
*v1++ = gds_arg_string;
*v1++ = (STATUS) ERR_cstring(error_buffer);
}
@ -499,8 +499,8 @@ TEXT * function_name, TEXT * procedure_name)
UCHAR verb;
switch (verb = *(*ptr)++) {
case gds__dyn_begin:
while (**ptr != gds__dyn_end)
case gds_dyn_begin:
while (**ptr != gds_dyn_end)
DYN_execute(gbl, ptr, relation_name, field_name,
trigger_name, function_name, procedure_name);
++(*ptr);
@ -509,16 +509,16 @@ TEXT * function_name, TEXT * procedure_name)
/* Runtime security-related dynamic DDL should not require licensing.
A placeholder case statement for SQL 3 Roles is reserved below. */
case gds__dyn_grant:
case gds_dyn_grant:
grant(gbl, ptr);
break;
case gds__dyn_revoke:
case gds_dyn_revoke:
revoke(gbl, ptr);
break;
/***
case gds__dyn_def_role:
case gds_dyn_def_role:
create_role (gbl, ptr);
break;
***/
@ -526,64 +526,64 @@ TEXT * function_name, TEXT * procedure_name)
/* make sure that the license allows metadata operations */
switch (verb) {
case gds__dyn_mod_database:
case gds_dyn_mod_database:
DYN_modify_database(gbl, ptr);
break;
case gds__dyn_def_rel:
case gds__dyn_def_view:
case gds_dyn_def_rel:
case gds_dyn_def_view:
DYN_define_relation(gbl, ptr);
break;
case gds__dyn_mod_rel:
case gds_dyn_mod_rel:
DYN_modify_relation(gbl, ptr);
break;
case gds__dyn_delete_rel:
case gds_dyn_delete_rel:
DYN_delete_relation(gbl, ptr, relation_name);
break;
case gds__dyn_def_security_class:
case gds_dyn_def_security_class:
DYN_define_security_class(gbl, ptr);
break;
case gds__dyn_delete_security_class:
case gds_dyn_delete_security_class:
DYN_delete_security_class(gbl, ptr);
break;
case gds__dyn_def_exception:
case gds_dyn_def_exception:
DYN_define_exception(gbl, ptr);
break;
case gds__dyn_mod_exception:
case gds_dyn_mod_exception:
DYN_modify_exception(gbl, ptr);
break;
case gds__dyn_del_exception:
case gds_dyn_del_exception:
DYN_delete_exception(gbl, ptr);
break;
case gds__dyn_def_filter:
case gds_dyn_def_filter:
DYN_define_filter(gbl, ptr);
break;
case gds__dyn_delete_filter:
case gds_dyn_delete_filter:
DYN_delete_filter(gbl, ptr);
break;
case gds__dyn_def_function:
case gds_dyn_def_function:
DYN_define_function(gbl, ptr);
break;
case gds__dyn_def_function_arg:
case gds_dyn_def_function_arg:
DYN_define_function_arg(gbl, ptr, function_name);
break;
case gds__dyn_delete_function:
case gds_dyn_delete_function:
DYN_delete_function(gbl, ptr);
break;
case gds__dyn_def_generator:
case gds_dyn_def_generator:
DYN_define_generator(gbl, ptr);
break;
@ -595,79 +595,79 @@ TEXT * function_name, TEXT * procedure_name)
DYN_delete_role(gbl, ptr);
break;
case gds__dyn_def_procedure:
case gds_dyn_def_procedure:
DYN_define_procedure(gbl, ptr);
break;
case gds__dyn_mod_procedure:
case gds_dyn_mod_procedure:
DYN_modify_procedure(gbl, ptr);
break;
case gds__dyn_delete_procedure:
case gds_dyn_delete_procedure:
DYN_delete_procedure(gbl, ptr);
break;
case gds__dyn_def_parameter:
case gds_dyn_def_parameter:
DYN_define_parameter(gbl, ptr, procedure_name);
break;
case gds__dyn_delete_parameter:
case gds_dyn_delete_parameter:
DYN_delete_parameter(gbl, ptr, procedure_name);
break;
case gds__dyn_def_shadow:
case gds_dyn_def_shadow:
DYN_define_shadow(gbl, ptr);
break;
case gds__dyn_delete_shadow:
case gds_dyn_delete_shadow:
DYN_delete_shadow(gbl, ptr);
break;
case gds__dyn_def_trigger:
case gds_dyn_def_trigger:
DYN_define_trigger(gbl, ptr, relation_name, NULL, FALSE);
break;
case gds__dyn_mod_trigger:
case gds_dyn_mod_trigger:
DYN_modify_trigger(gbl, ptr);
break;
case gds__dyn_delete_trigger:
case gds_dyn_delete_trigger:
DYN_delete_trigger(gbl, ptr);
break;
case gds__dyn_def_trigger_msg:
case gds_dyn_def_trigger_msg:
DYN_define_trigger_msg(gbl, ptr, trigger_name);
break;
case gds__dyn_mod_trigger_msg:
case gds_dyn_mod_trigger_msg:
DYN_modify_trigger_msg(gbl, ptr, trigger_name);
break;
case gds__dyn_delete_trigger_msg:
case gds_dyn_delete_trigger_msg:
DYN_delete_trigger_msg(gbl, ptr, trigger_name);
break;
case gds__dyn_def_global_fld:
case gds_dyn_def_global_fld:
DYN_define_global_field(gbl, ptr, relation_name, field_name);
break;
case gds__dyn_mod_global_fld:
case gds_dyn_mod_global_fld:
DYN_modify_global_field(gbl, ptr, relation_name, field_name);
break;
case gds__dyn_delete_global_fld:
case gds_dyn_delete_global_fld:
DYN_delete_global_field(gbl, ptr);
break;
case gds__dyn_def_local_fld:
case gds_dyn_def_local_fld:
DYN_define_local_field(gbl, ptr, relation_name, field_name);
break;
case gds__dyn_mod_local_fld:
case gds_dyn_mod_local_fld:
DYN_modify_local_field(gbl, ptr, relation_name, NULL);
break;
case gds__dyn_delete_local_fld:
case gds_dyn_delete_local_fld:
DYN_delete_local_field(gbl, ptr, relation_name, field_name);
break;
@ -675,40 +675,40 @@ TEXT * function_name, TEXT * procedure_name)
DYN_modify_sql_field(gbl, ptr, relation_name, NULL);
break;
case gds__dyn_def_sql_fld:
case gds_dyn_def_sql_fld:
DYN_define_sql_field(gbl, ptr, relation_name, field_name);
break;
case gds__dyn_def_idx:
case gds_dyn_def_idx:
DYN_define_index(gbl, ptr, relation_name, verb, NULL, NULL, NULL,
NULL);
break;
case gds__dyn_rel_constraint:
case gds_dyn_rel_constraint:
DYN_define_constraint(gbl, ptr, relation_name, field_name);
break;
case gds__dyn_delete_rel_constraint:
case gds_dyn_delete_rel_constraint:
DYN_delete_constraint(gbl, ptr, relation_name);
break;
case gds__dyn_mod_idx:
case gds_dyn_mod_idx:
DYN_modify_index(gbl, ptr);
break;
case gds__dyn_delete_idx:
case gds_dyn_delete_idx:
DYN_delete_index(gbl, ptr);
break;
case gds__dyn_view_relation:
case gds_dyn_view_relation:
DYN_define_view_relation(gbl, ptr, relation_name);
break;
case gds__dyn_def_dimension:
case gds_dyn_def_dimension:
DYN_define_dimension(gbl, ptr, relation_name, field_name);
break;
case gds__dyn_delete_dimensions:
case gds_dyn_delete_dimensions:
DYN_delete_dimensions(gbl, ptr, relation_name, field_name);
break;
@ -1246,19 +1246,19 @@ static void grant( GBL gbl, UCHAR ** ptr)
options = 0;
obj_type = user_type = -1;
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_rel_name:
case gds_dyn_rel_name:
obj_type = obj_relation;
GET_STRING(ptr, object);
break;
case gds__dyn_prc_name:
case gds_dyn_prc_name:
obj_type = obj_procedure;
GET_STRING(ptr, object);
break;
case gds__dyn_fld_name:
case gds_dyn_fld_name:
GET_STRING(ptr, field);
break;
@ -1267,7 +1267,7 @@ static void grant( GBL gbl, UCHAR ** ptr)
GET_STRING(ptr, user);
break;
case gds__dyn_grant_user:
case gds_dyn_grant_user:
GET_STRING(ptr, user);
if (DYN_is_it_sql_role(gbl, user, dummy_name, tdbb)) {
user_type = obj_sql_role;
@ -1292,22 +1292,22 @@ static void grant( GBL gbl, UCHAR ** ptr)
}
break;
case gds__dyn_grant_proc:
case gds_dyn_grant_proc:
user_type = obj_procedure;
GET_STRING(ptr, user);
break;
case gds__dyn_grant_trig:
case gds_dyn_grant_trig:
user_type = obj_trigger;
GET_STRING(ptr, user);
break;
case gds__dyn_grant_view:
case gds_dyn_grant_view:
user_type = obj_view;
GET_STRING(ptr, user);
break;
case gds__dyn_grant_options:
case gds_dyn_grant_options:
case isc_dyn_grant_admin_options:
options = DYN_get_number(ptr);
break;
@ -1917,19 +1917,19 @@ static void revoke( GBL gbl, UCHAR ** ptr)
obj_type = user_type = -1;
options = 0;
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_rel_name:
case gds_dyn_rel_name:
obj_type = obj_relation;
GET_STRING(ptr, object);
break;
case gds__dyn_prc_name:
case gds_dyn_prc_name:
obj_type = obj_procedure;
GET_STRING(ptr, object);
break;
case gds__dyn_fld_name:
case gds_dyn_fld_name:
GET_STRING(ptr, field);
break;
@ -1938,7 +1938,7 @@ static void revoke( GBL gbl, UCHAR ** ptr)
GET_STRING(ptr, user);
break;
case gds__dyn_grant_user:
case gds_dyn_grant_user:
GET_STRING(ptr, user);
if (DYN_is_it_sql_role(gbl, user, dummy_name, tdbb)) {
user_type = obj_sql_role;
@ -1962,22 +1962,22 @@ static void revoke( GBL gbl, UCHAR ** ptr)
}
break;
case gds__dyn_grant_proc:
case gds_dyn_grant_proc:
user_type = obj_procedure;
GET_STRING(ptr, user);
break;
case gds__dyn_grant_trig:
case gds_dyn_grant_trig:
user_type = obj_trigger;
GET_STRING(ptr, user);
break;
case gds__dyn_grant_view:
case gds_dyn_grant_view:
user_type = obj_view;
GET_STRING(ptr, user);
break;
case gds__dyn_grant_options:
case gds_dyn_grant_options:
options = DYN_get_number(ptr);
break;

File diff suppressed because it is too large Load Diff

View File

@ -51,6 +51,7 @@
#include "../jrd/inf_proto.h"
#include "../jrd/intl_proto.h"
#include "../jrd/isc_f_proto.h"
#include "../jrd/met_proto.h"
#include "../jrd/thd_proto.h"
#include "../jrd/vio_proto.h"
@ -90,7 +91,7 @@ void DYN_delete_constraint( GBL gbl, UCHAR ** ptr, TEXT * relation)
if (relation)
strcpy(rel_name, relation);
else if (*(*ptr)++ != gds__dyn_rel_name) {
else if (*(*ptr)++ != gds_dyn_rel_name) {
DYN_error_punt(FALSE, 128, NULL, NULL, NULL, NULL, NULL);
/* msg 128: "No relation specified in delete_constraint" */
}
@ -130,9 +131,9 @@ void DYN_delete_dimensions(
delete_dimension_records(gbl, f);
while (*(*ptr)++ != gds__dyn_end) {
while (*(*ptr)++ != gds_dyn_end) {
--(*ptr);
DYN_execute(gbl, ptr, NULL_PTR, f, NULL_PTR, NULL_PTR, NULL_PTR);
DYN_execute(gbl, ptr, (TEXT*)NULL_PTR, f, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
}
@ -248,7 +249,7 @@ void DYN_delete_filter( GBL gbl, UCHAR ** ptr)
DYN_error_punt(FALSE, 37, NULL, NULL, NULL, NULL, NULL);
/* msg 37: "Blob Filter not found" */
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}
@ -325,7 +326,7 @@ void DYN_delete_function( GBL gbl, UCHAR ** ptr)
DYN_error_punt(FALSE, 41, NULL, NULL, NULL, NULL, NULL);
/* msg 41: "Function not found" */
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}
@ -410,9 +411,9 @@ void DYN_delete_global_field( GBL gbl, UCHAR ** ptr)
/* msg 46: "Field not found" */
}
while (*(*ptr)++ != gds__dyn_end) {
while (*(*ptr)++ != gds_dyn_end) {
--(*ptr);
DYN_execute(gbl, ptr, NULL_PTR, f, NULL_PTR, NULL_PTR, NULL_PTR);
DYN_execute(gbl, ptr, (TEXT*)NULL_PTR, f, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
}
@ -476,9 +477,9 @@ void DYN_delete_index( GBL gbl, UCHAR ** ptr)
DYN_error_punt(FALSE, 50, NULL, NULL, NULL, NULL, NULL);
/* msg 50: "No segments found for index" */
while (*(*ptr)++ != gds__dyn_end) {
while (*(*ptr)++ != gds_dyn_end) {
--(*ptr);
DYN_execute(gbl, ptr, r, NULL_PTR, NULL_PTR, NULL_PTR, NULL_PTR);
DYN_execute(gbl, ptr, r, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
}
@ -537,7 +538,7 @@ void DYN_delete_local_field(
if (relation_name)
strcpy(tbl_nm, relation_name);
else if (*(*ptr)++ != gds__dyn_rel_name) {
else if (*(*ptr)++ != gds_dyn_rel_name) {
DYN_error_punt(FALSE, 51, NULL, NULL, NULL, NULL, NULL);
/* msg 51: "No relation specified in ERASE RFR" */
}
@ -704,10 +705,10 @@ void DYN_delete_local_field(
ERASE RFR;
found = TRUE;
delete_gfield_for_lfield(gbl, RFR.RDB$FIELD_SOURCE);
while (*(*ptr)++ != gds__dyn_end) {
while (*(*ptr)++ != gds_dyn_end) {
--(*ptr);
DYN_execute(gbl, ptr, RFR.RDB$RELATION_NAME,
RFR.RDB$FIELD_SOURCE, NULL_PTR, NULL_PTR, NULL_PTR);
RFR.RDB$FIELD_SOURCE, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
END_FOR;
if (!DYN_REQUEST(drq_e_lfield))
@ -745,8 +746,8 @@ void DYN_delete_parameter( GBL gbl, UCHAR ** ptr, TEXT * proc_name)
JMP_BUF env, *old_env;
GET_STRING(ptr, name);
if (**ptr == gds__dyn_prc_name)
DYN_get_string(++ptr, proc_name, PROC_NAME_SIZE, TRUE);
if (**ptr == gds_dyn_prc_name)
DYN_get_string((TEXT**)++ptr, proc_name, PROC_NAME_SIZE, TRUE);
tdbb = GET_THREAD_DATA;
dbb = tdbb->tdbb_database;
@ -812,7 +813,7 @@ void DYN_delete_parameter( GBL gbl, UCHAR ** ptr, TEXT * proc_name)
DYN_error_punt(FALSE, 146, name, proc_name, NULL, NULL, NULL);
/* msg 146: "Parameter %s in procedure %s not found" */
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}
@ -956,7 +957,7 @@ void DYN_delete_procedure( GBL gbl, UCHAR ** ptr)
tdbb->tdbb_setjmp = (UCHAR *) old_env;
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}
@ -1198,10 +1199,10 @@ void DYN_delete_relation( GBL gbl, UCHAR ** ptr, TEXT * relation)
tdbb->tdbb_setjmp = (UCHAR *) old_env;
while (*(*ptr)++ != gds__dyn_end) {
while (*(*ptr)++ != gds_dyn_end) {
--(*ptr);
DYN_execute(gbl, ptr, relation_name, NULL_PTR, NULL_PTR, NULL_PTR,
NULL_PTR);
DYN_execute(gbl, ptr, relation_name, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR,
(TEXT*)NULL_PTR);
}
}
@ -1227,10 +1228,10 @@ void DYN_delete_security_class( GBL gbl, UCHAR ** ptr)
DYN_error_punt(FALSE, 75, NULL, NULL, NULL, NULL, NULL);
/* msg 75: "Security class not found" */
while (*(*ptr)++ != gds__dyn_end) {
while (*(*ptr)++ != gds_dyn_end) {
--(*ptr);
DYN_execute(gbl, ptr, NULL_PTR, NULL_PTR, NULL_PTR, NULL_PTR,
NULL_PTR);
DYN_execute(gbl, ptr, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR,
(TEXT*)NULL_PTR);
}
}
@ -1307,7 +1308,7 @@ while (files)
}
****/
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}
@ -1436,7 +1437,7 @@ void DYN_delete_trigger( GBL gbl, UCHAR ** ptr)
tdbb->tdbb_setjmp = (UCHAR *) old_env;
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}
@ -1468,7 +1469,7 @@ void DYN_delete_trigger_msg( GBL gbl, UCHAR ** ptr, TEXT * trigger_name)
number = DYN_get_number(ptr);
if (trigger_name)
strcpy(t, trigger_name);
else if (*(*ptr)++ == gds__dyn_trg_name)
else if (*(*ptr)++ == gds_dyn_trg_name)
GET_STRING(ptr, t);
else
DYN_error_punt(FALSE, 70, NULL, NULL, NULL, NULL, NULL);
@ -1506,7 +1507,7 @@ void DYN_delete_trigger_msg( GBL gbl, UCHAR ** ptr, TEXT * trigger_name)
DYN_error_punt(FALSE, 72, NULL, NULL, NULL, NULL, NULL);
/* msg 72: "Trigger Message not found" */
if (*(*ptr)++ != gds__dyn_end)
if (*(*ptr)++ != gds_dyn_end)
DYN_unsupported_verb();
}

View File

@ -45,6 +45,7 @@
#include "../jrd/blb_proto.h"
#include "../jrd/cmp_proto.h"
#include "../jrd/dyn_proto.h"
#include "../jrd/dyn_df_proto.h"
#include "../jrd/dyn_md_proto.h"
#include "../jrd/dyn_ut_proto.h"
#include "../jrd/err_proto.h"
@ -53,6 +54,7 @@
#include "../jrd/inf_proto.h"
#include "../jrd/intl_proto.h"
#include "../jrd/isc_f_proto.h"
#include "../jrd/met_proto.h"
#include "../jrd/thd_proto.h"
#include "../jrd/vio_proto.h"
#include "../jrd/dsc_proto.h"
@ -73,7 +75,7 @@ DATABASE DB = STATIC "yachts.gdb";
#define MAX_CHARS_DOUBLE 22 /* 15 digits + 2 signs + E + decimal + 3 digit exp */
#define MAX_CHARS_FLOAT 13 /* 7 digits + 2 signs + E + decimal + 2 digit exp */
static UCHAR alloc_info[] = { gds__info_allocation, gds__info_end };
static UCHAR alloc_info[] = { gds_info_allocation, gds_info_end };
static void drop_cache(GBL);
static void drop_log(GBL);
static void modify_lfield_type(GBL, UCHAR **, TEXT *, TEXT *);
@ -132,9 +134,9 @@ void DYN_modify_database( GBL gbl, UCHAR ** ptr)
/* msg 84: "MODIFY DATABASE failed" */
}
INF_database_info(alloc_info, sizeof(alloc_info), s, sizeof(s));
INF_database_info((SCHAR*)alloc_info, sizeof(alloc_info), (SCHAR*)s, sizeof(s));
if (s[0] != gds__info_allocation) {
if (s[0] != gds_info_allocation) {
tdbb->tdbb_setjmp = (UCHAR *) old_env;
DYN_error_punt(TRUE, 84, NULL, NULL, NULL, NULL, NULL);
/* msg 84: "MODIFY DATABASE failed" */
@ -152,16 +154,16 @@ void DYN_modify_database( GBL gbl, UCHAR ** ptr)
DYN_REQUEST(drq_m_database) = request;
MODIFY DBB USING
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_security_class:
case gds_dyn_security_class:
if (GET_STRING(ptr, DBB.RDB$SECURITY_CLASS))
DBB.RDB$SECURITY_CLASS.NULL = FALSE;
else
DBB.RDB$SECURITY_CLASS.NULL = TRUE;
break;
case gds__dyn_description:
case gds_dyn_description:
if (DYN_put_text_blob(gbl, ptr, &DBB.RDB$DESCRIPTION))
DBB.RDB$DESCRIPTION.NULL = FALSE;
else
@ -169,7 +171,7 @@ void DYN_modify_database( GBL gbl, UCHAR ** ptr)
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_description2:
case gds_dyn_description2:
if (DYN_put_text_blob2(gbl, ptr, &DBB.RDB$DESCRIPTION))
DBB.RDB$DESCRIPTION.NULL = FALSE;
else
@ -177,62 +179,62 @@ void DYN_modify_database( GBL gbl, UCHAR ** ptr)
break;
#endif
case gds__dyn_def_file:
case gds_dyn_def_file:
DYN_define_file(gbl, ptr, (SLONG) 0, &start, 158);
break;
#ifdef SUPERSERVER
case gds__dyn_def_default_log:
case gds_dyn_def_default_log:
DYN_define_log_file(gbl, ptr, first_log_file, TRUE);
break;
case gds__dyn_def_log_file:
case gds_dyn_def_log_file:
DYN_define_log_file(gbl, ptr, first_log_file, FALSE);
first_log_file = FALSE;
break;
#endif
case gds__dyn_def_cache_file:
case gds_dyn_def_cache_file:
DYN_define_cache(gbl, ptr);
break;
case gds__dyn_log_group_commit_wait:
case gds_dyn_log_group_commit_wait:
#ifndef WINDOWS_ONLY
group_commit_wait = DYN_get_number(ptr);
log_params_defined = TRUE;
#endif
break;
case gds__dyn_log_buffer_size:
case gds_dyn_log_buffer_size:
#ifndef WINDOWS_ONLY
log_buffer_size = DYN_get_number(ptr);
log_params_defined = TRUE;
#endif
break;
case gds__dyn_log_check_point_length:
case gds_dyn_log_check_point_length:
#ifndef WINDOWS_ONLY
check_point_len = DYN_get_number(ptr);
log_params_defined = TRUE;
#endif
break;
case gds__dyn_log_num_of_buffers:
case gds_dyn_log_num_of_buffers:
#ifndef WINDOWS_ONLY
num_log_buffers = DYN_get_number(ptr);
log_params_defined = TRUE;
#endif
break;
case gds__dyn_drop_cache:
case gds_dyn_drop_cache:
drop_cache(gbl);
break;
case gds__dyn_drop_log:
case gds_dyn_drop_log:
drop_log(gbl);
break;
case gds__dyn_fld_character_set_name:
case gds_dyn_fld_character_set_name:
if (GET_STRING(ptr, DBB.RDB$CHARACTER_SET_NAME))
DBB.RDB$CHARACTER_SET_NAME.NULL = FALSE;
else
@ -241,8 +243,8 @@ void DYN_modify_database( GBL gbl, UCHAR ** ptr)
default:
--(*ptr);
DYN_execute(gbl, ptr, NULL_PTR, NULL_PTR,
NULL_PTR, NULL_PTR, NULL_PTR);
DYN_execute(gbl, ptr, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR,
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
END_MODIFY;
END_FOR;
@ -305,15 +307,15 @@ void DYN_modify_exception( GBL gbl, UCHAR ** ptr)
found = TRUE;
MODIFY X
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_xcp_msg:
case gds_dyn_xcp_msg:
GET_STRING(ptr, X.RDB$MESSAGE);
X.RDB$MESSAGE.NULL = FALSE;
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_xcp_msg2:
case gds_dyn_xcp_msg2:
DYN_get_string2(ptr, X.RDB$MESSAGE,
sizeof(X.RDB$MESSAGE));
X.RDB$MESSAGE.NULL = FALSE;
@ -444,11 +446,11 @@ void DYN_modify_global_field(
}
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
{
switch (verb)
{
case gds__dyn_fld_name:
case gds_dyn_fld_name:
{
char newfld[32];
@ -472,7 +474,7 @@ void DYN_modify_global_field(
DIM_DOM.RDB$FIELD_NAME.NULL = FALSE;
END_MODIFY;
END_FOR;
CMP_release (tdbb, request);
CMP_release (tdbb, (REQ) request);
request = NULL;
}
/* CVC: End modification. */
@ -502,16 +504,16 @@ void DYN_modify_global_field(
break;
}
case gds__dyn_rel_name:
case gds_dyn_rel_name:
GET_STRING(ptr, new_dom->dyn_rel_name);
break;
case gds__dyn_fld_length:
case gds_dyn_fld_length:
fldlen = TRUE;
new_dom->dyn_dsc.dsc_length = DYN_get_number(ptr);
break;
case gds__dyn_fld_type:
case gds_dyn_fld_type:
dtype = TRUE;
new_dom->dyn_dtype = DYN_get_number(ptr);
@ -549,7 +551,7 @@ void DYN_modify_global_field(
}
break;
case gds__dyn_fld_scale:
case gds_dyn_fld_scale:
scale = TRUE;
new_dom->dyn_dsc.dsc_scale = DYN_get_number(ptr);
break;
@ -559,71 +561,71 @@ void DYN_modify_global_field(
new_dom->dyn_precision = DYN_get_number(ptr);
break;
case gds__dyn_fld_sub_type:
case gds_dyn_fld_sub_type:
subtype = TRUE;
new_dom->dyn_dsc.dsc_sub_type = DYN_get_number(ptr);
break;
case gds__dyn_fld_char_length:
case gds_dyn_fld_char_length:
charlen = TRUE;
new_dom->dyn_charlen = DYN_get_number(ptr);
break;
case gds__dyn_fld_collation:
case gds_dyn_fld_collation:
collation = TRUE;
new_dom->dyn_collation = DYN_get_number(ptr);
break;
case gds__dyn_fld_character_set:
case gds_dyn_fld_character_set:
charset = TRUE;
new_dom->dyn_charset = DYN_get_number(ptr);
break;
case gds__dyn_fld_not_null:
case gds_dyn_fld_not_null:
nullflg = TRUE;
new_dom->dyn_null_flag = TRUE;
break;
case gds__dyn_fld_query_name:
case gds_dyn_fld_query_name:
qryname = (TEXT *) * ptr;
bqryname = TRUE;
DYN_skip_attribute(ptr);
break;
case gds__dyn_fld_query_header:
case gds_dyn_fld_query_header:
qryhdr = (TEXT *) * ptr;
bqryhdr = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_fld_query_header2:
case gds_dyn_fld_query_header2:
qryhdr2 = (TEXT *) * ptr;
bqryhdr2 = TRUE;
DYN_skip_attribute2(ptr);
break;
#endif
case gds__dyn_fld_edit_string:
case gds_dyn_fld_edit_string:
edtstr = (TEXT *) * ptr;
bedtstr = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_fld_edit_string2:
case gds_dyn_fld_edit_string2:
edtstr2 = (TEXT *) * ptr;
bedtstr2 = TRUE;
DYN_skip_attribute2(ptr);
break;
#endif
case gds__dyn_fld_missing_value:
case gds_dyn_fld_missing_value:
missingval = (TEXT *) * ptr;
bmissingval = TRUE;
DYN_skip_attribute(ptr);
break;
case gds__dyn_single_validation:
case gds_dyn_single_validation:
if (single_validate) {
EXE_unwind(tdbb, (REQ)request);
DYN_error_punt(FALSE, 160, NULL, NULL, NULL, NULL, NULL);
@ -634,7 +636,7 @@ void DYN_modify_global_field(
single_validate = TRUE;
break;
case gds__dyn_fld_validation_blr:
case gds_dyn_fld_validation_blr:
if (single_validate && (!FLD.RDB$VALIDATION_BLR.NULL)) {
EXE_unwind(tdbb, (REQ)request);
DYN_error_punt(FALSE, 160, NULL, NULL, NULL, NULL, NULL);
@ -649,54 +651,54 @@ void DYN_modify_global_field(
DYN_skip_attribute(ptr);
break;
case gds__dyn_fld_validation_source:
case gds_dyn_fld_validation_source:
fldvaldsrc = (TEXT *) * ptr;
bfldvaldsrc = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_fld_validation_source2:
case gds_dyn_fld_validation_source2:
fldvaldsrc2 = (TEXT *) * ptr;
bfldvaldsrc2 = TRUE;
DYN_skip_attribute2(ptr);
break;
#endif
case gds__dyn_description:
case gds_dyn_description:
desc = (TEXT *) * ptr;
bdesc = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_description2:
case gds_dyn_description2:
desc2 = (TEXT *) * ptr;
bdesc2 = TRUE;
DYN_skip_attribute2(ptr);
break;
#endif
case gds__dyn_del_validation:
case gds_dyn_del_validation:
bdelvald = TRUE;
break;
case gds__dyn_del_default:
case gds_dyn_del_default:
bdeldflt = TRUE;
break;
case gds__dyn_fld_default_value:
case gds_dyn_fld_default_value:
flddftval = (TEXT *) * ptr;
bflddftval = TRUE;
DYN_skip_attribute(ptr);
break;
case gds__dyn_fld_default_source:
case gds_dyn_fld_default_source:
flddfltsrc = (TEXT *) * ptr;
bflddfltsrc = TRUE;
DYN_skip_attribute(ptr);
break;
case gds__dyn_fld_dimensions:
case gds_dyn_fld_dimensions:
new_dom->dyn_dtype = blr_blob;
break;
@ -704,14 +706,14 @@ void DYN_modify_global_field(
* any other types. Do nothing with them.
*/
case gds__dyn_fld_segment_length:
case gds_dyn_fld_segment_length:
DYN_get_number(ptr);
break;
default:
--(*ptr);
DYN_execute(gbl, ptr, relation_name, field_name,
NULL_PTR, NULL_PTR, NULL_PTR);
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
}
@ -789,7 +791,7 @@ void DYN_modify_global_field(
}
if (bqryhdr) {
if (DYN_put_blr_blob(gbl, &qryhdr, &FLD.RDB$QUERY_HEADER))
if (DYN_put_blr_blob(gbl, (UCHAR**)&qryhdr, &FLD.RDB$QUERY_HEADER))
FLD.RDB$QUERY_HEADER.NULL = FALSE;
else
FLD.RDB$QUERY_HEADER.NULL = TRUE;
@ -797,7 +799,7 @@ void DYN_modify_global_field(
#if (defined JPN_SJIS || defined JPN_EUC)
if (bqryhdr2) {
if (DYN_put_blr_blob2(gbl, &qryhdr2, &FLD.RDB$QUERY_HEADER))
if (DYN_put_blr_blob2(gbl, (UCHAR**)&qryhdr2, &FLD.RDB$QUERY_HEADER))
FLD.RDB$QUERY_HEADER.NULL = FALSE;
else
FLD.RDB$QUERY_HEADER.NULL = TRUE;
@ -824,7 +826,7 @@ void DYN_modify_global_field(
if (bmissingval) {
if (DYN_put_blr_blob
(gbl, &missingval,
(gbl, (UCHAR**)&missingval,
&FLD.RDB$MISSING_VALUE)) FLD.RDB$MISSING_VALUE.NULL =
FALSE;
else
@ -832,7 +834,7 @@ void DYN_modify_global_field(
}
if (bfldvald) {
if (DYN_put_blr_blob(gbl, &fldvald, &FLD.RDB$VALIDATION_BLR))
if (DYN_put_blr_blob(gbl, (UCHAR**)&fldvald, &FLD.RDB$VALIDATION_BLR))
FLD.RDB$VALIDATION_BLR.NULL = FALSE;
else
FLD.RDB$VALIDATION_BLR.NULL = TRUE;
@ -840,7 +842,7 @@ void DYN_modify_global_field(
if (bfldvaldsrc) {
if (DYN_put_text_blob
(gbl, &fldvaldsrc,
(gbl, (UCHAR**)&fldvaldsrc,
&FLD.RDB$VALIDATION_SOURCE)) FLD.RDB$VALIDATION_SOURCE.
NULL = FALSE;
else
@ -850,7 +852,7 @@ void DYN_modify_global_field(
#if (defined JPN_SJIS || defined JPN_EUC)
if (bfldvaldsrc2) {
if (DYN_put_text_blob2
(gbl, &fldvaldsrc2,
(gbl, (UCHAR**)&fldvaldsrc2,
&FLD.RDB$VALIDATION_SOURCE)) FLD.RDB$VALIDATION_SOURCE.
NULL = FALSE;
else
@ -859,7 +861,7 @@ void DYN_modify_global_field(
#endif
if (bdesc) {
if (DYN_put_text_blob(gbl, &desc, &FLD.RDB$DESCRIPTION))
if (DYN_put_text_blob(gbl, (UCHAR**)&desc, &FLD.RDB$DESCRIPTION))
FLD.RDB$DESCRIPTION.NULL = FALSE;
else
FLD.RDB$DESCRIPTION.NULL = TRUE;
@ -867,7 +869,7 @@ void DYN_modify_global_field(
#if (defined JPN_SJIS || defined JPN_EUC)
if (bdesc2) {
if (DYN_put_text_blob2(gbl, &desc2, &FLD.RDB$DESCRIPTION))
if (DYN_put_text_blob2(gbl, (UCHAR**)&desc2, &FLD.RDB$DESCRIPTION))
FLD.RDB$DESCRIPTION.NULL = FALSE;
else
FLD.RDB$DESCRIPTION.NULL = TRUE;
@ -885,12 +887,12 @@ void DYN_modify_global_field(
if (bflddftval) {
FLD.RDB$DEFAULT_VALUE.NULL = FALSE;
DYN_put_blr_blob(gbl, &flddftval, &FLD.RDB$DEFAULT_VALUE);
DYN_put_blr_blob(gbl, (UCHAR**)&flddftval, &FLD.RDB$DEFAULT_VALUE);
}
if (bflddfltsrc) {
FLD.RDB$DEFAULT_SOURCE.NULL = FALSE;
DYN_put_text_blob(gbl, &flddfltsrc, &FLD.RDB$DEFAULT_SOURCE);
DYN_put_text_blob(gbl, (UCHAR**)&flddfltsrc, &FLD.RDB$DEFAULT_SOURCE);
}
END_MODIFY;
@ -957,19 +959,19 @@ void DYN_modify_index( GBL gbl, UCHAR ** ptr)
found = TRUE;
MODIFY IDX USING
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_idx_unique:
case gds_dyn_idx_unique:
IDX.RDB$UNIQUE_FLAG = DYN_get_number(ptr);
IDX.RDB$UNIQUE_FLAG.NULL = FALSE;
break;
case gds__dyn_idx_inactive:
case gds_dyn_idx_inactive:
IDX.RDB$INDEX_INACTIVE = DYN_get_number(ptr);
IDX.RDB$INDEX_INACTIVE.NULL = FALSE;
break;
case gds__dyn_description:
case gds_dyn_description:
if (DYN_put_text_blob(gbl, ptr, &IDX.RDB$DESCRIPTION))
IDX.RDB$DESCRIPTION.NULL = FALSE;
else
@ -977,7 +979,7 @@ void DYN_modify_index( GBL gbl, UCHAR ** ptr)
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_description2:
case gds_dyn_description2:
if (DYN_put_text_blob2(gbl, ptr, &IDX.RDB$DESCRIPTION))
IDX.RDB$DESCRIPTION.NULL = FALSE;
else
@ -987,7 +989,7 @@ void DYN_modify_index( GBL gbl, UCHAR ** ptr)
/* For V4 index selectivity can be set only to -1 */
case gds__dyn_idx_statistic:
case gds_dyn_idx_statistic:
IDX.RDB$STATISTICS = -1.0;
IDX.RDB$STATISTICS.NULL = FALSE;
break;
@ -1042,18 +1044,18 @@ void DYN_modify_local_field(
r[0] = 0;
sfflag = qnflag = qhflag = esflag = dflag = scflag = npflag = nnflag =
ntflag = FALSE;
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_rel_name:
case gds_dyn_rel_name:
GET_STRING(ptr, r);
break;
case gds__dyn_system_flag:
case gds_dyn_system_flag:
system_flag = DYN_get_number(ptr);
sfflag = TRUE;
break;
case gds__dyn_fld_position:
case gds_dyn_fld_position:
position = DYN_get_number(ptr);
npflag = TRUE;
break;
@ -1064,54 +1066,54 @@ void DYN_modify_local_field(
DYN_skip_attribute(ptr);
break;
case gds__dyn_fld_query_name:
case gds_dyn_fld_query_name:
query_name = (TEXT *) * ptr;
qnflag = TRUE;
DYN_skip_attribute(ptr);
break;
case gds__dyn_fld_query_header:
case gds_dyn_fld_query_header:
query_header = (TEXT *) * ptr;
qhflag = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_fld_query_header2:
case gds_dyn_fld_query_header2:
query_header = (TEXT *) * ptr;
qhflag = TRUE;
DYN_skip_attribute2(ptr);
break;
#endif
case gds__dyn_fld_edit_string:
case gds_dyn_fld_edit_string:
edit_string = (TEXT *) * ptr;
esflag = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_fld_edit_string2:
case gds_dyn_fld_edit_string2:
edit_string = (TEXT *) * ptr;
esflag = TRUE;
DYN_skip_attribute2(ptr);
break;
#endif
case gds__dyn_security_class:
case gds_dyn_security_class:
security_class = (TEXT *) * ptr;
scflag = TRUE;
DYN_skip_attribute(ptr);
break;
case gds__dyn_description:
case gds_dyn_description:
description = (TEXT *) * ptr;
dflag = TRUE;
DYN_skip_attribute(ptr);
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_description2:
case gds_dyn_description2:
description = (TEXT *) * ptr;
dflag = TRUE;
DYN_skip_attribute2(ptr);
@ -1121,7 +1123,7 @@ void DYN_modify_local_field(
default:
--(*ptr);
DYN_execute(gbl, ptr, relation_name, field_name,
NULL_PTR, NULL_PTR, NULL_PTR);
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
request = (BLK) CMP_find_request(tdbb, drq_m_lfield, DYN_REQUESTS);
@ -1180,10 +1182,10 @@ void DYN_modify_local_field(
if (qhflag) {
#if ( !(defined JPN_SJIS || defined JPN_EUC))
if (DYN_put_blr_blob
(gbl, &query_header, &FLD.RDB$QUERY_HEADER))
(gbl, (UCHAR**)&query_header, &FLD.RDB$QUERY_HEADER))
#else
if (DYN_put_blr_blob2
(gbl, &query_header, &FLD.RDB$QUERY_HEADER))
(gbl, (UCHAR**)&query_header, &FLD.RDB$QUERY_HEADER))
#endif
FLD.RDB$QUERY_HEADER.NULL = FALSE;
else
@ -1210,10 +1212,10 @@ void DYN_modify_local_field(
if (dflag) {
#if (defined JPN_EUC || defined JPN_SJIS)
if (DYN_put_text_blob2
(gbl, &description, &FLD.RDB$DESCRIPTION))
(gbl, (UCHAR**)&description, &FLD.RDB$DESCRIPTION))
#else
if (DYN_put_text_blob
(gbl, &description, &FLD.RDB$DESCRIPTION))
(gbl, (UCHAR**)&description, &FLD.RDB$DESCRIPTION))
#endif /* (defined JPN_EUC || defined JPN_SJIS) */
FLD.RDB$DESCRIPTION.NULL = FALSE;
else
@ -1293,47 +1295,47 @@ void DYN_modify_procedure( GBL gbl, UCHAR ** ptr)
P.RDB$PROCEDURE_INPUTS.NULL = TRUE;
P.RDB$PROCEDURE_OUTPUTS.NULL = TRUE;
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_system_flag:
case gds_dyn_system_flag:
P.RDB$SYSTEM_FLAG = DYN_get_number(ptr);
P.RDB$SYSTEM_FLAG.NULL = FALSE;
break;
case gds__dyn_prc_blr:
case gds_dyn_prc_blr:
P.RDB$PROCEDURE_BLR.NULL = FALSE;
DYN_put_blr_blob(gbl, ptr, &P.RDB$PROCEDURE_BLR);
break;
case gds__dyn_description:
case gds_dyn_description:
DYN_put_text_blob(gbl, ptr, &P.RDB$DESCRIPTION);
P.RDB$DESCRIPTION.NULL = FALSE;
break;
case gds__dyn_prc_source:
case gds_dyn_prc_source:
DYN_put_text_blob(gbl, ptr, &P.RDB$PROCEDURE_SOURCE);
P.RDB$PROCEDURE_SOURCE.NULL = FALSE;
break;
case gds__dyn_prc_inputs:
case gds_dyn_prc_inputs:
P.RDB$PROCEDURE_INPUTS = DYN_get_number(ptr);
P.RDB$PROCEDURE_INPUTS.NULL = FALSE;
break;
case gds__dyn_prc_outputs:
case gds_dyn_prc_outputs:
P.RDB$PROCEDURE_OUTPUTS = DYN_get_number(ptr);
P.RDB$PROCEDURE_OUTPUTS.NULL = FALSE;
break;
case gds__dyn_security_class:
case gds_dyn_security_class:
GET_STRING(ptr, P.RDB$SECURITY_CLASS);
P.RDB$SECURITY_CLASS.NULL = FALSE;
break;
default:
--(*ptr);
DYN_execute(gbl, ptr, NULL_PTR, NULL_PTR,
NULL_PTR, NULL_PTR, procedure_name);
DYN_execute(gbl, ptr, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR,
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR, procedure_name);
}
END_MODIFY;
@ -1397,21 +1399,21 @@ void DYN_modify_relation( GBL gbl, UCHAR ** ptr)
DYN_error_punt(FALSE, 177, NULL, NULL, NULL, NULL, NULL);
found = TRUE;
MODIFY REL USING
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_system_flag:
case gds_dyn_system_flag:
REL.RDB$SYSTEM_FLAG = DYN_get_number(ptr);
REL.RDB$SYSTEM_FLAG.NULL = FALSE;
break;
case gds__dyn_security_class:
case gds_dyn_security_class:
if (GET_STRING(ptr, REL.RDB$SECURITY_CLASS))
REL.RDB$SECURITY_CLASS.NULL = FALSE;
else
REL.RDB$SECURITY_CLASS.NULL = TRUE;
break;
case gds__dyn_rel_ext_file:
case gds_dyn_rel_ext_file:
if (REL.RDB$EXTERNAL_FILE.NULL) {
DYN_rundown_request(old_env, request, -1);
DYN_error_punt(FALSE, 97, NULL, NULL, NULL, NULL,
@ -1426,7 +1428,7 @@ void DYN_modify_relation( GBL gbl, UCHAR ** ptr)
}
break;
case gds__dyn_description:
case gds_dyn_description:
if (DYN_put_text_blob(gbl, ptr, &REL.RDB$DESCRIPTION))
REL.RDB$DESCRIPTION.NULL = FALSE;
else
@ -1434,7 +1436,7 @@ void DYN_modify_relation( GBL gbl, UCHAR ** ptr)
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_description2:
case gds_dyn_description2:
if (DYN_put_text_blob2(gbl, ptr, &REL.RDB$DESCRIPTION))
REL.RDB$DESCRIPTION.NULL = FALSE;
else
@ -1444,7 +1446,7 @@ void DYN_modify_relation( GBL gbl, UCHAR ** ptr)
default:
--(*ptr);
DYN_execute(gbl, ptr, name, field_name,
NULL_PTR, NULL_PTR, NULL_PTR);
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
END_MODIFY;
END_FOR;
@ -1507,48 +1509,48 @@ void DYN_modify_trigger( GBL gbl, UCHAR ** ptr)
found = TRUE;
MODIFY X
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_trg_name:
case gds_dyn_trg_name:
GET_STRING(ptr, X.RDB$TRIGGER_NAME);
break;
case gds__dyn_trg_type:
case gds_dyn_trg_type:
X.RDB$TRIGGER_TYPE = DYN_get_number(ptr);
X.RDB$TRIGGER_TYPE.NULL = FALSE;
break;
case gds__dyn_trg_sequence:
case gds_dyn_trg_sequence:
X.RDB$TRIGGER_SEQUENCE = DYN_get_number(ptr);
X.RDB$TRIGGER_SEQUENCE.NULL = FALSE;
break;
case gds__dyn_trg_inactive:
case gds_dyn_trg_inactive:
X.RDB$TRIGGER_INACTIVE = DYN_get_number(ptr);
X.RDB$TRIGGER_INACTIVE.NULL = FALSE;
break;
case gds__dyn_rel_name:
case gds_dyn_rel_name:
GET_STRING(ptr, X.RDB$RELATION_NAME);
X.RDB$RELATION_NAME.NULL = FALSE;
break;
case gds__dyn_trg_blr:
case gds_dyn_trg_blr:
blr = *ptr;
DYN_skip_attribute(ptr);
DYN_put_blr_blob(gbl, &blr, &X.RDB$TRIGGER_BLR);
X.RDB$TRIGGER_BLR.NULL = FALSE;
break;
case gds__dyn_trg_source:
case gds_dyn_trg_source:
source = (TEXT *) * ptr;
DYN_skip_attribute(ptr);
DYN_put_text_blob(gbl, &source, &X.RDB$TRIGGER_SOURCE);
DYN_put_text_blob(gbl, (UCHAR**)&source, &X.RDB$TRIGGER_SOURCE);
X.RDB$TRIGGER_SOURCE.NULL = FALSE;
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_trg_source2:
case gds_dyn_trg_source2:
source = (TEXT *) * ptr;
DYN_skip_attribute2(ptr);
DYN_put_text_blob2(gbl, &source, &X.RDB$TRIGGER_SOURCE);
@ -1556,13 +1558,13 @@ void DYN_modify_trigger( GBL gbl, UCHAR ** ptr)
break;
#endif
case gds__dyn_description:
case gds_dyn_description:
DYN_put_text_blob(gbl, ptr, &X.RDB$DESCRIPTION);
X.RDB$DESCRIPTION.NULL = FALSE;
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_description2:
case gds_dyn_description2:
DYN_put_text_blob2(gbl, ptr, &X.RDB$DESCRIPTION);
X.RDB$DESCRIPTION.NULL = FALSE;
break;
@ -1570,8 +1572,8 @@ void DYN_modify_trigger( GBL gbl, UCHAR ** ptr)
default:
--(*ptr);
DYN_execute(gbl, ptr, NULL_PTR, NULL_PTR,
trigger_name, NULL_PTR, NULL_PTR);
DYN_execute(gbl, ptr, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR,
trigger_name, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
END_MODIFY;
END_FOR;
@ -1623,7 +1625,7 @@ void DYN_modify_trigger_msg( GBL gbl, UCHAR ** ptr, TEXT * trigger_name)
number = DYN_get_number(ptr);
if (trigger_name)
strcpy(t, trigger_name);
else if (*(*ptr)++ == gds__dyn_trg_name)
else if (*(*ptr)++ == gds_dyn_trg_name)
GET_STRING(ptr, t);
else
DYN_error_punt(FALSE, 103, NULL, NULL, NULL, NULL, NULL);
@ -1637,20 +1639,20 @@ void DYN_modify_trigger_msg( GBL gbl, UCHAR ** ptr, TEXT * trigger_name)
DYN_REQUEST(drq_m_trg_msg) = request;
MODIFY X
while ((verb = *(*ptr)++) != gds__dyn_end)
while ((verb = *(*ptr)++) != gds_dyn_end)
switch (verb) {
case gds__dyn_trg_msg_number:
case gds_dyn_trg_msg_number:
X.RDB$MESSAGE_NUMBER = DYN_get_number(ptr);
X.RDB$MESSAGE_NUMBER.NULL = FALSE;
break;
case gds__dyn_trg_msg:
case gds_dyn_trg_msg:
GET_STRING(ptr, X.RDB$MESSAGE);
X.RDB$MESSAGE.NULL = FALSE;
break;
#if (defined JPN_SJIS || defined JPN_EUC)
case gds__dyn_trg_msg2:
case gds_dyn_trg_msg2:
DYN_get_string2(ptr, X.RDB$MESSAGE,
sizeof(X.RDB$MESSAGE));
X.RDB$MESSAGE.NULL = FALSE;
@ -2192,24 +2194,24 @@ void DYN_modify_sql_field(GBL gbl,
if (FLD.RDB$DIMENSIONS != 0)
orig_fld->dyn_dtype = blr_blob;
while ((verb = *(*ptr)++) != gds__dyn_end) {
while ((verb = *(*ptr)++) != gds_dyn_end) {
switch (verb) {
case gds__dyn_fld_source:
case gds_dyn_fld_source:
GET_STRING(ptr, dom_fld->dyn_fld_source);
get_domain_type(tdbb, dbb, gbl, dom_fld);
update_domain = TRUE;
break;
case gds__dyn_rel_name:
case gds_dyn_rel_name:
GET_STRING(ptr, new_fld->dyn_rel_name);
break;
case gds__dyn_fld_length:
case gds_dyn_fld_length:
fldlen = TRUE;
new_fld->dyn_dsc.dsc_length = DYN_get_number(ptr);
break;
case gds__dyn_fld_type:
case gds_dyn_fld_type:
dtype = TRUE;
new_fld->dyn_dtype = DYN_get_number(ptr);
@ -2247,7 +2249,7 @@ void DYN_modify_sql_field(GBL gbl,
}
break;
case gds__dyn_fld_scale:
case gds_dyn_fld_scale:
scale = TRUE;
new_fld->dyn_dsc.dsc_scale = DYN_get_number(ptr);
break;
@ -2257,32 +2259,32 @@ void DYN_modify_sql_field(GBL gbl,
new_fld->dyn_precision = DYN_get_number(ptr);
break;
case gds__dyn_fld_sub_type:
case gds_dyn_fld_sub_type:
subtype = TRUE;
new_fld->dyn_dsc.dsc_sub_type = DYN_get_number(ptr);
break;
case gds__dyn_fld_char_length:
case gds_dyn_fld_char_length:
charlen = TRUE;
new_fld->dyn_charlen = DYN_get_number(ptr);
break;
case gds__dyn_fld_collation:
case gds_dyn_fld_collation:
collation = TRUE;
new_fld->dyn_collation = DYN_get_number(ptr);
break;
case gds__dyn_fld_character_set:
case gds_dyn_fld_character_set:
charset = TRUE;
new_fld->dyn_charset = DYN_get_number(ptr);
break;
case gds__dyn_fld_not_null:
case gds_dyn_fld_not_null:
nullflg = TRUE;
new_fld->dyn_null_flag = TRUE;
break;
case gds__dyn_fld_dimensions:
case gds_dyn_fld_dimensions:
new_fld->dyn_dtype = blr_blob;
break;
@ -2290,14 +2292,14 @@ void DYN_modify_sql_field(GBL gbl,
* any other types. BLOB types are detected above
*/
case gds__dyn_fld_segment_length:
case gds_dyn_fld_segment_length:
DYN_get_number(ptr);
break;
default:
--(*ptr);
DYN_execute(gbl, ptr, relation_name, RFR.RDB$FIELD_SOURCE,
NULL_PTR, NULL_PTR, NULL_PTR);
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
}
}
END_FOR; /* FLD in RDB$FIELDS */

View File

@ -150,7 +150,7 @@ SINT64 DYN_UTIL_gen_unique_id(TDBB tdbb,
p += p[-1];
memcpy(p, gen_id_blr2, sizeof(gen_id_blr2));
p += sizeof(gen_id_blr2);
req_handle = CMP_compile2(tdbb, blr, TRUE);
req_handle = CMP_compile2(tdbb, (UCHAR*)blr, TRUE);
}
*request = (BLK)req_handle;
EXE_start(tdbb, req_handle, dbb->dbb_sys_trans);
@ -388,9 +388,9 @@ void DYN_UTIL_generate_index_name(
}
do {
if (verb == gds__dyn_def_primary_key)
if (verb == gds_dyn_def_primary_key)
format = "RDB$PRIMARY%" QUADFORMAT "d";
else if (verb == gds__dyn_def_foreign_key)
else if (verb == gds_dyn_def_foreign_key)
format = "RDB$FOREIGN%" QUADFORMAT "d";
else
format = "RDB$%" QUADFORMAT "d";
@ -532,7 +532,7 @@ BOOLEAN DYN_UTIL_get_prot(TDBB tdbb,
if (!request)
{
request = CMP_compile2(tdbb,
(SCHAR*)prot_blr, /* const_cast */
(UCHAR*)prot_blr, /* const_cast */
TRUE);
}
gds__vtov(rname, in_msg.relation_name, sizeof(in_msg.relation_name));

View File

@ -21,7 +21,7 @@
* Contributor(s): ______________________________________.
*/
/*
$Id: fun.e,v 1.1.1.1 2001-05-23 13:26:07 tamlin Exp $
$Id: fun.epp,v 1.1 2001-07-12 06:32:03 bellardo Exp $
*/
#include <stdlib.h>
@ -72,9 +72,9 @@ typedef double (*FPTR_DOUBLE) ();
typedef UCHAR *(*FPTR_UCHAR) ();
#ifdef VMS
#define CALL_UDF(ptr) (*ptr) (args [0], args[1], args[2], args[3], args [4], args [5], args [6], args [7], args [8], args [9])
#define CALL_UDF(ptr) (*(SLONG (*)(SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG))(ptr)) (args [0], args[1], args[2], args[3], args [4], args [5], args [6], args [7], args [8], args [9])
#else
#define CALL_UDF(ptr) (ptr) (args [0], args[1], args[2], args[3], args [4], args [5], args [6], args [7], args [8], args [9])
#define CALL_UDF(ptr) ((SLONG (*)(SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG, SLONG))(ptr)) (args [0], args[1], args[2], args[3], args [4], args [5], args [6], args [7], args [8], args [9])
#endif
DATABASE DB = FILENAME "ODS.RDB";
@ -88,7 +88,7 @@ extern double MTH$CVT_D_G(), MTH$CVT_G_D();
static SSHORT blob_get_segment(BLB, UCHAR *, USHORT, USHORT *);
static void blob_put_segment(BLB, UCHAR *, USHORT);
static SLONG blob_lseek(BLB, USHORT, SLONG);
static SLONG get_scalar_array(struct fun_repeat *, DSC *, SAD, LLS *);
static SLONG get_scalar_array(fun::fun_repeat *, DSC *, SAD, LLS *);
void DLL_EXPORT FUN_evaluate( FUN function, NOD node, VLU value)
@ -119,7 +119,7 @@ void DLL_EXPORT FUN_evaluate( FUN function, NOD node, VLU value)
REQ request;
BLB blob;
BLOB blob_desc;
struct fun_repeat *tail, *end, *return_ptr;
fun::fun_repeat *tail, *end, *return_ptr;
JMP_BUF *old_env, env;
SSHORT unsup_datatype;
@ -370,8 +370,8 @@ void DLL_EXPORT FUN_evaluate( FUN function, NOD node, VLU value)
{
if (input->dsc_dtype != dtype_quad &&
input->dsc_dtype != dtype_blob)
ERR_post(gds__wish_list,
gds_arg_gds, gds__blobnotsup,
ERR_post(gds_wish_list,
gds_arg_gds, gds_blobnotsup,
gds_arg_string, "conversion", 0);
blob_id = (SLONG *) input->dsc_address;
}
@ -380,9 +380,9 @@ void DLL_EXPORT FUN_evaluate( FUN function, NOD node, VLU value)
(BID)blob_id);
}
LLS_PUSH(blob, &blob_stack);
blob_desc->blob_get_segment = blob_get_segment;
blob_desc->blob_put_segment = blob_put_segment;
blob_desc->blob_seek = blob_lseek;
blob_desc->blob_get_segment = (SSHORT (*)())blob_get_segment;
blob_desc->blob_put_segment = (void (*)())blob_put_segment;
blob_desc->blob_seek = (SLONG (*)())blob_lseek;
blob_desc->blob_handle = (int *) blob;
blob_desc->blob_number_segments = blob->blb_count;
blob_desc->blob_max_segment = blob->blb_max_segment;
@ -471,7 +471,7 @@ void DLL_EXPORT FUN_evaluate( FUN function, NOD node, VLU value)
else
{
THREAD_EXIT;
temp_ptr = CALL_UDF(*(FPTR_UCHAR) function->fun_entrypoint);
temp_ptr = (UCHAR*) CALL_UDF(*(FPTR_UCHAR) function->fun_entrypoint);
THREAD_ENTER;
if (temp_ptr != NULL)
@ -508,7 +508,7 @@ void DLL_EXPORT FUN_evaluate( FUN function, NOD node, VLU value)
case dtype_varying:
temp_desc = value->vlu_desc;
temp_desc.dsc_address = temp_ptr;
temp_desc.dsc_length = strlen(temp_ptr) + 1;
temp_desc.dsc_length = strlen((char*)temp_ptr) + 1;
MOV_move(&temp_desc, &value->vlu_desc);
break;
@ -621,7 +621,7 @@ FUN DLL_EXPORT FUN_lookup_function(TEXT * name)
LLS stack;
USHORT count, args, l;
ULONG length;
struct fun_repeat *tail, temp[MAX_UDF_ARGUMENTS + 1];
fun::fun_repeat *tail, temp[MAX_UDF_ARGUMENTS + 1];
#ifdef GATEWAY
JMP_BUF *old_env, env;
#endif
@ -694,7 +694,7 @@ FUN DLL_EXPORT FUN_lookup_function(TEXT * name)
function->fun_type = X.RDB$FUNCTION_TYPE;
function->fun_temp_length = length;
MOVE_FAST(temp, function->fun_rpt,
(count + 1) * sizeof(struct fun_repeat));
(count + 1) * sizeof(fun::fun_repeat));
#ifndef WIN_NT /* NT allows blanks in file paths */
for (p = X.RDB$MODULE_NAME; *p && *p != ' '; p++);
*p = 0;
@ -710,7 +710,7 @@ FUN DLL_EXPORT FUN_lookup_function(TEXT * name)
strlen(EXCEPTION_MESSAGE) + strlen(name) +
strlen(X.RDB$ENTRYPOINT) +
strlen(X.RDB$MODULE_NAME) + 1);
sprintf(exception_msg->str_data, EXCEPTION_MESSAGE, name,
sprintf((char*)exception_msg->str_data, EXCEPTION_MESSAGE, name,
X.RDB$ENTRYPOINT, X.RDB$MODULE_NAME);
function->fun_exception_message = exception_msg;
@ -762,7 +762,7 @@ FUN DLL_EXPORT FUN_lookup_function(TEXT * name)
function->fun_symbol = symbol = (SYM) ALLOCP(type_sym);
symbol->sym_object = (BLK) function;
string = (STR) ALLOCPV(type_str, strlen(name));
strcpy(string->str_data, name);
strcpy((char*)string->str_data, name);
symbol->sym_string = (TEXT *) string->str_data;
symbol->sym_type = SYM_fun;
SYM_insert(symbol);
@ -800,7 +800,7 @@ FUN DLL_EXPORT FUN_resolve(CSB csb, FUN function, NOD args)
NOD *ptr, *end;
DSC arg;
int best_score, score;
struct fun_repeat *tail;
fun::fun_repeat *tail;
TDBB tdbb;
tdbb = GET_THREAD_DATA;
@ -922,7 +922,7 @@ static SSHORT blob_get_segment(
#ifndef GATEWAY
static SLONG get_scalar_array(struct fun_repeat* arg,
static SLONG get_scalar_array(fun::fun_repeat* arg,
DSC* value,
SAD scalar_desc,
LLS* stack)
@ -946,8 +946,8 @@ static SLONG get_scalar_array(struct fun_repeat* arg,
UCHAR *data, *temp;
DSC from, to;
USHORT dimensions;
struct ads_repeat *tail1;
struct sad_repeat *tail2, *end;
ads::ads_repeat *tail1;
sad::sad_repeat *tail2, *end;
tdbb = GET_THREAD_DATA;
@ -976,7 +976,7 @@ static SLONG get_scalar_array(struct fun_repeat* arg,
for (; n; --n, to.dsc_address += to.dsc_length,
from.dsc_address += array_desc->ads_element_length)
MOV_move(&from, &to);
ALL_free(data);
ALL_free((SCHAR*)data);
data = temp;
}
@ -993,6 +993,6 @@ static SLONG get_scalar_array(struct fun_repeat* arg,
tail2->sad_lower = tail1->ads_lower;
}
return sizeof(struct sad) + (dimensions - 1) * sizeof(struct sad_repeat);
return sizeof(struct sad) + (dimensions - 1) * sizeof(sad::sad_repeat);
}
#endif

View File

@ -149,7 +149,7 @@ int GRANT_privileges( TDBB tdbb, SSHORT phase, DFW work)
UCHAR *default_acl;
TEXT s_class[32], owner[32], default_class[32];
STR str_buffer = NULL, str_default_buffer = NULL;
USHORT public, aggregate_public, restrct, view;
USHORT public_priv, aggregate_public, restrct, view;
ULONG length = ACL_BUFFER_SIZE, *length_ptr = &length;
ULONG default_length = ACL_BUFFER_SIZE, *default_length_ptr =
&default_length;
@ -203,9 +203,9 @@ int GRANT_privileges( TDBB tdbb, SSHORT phase, DFW work)
/* Pick up any relation-level privileges */
public = get_public_privs(tdbb, work->dfw_name, work->dfw_id);
public_priv = get_public_privs(tdbb, work->dfw_name, work->dfw_id);
get_user_privs(tdbb, &acl, work->dfw_name, work->dfw_id,
owner, public, &str_buffer, length_ptr);
owner, public_priv, &str_buffer, length_ptr);
if (work->dfw_id == obj_relation) {
/* If we have the space to copy the acl list
@ -228,7 +228,7 @@ int GRANT_privileges( TDBB tdbb, SSHORT phase, DFW work)
aggregate_public = save_field_privileges(tdbb, &str_buffer,
&acl, work->dfw_name,
owner, public,
owner, public_priv,
length_ptr);
/* SQL tables don't need the 'all priviliges to all views' acl anymore.
@ -254,7 +254,7 @@ int GRANT_privileges( TDBB tdbb, SSHORT phase, DFW work)
if (restrct)
{
finish_security_class(&default_acl, public,
finish_security_class(&default_acl, public_priv,
&str_default_buffer,
default_length_ptr);
define_default_class(
@ -266,7 +266,7 @@ int GRANT_privileges( TDBB tdbb, SSHORT phase, DFW work)
}
}
else {
finish_security_class(&acl, public, &str_buffer, length_ptr);
finish_security_class(&acl, public_priv, &str_buffer, length_ptr);
save_security_class(tdbb, s_class, str_buffer->str_data,
(USHORT)(acl - str_buffer->str_data));
}
@ -358,7 +358,7 @@ static void define_default_class(
desc.dsc_scale = 0;
desc.dsc_ttype = ttype_metadata;
desc.dsc_address = (UCHAR *) relation_name;
desc.dsc_length = strlen(desc.dsc_address);
desc.dsc_length = strlen((char*)desc.dsc_address);
DFW_post_work(dbb->dbb_sys_trans, dfw_scan_relation, &desc, 0);
}
@ -394,7 +394,7 @@ static void delete_security_class( TDBB tdbb, TEXT * s_class)
static void finish_security_class(UCHAR** acl_ptr,
USHORT public,
USHORT public_priv,
STR* start_ptr,
ULONG* length_ptr)
{
@ -413,9 +413,9 @@ static void finish_security_class(UCHAR** acl_ptr,
acl = *acl_ptr;
if (public) {
if (public_priv) {
CHECK_AND_MOVE(acl, ACL_id_list, *start_ptr, length_ptr);
SCL_move_priv(&acl, public, start_ptr, length_ptr);
SCL_move_priv(&acl, public_priv, start_ptr, length_ptr);
}
CHECK_AND_MOVE(acl, ACL_end, *start_ptr, length_ptr);
@ -439,12 +439,12 @@ static USHORT get_public_privs(
**************************************/
DBB dbb;
BLK request;
USHORT public;
USHORT public_priv;
SET_TDBB(tdbb);
dbb = tdbb->tdbb_database;
public = 0;
public_priv = 0;
request = (BLK) CMP_find_request(tdbb, irq_grant5, IRQ_REQUESTS);
@ -457,13 +457,13 @@ static USHORT get_public_privs(
PRV.RDB$FIELD_NAME MISSING
if (!REQUEST(irq_grant5))
REQUEST(irq_grant5) = request;
public |= trans_sql_priv(PRV.RDB$PRIVILEGE);
public_priv |= trans_sql_priv(PRV.RDB$PRIVILEGE);
END_FOR;
if (!REQUEST(irq_grant5))
REQUEST(irq_grant5) = request;
return public;
return public_priv;
}
@ -547,7 +547,7 @@ static void get_user_privs(TDBB tdbb,
TEXT* object_name,
SSHORT obj_type,
TEXT* owner,
USHORT public,
USHORT public_priv,
STR* start_ptr,
ULONG* length_ptr)
{
@ -598,7 +598,7 @@ static void get_user_privs(TDBB tdbb,
user_type = PRV.RDB$USER_TYPE;
if (user_type == obj_user)
{
priv = public;
priv = public_priv;
}
else
{
@ -760,7 +760,7 @@ static void purge_default_class( TEXT * object_name, SSHORT obj_type)
desc.dsc_scale = 0;
desc.dsc_ttype = ttype_metadata;
desc.dsc_address = (UCHAR *) object_name;
desc.dsc_length = strlen(desc.dsc_address);
desc.dsc_length = strlen((char*)desc.dsc_address);
DFW_post_work(dbb->dbb_sys_trans, dfw_scan_relation, &desc, 0);
}
@ -769,7 +769,7 @@ static USHORT save_field_privileges(
TDBB tdbb,
STR * str_relation_buffer,
UCHAR ** acl_ptr,
TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
TEXT * relation_name, TEXT * owner, USHORT public_priv, ULONG * length_ptr)
{
/**************************************
*
@ -839,7 +839,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
field_name[0] = 0;
user[0] = 0;
aggregate_public = public;
aggregate_public = public_priv;
request = (BLK) CMP_find_request(tdbb, irq_grant6, IRQ_REQUESTS);
request2 = NULL;
@ -871,7 +871,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
if (strcmp(user, "PUBLIC"))
{
field_priv =
(USHORT)( public |
(USHORT)( public_priv |
priv |
squeeze_acl(str_field_buffer->str_data,
&field_acl,
@ -884,7 +884,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
&str_field_buffer,
field_length_ptr);
relation_priv =
(USHORT)( public |
(USHORT)( public_priv |
priv |
squeeze_acl(relation_buffer->str_data,
&relation_acl,
@ -899,7 +899,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
}
else
{
field_public = field_public | public | priv;
field_public = field_public | public_priv | priv;
}
}
@ -920,7 +920,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
if (field_name[0]) {
aggregate_public |= field_public;
finish_security_class(&field_acl,
(USHORT)(field_public | public),
(USHORT)(field_public | public_priv),
&str_field_buffer,
field_length_ptr);
save_security_class(
@ -995,7 +995,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
if (strcmp(user, "PUBLIC"))
{
field_priv =
(USHORT)( public |
(USHORT)( public_priv |
priv |
squeeze_acl(str_field_buffer->str_data,
&field_acl,
@ -1008,7 +1008,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
&str_field_buffer,
field_length_ptr);
relation_priv =
(USHORT)( public |
(USHORT)( public_priv |
priv |
squeeze_acl(relation_buffer->str_data,
&relation_acl,
@ -1023,7 +1023,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
}
else
{
field_public = field_public | public | priv;
field_public = field_public | public_priv | priv;
}
}
@ -1033,7 +1033,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
{
aggregate_public |= field_public;
finish_security_class(&field_acl,
(USHORT)(field_public | public),
(USHORT)(field_public | public_priv),
&str_field_buffer,
field_length_ptr);
save_security_class(tdbb,
@ -1045,7 +1045,7 @@ TEXT * relation_name, TEXT * owner, USHORT public, ULONG * length_ptr)
desc.dsc_scale = 0;
desc.dsc_ttype = ttype_metadata;
desc.dsc_address = (UCHAR *) relation_name;
desc.dsc_length = strlen(desc.dsc_address);
desc.dsc_length = strlen((char*)desc.dsc_address);
DFW_post_work(dbb->dbb_sys_trans, dfw_update_format, &desc, 0);
}
@ -1238,42 +1238,42 @@ static SLONG squeeze_acl(UCHAR* acl_base,
case id_person:
if (user_type != obj_user)
hit = FALSE;
if (check_string(acl, user))
if (check_string((TEXT*)acl, user))
hit = FALSE;
break;
case id_sql_role:
if (user_type != obj_sql_role)
hit = FALSE;
if (check_string(acl, user))
if (check_string((TEXT*)acl, user))
hit = FALSE;
break;
case id_view:
if (user_type != obj_view)
hit = FALSE;
if (check_string(acl, user))
if (check_string((TEXT*)acl, user))
hit = FALSE;
break;
case id_procedure:
if (user_type != obj_procedure)
hit = FALSE;
if (check_string(acl, user))
if (check_string((TEXT*)acl, user))
hit = FALSE;
break;
case id_trigger:
if (user_type != obj_trigger)
hit = FALSE;
if (check_string(acl, user))
if (check_string((TEXT*)acl, user))
hit = FALSE;
break;
case id_project:
case id_organization:
hit = FALSE;
check_string(acl, user);
check_string((TEXT*)acl, user);
break;
case id_views:
@ -1289,7 +1289,7 @@ static SLONG squeeze_acl(UCHAR* acl_base,
case id_group:
if (user_type != obj_user_group)
hit = FALSE;
if (check_string(acl, user))
if (check_string((TEXT*)acl, user))
hit = FALSE;
break;

View File

@ -19,9 +19,6 @@
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
* 2001.07.06 Sean Leyne - Code Cleanup, removed "#ifdef READONLY_DATABASE"
* conditionals, as the engine now fully supports
* readonly databases.
*/
#include <stdio.h>
@ -61,7 +58,7 @@
DATABASE DB = FILENAME "ODS.RDB";
#define PAD(string, field) jrd_vtof (string, field, sizeof (field))
#define PAD(string, field) jrd_vtof ((char*)(string), field, sizeof (field))
#define MAX_ACL_SIZE 4096
#define DEFAULT_CLASS "SQL$DEFAULT"
@ -441,7 +438,7 @@ void INI_format(TEXT* owner)
*acl++ = ACL_end;
length = acl - buffer;
add_security_to_sys_rel(tdbb, string, "RDB$ROLES", buffer, length);
add_security_to_sys_rel(tdbb, string, "RDB$ROLES", (TEXT*)buffer, length);
}
@ -718,10 +715,10 @@ void INI_update_database(void)
**************************************
*
* Functional description
* Perform changes to ODS that were required
* Perform changes to ODS that were required
* since ODS 8 and are dynamically updatable.
*
* %% Note %% Update the switch() statement to reflect new major ODS
* %% Note %% Update the switch() statement to reflect new major ODS
* addition
**************************************/
DBB dbb;
@ -754,7 +751,7 @@ void INI_update_database(void)
}
/*******************************************************************
** when new engine is attaching an older ODS database
** when new engine is attaching an older ODS database
** perform the necessary modifications
********************************************************************/
@ -787,7 +784,7 @@ void INI_update_database(void)
header = (HDR) CCH_FETCH(tdbb, &window, LCK_write, pag_header);
CCH_MARK(tdbb, &window);
/* Only minor upgrades can occur within a major ODS, define which one
/* Only minor upgrades can occur within a major ODS, define which one
occured here. */
switch (major_version)
{
@ -907,9 +904,9 @@ static void add_index_set(DBB dbb,
REL relation;
TEXT string[32];
CONST struct ini_idx_t* index;
CONST struct ini_idx_segment_t*segment;
CONST ini_idx_t::ini_idx_segment_t*segment;
IDX idx;
struct idx_repeat* tail;
idx::idx_repeat* tail;
USHORT position;
FLD field;
float selectivity;
@ -932,7 +929,7 @@ static void add_index_set(DBB dbb,
(((USHORT) DECODE_ODS_MAJOR(index->ini_idx_version_flag)) !=
major_version)))
{
/* The DECODE_ODS_MAJOR() is used (in this case) to instruct the server
/* The DECODE_ODS_MAJOR() is used (in this case) to instruct the server
to perform updates for minor ODS versions only within a major ODS */
continue;
}
@ -967,7 +964,7 @@ static void add_index_set(DBB dbb,
}
idx.idx_count = index->ini_idx_segment_count;
idx.idx_flags = index->ini_idx_unique_flag;
IDX_create_index(tdbb, relation, &idx, string, NULL_PTR, NULL_PTR,
IDX_create_index(tdbb, relation, &idx, (UCHAR*)string, (USHORT*) NULL_PTR, (TRA) NULL_PTR,
&selectivity);
X.RDB$INDEX_ID = idx.idx_id + 1;
END_STORE;
@ -991,9 +988,9 @@ static void add_new_triggers(USHORT major_version, USHORT minor_version)
**************************************
*
* Functional description
* Store all new ODS 8.x (x > 0) triggers.
* Store all new ODS 8.x (x > 0) triggers.
* The major and minor_version passed in are the ODS versions
* before the ODS is upgraded.
* before the ODS is upgraded.
* This routine is used to upgrade ODS versions.
*
**************************************/
@ -1086,7 +1083,7 @@ static void add_relation_fields( USHORT minor_version)
desc.dsc_dtype = dtype_text;
INTL_ASSIGN_DSC(&desc, CS_METADATA, COLLATE_NONE);
desc.dsc_address = (UCHAR*) names[relfld[RFLD_R_NAME]];
desc.dsc_length = strlen(desc.dsc_address);
desc.dsc_length = strlen((char*)desc.dsc_address);
DFW_post_work(dbb->dbb_sys_trans, dfw_update_format, &desc, 0);
}
}
@ -1117,7 +1114,7 @@ static void add_security_to_sys_rel(TDBB tdbb,
*
* Functional description
*
* Add security to system relations. Only the owner of the
* Add security to system relations. Only the owner of the
* database has SELECT/INSERT/UPDATE/DELETE privileges on
* any system relations. Any other users only has SELECT
* privilege.
@ -1139,11 +1136,11 @@ static void add_security_to_sys_rel(TDBB tdbb,
strcat(sec_class_name, rel_name);
blob = BLB_create(tdbb, dbb->dbb_sys_trans, (BID)&blob_id_1);
BLB_put_segment(tdbb, blob, acl, acl_length);
BLB_put_segment(tdbb, blob, (UCHAR*)acl, acl_length);
BLB_close(tdbb, blob);
blob = BLB_create(tdbb, dbb->dbb_sys_trans, (BID)&blob_id_2);
BLB_put_segment(tdbb, blob, acl, acl_length);
BLB_put_segment(tdbb, blob, (UCHAR*)acl, acl_length);
BLB_close(tdbb, blob);
sprintf(default_class, "%s%" QUADFORMAT "d\0", DEFAULT_CLASS,
@ -1203,7 +1200,7 @@ static void add_security_to_sys_rel(TDBB tdbb,
STORE(REQUEST_HANDLE handle1)
CLS IN RDB$SECURITY_CLASSES
jrd_vtof(sec_class_name, CLS.RDB$SECURITY_CLASS,
jrd_vtof((char*)sec_class_name, CLS.RDB$SECURITY_CLASS,
sizeof(CLS.RDB$SECURITY_CLASS));
CLS.RDB$ACL = blob_id_1;
END_STORE;
@ -1214,7 +1211,7 @@ static void add_security_to_sys_rel(TDBB tdbb,
STORE(REQUEST_HANDLE handle1)
CLS IN RDB$SECURITY_CLASSES
jrd_vtof(default_class, CLS.RDB$SECURITY_CLASS,
jrd_vtof((char*)default_class, CLS.RDB$SECURITY_CLASS,
sizeof(CLS.RDB$SECURITY_CLASS));
CLS.RDB$ACL = blob_id_2;
END_STORE;
@ -1227,7 +1224,7 @@ static void add_security_to_sys_rel(TDBB tdbb,
WITH REL.RDB$RELATION_NAME EQ rel_name
MODIFY REL USING
REL.RDB$DEFAULT_CLASS.NULL = FALSE;
jrd_vtof(default_class, REL.RDB$DEFAULT_CLASS,
jrd_vtof((char*)default_class, REL.RDB$DEFAULT_CLASS,
sizeof(REL.RDB$DEFAULT_CLASS));
END_MODIFY;
@ -1293,7 +1290,7 @@ static void modify_relation_field(TDBB tdbb,
**************************************
*
* Functional description
* Modify a local field according to the
* Modify a local field according to the
* passed information. Note that the field id and
* field position do not change.
*
@ -1325,7 +1322,7 @@ static void store_generator(TDBB tdbb, CONST GEN* generator, BLK* handle)
**************************************
*
* Functional description
* Store the passed generator according to
* Store the passed generator according to
* the information in the generator block.
*
**************************************/
@ -1351,7 +1348,7 @@ static void store_global_field(TDBB tdbb, GFLD* gfield, BLK* handle)
**************************************
*
* Functional description
* Store a global field according to the
* Store a global field according to the
* passed information.
*
**************************************/
@ -1477,7 +1474,7 @@ static void store_intlnames(TDBB tdbb, DBB dbb)
{
/**************************************
*
* s t o r e _ i n t l n a m e s
* s t o r e _ i n t l n a m e s
*
**************************************
*
@ -1563,7 +1560,7 @@ static void store_relation_field(TDBB tdbb,
**************************************
*
* Functional description
* Store a local field according to the
* Store a local field according to the
* passed information.
*
**************************************/
@ -1596,7 +1593,7 @@ static void store_trigger(TDBB tdbb, CONST TRG* trigger, BLK* handle)
**************************************
*
* Functional description
* Store the trigger according to the
* Store the trigger according to the
* information in the trigger block.
*
**************************************/
@ -1615,7 +1612,7 @@ static void store_trigger(TDBB tdbb, CONST TRG* trigger, BLK* handle)
desc.dsc_dtype = dtype_text;
INTL_ASSIGN_DSC(&desc, CS_METADATA, COLLATE_NONE);
desc.dsc_address = (UCHAR*) names[trigger->trg_relation];
desc.dsc_length = strlen(desc.dsc_address);
desc.dsc_length = strlen((char*)desc.dsc_address);
DFW_post_work(trans, dfw_update_format, &desc, 0);
/* store the trigger */
@ -1634,4 +1631,4 @@ static void store_trigger(TDBB tdbb, CONST TRG* trigger, BLK* handle)
trigger->trg_length);
BLB_close(tdbb, blob);
END_STORE;
}
}

View File

@ -19,12 +19,9 @@
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
* 2001.07.06 Sean Leyne - Code Cleanup, removed "#ifdef READONLY_DATABASE"
* conditionals, as the engine now fully supports
* readonly databases.
*/
/*
$Id: met.e,v 1.2 2001-07-10 17:35:13 awharrison Exp $
$Id: met.epp,v 1.1 2001-07-12 06:32:03 bellardo Exp $
*/
#ifdef SHLIB_DEFS
@ -88,6 +85,10 @@ $Id: met.e,v 1.2 2001-07-10 17:35:13 awharrison Exp $
#include "../jrd/sch_proto.h"
#include "../jrd/iberr.h"
#ifdef HAVE_CTYPE_H
#include <ctype.h>
#endif
#ifdef WINDOWS_ONLY
#include "../jrd/seg_proto.h"
#endif
@ -186,7 +187,7 @@ void MET_activate_shadow( TDBB tdbb)
handle = NULL;
FOR(REQUEST_HANDLE handle) X IN RDB$FILES
WITH X.RDB$SHADOW_NUMBER NOT MISSING
AND X.RDB$SHADOW_NUMBER EQ 0
AND X.RDB$SHADOW_NUMBER EQ 0
ERASE X;
END_FOR;
@ -223,7 +224,7 @@ void MET_activate_shadow( TDBB tdbb)
/* Get rid of WAL after activation. For V4.0, we are not allowing
WAL and Shadowing to be configured together. So the following
(commented out) code should be re-visited when we do allow
(commented out) code should be re-visited when we do allow
such configuration. */
/***********************
@ -347,7 +348,7 @@ void MET_delete_dependencies(TDBB tdbb,
**************************************
*
* Functional description
* Delete all dependencies for the specified
* Delete all dependencies for the specified
* object of given type.
*
**************************************/
@ -385,7 +386,7 @@ void MET_delete_shadow( TDBB tdbb, USHORT shadow_number)
*
**************************************
*
* Functional description
* Functional description
* When any of the shadows in RDB$FILES for a particular
* shadow are deleted, stop shadowing to that file and
* remove all other files from the same shadow.
@ -401,7 +402,7 @@ void MET_delete_shadow( TDBB tdbb, USHORT shadow_number)
handle = NULL;
FOR(REQUEST_HANDLE handle)
X IN RDB$FILES WITH X.RDB$SHADOW_NUMBER EQ shadow_number
X IN RDB$FILES WITH X.RDB$SHADOW_NUMBER EQ shadow_number
ERASE X;
END_FOR;
@ -436,7 +437,7 @@ void MET_error( TEXT * string, ...)
VA_START(ptr, string);
vsprintf(s, string, ptr);
ERR_post(gds__no_meta_update, gds_arg_gds, gds__random, gds_arg_string,
ERR_post(gds_no_meta_update, gds_arg_gds, gds_random, gds_arg_string,
ERR_cstring(s), 0);
}
@ -507,7 +508,7 @@ FMT MET_format(TDBB tdbb, register REL relation, USHORT number)
FOR(REQUEST_HANDLE request)
X IN RDB$FORMATS WITH X.RDB$RELATION_ID EQ relation->rel_id AND
X.RDB$FORMAT EQ number
X.RDB$FORMAT EQ number
if (!REQUEST(irq_r_format))
{
@ -556,7 +557,7 @@ BOOLEAN MET_get_char_subtype(TDBB tdbb,
{
/**************************************
*
* M E T _ g e t _ c h a r _ s u b t y p e
* M E T _ g e t _ c h a r _ s u b t y p e
*
**************************************
*
@ -637,7 +638,7 @@ NOD MET_get_dependencies(TDBB tdbb,
**************************************
*
* Functional description
* Get dependencies for an object by parsing
* Get dependencies for an object by parsing
* the blr used in its definition.
*
**************************************/
@ -657,7 +658,7 @@ NOD MET_get_dependencies(TDBB tdbb,
{
node = PAR_blr( tdbb,
relation,
blob,
(UCHAR*)blob,
view_csb,
&csb,
request,
@ -728,7 +729,7 @@ FLD MET_get_field(REL relation, USHORT id)
}
void MET_get_shadow_files( TDBB tdbb, USHORT delete)
void MET_get_shadow_files( TDBB tdbb, USHORT deleteVar)
{
/**************************************
*
@ -738,7 +739,7 @@ void MET_get_shadow_files( TDBB tdbb, USHORT delete)
*
* Functional description
* Check the shadows found in the database against
* our in-memory list: if any new shadow files have
* our in-memory list: if any new shadow files have
* been defined since the last time we looked, start
* shadowing to them; if any have been deleted, stop
* shadowing to them.
@ -762,9 +763,9 @@ void MET_get_shadow_files( TDBB tdbb, USHORT delete)
{
file_flags = X.RDB$FILE_FLAGS;
SDW_start(X.RDB$FILE_NAME, X.RDB$SHADOW_NUMBER, file_flags,
delete);
deleteVar);
/* if the shadow exists, mark the appropriate shadow
/* if the shadow exists, mark the appropriate shadow
block as found for the purposes of this routine;
if the shadow was conditional and is no longer, note it */
@ -784,7 +785,7 @@ void MET_get_shadow_files( TDBB tdbb, USHORT delete)
CMP_release(tdbb, (REQ)handle);
/* if any current shadows were not defined in database, mark
/* if any current shadows were not defined in database, mark
them to be shutdown since they don't exist anymore */
for (shadow = dbb->dbb_shadow; shadow; shadow = shadow->sdw_next)
@ -912,8 +913,8 @@ void MET_load_trigger(
if ((TRG.RDB$FLAGS & TRG_ignore_perm) &&
!verify_TRG_ignore_perm(tdbb, trigger_name)) {
gds__msg_format(NULL_PTR, JRD_BUGCHK, 304, sizeof(errmsg),
errmsg, trigger_name, NULL_PTR, NULL_PTR,
NULL_PTR, NULL_PTR);
errmsg, trigger_name, (TEXT*)NULL_PTR, (TEXT*)NULL_PTR,
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
ERR_log(JRD_BUGCHK, 304, errmsg);
trig_flags &= ~TRG_ignore_perm;
@ -983,7 +984,7 @@ void MET_lookup_cnstrt_for_trigger(
{
/**************************************
*
* M E T _ l o o k u p _ c n s t r t _ f o r _ t r i g g e r
* M E T _ l o o k u p _ c n s t r t _ f o r _ t r i g g e r
*
**************************************
*
@ -1003,9 +1004,9 @@ void MET_lookup_cnstrt_for_trigger(
request = (BLK) CMP_find_request(tdbb, irq_l_check, IRQ_REQUESTS);
request2 = (BLK) CMP_find_request(tdbb, irq_l_check2, IRQ_REQUESTS);
/* utilize two requests rather than one so that we
/* utilize two requests rather than one so that we
guarantee we always return the name of the relation
that the trigger is defined on, even if we don't
that the trigger is defined on, even if we don't
have a check constraint defined for that trigger */
FOR(REQUEST_HANDLE request)
@ -1201,7 +1202,7 @@ int MET_lookup_field(TDBB tdbb, REL relation, CONST TEXT* name)
FOR(REQUEST_HANDLE request)
X IN RDB$RELATION_FIELDS WITH
X.RDB$RELATION_NAME EQ relation->rel_name AND
X.RDB$FIELD_NAME EQ name
X.RDB$FIELD_NAME EQ name
if (!REQUEST(irq_l_field))
{
@ -1249,13 +1250,13 @@ BLF MET_lookup_filter(TDBB tdbb, SSHORT from, SSHORT to)
FOR(REQUEST_HANDLE request)
X IN RDB$FILTERS WITH X.RDB$INPUT_SUB_TYPE EQ from AND
X.RDB$OUTPUT_SUB_TYPE EQ to
X.RDB$OUTPUT_SUB_TYPE EQ to
if (!REQUEST(irq_r_filters))
REQUEST(irq_r_filters) = request;
MET_exact_name(X.RDB$MODULE_NAME);
MET_exact_name(X.RDB$ENTRYPOINT);
filter =
filter = (STATUS (*)(USHORT, CTL))
ISC_lookup_entrypoint(X.RDB$MODULE_NAME, X.RDB$ENTRYPOINT,
ISC_EXT_LIB_PATH_ENV);
if (filter)
@ -1271,7 +1272,7 @@ BLF MET_lookup_filter(TDBB tdbb, SSHORT from, SSHORT to)
strlen(X.RDB$FUNCTION_NAME) +
strlen(X.RDB$ENTRYPOINT) +
strlen(X.RDB$MODULE_NAME) + 1);
sprintf(exception_msg->str_data, EXCEPTION_MESSAGE,
sprintf((char*)exception_msg->str_data, EXCEPTION_MESSAGE,
X.RDB$FUNCTION_NAME, X.RDB$ENTRYPOINT, X.RDB$MODULE_NAME);
blf->blf_exception_message = exception_msg;
}
@ -1379,7 +1380,7 @@ void DLL_EXPORT MET_lookup_index(
FOR(REQUEST_HANDLE request)
X IN RDB$INDICES WITH X.RDB$RELATION_NAME EQ relation_name
AND X.RDB$INDEX_ID EQ number
AND X.RDB$INDEX_ID EQ number
if (!REQUEST(irq_l_index))
REQUEST(irq_l_index) = request;
@ -1497,7 +1498,7 @@ int MET_lookup_partner(
IDX.RDB$INDEX_NAME STARTING WITH "RDB$FOREIGN" AND
IDX.RDB$RELATION_NAME EQ relation->rel_name AND
IND.RDB$INDEX_NAME EQ IDX.RDB$FOREIGN_KEY AND
IND.RDB$UNIQUE_FLAG NOT MISSING
IND.RDB$UNIQUE_FLAG NOT MISSING
if (!REQUEST(irq_foreign1))
{
@ -1515,7 +1516,7 @@ int MET_lookup_partner(
references->frgn_reference_ids->vec_object[index_number] =
(BLK) (IDX.RDB$INDEX_ID - 1);
ALL_vector(dbb->dbb_permanent,
&references->frgn_relations,
(USHORT)index_number);
@ -1627,7 +1628,7 @@ int MET_lookup_partner(
keys. */
found = FALSE;
request = NULL_PTR;
request = (BLK) NULL_PTR;
FOR(REQUEST_HANDLE request)
IDX IN RDB$INDICES CROSS
@ -1735,7 +1736,7 @@ PRC MET_lookup_procedure(TDBB tdbb, SCHAR * name)
&& (procedure->prc_flags & PRC_scanned)
&& !(procedure->prc_flags & PRC_being_scanned)
&& !(procedure->prc_flags & PRC_being_altered)
&& (p = procedure->prc_name->str_data)) for (q = name;
&& (p = (SCHAR*)procedure->prc_name->str_data)) for (q = (SCHAR*)name;
*p == *q;
p++, q++)
if (*p == 0)
@ -1751,7 +1752,7 @@ PRC MET_lookup_procedure(TDBB tdbb, SCHAR * name)
FOR(REQUEST_HANDLE request)
P IN RDB$PROCEDURES WITH P.RDB$PROCEDURE_NAME EQ name
if (!REQUEST(irq_l_procedure))
if (!REQUEST(irq_l_procedure))
REQUEST(irq_l_procedure) = request;
procedure = MET_procedure(tdbb, P.RDB$PROCEDURE_ID, 0);
@ -1808,7 +1809,7 @@ PRC MET_lookup_procedure_id(TDBB tdbb,
FOR(REQUEST_HANDLE request)
P IN RDB$PROCEDURES WITH P.RDB$PROCEDURE_ID EQ id
if (!REQUEST(irq_l_proc_id))
if (!REQUEST(irq_l_proc_id))
REQUEST(irq_l_proc_id) = request;
procedure = MET_procedure(tdbb, P.RDB$PROCEDURE_ID, flags);
@ -2048,7 +2049,7 @@ NOD MET_parse_blob(TDBB tdbb,
node = PAR_blr( tdbb,
relation,
temp->str_data,
NULL_PTR,
(CSB)NULL_PTR,
csb_ptr,
request_ptr,
trigger,
@ -2158,8 +2159,8 @@ void MET_parse_sys_trigger(TDBB tdbb, REL relation)
PAR_blr(tdbb,
relation,
blr,
NULL_PTR,
NULL_PTR,
(CSB) NULL_PTR,
(CSB*) NULL_PTR,
&request,
TRUE,
par_flags);
@ -2209,7 +2210,7 @@ void MET_prepare( TDBB tdbb, TRA transaction, USHORT length, UCHAR * msg)
{
/**************************************
*
* M E T _ p r e p a r e
* M E T _ p r e p a r e
*
**************************************
*
@ -2291,13 +2292,13 @@ PRC MET_procedure(TDBB tdbb, int id, USHORT flags)
dbb->dbb_flags |= DBB_sp_rec_mutex_init;
}
THREAD_EXIT;
if (THD_rec_mutex_lock(&dbb->dbb_sp_rec_mutex))
{
THREAD_ENTER;
return NULL;
}
THREAD_ENTER;
#endif /* SUPERSERVER */
@ -2314,18 +2315,18 @@ PRC MET_procedure(TDBB tdbb, int id, USHORT flags)
/* To avoid scanning recursive procedure's blr recursively let's
make use of PRC_being_scanned bit. Because this bit is set
later in the code, it is not set when we are here first time.
If (in case of rec. procedure) we get here second time it is
If (in case of rec. procedure) we get here second time it is
already set and we return half baked procedure.
In case of superserver this code is under the rec. mutex
protection, thus the only guy (thread) who can get here and see
PRC_being_scanned bit set is the guy which started procedure scan
and currently holds the mutex.
In case of classic, there is always only one guy and if it
In case of classic, there is always only one guy and if it
sees PRC_being_scanned bit set it is safe to assume it is here
second time.
If procedure has already been scanned - return. This condition
is for those threads that did not find procedure in cach and
is for those threads that did not find procedure in cach and
came here to get it from disk. But only one was able to lock
the mutex and do the scanning, others were waiting. As soon as
the first thread releases the mutex another thread gets in and
@ -2376,7 +2377,7 @@ PRC MET_procedure(TDBB tdbb, int id, USHORT flags)
lock->lck_owner_handle = LCK_get_owner_handle(tdbb, lock->lck_type);
lock->lck_object = (BLK) procedure;
/* TMN: Beware - this is a hairy AND UGLY cast */
lock->lck_ast = (int (*)()) blocking_ast_procedure;
lock->lck_ast = (int (*)(void*)) blocking_ast_procedure;
LCK_lock(tdbb, procedure->prc_existence_lock, LCK_SR, TRUE);
@ -2562,7 +2563,7 @@ REL MET_relation(TDBB tdbb, USHORT id)
major_version = (SSHORT) dbb->dbb_ods_version;
minor_original = (SSHORT) dbb->dbb_minor_original;
/* From ODS 9 onwards, the first 128 relation IDS have been
/* From ODS 9 onwards, the first 128 relation IDS have been
reserved for system relations */
if (ENCODE_ODS(major_version, minor_original) < ODS_9_0)
max_sys_rel = (USHORT) USER_REL_INIT_ID_ODS8 - 1;
@ -2585,7 +2586,7 @@ REL MET_relation(TDBB tdbb, USHORT id)
lock->lck_owner_handle = LCK_get_owner_handle(tdbb, lock->lck_type);
lock->lck_object = (BLK) relation;
/* TMN: Beware - this is a hairy AND UGLY cast */
lock->lck_ast = (int (*)()) blocking_ast_relation;
lock->lck_ast = (int (*)(void*)) blocking_ast_relation;
relation->rel_flags |= (REL_check_existence | REL_check_partners);
return relation;
@ -2646,7 +2647,7 @@ void MET_remove_procedure( TDBB tdbb, int id, PRC procedure)
/* Procedure that is being altered may have references
to it by other procedures via pointer to current meta
data structure, so don't loose the structure or the pointer.
data structure, so don't loose the structure or the pointer.
if (!(procedure->prc_flags & PRC_being_altered))
vector->vec_object [id] = (BLK) NULL_PTR;
*/
@ -2741,7 +2742,7 @@ void MET_revoke(
FIRST 1 P IN RDB$USER_PRIVILEGES WITH
P.RDB$RELATION_NAME EQ relation AND
P.RDB$PRIVILEGE EQ privilege AND
P.RDB$USER EQ revokee
P.RDB$USER EQ revokee
if (!REQUEST(irq_revoke1))
REQUEST(irq_revoke1) = request;
@ -2763,7 +2764,7 @@ void MET_revoke(
P IN RDB$USER_PRIVILEGES WITH
P.RDB$RELATION_NAME EQ relation AND
P.RDB$PRIVILEGE EQ privilege AND
P.RDB$GRANTOR EQ revokee
P.RDB$GRANTOR EQ revokee
if (!REQUEST(irq_revoke2))
REQUEST(irq_revoke2) = request;
@ -2859,7 +2860,7 @@ void MET_scan_relation( TDBB tdbb, REL relation)
sys_triggers = (relation->rel_flags & REL_sys_triggers) ? TRUE : FALSE;
relation->rel_flags &= ~(REL_get_dependencies | REL_sys_triggers);
for (n = 0; n < TRIGGER_MAX; n++)
triggers[n] = NULL_PTR;
triggers[n] = (VEC) NULL_PTR;
old_pool = tdbb->tdbb_default;
tdbb->tdbb_default = dbb->dbb_permanent;
@ -2922,10 +2923,10 @@ void MET_scan_relation( TDBB tdbb, REL relation)
relation->rel_view_rse =
(RSE) MET_get_dependencies( tdbb,
relation,
NULL_PTR,
NULL_PTR,
(TEXT*)NULL_PTR,
(CSB) NULL_PTR,
(SLONG*)&REL.RDB$VIEW_BLR,
NULL_PTR,
(REQ*) NULL_PTR,
&csb,
REL.RDB$RELATION_NAME,
obj_view);
@ -2937,7 +2938,7 @@ void MET_scan_relation( TDBB tdbb, REL relation)
relation,
(SLONG*)&REL.RDB$VIEW_BLR,
&csb,
NULL_PTR,
(REQ*) NULL_PTR,
FALSE,
FALSE);
}
@ -3001,7 +3002,7 @@ void MET_scan_relation( TDBB tdbb, REL relation)
/* The field exists. If its name hasn't changed, then
there's no need to copy anything. */
if (!strcmp(p, field->fld_name))
if (!strcmp((char*)p, (char*)field->fld_name))
break;
name = (STR) ALLOCPV(type_str, length);
@ -3016,7 +3017,7 @@ void MET_scan_relation( TDBB tdbb, REL relation)
* TMN: This const_cast equivalent is safe since
* we just allocated the struct.
*/
strcpy((char*)field->fld_name, p);
strcpy((char*)field->fld_name, (char*)p);
field->fld_length = strlen(field->fld_name);
break;
@ -3026,53 +3027,53 @@ void MET_scan_relation( TDBB tdbb, REL relation)
case RSR_base_field:
field->fld_source =
PAR_make_field(tdbb, csb, view_context, p);
PAR_make_field(tdbb, csb, view_context, (TEXT*)p);
break;
case RSR_computed_blr:
field->fld_computation = (dependencies) ?
MET_get_dependencies(tdbb, relation,
p,
(TEXT*) p,
csb,
NULL_PTR,
NULL_PTR,
NULL_PTR,
(SLONG*) NULL_PTR,
(REQ*) NULL_PTR,
(CSB*) NULL_PTR,
field->fld_name,
obj_computed) :
PAR_blr(tdbb, relation, p, csb, NULL_PTR, NULL_PTR, FALSE,
PAR_blr(tdbb, relation, p, csb, (CSB*) NULL_PTR, (REQ*) NULL_PTR, FALSE,
0);
break;
case RSR_missing_value:
field->fld_missing_value =
PAR_blr(tdbb, relation, p, csb, NULL_PTR, NULL_PTR, FALSE,
PAR_blr(tdbb, relation, p, csb, (CSB*) NULL_PTR, (REQ*) NULL_PTR, FALSE,
0);
break;
case RSR_default_value:
field->fld_default_value =
PAR_blr(tdbb, relation, p, csb, NULL_PTR, NULL_PTR, FALSE,
PAR_blr(tdbb, relation, p, csb, (CSB*) NULL_PTR, (REQ*) NULL_PTR, FALSE,
0);
break;
case RSR_validation_blr:
field->fld_validation =
PAR_blr(tdbb, relation, p, csb, NULL_PTR, NULL_PTR, FALSE,
PAR_blr(tdbb, relation, p, csb, (CSB*) NULL_PTR, (REQ*) NULL_PTR, FALSE,
csb_validation);
break;
case RSR_field_not_null:
field->fld_not_null =
PAR_blr(tdbb, relation, p, csb, NULL_PTR, NULL_PTR, FALSE,
PAR_blr(tdbb, relation, p, csb, (CSB*) NULL_PTR, (REQ*) NULL_PTR, FALSE,
csb_validation);
break;
case RSR_security_class:
field->fld_security_name = MET_save_name(tdbb, p);
field->fld_security_name = MET_save_name(tdbb, (TEXT*) p);
break;
case RSR_trigger_name:
MET_load_trigger(tdbb, relation, p, triggers);
MET_load_trigger(tdbb, relation, (TEXT*) p, triggers);
break;
case RSR_dimensions:
@ -3102,11 +3103,11 @@ void MET_scan_relation( TDBB tdbb, REL relation)
ALL_release((FRB)csb);
}
/* release any triggers in case of a rescan, but not if the rescan
/* release any triggers in case of a rescan, but not if the rescan
hapenned while system triggers were being loaded. */
if (!(relation->rel_flags & REL_sys_trigs_being_loaded)) {
/* if we are scanning a system relation during loading the system
/* if we are scanning a system relation during loading the system
triggers, (during parsing its blr actually), we must not release the
existing system triggers; because we have already set the
relation->rel_flag to not have REL_sys_trig, so these
@ -3114,7 +3115,7 @@ void MET_scan_relation( TDBB tdbb, REL relation)
/* We have just loaded the triggers onto the local vector triggers.
Its now time to place them at their rightful place ie the relation
block.
block.
*/
tmp_vector = relation->rel_pre_store;
relation->rel_pre_store = triggers[TRIGGER_PRE_STORE];
@ -3176,7 +3177,7 @@ TEXT *MET_trigger_msg(TDBB tdbb, TEXT * name, USHORT number)
FOR(REQUEST_HANDLE request)
MSG IN RDB$TRIGGER_MESSAGES WITH
MSG.RDB$TRIGGER_NAME EQ name AND
MSG.RDB$MESSAGE_NUMBER EQ number
MSG.RDB$MESSAGE_NUMBER EQ number
if (!REQUEST(irq_s_msgs))
REQUEST(irq_s_msgs) = request;
@ -3241,8 +3242,8 @@ void MET_update_transaction( TDBB tdbb, TRA transaction, USHORT flag)
request = (BLK) CMP_find_request(tdbb, irq_m_trans, IRQ_REQUESTS);
FOR(REQUEST_HANDLE request)
X IN RDB$TRANSACTIONS
WITH X.RDB$TRANSACTION_ID EQ transaction->tra_number
X IN RDB$TRANSACTIONS
WITH X.RDB$TRANSACTION_ID EQ transaction->tra_number
if (!REQUEST(irq_m_trans))
REQUEST(irq_m_trans) = request;
@ -3380,7 +3381,7 @@ static void get_trigger(
MET_parse_blob( tdbb,
relation,
blob_id,
NULL_PTR,
(CSB*) NULL_PTR,
&request,
TRUE,
(BOOLEAN)((flags & TRG_ignore_perm) ? TRUE : FALSE));
@ -3444,7 +3445,7 @@ static BOOLEAN get_type( TDBB tdbb, SSHORT * id, UCHAR * name, UCHAR * field)
FOR(REQUEST_HANDLE handle)
FIRST 1 T IN RDB$TYPES WITH
T.RDB$FIELD_NAME EQ field AND
T.RDB$TYPE_NAME EQ buffer
T.RDB$TYPE_NAME EQ buffer
found = TRUE;
*id = T.RDB$TYPE;
@ -3464,9 +3465,9 @@ static void lookup_view_contexts( TDBB tdbb, REL view)
**************************************
*
* Functional description
* Lookup view contexts and store in a linked
* Lookup view contexts and store in a linked
* list on the relation block.
*
*
**************************************/
DBB dbb;
BLK request;
@ -3483,7 +3484,7 @@ static void lookup_view_contexts( TDBB tdbb, REL view)
FOR(REQUEST_HANDLE request)
V IN RDB$VIEW_RELATIONS WITH
V.RDB$VIEW_NAME EQ view->rel_name
SORTED BY V.RDB$VIEW_CONTEXT
SORTED BY V.RDB$VIEW_CONTEXT
if (!REQUEST(irq_view_context))
REQUEST(irq_view_context) = request;
@ -3502,7 +3503,7 @@ static void lookup_view_contexts( TDBB tdbb, REL view)
length = name_length(V.RDB$CONTEXT_NAME);
alias = (STR) ALLOCDV(type_str, length + 1);
V.RDB$CONTEXT_NAME[length] = 0;
strcpy(alias->str_data, V.RDB$CONTEXT_NAME);
strcpy((char*)alias->str_data, V.RDB$CONTEXT_NAME);
alias->str_length = length;
view_context->vcx_context_name = alias;
@ -3512,7 +3513,7 @@ static void lookup_view_contexts( TDBB tdbb, REL view)
length = name_length(V.RDB$RELATION_NAME);
alias = (STR) ALLOCDV(type_str, length + 1);
V.RDB$RELATION_NAME[length] = 0;
strcpy(alias->str_data, V.RDB$RELATION_NAME);
strcpy((char*)alias->str_data, V.RDB$RELATION_NAME);
alias->str_length = length;
view_context->vcx_relation_name = alias;
@ -3604,7 +3605,7 @@ static NOD parse_procedure_blr(
par_messages(tdbb, temp->str_data, (USHORT) blob->blb_length, procedure,
csb_ptr);
node =
PAR_blr(tdbb, NULL_PTR, temp->str_data, NULL_PTR, csb_ptr,
PAR_blr(tdbb, (REL) NULL_PTR, temp->str_data, (CSB) NULL_PTR, csb_ptr,
&procedure->prc_request, FALSE, 0);
ALL_release((FRB)temp);
@ -3754,7 +3755,7 @@ static BOOLEAN resolve_charset_and_collation(
* NULL means use the default collation for (charset).
*
* Outputs:
* (*id)
* (*id)
* Set to character set specified by this name.
*
* Return:
@ -3782,7 +3783,8 @@ static BOOLEAN resolve_charset_and_collation(
charset = (UCHAR *) DEFAULT_CHARACTER_SET_NAME;
charset_id = 0;
if (get_type(tdbb, &charset_id, charset, "RDB$CHARACTER_SET_NAME"))
// CONST CAST
if (get_type(tdbb, &charset_id, charset, (UCHAR*) "RDB$CHARACTER_SET_NAME"))
{
*id = charset_id;
return TRUE;
@ -3793,7 +3795,7 @@ static BOOLEAN resolve_charset_and_collation(
FOR(REQUEST_HANDLE handle)
FIRST 1 CS IN RDB$CHARACTER_SETS
WITH CS.RDB$CHARACTER_SET_NAME EQ charset
WITH CS.RDB$CHARACTER_SET_NAME EQ charset
found = TRUE;
*id = CS.RDB$CHARACTER_SET_ID;
@ -3807,7 +3809,7 @@ static BOOLEAN resolve_charset_and_collation(
{
FOR(REQUEST_HANDLE handle)
FIRST 1 COL IN RDB$COLLATIONS
WITH COL.RDB$COLLATION_NAME EQ collation
WITH COL.RDB$COLLATION_NAME EQ collation
found = TRUE;
*id = COL.RDB$CHARACTER_SET_ID;
@ -3825,7 +3827,7 @@ static BOOLEAN resolve_charset_and_collation(
WITH AL1.RDB$FIELD_NAME EQ "RDB$CHARACTER_SET_NAME"
AND AL1.RDB$TYPE_NAME EQ charset
AND COL.RDB$COLLATION_NAME EQ collation
AND AL1.RDB$TYPE EQ CS.RDB$CHARACTER_SET_ID
AND AL1.RDB$TYPE EQ CS.RDB$CHARACTER_SET_ID
found = TRUE;
*id = CS.RDB$CHARACTER_SET_ID;
@ -3908,7 +3910,7 @@ static void store_dependencies(TDBB tdbb,
*
* Functional description
* Store records in RDB$DEPENDENCIES
* corresponding to the objects found during
* corresponding to the objects found during
* compilation of blr for a trigger, view, etc.
*
**************************************/
@ -3948,7 +3950,7 @@ static void store_dependencies(TDBB tdbb,
if (dpdo_type == obj_procedure)
{
procedure = (PRC) node->nod_arg[e_dep_object];
dpdo_name = procedure->prc_name->str_data;
dpdo_name = (TEXT*) procedure->prc_name->str_data;
}
else
{
@ -4087,9 +4089,9 @@ static BOOLEAN verify_TRG_ignore_perm(TDBB tdbb, TEXT* trig_name)
* Functional description
* Return TRUE if this trigger can go through without any permission
* checks. Currently, the only class of triggers that can go
* through without permission checks are
* through without permission checks are
* (a) two system triggers (RDB$TRIGGERS_34 and RDB$TRIGGERS_35)
* (b) those defined for referential integrity actions such as,
* (b) those defined for referential integrity actions such as,
* set null, set default, and cascade.
*
**************************************/
@ -4143,4 +4145,4 @@ static BOOLEAN verify_TRG_ignore_perm(TDBB tdbb, TEXT* trig_name)
}
return FALSE;
}
}

View File

@ -129,7 +129,7 @@ void SCL_check_access(SCL s_class,
if (s_class && (s_class->scl_flags & SCL_corrupt))
{
ERR_post(gds__no_priv, gds_arg_string, "(ACL unrecognized)",
ERR_post(gds_no_priv, gds_arg_string, "(ACL unrecognized)",
gds_arg_string, "security_class",
gds_arg_string, s_class->scl_name,
0);
@ -171,7 +171,7 @@ void SCL_check_access(SCL s_class,
}
}
ERR_post(gds__no_priv,
ERR_post(gds_no_priv,
gds_arg_string, names->p_names_string,
gds_arg_string, type,
gds_arg_string, ERR_cstring(name),
@ -308,7 +308,7 @@ void SCL_check_procedure( DSC * dsc_name, USHORT mask)
assert(dsc_name->dsc_dtype == dtype_text);
for (p = name, endp = name + sizeof(name) - 1,
q = dsc_name->dsc_address, endq = q + dsc_name->dsc_length;
q = (TEXT*)dsc_name->dsc_address, endq = q + dsc_name->dsc_length;
q < endq && p < endp && *q && *q != ' ';)
*p++ = *q++;
*p = 0;
@ -363,7 +363,7 @@ void SCL_check_relation( DSC * dsc_name, USHORT mask)
assert(dsc_name->dsc_dtype == dtype_text);
for (p = name, endp = name + sizeof(name) - 1,
q = dsc_name->dsc_address, endq = q + dsc_name->dsc_length;
q = (TEXT*)dsc_name->dsc_address, endq = q + dsc_name->dsc_length;
q < endq && p < endp && *q && *q != ' ';)
*p++ = *q++;
*p = 0;
@ -450,8 +450,8 @@ SCL SCL_get_class(/* INOUT */ TEXT* string)
q = s_class->scl_name;
while (*q++ = *p++)
;
s_class->scl_flags = (USHORT) compute_access(tdbb, s_class, NULL_PTR,
NULL_PTR, NULL_PTR);
s_class->scl_flags = (USHORT) compute_access(tdbb, s_class, (REL)NULL_PTR,
(TEXT*)NULL_PTR, (TEXT*)NULL_PTR);
if (s_class->scl_flags & SCL_exists)
{
@ -585,7 +585,7 @@ void SCL_init(BOOLEAN create,
{
if (!user_name || (!password_enc && !password))
{
ERR_post(gds__login, 0);
ERR_post(gds_login, 0);
}
if (!internal)
@ -771,8 +771,8 @@ SCL SCL_recompute_class(TDBB tdbb, TEXT * string)
return NULL;
s_class->scl_flags = (USHORT) compute_access(tdbb, s_class,
NULL_PTR, NULL_PTR,
NULL_PTR);
(REL) NULL_PTR, (TEXT*) NULL_PTR,
(TEXT*) NULL_PTR);
if (s_class->scl_flags & SCL_exists)
return s_class;
@ -949,13 +949,13 @@ static BOOLEAN check_user_group(CONST TEXT* acl,
else
{ /* processing group name */
user_group_name = buffer->str_data;
user_group_name = (TEXT*) buffer->str_data;
do {
one_char = *acl++;
*user_group_name++ = LOWWER(one_char);
} while (--l);
*user_group_name = '\0';
user_group_name = buffer->str_data;
user_group_name = (TEXT*) buffer->str_data;
/*
** convert unix group name to unix group id
*/
@ -1056,7 +1056,7 @@ static SLONG compute_access(TDBB tdbb,
/* Get some space that's not off the stack */
str_buffer = (STR) ALLOCPV(type_str, BLOB_BUFFER_SIZE);
buffer = str_buffer->str_data;
buffer = (TEXT*) str_buffer->str_data;
request = (BLK) CMP_find_request(tdbb, irq_l_security, IRQ_REQUESTS);
@ -1072,7 +1072,7 @@ static SLONG compute_access(TDBB tdbb,
acl = buffer;
while (TRUE)
{
acl += BLB_get_segment(tdbb, blob, acl,
acl += BLB_get_segment(tdbb, blob, (UCHAR*)acl,
(USHORT) (length -
((acl - buffer) *
(sizeof(buffer[0])))));
@ -1084,7 +1084,7 @@ static SLONG compute_access(TDBB tdbb,
ULONG old_offset = (ULONG) (acl - buffer);
length += BLOB_BUFFER_SIZE;
(void) ALL_extend((BLK *) & str_buffer, length);
buffer = str_buffer->str_data;
buffer = (TEXT*) str_buffer->str_data;
acl = buffer + old_offset;
}
}
@ -1101,7 +1101,7 @@ static SLONG compute_access(TDBB tdbb,
trg_name,
prc_name,
(STR*)&str_buffer,
length_ptr);
(ULONG*)length_ptr);
}
END_FOR;

133
src/jrd/status.cpp Normal file
View File

@ -0,0 +1,133 @@
// status.cpp
//
// Copyright 2001 Mikael Nordell <tamlin@users.sourceforge.net>
//
// This file is part of the firebird RDBMS engine, and as such
// is only allowed to be used within that engine, where it may
// be used freely. Any other use is prohibited.
//
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include "../jrd/status.h"
#include "../jrd/gdsassert.h"
#include "../jrd/codes.h"
#include "../jrd/gds_proto.h"
/* The following function is used to stuff variable number of error message
arguments from stack to the status_vector. This macro should be the
first statement in a routine where it is invoked. */
/* Get the addresses of the argument vector and the status vector, and do
word-wise copy. */
void STUFF_STATUS_function(STATUS* status_vector, STATUS status, va_list args)
{
int type, len;
STATUS* p = status_vector;
*p++ = gds_arg_gds;
*p++ = status;
while ((type = va_arg(args, int)) && ((p - status_vector) < 17))
{
switch (*p++ = type)
{
case gds_arg_gds:
*p++ = va_arg(args, STATUS);
break;
case gds_arg_string:
{
STATUS* q = va_arg(args, STATUS*);
if (strlen((TEXT *) q) >= MAX_ERRSTR_LEN)
{
*(p - 1) = gds_arg_cstring;
*p++ = (STATUS) MAX_ERRSTR_LEN;
}
*p++ = (STATUS) q;
}
break;
case gds_arg_interpreted:
*p++ = (STATUS) va_arg(args, TEXT *);
break;
case gds_arg_cstring:
len = (int) va_arg(args, int);
*p++ = (STATUS) (len >= MAX_ERRSTR_LEN) ? MAX_ERRSTR_LEN : len;
*p++ = (STATUS) va_arg(args, TEXT *);
break;
case gds_arg_number:
*p++ = (STATUS) va_arg(args, SLONG);
break;
case gds_arg_vms:
case gds_arg_unix:
case gds_arg_domain:
case gds_arg_dos:
case gds_arg_mpexl:
case gds_arg_next_mach:
case gds_arg_netware:
case gds_arg_win32:
default:
*p++ = (STATUS) va_arg(args, int);
break;
}
}
*p = gds_arg_end;
}
/** Check that we never overrun the status vector. The status
* vector is 20 elements. The maximum is 3 entries for a
* type. So check for 17 or less
*/
void PARSE_STATUS(STATUS * status_vector, int &length, int &warning)
{
int i;
warning = 0;
length = 0;
for (i = 0; status_vector[i] != gds_arg_end; i++, length++)
{
switch (status_vector[i])
{
case isc_arg_warning:
if (!warning)
warning = i; // find the very first
// fallthrought intended
case gds_arg_gds:
case gds_arg_string:
case gds_arg_number:
case gds_arg_vms:
case gds_arg_unix:
case gds_arg_domain:
case gds_arg_dos:
case gds_arg_mpexl:
case gds_arg_next_mach:
case gds_arg_netware:
case gds_arg_win32:
i++;
length++;
break;
case gds_arg_cstring:
i += 2;
length += 2;
break;
default:
assert(FALSE);
break;
}
}
if (i) {
length++; // gds_arg_end is counted
}
}

23
src/jrd/status.h Normal file
View File

@ -0,0 +1,23 @@
#ifndef FB_MISC_STATUS_H
#define FB_MISC_STATUS_H
#include <stdlib.h> // size_t
#include "../jrd/common.h" // STATUS
#ifdef HAVE_STDARG_H
#include <stdarg.h>
#endif
#define MAX_ERRMSG_LEN 128
#define MAX_ERRSTR_LEN 255
#ifdef __cplusplus
/* only allow these functions from C++ code (use of reference) */
//void STUFF_STATUS_function(STATUS* status_vector, STATUS status, va_list args);
void STUFF_STATUS_function(STATUS* , STATUS , va_list );
void PARSE_STATUS(STATUS * status_vector, int &length, int &warning);
#endif
#endif // FB_MISC_STATUS_H

318
src/makefiles/000_readme Normal file
View File

@ -0,0 +1,318 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
Note: This document comes from the original source distribution
from Inprise. You should be aware that it refers to some
Inprise specific things, mostly appears to be written pre-CVS
and pre interbase 5.x. It is left here for the moment, in orginal
form, because it still contains some useful information.
Other, more current sources of information:
The Doc Manager area of the Firebird project on sourceforge.net
http://sourceforge.net/projects/firebird/
The build_docs directory off the interbase tree in this CVS repository
The ib-build mailing list at mers.com, also available as
news://news.mers.com/mers.interbase.build
Reed Mideke, 8/15/2000
Original file follows:
Instructions for Building a Kit
1. Create a top level directory
2. cd to the top level directory and copy shell script setup_dirs
into it. setup_dirs can be found in marion under the builds
component. A no more than day old copy should also be located
in /usr/gds/dev/HP700/original/setup_dirs on the HP's.
3. Run setup_dirs (you may need to "chmod +x setup_dirs" first)
3.a Perform steps 3.a-3.d only if you received messages indicating
that setup_dirs failed. cd to system_id/original and copy into
it, all files from the builds component in marion. No more than
day old copies should be available in /usr/gds/dev/HP700/original/*
on the HP's.
3.b Run setup_prots (you may need to "chmod +x setup_prots" first)
3.c Run platform
3.d cd ../..
4.a Perform this step only if you are creating the master source
tree for a new kit on the Apollos. Run HP700/original/setup_gdbs.
Then create the marion database for the kit. Do not run
setup_gdbs if there is a marion.gdb present. It will delete it!
4.b Perfom this step only if your are creating a new source tree on SCO.
Copy the file 87ftol.o and _fltused.o from the current dev tree on
SCO (goofy:/usr/gds/dev/jrd) or other SCO source tree.
5. Copy gpre to interbase/bin
Copy isc_license.dat to interbase
Copy interbase.msg to interbase
Copy gds_pipe to interbase/bin if the machine doesn't have shared
libraries.
Copy gds.sl, gds.so.0, or whatever the shared library is called to
interbase/lib if the machine does have shared libraries.
6. Run refresh.all
7. Run build_kit
******************************************************************
*** How to build an InterBase release kit on an UNIX platform ***
Modified by: B.Sriram 07-Mar-1997
Created by: B.Sriram 15-May-1996
Pre-requisites:
##############
- An installed interbase kit in the build machine.
( this will allow us to use 'gpre', marion etc. )
Assumptions:
############
- You are logged into the 'build' machine for the respective
platform. The build machines currently used are mentioned
at the bottom.
- Create a /usr/gds.<hostname> directory structure with 100 MB
free.
a. /usr/gds.<hostname>/bin, tools, tmp etc.
- Populate 'bin' directory, and make sure '/usr/gds/sbin
points to /usr/gds.<hostname>/bin
- $BUILD_DIR_PARENT is the parent of the build directory.
- $BUILD_DIR is the build directory.
For eg. p4.0c_hp for a preproduction kit on HP platform
- $MARION_DIR is the pathname inclusive of the host which
consists of the 'marion' database.
- platform for build is HP10
- kit is a pre-production kit
Actions to be followed:
######################
- cd $BUILD_DIR_PARENT
- mkdir $BUILD_DIR
- cd $BUILD_DIR
- marion -c builds -d $MARION_DIR/marion.gdb
smm> sm setup_dirs
smm> quit
- chmod +x setup_dirs
- setup_dirs HP10 PROD yoda:/usr/gds.yoda/dev [SUPER]
/* The 1st argument to 'setup_dirs' should be one of the
valid platforms supported. Just run 'setup_dirs' with no
args. to get a list of valid platforms. */
The 'SUPER' argument is to be supplied for a SUPERSERVER build
- refresh.all /* This will get the latest version of
all the source files from the 'marion'
database. */
- touch dsql/parse.c /* so as not to run YACC.cosmetic requirement */
- cp /usr/interbase/bin/gpre interbase/bin
- cp /usr/interbase/lib/gds.sl interbase/lib
/* Copy 'gpre' and the shared library for
pre-processing Embedded SQL code. 'makefile'
access source/interbase/bin path */
- cp /usr/interbase/{isc_license.dat,interbase.msg,isc4.gdb} interbase
/* Required for 'gpre' to run */
- cp /usr/interbase/lib/bridge5 interbase/lib
/* Only on platforms that support BRIDGE */
- cp /usr/gds/v4.0c_sc/interbase/bin/gds_pipe5 interbase/bin
/* Only on SCO */
- cd jrd
- vi license.h /* Edit and modify version string of product
release. For eg: from V4.0B to P4.0C on
all occurences of V4.0B */
- make codes
- codes /* This will create ibase.h and other needed
include files. */
- cd ..
- build_kit HP10
- /* Remove un-neccessary files */
- rm interbase/bin/gds_wal*
rm interbase/bin/gds_cache*
- copy gds_pipe5 (bridge executable) from one of the
v4.0/interbase/bin directories. Also, copy lock_header_template
from v4.0/interbase
- Copy the appropriate README file into the interbase/README file.
- rasu set_prot /* Set protection on all to 'root' owner only */
*** Various forms of delivery ***
The kit can be delivered to QA/mftg in a number of different media.
* Pre-production kit to be send as 'tar' files through our
'FTP' site bekins.borland.com.
- maketar /* Shell script to invoke 'tar' and create a IB kit
'tar' file. Before executing this script, edit it
and put the appropriate 'tar' filename */
- Inform QA about the location of the 'tar' file.
* Kit for certification to QA/Mftg.
- maketape /* Put the files and directories under interbase/
directory in 'tar' format in the tape. Before
executing this script, edit it and specify the
proper device for the archive. */
--- OR ---
- On some platforms we use 'pkg' utility. Read information about
this utility later on in this document OR view the document
/usr/gds/builder/pkg.README
-----------------------------------------------------------------------
Useful Utilities :
################
- rasu unset_prot builder
/* Gives all permission to 'builder' for all files. */
- rasu set_prot
/* Gives all permission only to 'root' for all files. */
- maketar
/* exists on one of the kit directories. Edit and change 'tar'
filename. This command is to be executed to make a tar file
of the InterBase kit. */
-------------------------------------------------------------
##################################################################
pkg.README
##################################################################
pkgmk produces an installable package to be used as input to
the pkgadd command. The command uses the package prototype file
as input and creates a pkgmap file. The contents for each entry
in the prototype file is copied to the appropriate output location.
pkgproto scans the indicated paths and generates prototype
file entries that may be used as input to the pkgmk command.
pkgtrans translates an installable package from one format
to another. It translates:
a file system format to a datastream
a datastream to a file system format
one file system format to another file system format
pkgparam displays the value associated with the parameter or
parameters requested on the command line. The values are
located in either the pkginfo file for pkginst or from the
specific file named with the -f option.
pkginfo displays information about software packages which
are installed on the system (with the first synopsis) or
which reside on a particular device or directory (with the
second synopsis). Here is a sample.
$ pkginfo -d `pwd`/pkg
application InterBase Interbase RDBMS Software
$ pkginfo -l -d `pwd`/pkg
PKGINST: InterBase
NAME: Interbase RDBMS Software
CATEGORY: application
ARCH: sparc
VERSION: InterBase Version B4.0E
BASEDIR: /usr
PSTAMP: beta
STATUS: spooled
FILES: 169 spooled pathnames
9 directories
18 executables
4 setuid/setgid executables
5 package information files
20947 blocks used (approx)
$
How to build a package:
----------------------
1. vi pkginfo /* change version */
2. pkgproto `pwd`/interbase=\$IBASEDIR/interbase >> prototype
/* The $IBASEDIR in the path looks bogus. We should decide
how that should be, and fix it up for the future. --cjewell */
3. Edit 'prototype' file and add to the beginning of the file:
i pkginfo
i request
i postinstall
i preremove
4. mkdir pkg
5. pkgmk -d `pwd`/pkg -p beta
--where beta is just any string label for the package instance?
6. pkgtrans `pwd`/pkg /dev/rmt/0m
--for tape reboot if necessary
# Platforms currently using the 'pkg' format are:
# Solaris, DG/UX and NCR
##################################################################
*** Platform specific information (notes created during previous build) ***
#AIX 3.2.4 watson
Added interbase/isc_config to 'maketar' to be included in the kit.
#Solaris 2.4 sogood
Added interbase/isc_config to 'maketar' to be included in the kit.
- make -f make_kit utilities
in order to make a new interbase/isc4.gdb
#HP-UX 10.01 molokai
.Edited build_kit locally to set CC_PATH to /opt/softbench/bin,
since 'cc' was being used from /usr/ccs/bin which is wrong.
#SCO 3.0 goofy
.In 'jrd' dir. executed the foll. steps:
- ar x /lib/libc.a _fltused.o
- ar x /lib/libc.a 87ftol.o
.cp /usr/gds/v4.0c_sc/interbase/bin/gds_pipe5 interbase/bin
.cp /usr/gds/v4.0c_sc/interbase/lock_header_t interbase
. Modify 'maketar' to use lock_header_t instead of
lock_header_template
Added interbase/isc_config to 'maketar' to be included in the kit.
. The instructions for building a package on SCO 3.2v4.2 is in
'goofy:/usr/gds/v4.0c_sc/sco_ship'
#SCO 5.0 scov1
. The instructions for building release media on SCO Open Server
Release 5 are in 'scov1:/usr/gds.scov1/V4.0M_SS/sco5_ship',
the shell script which makes the SCO-Custom-installable media
images.
#SunOS 4.1.3 opus
.Edited build_kit locally to set CC_PATH to /bin
#HP-UX 9.05 yoda
.Edited build_kit locally to set CC_PATH to /opt/softbench/bin.
- make -f make_kit utilities
in order to make a new interbase/isc4.gdb
#AIX 4.1.2/PPC aix2
Added interbase/isc_config to 'maketar' to be included in the kit.
- make -f make_kit utilities
in order to make a new interbase/isc4.gdb
##################################################################
*** Build machines ***
Platform Build machine name
--------------------------------------------
Solaris (IB Classic) sogood
Solaris (IB SS) sogood
SunOS opus
HP-UX 9.0 yoda
HP-UX 10.01 (IB Classic)molokai
HP-UX 10.01 (IB SS) superhp1
IBM AIX RS6000 watson
AIX/PPC aix2
SGI sgi1
Digital Unix seaquest
IMP mimp
SCO 3.0 goofy
SCO 5.0 scov1
DG/UX 88K dg1
DG/UX Intel dgintel1
NCR ????

View File

@ -0,0 +1,60 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
1. write prefix.<platform> for builds
2. remote/remote.h: define ARCHITECTURE macro. eg.
#ifdef IMP
#define ARCHITECTURE arch_imp
#endif
3. remote/protocol.h: define architecture identifier.
adjusting arch_max as appropriate. eg.
arch_imp = 22,
arch_max = 23
4. run the align program and use its output to modify common.h
5. set up common.h
vfork
SMALL_FILE_NAMES
SHMEM_PICKY
ATEXIT
KILLER_SIGNALS
SETPGRP
6. jrd/pag.c: define CLASS macro. eg.
#ifdef IMP
#define CLASS 2
#endif
7. jrd/why.c: adjust for subsystems supported. eg.
#ifdef IMP
#undef CSI
#undef PIPE
#endif
8. jrd/license.h: add platform identifier. eg.
#ifdef IMP
#define GDS_VERSION "IM-I3.3A"
#endif
9. jrd/utl.c: add implementation literal. eg.
"InterBase/imp" /* 44 */
10. jrd/isc.c
value for MTAB
how is MTAB processed (ISC_analyse_nfs)

View File

@ -0,0 +1,26 @@
#!/bin/sh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
UMASK=`umask`
umask 002
TARGET=source/$2/$1
#removed runas builder according to inprise tree
#FSG 093000
cp $1 $TARGET
chmod 644 $TARGET
umask $UMASK

View File

@ -0,0 +1,57 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
csi.o
css.o
source/jrd/isc.o
source/remote/merge.o
-mergebss
-loadhigh
-binary csilib -exactcase
-mark CSI_attach_database
-mark CSI_blob_info
-mark CSI_cancel_blob
-mark CSI_close_blob
-MARK CSI_commit_transaction
-MARK CSI_compile_request
-mark CSI_create_blob2
-MARK CSI_create_database
-MARK CSI_database_info
-MARK CSI_detach_database
-mark CSI_get_segment
-mark CSI_open_blob2
-mark CSI_prepare_transaction
-mark CSI_put_segment
-MARK CSI_receive
-MARK CSI_release_request
-MARK CSI_request_info
-MARK CSI_reconnect_transaction
-MARK CSI_rollback_transaction
-MARK CSI_seek_blob
-MARK CSI_send
-MARK CSI_start_and_send
-MARK CSI_start_request
-MARK CSI_start_transaction
-MARK CSI_start_multiple
-MARK CSI_transaction_info
-MARK CSI_unwind_request
-MARK CSI_commit_retaining
-mark CSI_cancel_events
-mark CSI_que_events
-mark CSI_ddl
-mark CSI_get_slice
-mark CSI_put_slice
-end

View File

@ -0,0 +1,40 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
dsql.o parse.o all.o hsh.o err.o met.o mov.o ddl.o gen.o make.o pass1.o array.o
{ pretty.o }
{ the above pretty.o is based on gpre/pretty.c, but compiled into object }
{ in this directory, using the compile switches for dynamic library code }
-mergebss
-loadhigh
-bin dsqllib -exactcase
-mark isc_array_lookup_desc
-mark isc_array_lookup_bounds
-mark isc_array_set_desc
-mark isc_array_gen_sdl
-mark isc_array_get_slice
-mark isc_array_put_slice
-mark LDSQL_close
-mark LDSQL_declare
-mark LDSQL_open
-mark LDSQL_prepare
-mark LDSQL_execute
-mark LDSQL_execute_immediate
-mark LDSQL_fetch
-mark LDSQL_release
-mark LDSQL_sql_info
-end

View File

@ -0,0 +1,379 @@
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s):
* Tom Coleman tmcsys (AIX for C bind expects * comments)
*
* $Id: bind_gds.aix_ppc,v 1.1 2001-07-12 06:32:03 bellardo Exp $
*
gds__alloc
gds__attach_database
gds__blob_info
gds__blob_size
gds__cancel_blob
gds__cancel_events
gds__close
gds__close_blob
gds__commit_retaining
gds__commit_transaction
gds__compile_request
gds__compile_request2
gds__create_blob
gds__create_blob2
gds__create_database
gds__database_cleanup
gds__database_info
gds__ddl
gds__declare
gds__decode
gds__decode_date
gds__describe
gds__describe_bind
gds__detach_database
gds__disable_subsystem
gds__dsql_finish
gds__edit
gds__enable_subsystem
gds__encode
gds__encode_date
gds__event_block
gds__event_block_a
gds__event_block_s
gds__event_counts
gds__event_wait
gds__execute
gds__execute_immediate
gds__fetch
gds__fetch_a
gds__free
gds__ftof
gds__get_prefix
gds__get_segment
gds__get_slice
gds__interprete
gds__log
gds__msg_close
gds__msg_format
gds__msg_lookup
gds__msg_open
gds__msg_put
gds__open
gds__open_blob
gds__open_blob2
gds__parse_bpb
gds__prefix
gds__prefix_lock
gds__prefix_msg
gds__prepare
gds__prepare_transaction
gds__prepare_transaction2
gds__print_blr
gds__print_status
gds__put_error
gds__put_segment
gds__put_slice
gds__qtoq
gds__que_events
gds__receive
gds__reconnect_transaction
gds__register_cleanup
gds__release_request
gds__request_info
gds__rollback_transaction
gds__seek_blob
gds__send
gds__set_debug
gds__sqlcode
gds__sqlcode_s
gds__start_and_send
gds__start_multiple
gds__start_request
gds__start_transaction
gds__temp_file
gds__thread_enable
gds__thread_enter
gds__thread_exit
gds__thread_start
gds__to_sqlda
gds__transaction_cleanup
gds__transaction_info
gds__unregister_cleanup
gds__unwind_request
gds__vax_integer
gds__version
gds__vtof
gds__vtov
blob__display
blob__dump
blob__edit
blob__load
BLOB_close
BLOB_display
BLOB_dump
BLOB_edit
BLOB_get
BLOB_load
BLOB_open
BLOB_put
Bopen
perf_format
perf_get_info
perf_report
pyxis__compile_map
pyxis__compile_sub_map
pyxis__create_window
pyxis__delete
pyxis__delete_window
pyxis__drive_form
pyxis__drive_menu
pyxis__fetch
pyxis__get_entree
pyxis__initialize_menu
pyxis__insert
pyxis__load_form
pyxis__menu
pyxis__pop_window
pyxis__put_entree
pyxis__reset_form
pyxis__suspend_window
PYXIS_box
PYXIS_bugcheck
PYXIS_clone
PYXIS_compute_size
PYXIS_create_entree
PYXIS_create_object
PYXIS_define_forms_relation
PYXIS_delete_attribute
PYXIS_delete_form
PYXIS_delete_named_attribute
PYXIS_delete_object
PYXIS_dump
PYXIS_dump_length
PYXIS_edit
PYXIS_error
PYXIS_find_object
PYXIS_format_form
PYXIS_format_menu
PYXIS_get_attribute
PYXIS_get_attribute_value
PYXIS_get_char
PYXIS_get_data
PYXIS_get_keyname
PYXIS_get_string
PYXIS_get_updated
PYXIS_get_value
PYXIS_load
PYXIS_menu
PYXIS_move
PYXIS_navigate
PYXIS_pop_form
PYXIS_push_form
PYXIS_push_tag
PYXIS_put_attribute
PYXIS_put_desc
PYXIS_put_segment
PYXIS_reference
PYXIS_relation_fields
PYXIS_relation_form
PYXIS_replace_attribute
PYXIS_select
PYXIS_set_display_attribute
PYXIS_set_field_options
PYXIS_store_form
PYXIS_trace_in
PYXIS_trace_out
PYXIS_update
PYXIS_find_field
PYXIS_find_index
PYXIS_position
isc_attach_database
isc_blob_info
isc_cancel_blob
isc_cancel_events
isc_close
isc_close_blob
isc_commit_retaining
isc_commit_transaction
isc_compile_map
isc_compile_menu
isc_compile_request
isc_compile_request2
isc_compile_sub_map
isc_create_blob
isc_create_blob2
isc_create_database
isc_create_window
isc_database_cleanup
isc_database_info
isc_ddl
isc_declare
isc_decode_date
isc_delete_window
isc_describe
isc_describe_bind
isc_detach_database
isc_drive_form
isc_drive_menu
isc_drop_database
isc_dsql_finish
isc_dsql_release
isc_encode_date
isc_event_block
isc_event_counts
isc_expand_dpb
isc_wait_for_event
isc_execute
isc_execute_immediate
isc_fetch
isc_fetch_a
isc_form_delete
isc_form_fetch
isc_form_insert
isc_free
isc_ftof
isc_get_entree
isc_get_segment
isc_get_slice
isc_initialize_menu
isc_interprete
isc_load_form
gds__log_status
isc_menu
isc_open
isc_open_blob
isc_open_blob2
isc_pop_window
isc_prepare
isc_prepare_transaction
isc_prepare_transaction2
isc_print_blr
isc_print_status
isc_put_entree
isc_put_segment
isc_put_slice
isc_qtoq
isc_que_events
isc_receive
isc_reconnect_transaction
isc_release_request
isc_request_info
isc_reset_form
isc_rollback_transaction
isc_seek_blob
isc_send
isc_service_attach
isc_service_detach
isc_service_query
isc_service_start
isc_set_debug
isc_sqlcode
isc_sqlcode_s
isc_start_and_send
isc_start_multiple
isc_start_request
isc_start_transaction
isc_suspend_window
isc_to_sqlda
isc_transact_request
isc_transaction_info
isc_unwind_request
isc_version
isc_vtof
isc_vtov
isc_array_lookup_desc
isc_array_lookup_bounds
isc_array_set_desc
isc_array_gen_sdl
isc_array_get_slice
isc_array_put_slice
isc_print_sqlerror
isc_sql_interprete
isc_vax_integer
isc_baddress
isc_baddress_s
isc_dsql_allocate_statement
isc_dsql_alloc_statement2
isc_dsql_execute
isc_dsql_execute2
isc_dsql_execute_m
isc_dsql_execute2_m
isc_dsql_execute_immediate
isc_dsql_execute_immediate_m
isc_dsql_exec_immed2
isc_dsql_exec_immed2_m
isc_dsql_exec_immed3_m
isc_dsql_fetch
isc_dsql_fetch_a
isc_dsql_fetch_m
isc_dsql_free_statement
isc_dsql_insert
isc_dsql_insert_m
isc_dsql_prepare
isc_dsql_prepare_m
isc_dsql_set_cursor_name
isc_dsql_sql_info
isc_dsql_describe
isc_dsql_describe_bind
isc_embed_dsql_close
isc_embed_dsql_declare
isc_embed_dsql_execute
isc_embed_dsql_execute2
isc_embed_dsql_execute_immed
isc_embed_dsql_exec_immed2
isc_embed_dsql_fetch
isc_embed_dsql_fetch_a
isc_embed_dsql_length
isc_embed_dsql_insert
isc_embed_dsql_open
isc_embed_dsql_open2
isc_embed_dsql_prepare
isc_embed_dsql_release
isc_embed_dsql_describe
isc_embed_dsql_describe_bind
ISC_get_host
ISC_get_user
ISC_get_prefix
ISC_prefix
ISC_prefix_lock
ISC_prefix_msg
ISC_signal
ISC_signal_cancel
isc_blob_gen_bpb
isc_blob_lookup_desc
isc_blob_set_desc
isc_blob_default_desc
gds__map_blobs
BLOB_text_dump
BLOB_text_load
isc_modify_dpb
isc_reset_fpe
gds__validate_lib_path
isc_add_user
isc_delete_user
isc_modify_user
isc_rollback_retaining
isc_decode_sql_date
isc_decode_sql_time
isc_decode_timestamp
isc_encode_sql_date
isc_encode_sql_time
isc_encode_timestamp
CVT_move
isc_portable_integer
DLS_add_dir
isc_blob_display
isc_blob_dump
isc_blob_edit
isc_blob_load

View File

@ -0,0 +1,369 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
gds__alloc
gds__attach_database
gds__blob_info
gds__blob_size
gds__cancel_blob
gds__cancel_events
gds__close
gds__close_blob
gds__commit_retaining
gds__commit_transaction
gds__compile_request
gds__compile_request2
gds__create_blob
gds__create_blob2
gds__create_database
gds__database_cleanup
gds__database_info
gds__ddl
gds__declare
gds__decode
gds__decode_date
gds__describe
gds__describe_bind
gds__detach_database
gds__disable_subsystem
gds__dsql_finish
gds__edit
gds__enable_subsystem
gds__encode
gds__encode_date
gds__event_block
gds__event_block_a
gds__event_block_s
gds__event_counts
gds__event_wait
gds__execute
gds__execute_immediate
gds__fetch
gds__fetch_a
gds__free
gds__ftof
gds__get_prefix
gds__get_segment
gds__get_slice
gds__interprete
gds__log
gds__msg_close
gds__msg_format
gds__msg_lookup
gds__msg_open
gds__msg_put
gds__open
gds__open_blob
gds__open_blob2
gds__parse_bpb
gds__prefix
gds__prefix_lock
gds__prefix_msg
gds__prepare
gds__prepare_transaction
gds__prepare_transaction2
gds__print_blr
gds__print_status
gds__put_error
gds__put_segment
gds__put_slice
gds__qtoq
gds__que_events
gds__receive
gds__reconnect_transaction
gds__register_cleanup
gds__release_request
gds__request_info
gds__rollback_transaction
gds__seek_blob
gds__send
gds__set_debug
gds__sqlcode
gds__sqlcode_s
gds__start_and_send
gds__start_multiple
gds__start_request
gds__start_transaction
gds__temp_file
gds__thread_enable
gds__thread_enter
gds__thread_exit
gds__thread_start
gds__to_sqlda
gds__transaction_cleanup
gds__transaction_info
gds__unregister_cleanup
gds__unwind_request
gds__vax_integer
gds__version
gds__vtof
gds__vtov
blob__display
blob__dump
blob__edit
blob__load
BLOB_close
BLOB_display
BLOB_dump
BLOB_edit
BLOB_get
BLOB_load
BLOB_open
BLOB_put
Bopen
perf_format
perf_get_info
perf_report
pyxis__compile_map
pyxis__compile_sub_map
pyxis__create_window
pyxis__delete
pyxis__delete_window
pyxis__drive_form
pyxis__drive_menu
pyxis__fetch
pyxis__get_entree
pyxis__initialize_menu
pyxis__insert
pyxis__load_form
pyxis__menu
pyxis__pop_window
pyxis__put_entree
pyxis__reset_form
pyxis__suspend_window
PYXIS_box
PYXIS_bugcheck
PYXIS_clone
PYXIS_compute_size
PYXIS_create_entree
PYXIS_create_object
PYXIS_define_forms_relation
PYXIS_delete_attribute
PYXIS_delete_form
PYXIS_delete_named_attribute
PYXIS_delete_object
PYXIS_dump
PYXIS_dump_length
PYXIS_edit
PYXIS_error
PYXIS_find_object
PYXIS_format_form
PYXIS_format_menu
PYXIS_get_attribute
PYXIS_get_attribute_value
PYXIS_get_char
PYXIS_get_data
PYXIS_get_keyname
PYXIS_get_string
PYXIS_get_updated
PYXIS_get_value
PYXIS_load
PYXIS_menu
PYXIS_move
PYXIS_navigate
PYXIS_pop_form
PYXIS_push_form
PYXIS_push_tag
PYXIS_put_attribute
PYXIS_put_desc
PYXIS_put_segment
PYXIS_reference
PYXIS_relation_fields
PYXIS_relation_form
PYXIS_replace_attribute
PYXIS_select
PYXIS_set_display_attribute
PYXIS_set_field_options
PYXIS_store_form
PYXIS_trace_in
PYXIS_trace_out
PYXIS_update
PYXIS_find_field
PYXIS_find_index
PYXIS_position
isc_attach_database
isc_blob_info
isc_cancel_blob
isc_cancel_events
isc_close
isc_close_blob
isc_commit_retaining
isc_commit_transaction
isc_compile_map
isc_compile_menu
isc_compile_request
isc_compile_request2
isc_compile_sub_map
isc_create_blob
isc_create_blob2
isc_create_database
isc_create_window
isc_database_cleanup
isc_database_info
isc_ddl
isc_declare
isc_decode_date
isc_delete_window
isc_describe
isc_describe_bind
isc_detach_database
isc_drive_form
isc_drive_menu
isc_drop_database
isc_dsql_finish
isc_dsql_release
isc_encode_date
isc_event_block
isc_event_counts
isc_expand_dpb
isc_wait_for_event
isc_execute
isc_execute_immediate
isc_fetch
isc_fetch_a
isc_form_delete
isc_form_fetch
isc_form_insert
isc_free
isc_ftof
isc_get_entree
isc_get_segment
isc_get_slice
isc_initialize_menu
isc_interprete
isc_load_form
gds__log_status
isc_menu
isc_open
isc_open_blob
isc_open_blob2
isc_pop_window
isc_prepare
isc_prepare_transaction
isc_prepare_transaction2
isc_print_blr
isc_print_status
isc_put_entree
isc_put_segment
isc_put_slice
isc_qtoq
isc_que_events
isc_receive
isc_reconnect_transaction
isc_release_request
isc_request_info
isc_reset_form
isc_rollback_transaction
isc_seek_blob
isc_send
isc_service_attach
isc_service_detach
isc_service_query
isc_service_start
isc_set_debug
isc_sqlcode
isc_sqlcode_s
isc_start_and_send
isc_start_multiple
isc_start_request
isc_start_transaction
isc_suspend_window
isc_to_sqlda
isc_transact_request
isc_transaction_info
isc_unwind_request
isc_version
isc_vtof
isc_vtov
isc_array_lookup_desc
isc_array_lookup_bounds
isc_array_set_desc
isc_array_gen_sdl
isc_array_get_slice
isc_array_put_slice
isc_print_sqlerror
isc_sql_interprete
isc_vax_integer
isc_baddress
isc_baddress_s
isc_dsql_allocate_statement
isc_dsql_alloc_statement2
isc_dsql_execute
isc_dsql_execute2
isc_dsql_execute_m
isc_dsql_execute2_m
isc_dsql_execute_immediate
isc_dsql_execute_immediate_m
isc_dsql_exec_immed2
isc_dsql_exec_immed2_m
isc_dsql_exec_immed3_m
isc_dsql_fetch
isc_dsql_fetch_a
isc_dsql_fetch_m
isc_dsql_free_statement
isc_dsql_insert
isc_dsql_insert_m
isc_dsql_prepare
isc_dsql_prepare_m
isc_dsql_set_cursor_name
isc_dsql_sql_info
isc_dsql_describe
isc_dsql_describe_bind
isc_embed_dsql_close
isc_embed_dsql_declare
isc_embed_dsql_execute
isc_embed_dsql_execute2
isc_embed_dsql_execute_immed
isc_embed_dsql_exec_immed2
isc_embed_dsql_fetch
isc_embed_dsql_fetch_a
isc_embed_dsql_length
isc_embed_dsql_insert
isc_embed_dsql_open
isc_embed_dsql_open2
isc_embed_dsql_prepare
isc_embed_dsql_release
isc_embed_dsql_describe
isc_embed_dsql_describe_bind
ISC_get_host
ISC_get_user
ISC_get_prefix
ISC_prefix
ISC_prefix_lock
ISC_prefix_msg
ISC_signal
ISC_signal_cancel
isc_blob_gen_bpb
isc_blob_lookup_desc
isc_blob_set_desc
isc_blob_default_desc
gds__map_blobs
BLOB_text_dump
BLOB_text_load
isc_modify_dpb
isc_reset_fpe
gds__validate_lib_path
isc_add_user
isc_delete_user
isc_modify_user
isc_rollback_retaining
isc_decode_sql_date
isc_decode_sql_time
isc_decode_timestamp
isc_encode_sql_date
isc_encode_sql_time
isc_encode_timestamp
CVT_move

377
src/makefiles/bind_gds.hp Normal file
View File

@ -0,0 +1,377 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
+e gds__alloc
+e gds__attach_database
+e gds__blob_info
+e gds__blob_size
+e gds__cancel_blob
+e gds__cancel_events
+e gds__close
+e gds__close_blob
+e gds__commit_retaining
+e gds__commit_transaction
+e gds__compile_request
+e gds__compile_request2
+e gds__create_blob
+e gds__create_blob2
+e gds__create_database
+e gds__database_cleanup
+e gds__database_info
+e gds__ddl
+e gds__declare
+e gds__decode
+e gds__decode_date
+e gds__describe
+e gds__describe_bind
+e gds__detach_database
+e gds__disable_subsystem
+e gds__dsql_finish
+e gds__edit
+e gds__enable_subsystem
+e gds__encode
+e gds__encode_date
+e gds__event_block
+e gds__event_block_a
+e gds__event_counts
+e gds__event_wait
+e gds__execute
+e gds__execute_immediate
+e isc_expand_dpb
+e gds__fetch
+e gds__fetch_a
+e gds__free
+e gds__ftof
+e gds__get_prefix
+e gds__get_segment
+e gds__get_slice
+e gds__interprete
+e gds__log
+e gds__msg_close
+e gds__msg_format
+e gds__msg_lookup
+e gds__msg_open
+e gds__msg_put
+e gds__open
+e gds__open_blob
+e gds__open_blob2
+e gds__parse_bpb
+e gds__prefix
+e gds__prefix_lock
+e gds__prefix_msg
+e gds__prepare
+e gds__prepare_transaction
+e gds__prepare_transaction2
+e gds__print_blr
+e gds__print_status
+e gds__put_error
+e gds__put_segment
+e gds__put_slice
+e gds__qtoq
+e gds__que_events
+e gds__receive
+e gds__reconnect_transaction
+e gds__register_cleanup
+e gds__release_request
+e gds__request_info
+e gds__rollback_transaction
+e gds__seek_blob
+e gds__send
+e gds__set_debug
+e gds__sqlcode
+e gds__start_and_send
+e gds__start_multiple
+e gds__start_request
+e gds__start_transaction
+e gds__temp_file
+e gds__to_sqlda
+e gds__transaction_cleanup
+e gds__transaction_info
+e gds__unregister_cleanup
+e gds__unwind_request
+e gds__vax_integer
+e gds__version
+e gds__vtof
+e gds__vtov
+e blob__display
+e blob__dump
+e blob__edit
+e blob__load
+e BLOB_close
+e BLOB_display
+e BLOB_dump
+e BLOB_edit
+e BLOB_get
+e BLOB_load
+e BLOB_open
+e BLOB_put
+e Bopen
+e perf_format
+e perf_get_info
+e perf_report
+e pyxis__compile_map
+e pyxis__compile_sub_map
+e pyxis__create_window
+e pyxis__delete
+e pyxis__delete_window
+e pyxis__drive_form
+e pyxis__drive_menu
+e pyxis__fetch
+e pyxis__get_entree
+e pyxis__initialize_menu
+e pyxis__insert
+e pyxis__load_form
+e pyxis__menu
+e pyxis__pop_window
+e pyxis__put_entree
+e pyxis__reset_form
+e pyxis__suspend_window
+e PYXIS_box
+e PYXIS_bugcheck
+e PYXIS_clone
+e PYXIS_compute_size
+e PYXIS_create_entree
+e PYXIS_create_object
+e PYXIS_define_forms_relation
+e PYXIS_delete_attribute
+e PYXIS_delete_form
+e PYXIS_delete_named_attribute
+e PYXIS_delete_object
+e PYXIS_dump
+e PYXIS_dump_length
+e PYXIS_edit
+e PYXIS_error
+e PYXIS_find_object
+e PYXIS_format_form
+e PYXIS_format_menu
+e PYXIS_get_attribute
+e PYXIS_get_attribute_value
+e PYXIS_get_char
+e PYXIS_get_data
+e PYXIS_get_keyname
+e PYXIS_get_string
+e PYXIS_get_updated
+e PYXIS_get_value
+e PYXIS_load
+e PYXIS_menu
+e PYXIS_move
+e PYXIS_navigate
+e PYXIS_pop_form
+e PYXIS_push_form
+e PYXIS_push_tag
+e PYXIS_put_attribute
+e PYXIS_put_desc
+e PYXIS_put_segment
+e PYXIS_reference
+e PYXIS_relation_fields
+e PYXIS_relation_form
+e PYXIS_replace_attribute
+e PYXIS_select
+e PYXIS_set_display_attribute
+e PYXIS_set_field_options
+e PYXIS_store_form
+e PYXIS_trace_in
+e PYXIS_trace_out
+e PYXIS_update
+e PYXIS_find_field
+e PYXIS_find_index
+e PYXIS_position
+e isc_attach_database
+e isc_baddress
+e isc_blob_info
+e isc_cancel_blob
+e isc_cancel_events
+e isc_close
+e isc_close_blob
+e isc_commit_retaining
+e isc_commit_transaction
+e isc_compile_map
+e isc_compile_menu
+e isc_compile_request
+e isc_compile_request2
+e isc_compile_sub_map
+e isc_create_blob
+e isc_create_blob2
+e isc_create_database
+e isc_create_window
+e isc_database_cleanup
+e isc_database_info
+e isc_ddl
+e isc_declare
+e isc_decode_date
+e isc_delete_window
+e isc_describe
+e isc_describe_bind
+e isc_detach_database
+e isc_drive_form
+e isc_drive_menu
+e isc_drop_database
+e isc_dsql_finish
+e isc_dsql_release
+e isc_encode_date
+e isc_event_block
+e isc_event_counts
+e isc_wait_for_event
+e isc_execute
+e isc_execute_immediate
+e isc_fetch
+e isc_fetch_a
+e isc_form_delete
+e isc_form_fetch
+e isc_form_insert
+e isc_free
+e isc_ftof
+e isc_get_entree
+e isc_get_segment
+e isc_get_slice
+e isc_initialize_menu
+e isc_interprete
+e isc_load_form
+e gds__log_status
+e isc_menu
+e isc_open
+e isc_open_blob
+e isc_open_blob2
+e isc_pop_window
+e isc_prepare
+e isc_prepare_transaction
+e isc_prepare_transaction2
+e isc_print_blr
+e isc_print_status
+e isc_put_entree
+e isc_put_segment
+e isc_put_slice
+e isc_qtoq
+e isc_que_events
+e isc_receive
+e isc_reconnect_transaction
+e isc_release_request
+e isc_request_info
+e isc_reset_form
+e isc_rollback_transaction
+e isc_seek_blob
+e isc_send
+e isc_service_attach
+e isc_service_detach
+e isc_service_query
+e isc_service_start
+e isc_set_debug
+e isc_sqlcode
+e isc_start_and_send
+e isc_start_multiple
+e isc_start_request
+e isc_start_transaction
+e isc_suspend_window
+e isc_to_sqlda
+e isc_transact_request
+e isc_transaction_info
+e isc_unwind_request
+e isc_version
+e isc_vtof
+e isc_vtov
+e isc_array_lookup_desc
+e isc_array_lookup_bounds
+e isc_array_set_desc
+e isc_array_gen_sdl
+e isc_array_get_slice
+e isc_array_put_slice
+e isc_print_sqlerror
+e isc_sql_interprete
+e isc_vax_integer
+e isc_dsql_allocate_statement
+e isc_dsql_alloc_statement2
+e isc_dsql_execute
+e isc_dsql_execute2
+e isc_dsql_execute_m
+e isc_dsql_execute2_m
+e isc_dsql_execute_immediate
+e isc_dsql_exec_immed2
+e isc_dsql_execute_immediate_m
+e isc_dsql_exec_immed2_m
+e isc_dsql_exec_immed3_m
+e isc_dsql_fetch
+e isc_dsql_fetch2
+e isc_dsql_fetch_a
+e isc_dsql_fetch_m
+e isc_dsql_free_statement
+e isc_dsql_insert
+e isc_dsql_insert_m
+e isc_dsql_prepare
+e isc_dsql_prepare_m
+e isc_dsql_set_cursor_name
+e isc_dsql_sql_info
+e isc_dsql_describe
+e isc_dsql_describe_bind
+e isc_embed_dsql_close
+e isc_embed_dsql_declare
+e isc_embed_dsql_execute
+e isc_embed_dsql_execute2
+e isc_embed_dsql_execute_immed
+e isc_embed_dsql_exec_immed2
+e isc_embed_dsql_fetch
+e isc_embed_dsql_fetch_a
+e isc_embed_dsql_insert
+e isc_embed_dsql_open
+e isc_embed_dsql_open2
+e isc_embed_dsql_prepare
+e isc_embed_dsql_release
+e isc_embed_dsql_describe
+e isc_embed_dsql_describe_bind
+e errno
+e sys_errlist
+e sys_nerr
+e gds__thread_enable
+e gds__thread_enter
+e gds__thread_exit
+e gds__thread_start
+e ISC_get_host
+e ISC_get_user
+e ISC_get_prefix
+e ISC_prefix
+e ISC_prefix_lock
+e ISC_prefix_msg
+e ISC_signal
+e ISC_signal_cancel
+e isc_blob_gen_bpb
+e isc_blob_lookup_desc
+e isc_blob_set_desc
+e isc_blob_default_desc
+e gds__map_blobs
+e BLOB_text_dump
+e BLOB_text_load
+e isc_modify_dpb
+e isc_sqlcode_s
+e isc_blob_edit
+e isc_blob_display
+e isc_blob_load
+e isc_blob_dump
+e isc_embed_dsql_length
+e isc_baddress_s
+e isc_reset_fpe
+e DLS_add_dir
+e gds__validate_lib_path
+e isc_add_user
+e isc_delete_user
+e isc_modify_user
+e isc_portable_integer
+e isc_rollback_retaining
+e isc_decode_sql_date
+e isc_decode_sql_time
+e isc_decode_timestamp
+e isc_encode_sql_date
+e isc_encode_sql_time
+e isc_encode_timestamp
+e CVT_move

View File

@ -0,0 +1,279 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
LIBRARY gds32
DESCRIPTION 'InterBase DLL'
DATA READ WRITE
EXPORTS
gds__alloc @1
gds__attach_database @2
gds__blob_info @3
gds__blob_size @4
gds__cancel_blob @5
gds__cancel_events @6
gds__close @7
gds__close_blob @8
gds__commit_retaining @9
gds__commit_transaction @10
gds__compile_request @11
gds__compile_request2 @12
gds__create_blob @13
gds__create_blob2 @14
gds__create_database @15
gds__database_cleanup @16
gds__database_info @17
gds__ddl @18
gds__declare @19
gds__decode @20
gds__decode_date @21
gds__describe @22
gds__describe_bind @23
gds__detach_database @24
gds__disable_subsystem @25
gds__dsql_finish @26
gds__edit @27
gds__enable_subsystem @28
gds__encode @29
gds__encode_date @30
gds__event_block @31
gds__event_counts @32
gds__event_wait @33
gds__execute @34
gds__execute_immediate @35
gds__fetch @36
gds__free @37
gds__ftof @38
gds__get_segment @39
gds__get_slice @40
gds__interprete @41
gds__log @42
gds__msg_format @43
gds__msg_lookup @44
gds__msg_open @45
gds__msg_put @46
gds__open @47
gds__open_blob @48
gds__open_blob2 @49
gds__parse_bpb @50
gds__prefix @51
gds__prepare @52
gds__prepare_transaction @53
gds__prepare_transaction2 @54
gds__print_blr @55
gds__print_status @56
gds__put_error @57
gds__put_segment @58
gds__put_slice @59
gds__qtoq @60
gds__que_events @61
gds__receive @62
gds__reconnect_transaction @63
gds__register_cleanup @64
gds__release_request @65
gds__request_info @66
gds__rollback_transaction @67
gds__seek_blob @68
gds__send @69
gds__set_debug @70
gds__sqlcode @71
gds__start_and_send @72
gds__start_multiple @73
gds__start_request @74
gds__start_transaction @75
gds__thread_enable @76
gds__thread_enter @77
gds__thread_exit @78
gds__thread_start @79
gds__to_sqlda @80
gds__transaction_info @81
gds__unwind_request @82
gds__vax_integer @83
gds__version @84
gds__vtof @85
gds__vtov @86
blob__display @87
blob__dump @88
blob__edit @89
blob__load @90
BLOB_close @91
BLOB_display @92
BLOB_dump @93
BLOB_edit @94
BLOB_get @95
BLOB_load @96
BLOB_open @97
BLOB_put @98
Bopen @99
perf_format @100
perf_get_info @101
perf_report @102
isc_attach_database @103
isc_baddress @104
isc_blob_display @105
isc_blob_dump @106
isc_blob_edit @107
isc_blob_info @108
isc_blob_load @109
isc_cancel_blob @110
isc_cancel_events @111
isc_close @112
isc_close_blob @113
isc_commit_retaining @114
isc_commit_transaction @115
isc_compile_request @116
isc_compile_request2 @117
isc_create_blob @118
isc_create_blob2 @119
isc_create_database @120
isc_database_cleanup @121
isc_database_info @122
isc_ddl @123
isc_declare @124
isc_decode_date @125
isc_describe @126
isc_describe_bind @127
isc_detach_database @128
isc_encode_date @129
isc_event_block @130
isc_event_counts @131
isc_transact_request @132
isc_execute @133
isc_execute_immediate @134
isc_expand_dpb @135
isc_fetch @136
isc_fetch_a @137
isc_ftof @138
isc_get_segment @139
isc_get_slice @140
isc_interprete @141
gds__log_status @142
isc_open @143
isc_open_blob @144
isc_open_blob2 @145
isc_prepare @146
isc_prepare_transaction @147
isc_prepare_transaction2 @148
isc_print_blr @149
isc_print_sqlerror @150
isc_print_status @151
isc_put_segment @152
isc_put_slice @153
isc_qtoq @154
isc_que_events @155
isc_receive @156
isc_reconnect_transaction @157
isc_release_request @158
isc_request_info @159
isc_rollback_transaction @160
isc_seek_blob @161
isc_send @162
isc_set_debug @163
isc_sql_interprete @164
isc_sqlcode @165
isc_start_and_send @166
isc_start_multiple @167
isc_start_request @168
isc_start_transaction @169
isc_to_sqlda @170
isc_transaction_info @171
isc_unwind_request @172
isc_vax_integer @173
isc_version @174
isc_vtof @175
isc_vtov @176
isc_wait_for_event @177
isc_dsql_allocate_statement @178
isc_dsql_alloc_statement2 @179
isc_dsql_describe @180
isc_dsql_describe_bind @181
isc_dsql_execute @182
isc_dsql_execute2 @183
isc_dsql_execute_m @184
isc_dsql_execute2_m @185
isc_dsql_execute_immediate @186
isc_dsql_exec_immed2 @187
isc_dsql_execute_immediate_m @188
isc_dsql_exec_immed2_m @189
isc_dsql_fetch @190
isc_dsql_fetch_a @191
isc_dsql_fetch_m @192
isc_dsql_finish @193
isc_dsql_free_statement @194
isc_dsql_insert @195
isc_dsql_insert_m @196
isc_dsql_prepare @197
isc_dsql_prepare_m @198
isc_dsql_release @199
isc_dsql_set_cursor_name @200
isc_dsql_sql_info @201
isc_embed_dsql_close @202
isc_embed_dsql_declare @203
isc_embed_dsql_describe @204
isc_embed_dsql_describe_bind @205
isc_embed_dsql_execute @206
isc_embed_dsql_execute2 @207
isc_embed_dsql_execute_immed @208
isc_embed_dsql_exec_immed2 @209
isc_embed_dsql_fetch @210
isc_embed_dsql_fetch_a @211
isc_embed_dsql_insert @212
isc_embed_dsql_open @213
isc_embed_dsql_open2 @214
isc_embed_dsql_prepare @215
isc_embed_dsql_release @216
isc_array_gen_sdl @217
isc_array_get_slice @218
isc_array_lookup_bounds @219
isc_array_lookup_desc @220
isc_array_put_slice @221
isc_array_set_desc @222
gds__msg_close @223
gds__unregister_cleanup @224
isc_attach_service @225
isc_detach_service @226
isc_query_service @227
isc_drop_database @228
isc_dsql_exec_immed3_m @229
gds__temp_file @230
ISC_signal @231
ISC_signal_cancel @232
ISC_kill @233
gds__transaction_cleanup @234
isc_blob_gen_bpb @235
isc_blob_lookup_desc @236
isc_blob_set_desc @237
isc_blob_default_desc @238
gds__map_blobs @239
isc_free @240
BLOB_text_dump @241
BLOB_text_load @242
isc_modify_dpb @243
isc_dsql_fetch2 @244
isc_reset_fpe @245
gds__prefix_lock @246
ISC_get_host @247
ISC_get_user @248
gds__prefix_msg @249
ISC_get_prefix @250
ISC_prefix @251
ISC_prefix_lock @252
ISC_prefix_msg @253
gds__get_prefix @254
gds__validate_lib_path @255

View File

@ -0,0 +1,69 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
all.o blb.o blf.o btr.o cch.o cmp.o cvt.o dpm.o enc.o err.o event.o evl.o exe.o
ext.o filters.o fun.o gds.o grant.o idx.o inf.o ini.o intl.o
isc.o isc_file.o jio.o jrd.o jrn.o lck.o log.o met.o mov.o
nav.o node.o opt.o pag.o par.o perf.o pwd.o rse.o sbm.o
scl.o sdl.o sdw.o sort.o sqz.o sym.o tra.o apollo.o val.o vio.o
dyn.o dyn_def.o dyn_del.o dyn_mod.o flu.o functions.o nodebug.o
source/dsql/all.o source/dsql/ddl.o source/dsql/err.o source/dsql/gen.o
source/dsql/hsh.o source/dsql/make.o source/dsql/met.o source/dsql/mov.o
source/dsql/parse.o source/dsql/pass1.o
-mergebss
-binary bridge5 -exactcase
-mark jrd5_attach_database
-mark jrd5_blob_info
-mark jrd5_cancel_blob
-mark jrd5_cancel_events
-mark jrd5_close_blob
-mark jrd5_commit_retaining
-mark jrd5_commit_transaction
-mark jrd5_compile_request
-mark jrd5_create_blob2
-mark jrd5_create_database
-mark jrd5_database_info
-mark jrd5_detach_database
-mark jrd5_get_segment
-mark jrd5_get_slice
-mark jrd5_open_blob2
-mark jrd5_prepare_transaction
-mark jrd5_put_segment
-mark jrd5_put_slice
-mark jrd5_que_events
-mark jrd5_receive
-mark jrd5_reconnect_transaction
-mark jrd5_release_request
-mark jrd5_request_info
-mark jrd5_rollback_transaction
-mark jrd5_seek_blob
-mark jrd5_send
-mark jrd5_start_and_send
-mark jrd5_start_multiple
-mark jrd5_start_request
-mark jrd5_start_transaction
-mark jrd5_transaction_info
-mark jrd5_unwind_request
-mark DYN_ddl
-mark LDSQL_allocate_statement
-mark LDSQL_execute
-mark LDSQL_execute_immediate
-mark LDSQL_fetch
-mark LDSQL_free_statement
-mark LDSQL_prepare
-mark LDSQL_set_cursor
-mark LDSQL_sql_info
-end

View File

@ -0,0 +1,57 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
jrd5_attach_database
jrd5_blob_info
jrd5_cancel_blob
jrd5_cancel_events
jrd5_close_blob
jrd5_commit_retaining
jrd5_commit_transaction
jrd5_compile_request
jrd5_create_blob2
jrd5_create_database
jrd5_database_info
jrd5_detach_database
jrd5_get_segment
jrd5_get_slice
jrd5_open_blob2
jrd5_prepare_transaction
jrd5_put_segment
jrd5_put_slice
jrd5_que_events
jrd5_receive
jrd5_reconnect_transaction
jrd5_release_request
jrd5_request_info
jrd5_rollback_transaction
jrd5_seek_blob
jrd5_send
jrd5_start_and_send
jrd5_start_multiple
jrd5_start_request
jrd5_start_transaction
jrd5_transaction_info
jrd5_unwind_request
DYN_ddl
LDSQL_allocate_statement
LDSQL_execute
LDSQL_execute_immediate
LDSQL_fetch
LDSQL_free_statement
LDSQL_prepare
LDSQL_set_cursor
LDSQL_sql_info

View File

@ -0,0 +1,60 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
+e jrd5_attach_database
+e jrd5_blob_info
+e jrd5_cancel_blob
+e jrd5_cancel_events
+e jrd5_close_blob
+e jrd5_commit_retaining
+e jrd5_commit_transaction
+e jrd5_compile_request
+e jrd5_create_blob2
+e jrd5_create_database
+e jrd5_database_info
+e jrd5_detach_database
+e jrd5_get_segment
+e jrd5_get_slice
+e jrd5_open_blob2
+e jrd5_prepare_transaction
+e jrd5_put_segment
+e jrd5_put_slice
+e jrd5_que_events
+e jrd5_receive
+e jrd5_reconnect_transaction
+e jrd5_release_request
+e jrd5_request_info
+e jrd5_rollback_transaction
+e jrd5_seek_blob
+e jrd5_send
+e jrd5_start_and_send
+e jrd5_start_multiple
+e jrd5_start_request
+e jrd5_start_transaction
+e jrd5_transaction_info
+e jrd5_unwind_request
+e DYN_ddl
+e LDSQL_allocate_statement
+e LDSQL_execute
+e LDSQL_execute_immediate
+e LDSQL_fetch
+e LDSQL_free_statement
+e LDSQL_prepare
+e LDSQL_set_cursor
+e LDSQL_sql_info
+e errno
+e sys_errlist
+e sys_nerr

View File

@ -0,0 +1,127 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
ail.obj+
alt.obj+
all.obj+
bkm.obj+
blb.obj+
blf.obj+
btr.obj+
builtin.obj+
cch.obj+
cmp.obj+
cvt.obj+
cvt2.obj+
dfw.obj+
dpm.obj+
dsc.obj+
dyn.obj+
dyn_def.obj+
dyn_del.obj+
dyn_mod.obj+
enc.obj+
err.obj+
iberr.obj+
event.obj+
evl.obj+
exe.obj+
ext.obj+
filters.obj+
flu.obj+
fun.obj+
functions.obj+
gds.obj+
grant.obj+
idx.obj+
inf.obj+
ini.obj+
intl.obj+
inuse.obj+
isc.obj+
isc_file.obj+
isc_ipc.obj+
isc_sync.obj+
jrd.obj+
jrn.obj+
lck.obj+
license.obj+
llio.obj+
log.obj+
met.obj+
misc.obj+
mov.obj+
nav.obj+
node.obj+
old.obj+
opt.obj+
pag.obj+
par.obj+
pcmet.obj+
perf.obj+
pwd.obj+
os2.obj+
rec.obj+
rlck.obj+
rng.obj+
rse.obj+
sbm.obj+
sch.obj+
scl.obj+
sdl.obj+
sdw.obj+
shut.obj+
sort.obj+
sqz.obj+
svc.obj+
sym.obj+
thd.obj+
tpc.obj+
tra.obj+
utl.obj+
val.obj+
vio.obj+
why.obj+
nodebug.obj+
..\dsql\alld.obj+
..\dsql\array.obj+
..\dsql\blob.obj+
..\dsql\ddl.obj+
..\dsql\dsql.obj+
..\dsql\errd.obj+
..\dsql\gen.obj+
..\dsql\hsh.obj+
..\dsql\make.obj+
..\dsql\metd.obj+
..\dsql\movd.obj+
..\dsql\parse.obj+
..\dsql\pass1.obj+
..\dsql\preparse.obj+
..\dsql\user_dsql.obj+
..\dsql\utld.obj+
..\lock\lock.obj+
..\remote\interface.obj+
..\remote\allr.obj+
..\remote\inet.obj+
..\remote\merge.obj+
..\remote\parser.obj+
..\remote\protocol.obj+
..\remote\remote.obj+
..\remote\xdr.obj+
..\wal\wal.obj+
..\wal\walc.obj+
..\wal\walf.obj+
..\wal\walr.obj

View File

@ -0,0 +1,128 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
ail.obj+
alt.obj+
all.obj+
bkm.obj+
blb.obj+
blf.obj+
btr.obj+
builtin.obj+
cch.obj+
cmp.obj+
cvt.obj+
cvt2.obj+
dfw.obj+
dpm.obj+
dsc.obj+
dyn.obj+
dyn_def.obj+
dyn_del.obj+
dyn_mod.obj+
enc.obj+
err.obj+
iberr.obj+
event.obj+
evl.obj+
exe.obj+
ext.obj+
filters.obj+
flu.obj+
fun.obj+
functions.obj+
gds.obj+
grant.obj+
idx.obj+
inf.obj+
ini.obj+
intl.obj+
inuse.obj+
isc.obj+
isc_file.obj+
isc_ipc.obj+
isc_sync.obj+
jrd.obj+
jrn.obj+
lck.obj+
license.obj+
llio.obj+
log.obj+
met.obj+
misc.obj+
mov.obj+
nav.obj+
node.obj+
old.obj+
opt.obj+
pag.obj+
par.obj+
pcmet.obj+
perf.obj+
pwd.obj+
rec.obj+
rlck.obj+
rng.obj+
rse.obj+
sbm.obj+
sch.obj+
scl.obj+
sdl.obj+
sdw.obj+
shut.obj+
sort.obj+
sqz.obj+
svc.obj+
sym.obj+
thd.obj+
tpc.obj+
tra.obj+
utl.obj+
val.obj+
vio.obj+
why.obj+
winnt.obj+
nodebug.obj+
..\dsql\alld.obj+
..\dsql\array.obj+
..\dsql\blob.obj+
..\dsql\ddl.obj+
..\dsql\dsql.obj+
..\dsql\errd.obj+
..\dsql\gen.obj+
..\dsql\hsh.obj+
..\dsql\make.obj+
..\dsql\metd.obj+
..\dsql\movd.obj+
..\dsql\parse.obj+
..\dsql\pass1.obj+
..\dsql\preparse.obj+
..\dsql\user_dsql.obj+
..\dsql\utld.obj+
..\lock\lock.obj+
..\remote\interface.obj+
..\remote\allr.obj+
..\remote\inet.obj+
..\remote\merge.obj+
..\remote\parser.obj+
..\remote\protocol.obj+
..\remote\remote.obj+
..\remote\wnet.obj+
..\remote\xdr.obj+
..\wal\wal.obj+
..\wal\walc.obj+
..\wal\walf.obj+
..\wal\walr.obj

547
src/makefiles/bind_gds_s.im Normal file
View File

@ -0,0 +1,547 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
# $Id: bind_gds_s.im,v 1.1 2001-07-12 06:32:03 bellardo Exp $
#ident "InterBase V4.0 shared library"
#address .text 0x03800000
#address .data 0x03c00000
#target /usr/lib/libgds_s
#branch
gds__alloc 1
gds__attach_database 2
gds__blob_info 3
gds__blob_size 4
gds__cancel_blob 5
gds__cancel_events 6
gds__close 7
gds__close_blob 8
gds__commit_retaining 9
gds__commit_transaction 10
gds__compile_request 11
gds__compile_request2 12
gds__create_blob 13
gds__create_blob2 14
gds__create_database 15
gds__database_info 16
gds__ddl 17
gds__declare 18
gds__decode 19
gds__decode_date 20
gds__describe 21
gds__describe_bind 22
gds__detach_database 23
gds__dsql_finish 24
gds__edit 25
gds__enable_subsystem 26
gds__encode 27
gds__encode_date 28
gds__event_block 29
gds__event_counts 30
gds__event_wait 31
gds__execute 32
gds__execute_immediate 33
gds__fetch 34
gds__free 35
gds__ftof 36
gds__get_segment 37
gds__get_slice 38
gds__interprete 39
gds__log 40
gds__msg_format 41
gds__msg_lookup 42
gds__msg_open 43
gds__msg_put 44
gds__open 45
gds__open_blob 46
gds__open_blob2 47
gds__parse_bpb 48
gds__prefix 49
gds__prepare 50
gds__prepare_transaction 51
gds__prepare_transaction2 52
gds__print_blr 53
gds__print_status 54
gds__put_error 55
gds__put_segment 56
gds__put_slice 57
gds__qtoq 58
gds__que_events 59
gds__receive 60
gds__reconnect_transaction 61
gds__register_cleanup 62
gds__release_request 63
gds__request_info 64
gds__rollback_transaction 65
gds__send 66
gds__set_debug 67
gds__sqlcode 68
gds__start_and_send 69
gds__start_multiple 70
gds__start_request 71
gds__start_transaction 72
gds__temp_file 73
gds__thread_enable 74
gds__thread_enter 75
gds__thread_exit 76
gds__thread_start 77
gds__to_sqlda 78
gds__transaction_info 79
gds__unwind_request 80
gds__vax_integer 81
gds__version 82
gds__vtof 83
gds__vtov 84
blob__display 85
blob__dump 86
blob__edit 87
blob__load 88
BLOB_close 89
BLOB_display 90
BLOB_dump 91
BLOB_edit 92
BLOB_get 93
BLOB_load 94
BLOB_open 95
BLOB_put 96
Bopen 97
perf_format 98
perf_get_info 99
perf_report 100
isc_attach_database 101
isc_blob_info 102
isc_cancel_blob 103
isc_cancel_events 104
isc_close 105
isc_close_blob 106
isc_commit_retaining 107
isc_commit_transaction 108
isc_compile_request 109
isc_compile_request2 110
isc_create_blob 111
isc_create_blob2 112
isc_create_database 113
isc_database_info 114
isc_ddl 115
isc_declare 116
isc_decode_date 117
isc_describe 118
isc_describe_bind 119
isc_detach_database 120
isc_dsql_finish 121
isc_event_counts 122
isc_wait_for_event 123
isc_execute 124
isc_execute_immediate 125
isc_fetch 126
isc_fetch_a 127
isc_ftof 128
isc_get_segment 129
isc_get_slice 130
isc_interprete 131
isc_open 132
isc_open_blob 133
isc_open_blob2 134
isc_prepare 135
isc_prepare_transaction 136
isc_prepare_transaction2 137
isc_print_status 138
isc_put_segment 139
isc_put_slice 140
isc_qtoq 141
isc_que_events 142
isc_receive 143
isc_reconnect_transaction 144
isc_release_request 145
isc_request_info 146
isc_rollback_transaction 147
isc_send 148
isc_sqlcode 149
isc_start_and_send 150
isc_start_multiple 151
isc_start_request 152
isc_to_sqlda 153
isc_transaction_info 154
isc_unwind_request 155
isc_version 156
isc_vtof 157
isc_vtov 158
isc_array_lookup_desc 159
isc_array_lookup_bounds 160
isc_array_set_desc 161
isc_array_gen_sdl 162
isc_array_get_slice 163
isc_array_put_slice 164
isc_event_block 165
gds__seek_blob 166
isc_seek_blob 167
isc_encode_date 168
isc_print_blr 169
gds__database_cleanup 170
isc_database_cleanup 171
isc_set_debug 172
isc_print_sqlerror 173
isc_sql_interprete 174
isc_dsql_release 175
isc_start_transaction 176
isc_vax_integer 177
isc_dsql_execute 178
isc_dsql_execute_m 179
isc_dsql_execute_immediate 180
isc_dsql_execute_immediate_m 181
isc_dsql_fetch 182
isc_dsql_fetch_a 183
isc_dsql_fetch_m 184
isc_dsql_free_statement 185
isc_dsql_prepare 186
isc_dsql_prepare_m 187
isc_dsql_set_cursor_name 188
isc_dsql_sql_info 189
isc_dsql_allocate_statement 190
isc_dsql_describe 191
isc_dsql_describe_bind 192
isc_embed_dsql_close 193
isc_embed_dsql_declare 194
isc_embed_dsql_execute 195
isc_embed_dsql_execute_immed 196
isc_embed_dsql_fetch 197
isc_embed_dsql_fetch_a 198
isc_embed_dsql_open 199
isc_embed_dsql_prepare 200
isc_embed_dsql_release 201
isc_embed_dsql_describe 202
isc_embed_dsql_describe_bind 203
isc_baddress 204
isc_blob_display 205
isc_blob_dump 206
isc_blob_edit 207
isc_blob_load 208
isc_dsql_alloc_statement2 209
isc_expand_dpb 210
gds__log_status 211
isc_dsql_insert 212
isc_dsql_insert_m 213
isc_embed_dsql_insert 214
isc_transact_request 215
gds__disable_subsystem 216
gds__msg_close 217
isc_dsql_execute2 218
isc_dsql_execute2_m 219
isc_dsql_exec_immed2 220
isc_dsql_exec_immed2_m 221
isc_embed_dsql_execute2 222
isc_embed_dsql_exec_immed2 223
isc_embed_dsql_open2 224
gds__unregister_cleanup 225
isc_attach_service 226
isc_detach_service 227
isc_query_service 228
isc_drop_database 229
isc_dsql_exec_immed3_m 230
gds__transaction_cleanup 231
isc_blob_gen_bpb 232
isc_blob_lookup_desc 233
isc_blob_set_desc 234
isc_blob_default_desc 235
gds__map_blobs 236
ISC_signal 237
ISC_signal_cancel 238
isc_free 239
BLOB_text_dump 240
BLOB_text_load 241
isc_modify_dpb 242
isc_dsql_fetch2 243
isc_reset_fpe 244
#objects
source/jrd/shrinit.bin
source/jrd/all.bin
source/jrd/alt.bin
source/jrd/blb.bin
source/jrd/blf.bin
source/jrd/btr.bin
source/jrd/cch.bin
source/jrd/cmp.bin
source/jrd/cvt.bin
source/jrd/dpm.bin
source/jrd/dyn.bin
source/jrd/dyn_def.bin
source/jrd/dyn_del.bin
source/jrd/dyn_mod.bin
source/jrd/enc.bin
source/jrd/err.bin
source/jrd/event.bin
source/jrd/evl.bin
source/jrd/exe.bin
source/jrd/ext.bin
source/jrd/filters.bin
source/jrd/flu.bin
source/jrd/fun.bin
source/jrd/gds.bin
source/jrd/iberr.bin
source/jrd/idx.bin
source/jrd/inf.bin
source/jrd/ini.bin
source/jrd/intl.bin
source/jrd/isc.bin
source/jrd/isc_file.bin
source/jrd/jrd.bin
source/jrd/jrn.bin
source/jrd/lck.bin
source/jrd/log.bin
source/jrd/met.bin
source/jrd/mov.bin
source/jrd/nav.bin
source/jrd/node.bin
source/jrd/nodebug.bin
source/jrd/opt.bin
source/jrd/pag.bin
source/jrd/par.bin
source/jrd/perf.bin
source/jrd/pwd.bin
source/jrd/rse.bin
source/jrd/sbm.bin
source/jrd/sch.bin
source/jrd/scl.bin
source/jrd/sdl.bin
source/jrd/sdw.bin
source/jrd/sort.bin
source/jrd/sqz.bin
source/jrd/sym.bin
source/jrd/tra.bin
source/jrd/utl.bin
source/jrd/val.bin
source/jrd/vio.bin
source/jrd/why.bin
source/jrd/unix.bin
source/dsql/alld.bin
source/dsql/errd.bin
source/dsql/metd.bin
source/dsql/movd.bin
source/dsql/parse.bin
source/dsql/ddl.bin
source/dsql/dsql.bin
source/dsql/gen.bin
source/dsql/hsh.bin
source/dsql/make.bin
source/dsql/pass1.bin
source/dsql/array.bin
source/dsql/user_dsql.bin
source/dsql/utld.bin
source/lock/lock.bin
source/remote/interface.bin
source/remote/allr.bin
source/remote/inet.bin
source/remote/merge.bin
source/remote/parser.bin
source/remote/protocol.bin
source/remote/remote.bin
source/jrd/grant.bin
source/jrd/head5.bin
source/jrd/allp.bin
source/jrd/misc.bin
source/jrd/builtin.bin
source/intl/ld.bin
source/intl/cv_narrow.bin
source/intl/cs_narrow.bin
source/intl/lc_ascii.bin
source/intl/lc_latin1.bin
source/intl/lc_dos.bin
source/intl/cs_unicode.bin
source/intl/lc_unicode.bin
source/intl/cs_jis.bin
source/intl/cv_jis.bin
source/intl/lc_jis.bin
source/intl/ld2.bin
source/wal/wal.bin
source/wal/walc.bin
source/wal/walf.bin
source/wal/walr.bin
source/jrd/ail.bin
source/jrd/old.bin
source/jrd/rec.bin
source/jrd/thd.bin
source/jrd/dfw.bin
source/jrd/rlck.bin
source/jrd/llio.bin
source/jrd/cvt2.bin
source/jrd/dsc.bin
source/jrd/pcmet.bin
source/jrd/rng.bin
source/jrd/tpc.bin
source/intl/cs_utffss.bin
source/dsql/preparse.bin
source/jrd/shut.bin
source/jrd/svc.bin
source/jrd/bkm.bin
source/jrd/inuse.bin
source/dsql/blob.bin
source/jrd/isc_ipc.bin
source/jrd/isc_sync.bin
# source/jrd/qatest.bin
source/intl/lc_narrow.bin
#init source/jrd/shrinit.bin
_libgds_setjmp setjmp
_libgds_sprintf sprintf
_libgds_strlen strlen
_libgds_strcmp strcmp
_libgds_strcpy strcpy
_libgds_exit exit
_libgds_longjmp longjmp
_libgds__iob _iob
_libgds_abort abort
_libgds_memset memset
_libgds_getpid getpid
_libgds_memcpy memcpy
_libgds_shmdt shmdt
_libgds_memcmp memcmp
_libgds_fprintf fprintf
_libgds_printf printf
_libgds_errno errno
_libgds_fopen fopen
_libgds_fclose fclose
_libgds__filbuf _filbuf
_libgds_rewind rewind
_libgds_fseek fseek
_libgds_ftell ftell
_libgds__flsbuf _flsbuf
_libgds_sys_errlist sys_errlist
_libgds_sys_nerr sys_nerr
_libgds_malloc malloc
_libgds_gettimeofday gettimeofday
_libgds_ctime ctime
_libgds_getenv getenv
_libgds_lseek lseek
_libgds_read read
_libgds_open open
_libgds_strcat strcat
_libgds_fputs fputs
_libgds_fputc fputc
_libgds_mktemp mktemp
_libgds_unlink unlink
_libgds_sigvec sigvec
_libgds_semctl semctl
_libgds_semop semop
_libgds_select select
_libgds_strncpy strncpy
_libgds_strchr strchr
_libgds_getpwnam getpwnam
_libgds_geteuid geteuid
_libgds_getpwuid getpwuid
_libgds_getwd getwd
_libgds_readlink readlink
_libgds_gethostname gethostname
_libgds_endpwent endpwent
_libgds_getegid getegid
_libgds_kill kill
_libgds_pipe pipe
_libgds_fork fork
_libgds_execl execl
_libgds_write write
_libgds_umask umask
_libgds_lockf lockf
_libgds_shmget shmget
_libgds_shmat shmat
_libgds_shmctl shmctl
_libgds_ftok ftok
_libgds_close close
_libgds_fscanf fscanf
_libgds_semget semget
_libgds_strncmp strncmp
_libgds_send send
_libgds_socket socket
_libgds_connect connect
_libgds_recv recv
_libgds_fflush fflush
_libgds_time time
_libgds_localtime localtime
_libgds_sleep sleep
_libgds_gethostid gethostid
_libgds_times times
_libgds_stat stat
_libgds_system system
_libgds_fgetc fgetc
_libgds_fstat fstat
_libgds_getuid getuid
_libgds_fgets fgets
_libgds_atoi atoi
_libgds_alarm alarm
_libgds_signal signal
_libgds_getservbyname getservbyname
_libgds_gethostbyname gethostbyname
_libgds_setsockopt setsockopt
_libgds_bind bind
_libgds_listen listen
_libgds_accept accept
_libgds_setreuid setreuid
_libgds_setregid setregid
_libgds_chdir chdir
_libgds_ioctl ioctl
_libgds_getsockname getsockname
_libgds_getpeername getpeername
_libgds_gethostbyaddr gethostbyaddr
_libgds_sscanf sscanf
_libgds_xdrmem_create xdrmem_create
_libgds_innetgr innetgr
_libgds_xdr_enum xdr_enum
_libgds_xdr_short xdr_short
_libgds_xdr_u_short xdr_u_short
_libgds_xdr_long xdr_long
_libgds_xdr_opaque xdr_opaque
_libgds_xdr_string xdr_string
_libgds_FUNCTIONS_entrypoint FUNCTIONS_entrypoint
_libgds_fcntl fcntl
_libgds_fwrite fwrite
_libgds_getppid getppid
_libgds_initgroups initgroups
_libgds_setitimer setitimer
_libgds_sigset sigset
_libgds_getgroups getgroups
_libgds_bzero bzero
_libgds_shutdown shutdown
_libgds_crypt crypt
_libgds_setmntent setmntent
_libgds_getmntent getmntent
_libgds_endmntent endmntent
_libgds_pause pause
_libgds_xdr_float xdr_float
_libgds_xdr_double xdr_double
_libgds_sbrk sbrk
_libgds_environ environ
_libgds_fdopen fdopen
_libgds_dup dup
_libgds_execle execle
_libgds_strrchr strrchr
_libgds_fsync fsync
_libgds_wait wait
_libgds__exit _exit
_libgds_atol atol
_libgds_execvp execvp
_libgds_nice nice
_libgds_putenv putenv
### _libgds_xdr_free xdr_free
_libgds_xdr_wrapstring xdr_wrapstring
_libgds_vsprintf vsprintf
_libgds_h_errno h_errno
_libgds_chmod chmod
_libgds_ungetc ungetc
_libgds_vfprintf vfprintf
_libgds__assert _assert
_libgds_access access
## _libgds_sigsuspend sigsuspend
## _libgds_sigprocmask sigprocmask
## _libgds_sigaddset sigaddset
_libgds_sigblock sigblock
_libgds_sigsetmask sigsetmask
_libgds_sigpause sigpause

View File

@ -0,0 +1,551 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
# $Id: bind_gds_s.sco,v 1.1 2001-07-12 06:32:03 bellardo Exp $
#ident "InterBase V4.0 shared library"
#address .text 0xa4800000
#address .data 0xa4c00000
#target /shlib/libgds_s
#branch
gds__alloc 1
gds__attach_database 2
gds__blob_info 3
gds__blob_size 4
gds__cancel_blob 5
gds__cancel_events 6
gds__close 7
gds__close_blob 8
gds__commit_retaining 9
gds__commit_transaction 10
gds__compile_request 11
gds__compile_request2 12
gds__create_blob 13
gds__create_blob2 14
gds__create_database 15
gds__database_info 16
gds__ddl 17
gds__declare 18
gds__decode 19
gds__decode_date 20
gds__describe 21
gds__describe_bind 22
gds__detach_database 23
gds__dsql_finish 24
gds__edit 25
gds__enable_subsystem 26
gds__encode 27
gds__encode_date 28
gds__event_block 29
gds__event_counts 30
gds__event_wait 31
gds__execute 32
gds__execute_immediate 33
gds__fetch 34
gds__free 35
gds__ftof 36
gds__get_segment 37
gds__get_slice 38
gds__interprete 39
gds__log 40
gds__msg_format 41
gds__msg_lookup 42
gds__msg_open 43
gds__msg_put 44
gds__open 45
gds__open_blob 46
gds__open_blob2 47
gds__parse_bpb 48
gds__prefix 49
gds__prepare 50
gds__prepare_transaction 51
gds__prepare_transaction2 52
gds__print_blr 53
gds__print_status 54
gds__put_error 55
gds__put_segment 56
gds__put_slice 57
gds__qtoq 58
gds__que_events 59
gds__receive 60
gds__reconnect_transaction 61
gds__register_cleanup 62
gds__release_request 63
gds__request_info 64
gds__rollback_transaction 65
gds__send 66
gds__set_debug 67
gds__sqlcode 68
gds__start_and_send 69
gds__start_multiple 70
gds__start_request 71
gds__start_transaction 72
gds__temp_file 73
gds__thread_enable 74
gds__thread_enter 75
gds__thread_exit 76
gds__thread_start 77
gds__to_sqlda 78
gds__transaction_info 79
gds__unwind_request 80
gds__vax_integer 81
gds__version 82
gds__vtof 83
gds__vtov 84
blob__display 85
blob__dump 86
blob__edit 87
blob__load 88
BLOB_close 89
BLOB_display 90
BLOB_dump 91
BLOB_edit 92
BLOB_get 93
BLOB_load 94
BLOB_open 95
BLOB_put 96
Bopen 97
perf_format 98
perf_get_info 99
perf_report 100
isc_attach_database 101
isc_blob_info 102
isc_cancel_blob 103
isc_cancel_events 104
isc_close 105
isc_close_blob 106
isc_commit_retaining 107
isc_commit_transaction 108
isc_compile_request 109
isc_compile_request2 110
isc_create_blob 111
isc_create_blob2 112
isc_create_database 113
isc_database_info 114
isc_ddl 115
isc_declare 116
isc_decode_date 117
isc_describe 118
isc_describe_bind 119
isc_detach_database 120
isc_dsql_finish 121
isc_event_counts 122
isc_wait_for_event 123
isc_execute 124
isc_execute_immediate 125
isc_fetch 126
isc_fetch_a 127
isc_ftof 128
isc_get_segment 129
isc_get_slice 130
isc_interprete 131
isc_open 132
isc_open_blob 133
isc_open_blob2 134
isc_prepare 135
isc_prepare_transaction 136
isc_prepare_transaction2 137
isc_print_status 138
isc_put_segment 139
isc_put_slice 140
isc_qtoq 141
isc_que_events 142
isc_receive 143
isc_reconnect_transaction 144
isc_release_request 145
isc_request_info 146
isc_rollback_transaction 147
isc_send 148
isc_sqlcode 149
isc_start_and_send 150
isc_start_multiple 151
isc_start_request 152
isc_to_sqlda 153
isc_transaction_info 154
isc_unwind_request 155
isc_version 156
isc_vtof 157
isc_vtov 158
isc_array_lookup_desc 159
isc_array_lookup_bounds 160
isc_array_set_desc 161
isc_array_gen_sdl 162
isc_array_get_slice 163
isc_array_put_slice 164
isc_event_block 165
gds__seek_blob 166
isc_seek_blob 167
isc_encode_date 168
isc_print_blr 169
gds__database_cleanup 170
isc_database_cleanup 171
isc_set_debug 172
isc_print_sqlerror 173
isc_sql_interprete 174
isc_dsql_release 175
isc_start_transaction 176
isc_vax_integer 177
isc_dsql_execute 178
isc_dsql_execute_m 179
isc_dsql_execute_immediate 180
isc_dsql_execute_immediate_m 181
isc_dsql_fetch 182
isc_dsql_fetch_a 183
isc_dsql_fetch_m 184
isc_dsql_free_statement 185
isc_dsql_prepare 186
isc_dsql_prepare_m 187
isc_dsql_set_cursor_name 188
isc_dsql_sql_info 189
isc_dsql_allocate_statement 190
isc_dsql_describe 191
isc_dsql_describe_bind 192
isc_embed_dsql_close 193
isc_embed_dsql_declare 194
isc_embed_dsql_execute 195
isc_embed_dsql_execute_immed 196
isc_embed_dsql_fetch 197
isc_embed_dsql_fetch_a 198
isc_embed_dsql_open 199
isc_embed_dsql_prepare 200
isc_embed_dsql_release 201
isc_embed_dsql_describe 202
isc_embed_dsql_describe_bind 203
isc_baddress 204
isc_blob_display 205
isc_blob_dump 206
isc_blob_edit 207
isc_blob_load 208
isc_expand_dpb 209
gds__log_status 210
isc_dsql_insert 211
isc_dsql_insert_m 212
isc_embed_dsql_insert 213
isc_transact_request 214
gds__disable_subsystem 215
gds__msg_close 216
isc_dsql_alloc_statement2 217
isc_dsql_execute2 218
isc_dsql_execute2_m 219
isc_dsql_exec_immed2 220
isc_dsql_exec_immed2_m 221
isc_embed_dsql_execute2 222
isc_embed_dsql_exec_immed2 223
isc_embed_dsql_open2 224
gds__unregister_cleanup 225
isc_attach_service 226
isc_detach_service 227
isc_query_service 228
isc_drop_database 229
isc_dsql_exec_immed3_m 230
gds__transaction_cleanup 231
isc_blob_gen_bpb 232
isc_blob_lookup_desc 233
isc_blob_set_desc 234
isc_blob_default_desc 235
gds__map_blobs 236
ISC_signal 237
ISC_signal_cancel 238
isc_free 239
BLOB_text_dump 240
BLOB_text_load 241
isc_modify_dpb 242
isc_dsql_fetch2 243
isc_reset_fpe 244
#objects
source/jrd/shrinit.bin
source/jrd/all.bin
source/jrd/alt.bin
source/jrd/blb.bin
source/jrd/blf.bin
source/jrd/btr.bin
source/jrd/cch.bin
source/jrd/cmp.bin
source/jrd/cvt.bin
source/jrd/dpm.bin
source/jrd/dyn.bin
source/jrd/dyn_def.bin
source/jrd/dyn_del.bin
source/jrd/dyn_mod.bin
source/jrd/enc.bin
source/jrd/err.bin
source/jrd/event.bin
source/jrd/evl.bin
source/jrd/exe.bin
source/jrd/ext.bin
source/jrd/filters.bin
source/jrd/flu.bin
source/jrd/fun.bin
source/jrd/gds.bin
source/jrd/iberr.bin
source/jrd/idx.bin
source/jrd/inf.bin
source/jrd/ini.bin
source/jrd/intl.bin
source/jrd/isc.bin
source/jrd/isc_file.bin
source/jrd/jrd.bin
source/jrd/jrn.bin
source/jrd/lck.bin
source/jrd/log.bin
source/jrd/met.bin
source/jrd/mov.bin
source/jrd/nav.bin
source/jrd/node.bin
source/jrd/nodebug.bin
source/jrd/opt.bin
source/jrd/pag.bin
source/jrd/par.bin
source/jrd/perf.bin
source/jrd/pwd.bin
source/jrd/rse.bin
source/jrd/sbm.bin
source/jrd/sch.bin
source/jrd/scl.bin
source/jrd/sdl.bin
source/jrd/sdw.bin
source/jrd/sort.bin
source/jrd/sqz.bin
source/jrd/sym.bin
source/jrd/tra.bin
source/jrd/utl.bin
source/jrd/val.bin
source/jrd/vio.bin
source/jrd/why.bin
source/jrd/unix.bin
source/dsql/alld.bin
source/dsql/errd.bin
source/dsql/metd.bin
source/dsql/movd.bin
source/dsql/parse.bin
source/dsql/ddl.bin
source/dsql/dsql.bin
source/dsql/gen.bin
source/dsql/hsh.bin
source/dsql/make.bin
source/dsql/pass1.bin
source/dsql/array.bin
source/dsql/user_dsql.bin
source/dsql/utld.bin
source/lock/lock.bin
source/remote/interface.bin
source/remote/allr.bin
source/remote/inet.bin
source/remote/merge.bin
source/remote/parser.bin
source/remote/protocol.bin
source/remote/remote.bin
source/jrd/grant.bin
source/jrd/head5.bin
source/jrd/allp.bin
source/jrd/misc.bin
source/jrd/builtin.bin
source/intl/ld.bin
source/intl/cv_narrow.bin
source/intl/cs_narrow.bin
source/intl/lc_ascii.bin
source/intl/lc_latin1.bin
source/intl/lc_dos.bin
source/intl/cs_unicode.bin
source/intl/lc_unicode.bin
source/intl/cs_jis.bin
source/intl/cv_jis.bin
source/intl/lc_jis.bin
source/intl/ld2.bin
source/wal/wal.bin
source/wal/walc.bin
source/wal/walf.bin
source/wal/walr.bin
source/jrd/ail.bin
source/jrd/old.bin
source/jrd/rec.bin
source/jrd/thd.bin
source/jrd/dfw.bin
source/jrd/stubs.bin
source/jrd/rlck.bin
source/jrd/llio.bin
source/jrd/cvt2.bin
source/jrd/dsc.bin
source/jrd/pcmet.bin
source/jrd/rng.bin
source/jrd/tpc.bin
source/intl/cs_utffss.bin
source/dsql/preparse.bin
source/jrd/shut.bin
source/jrd/svc.bin
source/jrd/bkm.bin
source/jrd/inuse.bin
source/dsql/blob.bin
source/jrd/isc_ipc.bin
source/jrd/isc_sync.bin
# source/jrd/qatest.bin
source/intl/lc_narrow.bin
## kludge
source/jrd/87ftol.o
source/jrd/_fltused.o
#hide linker
*
#export linker
gethostid
#init source/jrd/shrinit.bin
_libgds_setjmp setjmp
_libgds_sprintf sprintf
_libgds_strlen strlen
_libgds_strcmp strcmp
_libgds_strcpy strcpy
_libgds_exit exit
_libgds_longjmp longjmp
_libgds__iob _iob
_libgds_abort abort
_libgds_memset memset
_libgds_getpid getpid
_libgds_memcpy memcpy
_libgds_shmdt shmdt
_libgds_memcmp memcmp
_libgds_fprintf fprintf
_libgds_printf printf
_libgds_errno errno
_libgds_fopen fopen
_libgds_fclose fclose
_libgds__filbuf _filbuf
_libgds_rewind rewind
_libgds_fseek fseek
_libgds_ftell ftell
_libgds__flsbuf _flsbuf
_libgds_sys_errlist sys_errlist
_libgds_sys_nerr sys_nerr
_libgds_malloc malloc
_libgds_gettimeofday gettimeofday
_libgds_ctime ctime
_libgds_getenv getenv
_libgds_lseek lseek
_libgds_read read
_libgds_open open
_libgds_strcat strcat
_libgds_fputs fputs
_libgds_fputc fputc
_libgds_mktemp mktemp
_libgds_unlink unlink
_libgds_semctl semctl
_libgds_semop semop
_libgds_select select
_libgds_strncpy strncpy
_libgds_strchr strchr
_libgds_getpwnam getpwnam
_libgds_geteuid geteuid
_libgds_getpwuid getpwuid
_libgds_readlink readlink
_libgds_gethostname gethostname
_libgds_endpwent endpwent
_libgds_getegid getegid
_libgds_kill kill
_libgds_pipe pipe
_libgds_fork fork
_libgds_execl execl
_libgds_write write
_libgds_umask umask
_libgds_lockf lockf
_libgds_shmget shmget
_libgds_shmat shmat
_libgds_shmctl shmctl
_libgds_ftok ftok
_libgds_close close
_libgds_fscanf fscanf
_libgds_semget semget
_libgds_strncmp strncmp
_libgds_send send
_libgds_socket socket
_libgds_connect connect
_libgds_recv recv
_libgds_fflush fflush
_libgds_time time
_libgds_localtime localtime
_libgds_sleep sleep
_libgds_times times
_libgds_stat stat
_libgds_system system
_libgds_fgetc fgetc
_libgds_fstat fstat
_libgds_getuid getuid
_libgds_fgets fgets
_libgds_atoi atoi
_libgds_alarm alarm
_libgds_signal signal
_libgds_getservbyname getservbyname
_libgds_gethostbyname gethostbyname
_libgds_setsockopt setsockopt
_libgds_bind bind
_libgds_listen listen
_libgds_accept accept
_libgds_setreuid setreuid
_libgds_setregid setregid
_libgds_chdir chdir
_libgds_ioctl ioctl
_libgds_getsockname getsockname
_libgds_getpeername getpeername
_libgds_gethostbyaddr gethostbyaddr
_libgds_sscanf sscanf
_libgds_xdrmem_create xdrmem_create
_libgds_innetgr innetgr
_libgds_xdr_enum xdr_enum
_libgds_xdr_short xdr_short
_libgds_xdr_u_short xdr_u_short
_libgds_xdr_long xdr_long
_libgds_xdr_opaque xdr_opaque
_libgds_xdr_string xdr_string
_libgds_FUNCTIONS_entrypoint FUNCTIONS_entrypoint
_libgds_fcntl fcntl
_libgds_fwrite fwrite
_libgds_getppid getppid
_libgds_setitimer setitimer
_libgds_sigset sigset
_libgds_getgroups getgroups
_libgds_bzero bzero
_libgds_shutdown shutdown
_libgds_crypt crypt
_libgds_pause pause
_libgds_xdr_float xdr_float
_libgds_xdr_double xdr_double
_libgds_sbrk sbrk
_libgds_environ environ
_libgds_fdopen fdopen
_libgds_dup dup
_libgds_execle execle
_libgds_strrchr strrchr
_libgds_waitpid waitpid
_libgds__exit _exit
_libgds_popen popen
_libgds_htonl htonl
_libgds_ntohl ntohl
_libgds_getcwd getcwd
_libgds_pclose pclose
_libgds_atexit atexit
_libgds_atol atol
_libgds_execvp execvp
_libgds_nice nice
_libgds_putenv putenv
_libgds_xdr_free xdr_free
_libgds_xdr_wrapstring xdr_wrapstring
_libgds_vsprintf vsprintf
_libgds_h_errno h_errno
_libgds_chmod chmod
_libgds_ungetc ungetc
_libgds_vfprintf vfprintf
_libgds__assert _assert
_libgds_access access
_libgds_fsync fsync
_libgds_sigsuspend sigsuspend
_libgds_sigprocmask sigprocmask
_libgds_sigaddset sigaddset

View File

@ -0,0 +1,28 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
#ident "InterBase V3.1 shared UDF library"
#address .text 0x03000000
#address .data 0x03400000
#target /usr/lib/libgdsf_s
#branch
FUNCTIONS_entrypoint 1
#objects
source/jrd/shrfinit.bin
source/jrd/functions.bin
#init source/jrd/shrfinit.bin
_libfun_strcmp strcmp
_libfun_sprintf sprintf

View File

@ -0,0 +1,28 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
#ident "InterBase V3.1 shared UDF library"
#address .text 0xa4000000
#address .data 0xa4400000
#target /shlib/libgdsf_s
#branch
FUNCTIONS_entrypoint 1
#objects
source/jrd/shrfinit.bin
source/jrd/functions.bin
#init source/jrd/shrfinit.bin
_libfun_strcmp strcmp
_libfun_sprintf sprintf

View File

@ -0,0 +1,21 @@
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s):
* Tom Coleman tmcsys (AIX for C bind expects * comments)
*
* $Id: bind_gdsintl.aix_ppc,v 1.1 2001-07-12 06:32:03 bellardo Exp $
*
LD_lookup

View File

@ -0,0 +1,24 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
LIBRARY gdsintl
DESCRIPTION 'InterBase International DLL'
DATA READ WRITE
EXPORTS
LD_lookup @1

View File

@ -0,0 +1,425 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
{ This is the SR10 version of the file to bind jrd. }
{ Be sure not to use the -inlib switch on the bind }
{ because there seems to be a bug in it. }
alt.o
gds.o
why.o
perf.o
jrd.o
all.o
err.o
iberr.o
cch.o
lck.o
apollo.o
pag.o
inf.o
sort.o
ini.o
intl.o
cmp.o
exe.o
met.o
dpm.o
par.o
mov.o
cvt.o
evl.o
sym.o
fun.o
tra.o
vio.o
sqz.o
opt.o
rse.o
btr.o
idx.o
sbm.o
blb.o
nodebug.o
isc.o
isc_file.o
val.o
jrn.o
scl.o
ext.o
blf.o
nav.o
sdw.o
sch.o
thd.o
node.o
dyn.o
dyn_def.o
dyn_del.o
dyn_mod.o
event.o
utl.o
sdl.o
flu.o
log.o
functions.o
filters.o
grant.o
pwd.o
enc.o
sun_ftn.o
misc.o
ail.o
old.o
rec.o
dfw.o
rlck.o
llio.o
cvt2.o
pcmet.o
rng.o
tpc.o
dsc.o
shut.o
svc.o
bkm.o
inuse.o
isc_ipc.o
isc_sync.o
source/lock/lock.o
source/remote/interface.o
source/remote/allr.o
source/remote/inet.o
source/remote/merge.o
source/remote/parser.o
source/remote/protocol.o
source/remote/remote.o
source/remote/ambx.o
source/remote/xdr.o
source/dsql/alld.o
source/dsql/array.o
source/dsql/blob.o
source/dsql/ddl.o
source/dsql/dsql.o
source/dsql/errd.o
source/dsql/gen.o
source/dsql/hsh.o
source/dsql/make.o
source/dsql/metd.o
source/dsql/movd.o
source/dsql/parse.o
source/dsql/pass1.o
source/dsql/preparse.o
source/dsql/user_dsql.o
source/dsql/utld.o
source/wal/wal.o
source/wal/walc.o
source/wal/walf.o
source/wal/walr.o
-mergebss
-loadhigh
-binary gdslib -exactcase
-mark gds__attach_database
-mark gds__blob_info
-mark gds__cancel_blob
-mark gds__close_blob
-MARK gds__commit_transaction
-MARK gds__compile_request
-MARK gds__compile_request2
-mark gds__create_blob
-MARK gds__create_database
-MARK gds__database_cleanup
-MARK gds__database_info
-MARK gds__decode_date
-MARK gds__detach_database
-MARK gds__encode_date
-mark isc_expand_dpb
-mark isc_modify_dpb
-mark gds__get_segment
-mark gds__open_blob
-mark gds__prepare_transaction
-mark gds__prepare_transaction2
-mark gds__put_segment
-MARK gds__receive
-MARK gds__release_request
-MARK gds__request_info
-MARK gds__reconnect_transaction
-MARK gds__rollback_transaction
-MARK gds__seek_blob
-MARK gds__send
-MARK gds__start_and_send
-MARK gds__start_request
-MARK gds__start_transaction
-MARK gds__start_multiple
-MARK gds__transaction_info
-MARK gds__unwind_request
-mark gds__open_blob2
-mark gds__create_blob2
-MARK gds__vtof
-MARK gds__vtov
-MARK gds__ftof
-MARK gds__qtoq
-MARK gds__print_status
-MARK gds__put_error
-MARK gds__log
-MARK gds__print_blr
-MARK gds__sqlcode
-MARK gds__alloc
-MARK gds__free
-MARK gds__temp_file
-MARK gds__vax_integer
-MARK gds__decode
-MARK gds__edit
-MARK gds__encode
-MARK gds__interprete
-MARK gds__interprete_a
-MARK gds__set_debug
-MARK gds__version
-MARK gds__blob_size
-MARK gds__termtype
-MARK NODE_license
-MARK ISC_signal
-MARK ISC_signal_cancel
-MARK perf_get_info
-MARK perf_format
-MARK perf_report
-MARK BLOB_close
-MARK BLOB_display
-MARK BLOB_dump
-MARK BLOB_edit
-MARK BLOB_get
-MARK BLOB_load
-MARK Bopen
-MARK BLOB_open
-MARK BLOB_put
-MARK blob__display
-MARK blob__dump
-MARK blob__edit
-MARK blob__load
-MARK BLOB_text_dump
-MARK BLOB_text_load
-mark gds__ddl
-mark gds__commit_retaining
-mark gds__que_events
-mark gds__cancel_events
-mark gds__event_wait
-mark gds__map_blobs
-mark gds__msg_close
-mark gds__msg_format
-mark gds__msg_lookup
-mark gds__msg_open
-mark gds__msg_put
-mark gds__enable_subsystem
-mark gds__disable_subsystem
-mark gds__register_cleanup
-mark gds__transaction_cleanup
-mark gds__unregister_cleanup
-mark gds__event_block
-mark gds__event_block_a
-mark gds__event_counts
-mark gds__get_slice
-mark gds__put_slice
-mark gds__prefix
-mark gds__log_status
-mark isc_attach_database
-mark isc_attach_service
-mark isc_blob_info
-mark isc_cancel_blob
-mark isc_cancel_events
-mark isc_close_blob
-mark isc_commit_retaining
-mark isc_commit_transaction
-mark isc_compile_request
-mark isc_compile_request2
-mark isc_create_blob
-mark isc_create_blob2
-mark isc_create_database
-mark isc_database_cleanup
-mark isc_database_info
-mark isc_ddl
-mark isc_decode_date
-mark isc_detach_database
-mark isc_detach_service
-mark isc_drop_database
-mark isc_encode_date
-mark isc_event_block
-mark isc_event_counts
-mark isc_free
-mark isc_ftof
-mark isc_get_segment
-mark isc_get_slice
-mark isc_interprete
-mark isc_open_blob
-mark isc_open_blob2
-mark isc_prepare_transaction
-mark isc_prepare_transaction2
-mark isc_print_blr
-mark isc_print_sqlerror
-mark isc_print_status
-mark isc_put_segment
-mark isc_put_slice
-mark isc_qtoq
-mark isc_que_events
-mark isc_query_service
-mark isc_receive
-mark isc_reconnect_transaction
-mark isc_release_request
-mark isc_request_info
-mark isc_rollback_transaction
-mark isc_seek_blob
-mark isc_send
-mark isc_set_debug
-mark isc_sql_interprete
-mark isc_sqlcode
-mark isc_start_and_send
-mark isc_start_multiple
-mark isc_start_request
-mark isc_start_transaction
-mark isc_transact_request
-mark isc_transaction_info
-mark isc_unwind_request
-mark isc_vax_integer
-mark isc_version
-mark isc_vtof
-mark isc_vtov
-mark isc_wait_for_event
{all of the entry points from the thread package }
-mark gds__thread_enable
-mark gds__thread_enter
-mark gds__thread_exit
-mark gds__thread_start
-mark SCH_current_thread
-mark SCH_enter
-mark SCH_exit
-mark SCH_hiber
-mark SCH_schedule
-mark SCH_wake
{all of the entry points from the lock manager }
-mark LOCK_convert
-mark LOCK_deq
-mark LOCK_downgrade
-mark LOCK_enq
-mark LOCK_fini
-mark LOCK_init
-mark LOCK_re_post
-mark LOCK_read_data
-mark LOCK_read_data2
-mark LOCK_write_data
{all of the entry points from the old DSQL }
-mark gds__close
-mark gds__declare
-mark gds__describe
-mark gds__describe_bind
-mark gds__dsql_finish
-mark gds__execute
-mark gds__execute_immediate
-mark gds__fetch
-mark gds__fetch_a
-mark gds__open
-mark gds__prepare
-mark gds__to_sqlda
-mark isc_close
-mark isc_declare
-mark isc_describe
-mark isc_describe_bind
-mark isc_dsql_finish
-mark isc_dsql_release
-mark isc_execute
-mark isc_execute_immediate
-mark isc_fetch
-mark isc_fetch_a
-mark isc_open
-mark isc_prepare
-mark isc_to_sqlda
-mark isc_array_lookup_desc
-mark isc_array_lookup_bounds
-mark isc_array_set_desc
-mark isc_array_gen_sdl
-mark isc_array_get_slice
-mark isc_array_put_slice
-mark isc_blob_gen_bpb
-mark isc_blob_lookup_desc
-mark isc_blob_set_desc
-mark isc_blob_default_desc
{all of the entry points from the new DSQL }
-mark isc_dsql_allocate_statement
-mark isc_dsql_alloc_statement2
-mark isc_dsql_describe
-mark isc_dsql_describe_bind
-mark isc_dsql_execute
-mark isc_dsql_execute2
-mark isc_dsql_execute_m
-mark isc_dsql_execute2_m
-mark isc_dsql_execute_immediate
-mark isc_dsql_execute_immediate_m
-mark isc_dsql_exec_immed2
-mark isc_dsql_exec_immed2_m
-mark isc_dsql_exec_immed3_m
-mark isc_dsql_fetch
-mark isc_dsql_fetch_a
-mark isc_dsql_fetch_m
-mark isc_dsql_free_statement
-mark isc_dsql_insert
-mark isc_dsql_insert_m
-mark isc_dsql_prepare
-mark isc_dsql_prepare_m
-mark isc_dsql_set_cursor_name
-mark isc_dsql_sql_info
-mark isc_embed_dsql_close
-mark isc_embed_dsql_declare
-mark isc_embed_dsql_describe
-mark isc_embed_dsql_describe_bind
-mark isc_embed_dsql_execute
-mark isc_embed_dsql_execute2
-mark isc_embed_dsql_execute_immed
-mark isc_embed_dsql_exec_immed2
-mark isc_embed_dsql_fetch
-mark isc_embed_dsql_fetch_a
-mark isc_embed_dsql_insert
-mark isc_embed_dsql_open
-mark isc_embed_dsql_open2
-mark isc_embed_dsql_prepare
-mark isc_embed_dsql_release
{all of the entry points from the DSQL Fortran wrapper }
-mark isc_dsql_allocate_statement_
-mark isc_dsql_describe_
-mark isc_dsql_describe_bind_
-mark isc_dsql_execute_
-mark isc_dsql_execute_m_
-mark isc_dsql_execute_immediate_
-mark isc_dsql_execute_immediate_m_
-mark isc_dsql_fetch_
-mark isc_dsql_fetch_m_
-mark isc_dsql_free_statement_
-mark isc_dsql_prepare_
-mark isc_dsql_prepare_m_
-mark isc_dsql_set_cursor_name_
-mark isc_dsql_sql_info_
-mark isc_embed_dsql_close_
-mark isc_embed_dsql_declare_
-mark isc_embed_dsql_describe_
-mark isc_embed_dsql_describe_bind_
-mark isc_embed_dsql_execute_
-mark isc_embed_dsql_execute_immed_
-mark isc_embed_dsql_fetch_
-mark isc_embed_dsql_open_
-mark isc_embed_dsql_prepare_
-mark isc_embed_dsql_release_
{all of the entry points from the event Fortran wrapper }
-mark gds__event_wait_
-mark gds__event_counts_
-mark isc_baddress
-mark isc_reset_fpe
-end

View File

@ -0,0 +1,120 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
pyxis.o menu.o allp.o scr.o debug.o edit.o phase3.o
phase2.o save.o picstr.o movp.o altp.o
adm.o vt100.o
-mergebss
-binary pyxislib -exactcase
-mark PYXIS_box
-mark PYXIS_bugcheck
-mark PYXIS_clone
-mark PYXIS_compute_size
-mark PYXIS_create_entree
-mark PYXIS_create_object
-mark PYXIS_create_window
-mark PYXIS_define_forms_relation
-mark PYXIS_delete_attribute
-mark PYXIS_delete_named_attribute
-mark PYXIS_delete_window
-mark PYXIS_dump
-mark PYXIS_dump_length
-mark PYXIS_edit
-mark PYXIS_error
-mark PYXIS_find_field
-mark PYXIS_find_index
-mark PYXIS_find_object
-mark PYXIS_fini
-mark PYXIS_format_form
-mark PYXIS_format_menu
-mark PYXIS_get_attribute
-mark PYXIS_get_attribute_value
-mark PYXIS_get_char
-mark PYXIS_get_data
-mark PYXIS_get_updated
-mark PYXIS_get_value
-mark PYXIS_init
-mark PYXIS_load
-mark PYXIS_load_form
-mark PYXIS_menu
-mark PYXIS_move
-mark PYXIS_navigate
-mark PYXIS_pop_form
-mark PYXIS_position
-mark PYXIS_push_form
-mark PYXIS_push_tag
-mark PYXIS_put_desc
-mark PYXIS_put_attribute
-mark PYXIS_put_segment
-mark PYXIS_reference
-mark PYXIS_relation_fields
-mark PYXIS_relation_form
-mark PYXIS_replace_attribute
-mark PYXIS_select
-mark PYXIS_set_display_attribute
-mark PYXIS_set_field_options
-mark PYXIS_store_form
-mark PYXIS_trace_in
-mark PYXIS_trace_out
-mark PYXIS_update_window
-mark PYXIS_update
-mark pyxis__compile_map
-mark pyxis__compile_menu
-mark pyxis__compile_sub_map
-mark pyxis__create_window
-mark pyxis__delete
-mark pyxis__delete_window
-mark pyxis__drive_form
-mark pyxis__insert
-mark pyxis__fetch
-mark pyxis__insert
-mark pyxis__load_form
-mark pyxis__menu
-mark pyxis__pop_window
-mark pyxis__reset_form
-mark pyxis__suspend_window
-mark pyxis__menu
-mark pyxis__reset_form
-mark pyxis__compile_menu
-mark pyxis__delete
-mark pyxis__insert
-mark pyxis__fetch
-mark pyxis__compile_sub_map
-mark pyxis__drive_menu
-mark pyxis__get_entree
-mark pyxis__put_entree
-mark pyxis__initialize_menu
-mark PYXIS_get_keyname
-mark isc_compile_map
-mark isc_compile_menu
-mark isc_compile_sub_map
-mark isc_create_window
-mark isc_delete_window
-mark isc_drive_form
-mark isc_drive_menu
-mark isc_form_delete
-mark isc_form_fetch
-mark isc_form_insert
-mark isc_get_entree
-mark isc_initialize_menu
-mark isc_load_form
-mark isc_menu
-mark isc_pop_window
-mark isc_put_entree
-mark isc_reset_form
-mark isc_suspend_window
-end

View File

@ -0,0 +1,76 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
interface.o
allr.o
inet.o
merge.o
protocol.o
parse.o
remote.o
ambx.o
xdr.o
source/jrd/node.o
source/jrd/isc.o
source/jrd/sdl.o
-loadhigh
-mergebss
-binary remotelib -exactcase
-mark AMBX_set_debug
-mark REM_attach_database
-mark REM_blob_info
-mark REM_cancel_blob
-mark REM_close_blob
-MARK REM_commit_transaction
-MARK REM_compile_request
-mark REM_create_blob2
-MARK REM_create_database
-MARK REM_database_info
-MARK REM_detach_database
-mark REM_get_segment
-mark REM_open_blob2
-mark REM_prepare_transaction
-mark REM_put_segment
-MARK REM_receive
-MARK REM_release_request
-MARK REM_request_info
-MARK REM_reconnect_transaction
-MARK REM_rollback_transaction
-MARK REM_seek_blob
-MARK REM_send
-MARK REM_start_and_send
-MARK REM_start_request
-MARK REM_start_transaction
-MARK REM_transaction_info
-MARK REM_unwind_request
-MARK REM_que_events
-MARK REM_cancel_events
-MARK REM_commit_retaining
-MARK REM_ddl
-mark REM_get_slice
-mark REM_put_slice
{DSQL entry points}
-mark REM_declare
-mark REM_execute
-mark REM_execute_immediate
-mark REM_fetch
-mark REM_open
-mark REM_prepare
-mark REM_release
-mark REM_close
-mark REM_describe
-mark REM_describe_bind
-end

View File

@ -0,0 +1,811 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
#
#
# Tom Coleman TMC Systems <tcoleman@autowares.com>
#
# $Id: boot.sfx.interbase,v 1.1 2001-07-12 06:32:03 bellardo Exp $
#== WARNING ==============================================================
#
# IF YOU CHANGE THIS FILE YOU MUST REVIEW both:
# sfx.interbase and boot.sfx.interbase files
#
#=========================================================================
REFDBPATH=source/refDatabases
METADATA=$(REFDBPATH)/jrd/metadata.gdb
MESSAGES=$(REFDBPATH)/msgs/msg.gdb
HELP=$(REFDBPATH)/qli/help.gdb
ISC=$(REFDBPATH)/jrd/isc.gdb
EXTERNAL_OBJECTS= $(CSI_OBJS) dsql_objects lock.o $(PYXIS_OBJECTS) rem_objects $(INTL) wal_objects
EXTERNAL_P_OBJECTS= $(CSI_P_OBJS) dsql_p_objects lock.bin $(PYXIS_P_OBJS) rem_p_objects $(INTL_P_OBJS) wal_p_objects
INCLUDE_DEST= source/interbase/include/
SRC_DIRS= alice burp dudley dsql extlib gpre intl isql journal jrd lock msgs \
pyxis qli remote super/remote utilities wal
GPRE= source/interbase/bin/gpre
GBAK= source/interbase/bin/gbak
GDEF= source/interbase/bin/gdef
GFIX= source/interbase/bin/gfix
ISQL= source/interbase/bin/isql
HELP_GDB= source/interbase/help/help.gdb
HELP_GBAK= source/interbase/help/help.gbak
ISC_GDB= source/interbase/isc4.gdb
ISC_GBAK= source/interbase/bin/isc4.gbak
JRN_GBAK= source/interbase/bin/journal.gbak
CMP= cmp
SED= sed
FBNewBuild = $(FBBuildRoot)/interbase
FBNewBuildBin = $(FBNewBuild)/bin
CODES=source/jrd/codes
SCODES=super/source/jrd/codes
# removed examples 03-Aug-00 TMC
#interbase: run_codes gds.h includes executables examples help msgs msgs_intl extlib
#added completed according to inprise tree
#FSG 093000
firebird: gds.h includes fireboot run_codes executables help msgs msgs_intl extlib examples completed
# burp wanted to build gpre
# we break this dependency
# 1) build burp (gbak)
# 2) use gbak to create the message databases
# 3) build the message files
# 4) build gpre
fireboot: burp boot_dbs msgs gpre
boot_dbs: $(GBAK) $(METADATA) $(MESSAGES) $(HELP) $(ISC)
$(METADATA): misc/metadata.gbak
$(GBAK) -c misc/metadata.gbak $(METADATA)
$(ISC): misc/isc4.gbak
$(GBAK) -c misc/isc4.gbak $(ISC)
$(MESSAGES): misc/msg.gbak
$(GBAK) -c misc/msg.gbak $(MESSAGES)
$(HELP): misc/help.gbak
$(GBAK) -c misc/help.gbak $(HELP)
all_example_dbs: example_dbs v4_dbs v5_dbs
example_dbs:
$(ECHO) "- building example dbs"
$(CD) $(REFDBPATH)/examples; \
$(RM) *.gdb; \
echo "$(FBNewBuildBin)"; \
$(FBNewBuildBin)/gdef $(FBBuildRoot)/examples/atlas.gdl; \
$(FBNewBuildBin)/gdef $(FBBuildRoot)/examples/emp.gdl; \
$(FBNewBuildBin)/gdef $(FBBuildRoot)/examples/slides.gdl; \
$(FBNewBuildBin)/gdef $(FBBuildRoot)/examples/nc_guide.gdl; \
$(FBNewBuildBin)/gdef $(FBBuildRoot)/examples/c_guide.gdl; \
$(FBNewBuildBin)/gdef $(FBBuildRoot)/examples/stocks.gdl
touch example_dbs
v4_dbs:
$(ECHO) "- copying example files"
$(CP) example4/*.sql $(REFDBPATH)/example4
$(CP) example4/empbuild.e $(REFDBPATH)/example4
$(CP) example4/intlbld.e $(REFDBPATH)/example4
$(ECHO) "- building examples4"
$(CD) $(REFDBPATH)/example4; \
$(RM) *.gdb; \
$(SED) -e s/employee.gdb/empbuild.gdb/g $(FBBuildRoot)/example4/empbld.sql >empbuild.sql; \
$(SED) -e s/' year'/' proj_year'/g -e s/\(year/\(proj_year/g -e s/\(YEAR/\(PROJ_YEAR/g -e s/' DATE'/' TIMESTAMP'/g $(FBBuildRoot)/example4/empddl.sql >empddl.sql; \
$(FBNewBuildBin)/isql -i empbuild.sql; \
$(SED) -e s/' year'/' proj_year'/g -e s/\(year/\(proj_year/g -e s/\(YEAR/\(PROJ_YEAR/g -e s/' DATE'/' TIMESTAMP'/g $(FBBuildRoot)/example4/intlddl.sql >intlddl.sql; \
$(FBNewBuildBin)/isql -i intlbld.sql
touch v4_dbs
# The following were not used but the source files exist
# (cd examples; $IBBin/gdef $IBSrc/examples/cs_load.gdl)
# (cd examples; $IBBin/gdef $IBSrc/examples/sources.gdl)
# (cd examples; $IBBin/gdef $IBSrc/examples/udf_trig.gdl)
v5_dbs:
echo "- building examples5"
$(CP) example5/*.sql $(REFDBPATH)/example5
$(CD) $(REFDBPATH)/example5; \
$(RM) *.gdb; \
$(SED) -e s/employee.gdb/empbuild.gdb/g $(FBBuildRoot)/example5/empbld.sql >empbuild.sql; \
$(SED) -e s/' year'/' proj_year'/g -e s/' YEAR'/' PROJ_YEAR'/g -e s/' DATE'/' TIMESTAMP'/g $(FBBuildRoot)/example5/empddl.sql >empddl.sql; \
$(FBNewBuildBin)/isql -i empbuild.sql; \
$(SED) -e s/' year'/' proj_year'/g -e s/' YEAR'/' PROJ_YEAR'/g -e s/' DATE'/' TIMESTAMP'/g $(FBBuildRoot)/example5/intlddl.sql >intlddl.sql; \
$(FBNewBuildBin)/isql -i intlbld.sql
touch v5_dbs
# Run the codes program, thus generating codes.h, iberror.h, etc
# compare and copy the file only if the files are different
# the extra bit copies iberror.h if the file doesn't already exist. MOD 13-Apr-2001.
run_codes: $(CODES)
# force $(CODES)
$(SH) '$(CD) source/jrd; $(CODES)'
$(SH) 'if [ ! -f $(INCLUDE_DEST)iberror.h ] ; then $(CP) source/jrd/iberror.h $(INCLUDE_DEST)iberror.h; fi'
$(SH) '$(CMP) source/jrd/iberror.h $(INCLUDE_DEST)iberror.h; if [ $$? != 0 ]; then $(CP) source/jrd/iberror.h $(INCLUDE_DEST)iberror.h; fi'
$(CODES) : source/jrd/codes.e
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" codes'
# NOTE: "journals" removed from "executables" as it currently doesn't
# build and isn't used for V4 anyway.
# 1995-June-7 David Schnepper
# removed pyxis 3-Aug-00 TMC
#executables: alice burp dudley gpre miscFiles $(INTL) isql locks \
$(SUPER_SERVER) pyxis qli remote spit utilities \
$(SHARED_AM) $(LINKABLE_LIBS)
executables: alice dudley miscFiles $(INTL) isql locks \
$(SUPER_SERVER) pyxis qli remote spit utilities \
$(SHARED_AM) $(LINKABLE_LIBS)
super_firebird: gds.h includes fireboot super_targets dudley superMiscFiles $(INTL) isql locks qli remote spit help msgs msgs_intl dba gfix gsec security_db extlib examples completed
super_targets: s_run_codes s_alice s_burp s_dba s_security_c super_client super_server super_utils
#added completed according to inprise tree
#FSG 093000
completed: force
$(QUIET_ECHO) "Build succeeded!"
alice gfix: gpre force
$(QUIET_ECHO) "Building GFIX..."
$(SH) '$(CD) source/alice; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" alice'
#burp gbak: gpre msgs force
burp gbak $(GBAK): pyxis
$(QUIET_ECHO) "Building GBAK..."
$(SH) '$(CD) source/burp; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" burp'
burplib.a: burp
$(QUIET_ECHO) "Building interbase/lib/gbaklib.a..."
$(SH) '$(CD) source/burp; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" libgbaklib.a'
central_server gds_cserver: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_CSERVER..."
$(SH) '$(CD) source/csv; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" central_server'
super_client: force
$(QUIET_ECHO) "Building super/client..."
$(SH) '$(CD) source/super/client; $(MAKE) CFLAGS="$(CFLAGS) -DSUPERCLIENT" SYSTEM="$(SYSTEM)" super_client'
csu gcsu: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GCSU..."
$(SH) '$(CD) source/csv; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" csu'
csvs: central_server csu
gds_archive: $(ACCESS_METHOD) gpre force
$(QUIET_ECHO) "Building GDS_ARCHIVE..."
$(SH) '$(CD) source/journal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_archive'
dba gstat: gpre force
$(QUIET_ECHO) "Building GSTAT..."
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" dba'
dnet_server gds_dnet_server: $(DNET_SERVER_LIB) $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_DNET_SERVER..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" dnet_server'
dnet_server.a gds_dnet_server.a: force
$(QUIET_ECHO) "Building GDS_DNET_SERVER.A..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" dnet_server.a'
drop gds_drop: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_DROP..."
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" drop'
driver: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building DRIVER..."
$(SH) '$(CD) source/wal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" driver'
dudley gdef: gpre msgs force
$(QUIET_ECHO) "Building GDEF..."
$(SH) '$(CD) source/dudley; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" dudley'
extlib: force
$(QUIET_ECHO) "Building EXTLIB..."
$(SH) '$(CD) source/extlib; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" ib_util'
$(SH) '$(CD) source/extlib; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" ib_udf'
#examples: v5_examples gbak gpre force
#examples: all_example_dbs v5_examples v4_examples force
examples: all_example_dbs v5_examples force
$(QUIET_ECHO) "Building examples directory..."
$(SH) '$(CD) source/examples; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" examples'
fred: gpre force
$(QUIET_ECHO) "Building FRED..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" fred'
gds.h: force
$(QUIET_ECHO) "Building GDS.H..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.h'
codes.h: force
$(QUIET_ECHO) "Building CODES.H..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" codes.h'
gds_server: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_SERVER..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_server'
gdslib.aix gdslib.aix_ppc: $(GPRE) $(EXTERNAL_OBJECTS) force
$(QUIET_ECHO) "Building GDSSHR..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gdsshr.a'
gdslib.apollo: $(GPRE) $(EXTERNAL_OBJECTS) pyxislib force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gdslib'
gdslib.decosf gdslib.sgi gdslib.epson : \
$(GPRE) $(EXTERNAL_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.o'
gdslib.linux: \
$(GPRE) $(EXTERNAL_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.linux'
gdslib.freebsd: \
$(GPRE) $(EXTERNAL_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.linux'
gdslib.netbsd: \
$(GPRE) $(EXTERNAL_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.linux'
gdslib.sco_ev: \
$(GPRE) $(EXTERNAL_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.O'
gdslib.dg gdslib.m88k gdslib.unixware gdslib.ncr3000 gdslib.dg_x86: \
$(GPRE) $(EXTERNAL_P_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.0'
gdslib.solaris: \
$(GPRE) $(EXTERNAL_P_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.so.solaris'
gdslib.hp: $(GPRE) $(EXTERNAL_P_OBJECTS) $(GDS_PYXIS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.sl'
gdslib.imp: $(GPRE) $(EXTERNAL_P_OBJECTS) force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_s.a'
gdslib.sco: $(GPRE) $(EXTERNAL_P_OBJECTS) gds_pyxis.a force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_s.a'
gdslib.sunos4: $(GPRE) $(EXTERNAL_P_OBJECTS) gds_pyxis.a force
$(QUIET_ECHO) "Building GDSLIB..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gdslib.so.1.0'
gds_pipe: $(PIPE_LIBRARY) gds_b.a $(GPRE) force
$(QUIET_ECHO) "Building GDS_PIPE..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_pipe'
gds_b.a: force
$(QUIET_ECHO) "Building GDS_B.A..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_b.a'
gds_pipe.a: force
$(QUIET_ECHO) "Building GDS_PIPE.A..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds_pipe.a'
gds.a: force
$(QUIET_ECHO) "Building GDS.A..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.a'
gds.a.solaris: force
$(QUIET_ECHO) "Building GDS.A.SOLARIS..."
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gds.a.solaris'
gpre: security_c $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GPRE..."
$(SH) '$(CD) source/gpre; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gpre'
security_c: force
$(QUIET_ECHO) "Building security.c ..."
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" security.c'
# Run the codes program (for SUPERSERVER hierarchy),
# thus generating codes.h, iberror.h, etc
# Note the troubling, use of SCODES macro, and source/jrd/codes in the target
# it's a hack to get around the directory structure stuff.
s_run_codes: $(SCODES)
$(QUIET_ECHO) "Running codes in super ..."
$(SH) '$(CD) source/super/jrd; source/jrd/codes'
$(SCODES) : super/source/jrd/codes.e
$(SH) '$(CD) super/source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" codes'
s_security_c: force
$(QUIET_ECHO) "Building security.c ..."
$(SH) '$(CD) source/super/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" security.c'
s_alice: force
$(QUIET_ECHO) "Building met.c ..."
$(SH) '$(CD) source/super/alice; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" met.c'
s_burp: force
$(QUIET_ECHO) "Building restore.c and backup.c ..."
$(SH) '$(CD) source/super/burp; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" restore.c'
$(SH) '$(CD) source/super/burp; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" backup.c'
s_dba: force
$(QUIET_ECHO) "Building dba.e ..."
$(SH) '$(CD) source/super/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" dba.c'
gsec: gpre force
$(QUIET_ECHO) "Building GSEC..."
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gsec'
$(GPRE):
$(QUIET_ECHO) "Building bootstrap version of GPRE..."
#
# gpre_boot needs more work than I've got time for, so we'll build the big one
#
# $(SH) '$(CD) source/gpre; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="builds" gpre_boot'
$(SH) '$(CD) source/gpre; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="builds" gpre'
help: gbak force
$(QUIET_ECHO) "Building the QLI help database..."
$(SETUP_ISC_REMOTE) $(GBAK) $(DBALOGIN) $(HLPDIR)master_help_db $(HELP_GBAK)
-$(RM) $(HELP_GDB)
$(SETUP_ISC_LOCAL) \
$(GBAK) $(DBALOGIN) -r $(HELP_GBAK) $(HELP_GDB)
include_generic: force
$(QUIET_ECHO) "Building the include directory..."
$(CAT) source/jrd/ibase.h source/jrd/gdsold.h > $(INCLUDE_DEST)gds.h
$(CP) source/extlib/ib_util.h $(INCLUDE_DEST)ib_util.h
$(CP) source/jrd/gds.hxx $(INCLUDE_DEST)gds.hxx
$(CP) source/jrd/perf.h $(INCLUDE_DEST)perf.h
$(CP) source/jrd/ibase.h $(INCLUDE_DEST)ibase.h
$(CP) source/jrd/iberror.h $(INCLUDE_DEST)iberror.h
# $(SH) '$(CMP) source/jrd/iberror.h $(INCLUDE_DEST)iberror.h; if [ $$? != 0 ]; then $(CP) source/jrd/iberror.h $(INCLUDE_DEST)iberror.h; fi'
include_apollo: include_generic
$(CP) $(INCLUDE_DEST)gds.h $(INCLUDE_DEST)gds.ins.c
$(ECHO) "sm gds_apollo.f $(INCLUDE_DEST)gds.ins.ftn" >> sm_include
$(ECHO) "sm gds.pas $(INCLUDE_DEST)gds.ins.pas" >> sm_include
$(ECHO) "sm interbase.a $(INCLUDE_DEST)interbase.a" >> sm_include
$(ECHO) "sm interbase_alsys.a $(INCLUDE_DEST)interbase.ada" >> sm_include
$(ECHO) "sm perf.pas $(INCLUDE_DEST)perf.pas" >> sm_include
include_aix: include_generic
$(ECHO) "sm gds_aix.f $(INCLUDE_DEST)gds.f" >> sm_include
include_dg: include_generic
$(ECHO) "sm gds_sun.f $(INCLUDE_DEST)gds.f" >> sm_include
include_dg_x86: include_generic
$(ECHO) "sm gds_sun.f $(INCLUDE_DEST)gds.f" >> sm_include
include_hp: include_generic
$(ECHO) "sm gds_hp.f $(INCLUDE_DEST)gds.f" >> sm_include
include_hp_ada: include_generic
$(ECHO) "sm interbase_hp.a $(INCLUDE_DEST)interbase.ada" >> sm_include
include_sco: include_generic
$(ECHO) "sm interbase_sco.a $(INCLUDE_DEST)interbase.ada" >> sm_include
include_sgi: include_generic
$(ECHO) "sm gds_sun.f $(INCLUDE_DEST)gds.f" >> sm_include
include_so: include_generic
$(CP) source/jrd/gds_sun.f $(INCLUDE_DEST)gds.f
include_so_ada: include_generic
# $(ECHO) "sm interbase_sol.a $(INCLUDE_DEST)interbase.a" >> sm_include
include_sun4: include_generic
$(ECHO) "sm gds_sun.f $(INCLUDE_DEST)gds.f" >> sm_include
$(ECHO) "sm interbase_sun.a $(INCLUDE_DEST)interbase.a" >> sm_include
includes: include_generic $(INCLUDES) force
# $(BIN_PATH)/marion $(MARION_DB) -c jrd -x -v -z < sm_include
# -$(RM) sm_include
inet_server gds_inet_server: $(INET_LIBRARY) $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_INET_SERVER..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" inet_server'
inet_server.a gds_inet_server.a: force
$(QUIET_ECHO) "Building GDS_INET_SERVER.A..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" inet_server.a'
intl: force
$(QUIET_ECHO) "Building INTL..."
$(SH) '$(CD) source/intl; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" intl'
iscinstall: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building ISCINSTALL..."
$(SH) '$(CD) source/register; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" iscinstall'
isql: gpre msgs force
$(QUIET_ECHO) "Building ISQL..."
$(SH) '$(CD) source/isql; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" all'
isqllib.a: isql
$(QUIET_ECHO) "Building interbase/lib/isqllib.a..."
$(SH) '$(CD) source/isql; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" libisqllib.a'
gjrn: $(ACCESS_METHOD) gpre force
$(QUIET_ECHO) "Building GJRN..."
$(SH) '$(CD) source/journal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" gjrn'
journals: gjrn gds_archive gdef gfix gbak force
$(QUIET_ECHO) "Building journal database backup file..."
$(SH) '$(CD) source/journal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" journal.db'
-$(RM) $(JRN_GBAK)
$(COMPRESS_JRN)
$(SETUP_ISC_LOCAL) \
$(GDEF) -z -r source/journal.gdl
$(GFIX) -w sync journal.gdb
$(GBAK) -z journal.gdb $(JRN_GBAK)
$(CHMOD_6) $(JRN_GBAK)
-$(RM) source/journal.gdl source/journal.gdb
locks: lock_print $(LOCK_MANAGER) force
$(QUIET_ECHO) "Building template of IPC configuration file..."
-$(CP) source/lock/config_params source/interbase/isc_config
lock_print gds_lock_print: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_LOCK_PRINT..."
$(SH) '$(CD) source/lock; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" lock_print'
manager gds_lock_manager: $(ACCESS_METHOD) drop force
$(QUIET_ECHO) "Building GDS_LOCK_MANAGER..."
$(SH) '$(CD) source/lock; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" manager'
msgs: $(ACCESS_METHOD) $(LOCK_MANAGER) force
$(QUIET_ECHO) "Building message file(s)..."
$(SH) '$(CD) source/msgs; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" check_messages'
$(SH) '$(CD) source/msgs; check_messages -d $(MSGSDIR)master_msg_db -l'
$(SH) '$(CD) source/msgs; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" interbase.msg'
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" includes.msg'
msgs_intl: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building international message file(s)..."
$(SH) '$(CD) source/msgs; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" locales.msg'
pipe: $(EXTERNAL_OBJECTS) $(PIPE)
pyxis: force
$(QUIET_ECHO) "Building PYXIS..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" objects'
qli: gpre msgs force
$(QUIET_ECHO) "Building QLI..."
$(SH) '$(CD) source/qli; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" qli'
qlilib.a: qli
$(QUIET_ECHO) "Building interbase/lib/qlilib.a..."
$(SH) '$(CD) source/qli; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" libqlilib.a'
register: gpre force
$(QUIET_ECHO) "Building REGISTER..."
$(SH) '$(CD) source/register; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" register'
relay gds_relay: force
$(QUIET_ECHO) "Building GDS_RELAY..."
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" relay'
remote: inet_server $(DNET_SERVER) $(AMBX_SERVER)
spit: force
$(QUIET_ECHO) "Building GSPLIT..."
$(SH) '$(CD) source/burp; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" spit'
super_server: force
$(QUIET_ECHO) "Building super_server... "
$(SH) '$(CD) source/super/remote; $(MAKE) SYSTEM="$(SYSTEM)" super_server'
super_utils: force
$(QUIET_ECHO) "Building super server utlities... "
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" super_server_targets'
utilities: dba relay gsec security_db $(UTILITIES)
security_db: force
$(QUIET_ECHO) "Building the ISC security database..."
-$(RM) $(ISC_GBAK) isc4.gdb
$(SETUP_ISC_LOCAL) \
source/interbase/bin/isql -z -i source/utilities/isc4.sql; \
source/interbase/bin/gdef -z source/utilities/isc4.gdl; \
source/interbase/bin/gsec -da isc4.gdb -add sysdba -pw masterkey; \
$(GBAK) -z isc4.gdb $(ISC_GBAK)
-$(MV) interbase/isc4.gdb interbase/isc4_tmp.gdb
-$(MV) isc4.gdb $(ISC_GDB)
$(CHMOD_6) $(ISC_GBAK) $(ISC_GDB)
-$(RM) isc4.gdb
#
# The V4 intlbld crashes attempting to create a Dialect 3 database
# The sed hack creates it using DIALECT 1
#
v4_examples: v4_dbs
$(QUIET_ECHO) "Building V4 examples directory..."
$(CD) source/example4; \
$(SED) -e s/' year'/' proj_year'/g $(REFDBPATH)/example4/empbuild.e >empbuild.e; \
$(SED) -e s/' year'/' proj_year'/g $(REFDBPATH)/example4/intlbld.e >tmpbld.e; \
$(ECHO) '/EXEC SQL SET SQL DIALECT 1;/d' > sedf; \
$(ECHO) '/EXEC SQL INCLUDE SQLCA;/a\' >> sedf; \
$(ECHO) 'EXEC SQL SET SQL DIALECT 1;' >> sedf; \
$(SED) -f sedf tmpbld.e > intlbld.e; \
$(CP) $(REFDBPATH)/example4/empddl.sql .; \
$(SED) -e s/\(year/\(proj_year/g $(REFDBPATH)/example4/empdml.sql >empdml.sql; \
$(CP) $(REFDBPATH)/example4/intlddl.sql .; \
$(SED) -e s/\(year/\(proj_year/g $(REFDBPATH)/example4/intldml.sql >intldml.sql; \
$(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="builds" v4_examples
v5_examples: v5_dbs
$(QUIET_ECHO) "Building V5 examples directory..."
$(CP) $(REFDBPATH)/example5/empddl.sql example5
$(CP) $(REFDBPATH)/example5/intlddl.sql example5
$(CD) source/example5; \
$(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="builds" v5_examples
wal_print: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_WAL_PRINT..."
$(SH) '$(CD) source/wal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" wal_print'
wal_writer: $(ACCESS_METHOD) force
$(QUIET_ECHO) "Building GDS_WAL_WRITER..."
$(SH) '$(CD) source/wal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" wal_writer'
csi_objects:
$(QUIET_ECHO) "Building CSI OBJECTS..."
$(SH) '$(CD) source/csv; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
dsql_objects:
$(QUIET_ECHO) "Building DSQL OBJECTS..."
$(SH) '$(CD) source/dsql; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
lock.o:
$(QUIET_ECHO) "Building LOCK.O..."
$(SH) '$(CD) source/lock; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
pyxis_objects:
$(QUIET_ECHO) "Building PYXIS OBJECTS..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
pyxlib.o:
$(QUIET_ECHO) "Building PYXLIB.O..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
rem_objects:
$(QUIET_ECHO) "Building REMOTE OBJECTS..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
wal_objects:
$(QUIET_ECHO) "Building WAL OBJECTS..."
$(SH) '$(CD) source/wal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
dsqllib:
$(QUIET_ECHO) "Building DSQLLIB..."
$(SH) '$(CD) source/dsql; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
pyxislib:
$(QUIET_ECHO) "Building PYXISLIB..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
csi_p_objs:
$(QUIET_ECHO) "Building CSI PIC OBJECTS..."
$(SH) '$(CD) source/csv; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
dsql_p_objects:
$(QUIET_ECHO) "Building DSQL PIC OBJECTS..."
$(SH) '$(CD) source/dsql; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
gds_pyxis.a:
$(QUIET_ECHO) "Building GDS_PYXIS.A..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" libpyxis.a'
lock.bin:
$(QUIET_ECHO) "Building LOCK.BIN..."
$(SH) '$(CD) source/lock; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
pyx_p_objects:
$(QUIET_ECHO) "Building PYXIS PIC OBJECTS..."
$(SH) '$(CD) source/pyxis; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
wal_p_objects:
$(QUIET_ECHO) "Building WAL PIC OBJECTS..."
$(SH) '$(CD) source/wal; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
rem_p_objects:
$(QUIET_ECHO) "Building REMOTE PIC OBJECTS..."
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" SYSTEM="$(SYSTEM)" $(@F)'
# Note: So far this target is only available on Solaris
makedepend:
$(QUIET_ECHO) "Building component dependency files..."
$(RM) \
source/alice/depends.mak \
source/burp/depends.mak \
source/csv/depends.mak \
source/dsql/depends.mak \
source/dudley/depends.mak \
source/gpre/depends.mak \
source/intl/depends.mak \
source/lock/depends.mak \
source/isql/depends.mak \
source/journal/depends.mak \
source/jrd/depends.mak \
source/msgs/depends.mak \
source/qli/depends.mak \
source/remote/depends.mak \
source/utilities/depends.mak \
source/wal/depends.mak
$(SH) '$(CD) source/alice; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/burp; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/csv; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/dsql; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/dudley; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/gpre; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/intl; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/lock; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/isql; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/journal; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/jrd; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/msgs; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/qli; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/remote; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/utilities; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
$(SH) '$(CD) source/wal; $(MAKE) CFLAGS="$(CFLAGS)" depends.mak'
clean: clean_executables
-$(RM) \
source/burp/gbaklib.a \
source/super/client/gds.so.0 \
source/examples/refresh \
source/jrd/gdsshr.a source/jrd/gdslib source/jrd/gds.sl \
source/jrd/gds_s.a source/jrd/gdsf_s.a \
source/jrd/gds.so.0 \
source/jrd/gdslib.so.1.0 source/jrd/gdslib.so.0.1 \
source/jrd/gdsflib.so.0.0 \
source/jrd/gds_b.a source/jrd/gds.a source/jrd/gds.a.solaris \
source/jrd/gds_pipe.a \
source/jrd/gdsmt.so.0 \
source/super/jrd/gds_ss.a source/super/client/gdsmt.so.1 \
source/super/client/gds.sl.1 \
source/pyxis/libpyxis.a \
source/qli/qlilib.a \
source/remote/inet_server.a source/remote/dnet_server.a
clean_executables:
-$(RM) \
source/alice/alice \
source/burp/burp \
source/csv/central_server source/csv/csu \
source/dudley/dudley \
source/gpre/gpre \
source/intl/intl \
source/journal/gjrn source/journal/gds_archive \
source/jrd/codes \
source/lock/lock_print source/lock/manager \
source/jrd/gds_pipe \
source/msgs/build_file source/msgs/check_messages \
source/pyxis/fred \
source/qli/qli \
source/register/iscinstall \
source/remote/inet_server source/remote/dnet_server \
source/remote/gds_server \
source/super/remote/super_server \
source/utilities/dba source/utilities/drop source/utilities/gsec \
source/utilities/relay \
source/utilities/ibmgr source/utilities/ibguard \
source/wal/wal_writer
realclean: clean clean_obj clean_build_gdb
$(QUIET_ECHO) "Removed compiled binaries and build files."
clean_obj:
-for ND in ${SRC_DIRS} ; do \
rm $${ND}/*.o ; \
rm $${ND}/*.a ; \
rm $${ND}/*.j ; \
rm $${ND}/*.bin ; \
done
clean_build_gdb:
-$(RM) \
source/example5/*.gdb \
jrd/isc.gdb \
jrd/yachts.gdb \
msgs/msg.gdb
# The installations need to find a better and possibly linux
# specific home. The tar installs should probably work with
# other unix type of systems.
# I have seperated super and classic out since I needed different
# files in each case.
miscFiles: force
$(QUIET_ECHO) "Building miscellaneous install files..."
$(CP) source/$(SYSTEM)/install source/interbase
-$(CP) source/$(SYSTEM)/servers.isc source/interbase
$(CP) source/$(SYSTEM)/inetd.conf.isc source/interbase
$(CP) source/$(SYSTEM)/original/services.isc source/interbase
-$(CP) source/$(SYSTEM)/sys.conf.isc source/interbase
mkdir -p source/interbase/misc
$(CP) firebird/skywalker/install/misc/README source/interbase
$(CP) firebird/skywalker/install/misc/firebird.xinetd source/interbase/misc
superMiscFiles: force
$(QUIET_ECHO) "Building miscellaneous install files..."
$(CP) source/$(SYSTEM)/install source/interbase
-$(CP) source/$(SYSTEM)/servers.isc source/interbase
$(CP) source/$(SYSTEM)/inetd.conf.isc source/interbase
$(CP) source/$(SYSTEM)/original/services.isc source/interbase
-$(CP) source/$(SYSTEM)/sys.conf.isc source/interbase
mkdir -p source/interbase/misc
$(CP) firebird/skywalker/install/misc/README source/interbase
$(CP) firebird/skywalker/install/misc/firebird.init.d.* source/interbase/misc
install: force
make -f firebird/skywalker/install/Makefile install
runclassicinstall: force
make -f firebird/skywalker/install/Makefile runclassicinstall
classicpackages: force
make -f firebird/skywalker/install/Makefile classicpackages
classictarfile: force
make -f firebird/skywalker/install/Makefile classictarfile
classicrpmfile: force
make -f firebird/skywalker/install/Makefile classicrpmfile
superpackages: force
make -f firebird/skywalker/install/Makefile superpackages
supertarfile: force
make -f firebird/skywalker/install/Makefile supertarfile
superrpmfile: force
make -f firebird/skywalker/install/Makefile superrpmfile
force:

270
src/makefiles/buildRefDatabases Executable file
View File

@ -0,0 +1,270 @@
#!/bin/sh
# $Id: buildRefDatabases,v 1.1 2001-07-12 06:32:03 bellardo Exp $
# This file builds the reference databases for both the boot build
# and the normal builds.
printUsage() {
echo "usage is : 'buildRefDatabases [boot]'"
echo " or : 'buildRefDatabases [boot] <destDir>'"
echo " or : 'buildRefDatabases [boot] <srcDir> <destDir>'"
echo ""
echo "usually as:"
echo "sh builds/original/buildRefDatabases"
echo "from the main interbase source directory"
echo "where defaults are srcDir=. and destDir=./refDatabases"
echo ""
}
checkVariables() {
if [ "$INTERBASE" = "" ]
then
INTERBASE="/opt/interbase"
export INTERBASE
fi
if [ "$ISC_PASSWORD" = "" ]
then
ISC_USER="sysdba"
export ISC_USER
ISC_PASSWORD="masterkey"
export ISC_PASSWORD
fi
IBBin=$INTERBASE/bin
export IBBin
# This has become a more core activity of the build process and prompting
# or confirmation is not required since it is always done.
# echo ""
# echo ""
# echo ""
# echo "- Firebird - Reference database build ------------------------"
# echo ""
# echo "Parameters :"
# echo ""
# echo "BootBuildFlg (build using boot kit ) : $BootBuildFlg "
# echo "INTERBASE (installed database root) : $INTERBASE "
# echo "Source code dir root : $IBSrc"
# echo "Dest root dir where to build ref db's : $IBRefDir"
# echo ""
# echo "ISC_USER (admin user) : $ISC_USER"
# echo "ISC_PASSWORD (admin password) : $ISC_PASSWORD"
# echo ""
# echo "If you wish to have different values please set them before running"
# echo "this script"
# echo "usage is : 'buildRefDatabases [boot]'"
# echo " or : 'buildRefDatabases [boot] <destDir>'"
# echo " or : 'buildRefDatabases [boot] <srcDir> <destDir>'"
# echo ""
# AskQuestion "Press return to continue"
}
#--------------------------------------------------------------------
# Ask the user a question.
Answer=""
AskQuestion() {
Test=$1
DefaultAns=$2
echo -n "${1}"
Answer="$DefaultAns"
read Answer
}
#--------------------------------------------------------------------
# Copy a database safely, using gbak
copyDatabase() {
From=$1
To=$2
TmpGbk=`echo $To | sed -e 's/\.gdb$//'`".gbk"
$IBBin/gbak -b $From $TmpGbk
$IBBin/gbak -r $TmpGbk $To
rm $TmpGbk
}
#--------------------------------------------------------------------
# Build the databases needed for a standard interbase build
buildStdDatabases() {
echo "- building std databases"
copyDatabase $INTERBASE/isc4.gdb jrd/isc.gdb
copyDatabase $INTERBASE/help/help.gdb qli/help.gdb
(cd jrd; $IBBin/isql -i $IBSrc/builds_win32/original/metadata.sql)
(cd pyxis; $IBBin/gbak -r $IBSrc/pyxis/forms.gbk forms.gdb)
(cd msgs; $IBBin/gbak -R $IBSrc/msgs/msg.gbak msg.gdb)
(cd utilities; $IBBin/gdef $IBSrc/utilities/rebuild.gdl)
}
#--------------------------------------------------------------------
# Build the databases needed for a Firebird boot build
buildBootStdDatabases() {
echo "- building boot std databases"
# boot make will create this if it does not exist
# (cd jrd; touch metadata.gdb)
# boot make will create this if it does not exist
# touch msgs/msg.gdb
# boot make will create this if it does not exist
# touch qli/help.gdb
touch pyxis/forms.gdb
touch utilities/rebuild.gdb
}
#--------------------------------------------------------------------
# Build the standard examples
buildExampleDatabases() {
echo "- building examples"
(cd examples; $IBBin/gdef $IBSrc/examples/atlas.gdl)
(cd examples; $IBBin/gdef $IBSrc/examples/emp.gdl)
(cd examples; $IBBin/gdef $IBSrc/examples/slides.gdl)
(cd examples; $IBBin/gdef $IBSrc/examples/nc_guide.gdl)
(cd examples; $IBBin/gdef $IBSrc/examples/c_guide.gdl)
(cd examples; $IBBin/gdef $IBSrc/examples/stocks.gdl)
# The following were not used but the source files exist
#(cd examples; $IBBin/gdef $IBSrc/examples/cs_load.gdl)
#(cd examples; $IBBin/gdef $IBSrc/examples/sources.gdl)
#(cd examples; $IBBin/gdef $IBSrc/examples/udf_trig.gdl)
}
#--------------------------------------------------------------------
# Build the standard (4) examples
buildExample4Databases() {
echo "- building examples4"
# Create examples4 db
cd example4
cp $IBSrc/example4/*.sql .
ed empbld.sql <<e_o_f
1,$s/employee.gdb/empbuild.gdb/g
w
q
e_o_f
$IBBin/isql -i empbld.sql
$IBBin/isql -i intlbld.sql
rm -f *.sql
cd ..
}
#--------------------------------------------------------------------
# Build the standard (5) examples
buildExample5Databases() {
# Create examples5 db
cd example5
cp $IBSrc/example5/*.sql .
ed empbld.sql <<e_o_f
1,$s/employee.gdb/empbuild.gdb/g
w
q
e_o_f
$IBBin/isql -i empbld.sql
$IBBin/isql -i intlbld.sql
rm -f *.sql
cd ..
}
#------------------------------------------------------------------------
createRefDir() {
if [ -d $IBRefDir ]
then
rm -rf $IBRefDir
fi
mkdir -p $IBRefDir
}
#== Main Program ==================================================
# Check parameters
# Check for boot build.
BootBuildFlg="No"
if [ $# > 0 ]
then
if [ "$1" = "boot" ]
then
BootBuildFlg="Yes"
shift
fi
if [ "$1" = "noprompt" ]
then
doNotPromptUser="Yes"
fi
fi
# Now check the rest of the parameters
IBSrc=`pwd`
export IBSrc
IBRefDir=refDatabases
export IBRefDir
checkVariables
createRefDir
cd $IBRefDir
mkdir -p msgs qli jrd utilities example4 example5 examples pyxis
if [ $BootBuildFlg = "Yes" ]
then
buildBootStdDatabases
else
buildStdDatabases
buildExampleDatabases
#buildExample4Databases
buildExample5Databases
fi
cd $IBSrc

108
src/makefiles/build_kit Normal file
View File

@ -0,0 +1,108 @@
#!/bin/sh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
# Shell script to build an InterBase kit
if [ $# -lt 2 -o $# -gt 3 ]; then
echo 'Usage: build_kit builds {SUPER | CLASSIC} [ccflags]'
exit 1
fi
# set up the username and password if they have not already been
# set.
if [ "$ISC_PASSWORD" = "" ]
then
ISC_USER="sysdba"
export ISC_USER
ISC_PASSWORD="masterkey"
export ISC_PASSWORD
fi
# The following no longer makes sense, since $1 is always builds, rather
# than the name of the platform. Hence it has been commented out.
# if [ $1 = 'SCO_EV' ]; then
# MAKE=gmake
# else
# MAKE=make
# fi
MAKE=make
if [ "`uname -s`" = "SunOS" ]; then
LM_LICENSE_FILE='/etc/opt/licenses/licenses_combined'
export LM_LICENSE_FILE
fi
CURDIR=`pwd`
HOSTNAME=`hostname | cut -d'.' -f1`
ISC_MSGS=$CURDIR/interbase/interbase.msg
INTERBASE=$CURDIR/interbase
export ISC_MSGS
export INTERBASE
if [ "`uname -s`" = "SunOS" ] ; then
CC_PATH=/netapp/apps/lang/workshop/5.1/SUNWspro/bin
else if [ "`uname -sr`" = "HP-UX B.10.20" ]; then
CC_PATH=/opt/softbench/bin
else
CC_PATH=
fi
fi
#
LD_LIBRARY_PATH=$CURDIR/jrd:$CURDIR/interbase/lib
SHLIB_PATH=$CURDIR/jrd
export LD_LIBRARY_PATH
export SHLIB_PATH
PATH=.:/netapp/apps/isc/bin:$CURDIR/interbase/bin:/usr/interbase/bin:/usr/gds.${HOSTNAME}/bin:${CC_PATH}:/usr/ccs/bin:/bin:/usr/bin:$PATH
export PATH
#Build superserver if directory source/super exists
if [ $2 = SUPER ]; then
make super_firebird
else
make firebird
fi
#if [ $2 = SUPER ]; then
# GDS_SUPER="super_targets"
# export GDS_SUPER
#fi
#if [ $# = 2 ]; then
# $MAKE -f ./make_kit interbase SYSTEM=$1 SUPER_SERVER="$GDS_SUPER"
#else
# $MAKE -f ./make_kit interbase CFLAGS="$3" SYSTEM=$1 SUPER_SERVER="$GDS_SUPER"
#fi
STATUS=$?
#removed rasu ./unset_prot builder according to inprise tree
# and to get rid of this annoying rasu not found message
#FSG 093000
if [ $STATUS = 0 ]; then
exit 0
else
exit 1
fi

164
src/makefiles/build_kit.bat Normal file
View File

@ -0,0 +1,164 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
set ISC_USER=builder
set ISC_PASSWORD=builder
touch dsql\parse.c
rem The above is to prevent the make from trying to yacc and sed parse.c,
rem which destroys the file on nt builds. This should be moved into the
rem make file at some point -reed
cmd /c "cd jrd && nmake gds.h"
if errorlevel 1 goto end
cmd /c "cd dsql && nmake dsql_objects"
if errorlevel 1 goto end
cmd /c "cd lock && nmake lock.obj"
if errorlevel 1 goto end
cmd /c "cd remote && nmake rem_objects"
if errorlevel 1 goto end
cmd /c "cd intl && nmake intl_objects"
if errorlevel 1 goto end
cmd /c "cd wal && nmake wal_objects"
if errorlevel 1 goto end
cmd /c "cd jrd && nmake gdsshr.dll"
if errorlevel 1 goto end
rem cmd /c "cd jrd && nmake gdsshr_ss.dll"
rem if errorlevel 1 goto end
rem cmd /c "cd jrd && nmake gds_b.lib"
rem if errorlevel 1 goto end
rem cmd /c "cd client && nmake gdsshr.dll"
rem if errorlevel 1 goto end
cmd /c "cd gpre && nmake gpre.exe"
if errorlevel 1 goto end
cmd /c "cd msgs && nmake check_messages.exe"
if errorlevel 1 goto end
cmd /c "cd msgs && check_messages -d yoda:/usr/gds.yoda/dev/msgs/master_msg_db"
if errorlevel 1 goto end
cmd /c "cd msgs && nmake interbase.msg"
if errorlevel 1 goto end
cmd /c "cd jrd && nmake includes.msg"
if errorlevel 1 goto end
cmd /c "cd dudley && nmake dudley.exe"
if errorlevel 1 goto end
cmd /c "cd intl && nmake intl"
if errorlevel 1 goto end
cmd /c "cd isql && nmake isql.exe"
if errorlevel 1 goto end
cmd /c "cd burp && nmake burp.exe"
if errorlevel 1 goto end
cmd /c "cd qli && nmake qli.exe"
if errorlevel 1 goto end
cmd /c "cd lock && nmake lock_print.exe"
if errorlevel 1 goto end
copy lock\config_params interbase\isc_config
cmd /c "cd remote && nmake nt_server.exe"
if errorlevel 1 goto end
cmd /c "cd alice && nmake alice.exe"
if errorlevel 1 goto end
cmd /c "cd journal && nmake gjrn.exe"
if errorlevel 1 goto end
cmd /c "cd journal && nmake gds_archive.exe"
if errorlevel 1 goto end
cmd /c "cd journal && nmake journal.db"
if errorlevel 1 goto end
cmd /c "cd journal && ..\compress_dbs ..\journal.gdl"
set SAVE_USER=%ISC_USER%
set SAVE_PASSWORD=%ISC_PASSWORD%
set ISC_USER=sysdba
set ISC_PASSWORD=masterkey
interbase\bin\gdef -z -r journal.gdl
interbase\bin\gbak -z journal.gdb interbase/bin/journal.gbak
set ISC_USER=%SAVE_USER%
set ISC_PASSWORD=%SAVE_PASSWORD%
del journal.gdl journal.gdb
cmd /c "cd wal && nmake wal_writer.exe"
if errorlevel 1 goto end
cmd /c "cd wal && nmake wal_print.exe"
if errorlevel 1 goto end
cmd /c "cd wal && nmake driver.exe"
if errorlevel 1 goto end
cmd /c "cd utilities && nmake dba.exe"
if errorlevel 1 goto end
cmd /c "cd utilities && nmake gsec.exe"
if errorlevel 1 goto end
cmd /c "cd utilities && nmake install_reg.exe"
if errorlevel 1 goto end
cmd /c "cd utilities && nmake install_svc.exe"
if errorlevel 1 goto end
del isc4.gdb
set SAVE_USER=%ISC_USER%
set SAVE_PASSWORD=%ISC_PASSWORD%
set ISC_USER=sysdba
set ISC_PASSWORD=masterkey
interbase\bin\isql -z -i utilities\isc4.sql
interbase\bin\gdef -z utilities\isc4.gdl
interbase\bin\gsec -da isc4.gdb -add sysdba -pw masterkey
interbase\bin\gbak -z isc4.gdb interbase\bin\isc4.gbk
set ISC_USER=%SAVE_USER%
set ISC_PASSWORD=%SAVE_PASSWORD%
copy isc4.gdb interbase\isc4.gdb
del isc4.gdb
echo sm ibase.h interbase\include\ibase.h > sm_include
echo sm perf.h interbase\include\perf.h >> sm_include
echo sm ibase.h >> sm_include
echo sm gdsold.h >> sm_include
marion -c jrd -x -v -z -d yoda:/usr/gds.yoda/dev/marion.gdb < sm_include
copy ibase.h+gdsold.h interbase\include\gds.h
del sm_include ibase.h gdsold.h
set SAVE_USER=%ISC_USER%
set SAVE_PASSWORD=%ISC_PASSWORD%
set ISC_USER=sysdba
set ISC_PASSWORD=masterkey
cmd /c "cd examples && nmake examples"
if errorlevel 1 goto end
cmd /c "cd example4 && nmake v4_examples"
if errorlevel 1 goto end
interbase\bin\gbak yoda:/usr/gds.yoda/dev/qli/master_help_db interbase\help\help.gbk
del interbase\help\help.gdb
interbase\bin\gbak -r interbase\help\help.gbk interbase\help\help.gdb
set ISC_USER=%SAVE_USER%
set ISC_PASSWORD=%SAVE_PASSWORD%
cmd /c "cd msgs && nmake locales.msg"
if errorlevel 1 goto end
copy interbase\isc_config interbase\ibconfig
del interbase\isc_config
copy interbase\isc_ins.hlp interbase\ib_instl.hlp
del interbase\isc_ins.hlp
copy interbase\interbase.msg interbase\interbas.msg
del interbase\interbase.msg
copy interbase\bin\journal.gbak interbase\bin\journal.gbk
del interbase\bin\journal.gbak
copy interbase\bin\gds_archive.exe interbase\bin\ibarchiv.exe
del interbase\bin\gds_archive.exe
copy interbase\bin\gds_install.exe interbase\bin\instreg.exe
del interbase\bin\gds_install.exe
copy interbase\bin\gds_install_service.exe interbase\bin\instsvc.exe
del interbase\bin\gds_install_service.exe
copy interbase\bin\gds_lock_print.exe interbase\bin\iblockpr.exe
del interbase\bin\gds_lock_print.exe
copy interbase\bin\gds_remote_server.exe interbase\bin\ibremote.exe
del interbase\bin\gds_remote_server.exe
copy interbase\bin\gds_wal_print.exe interbase\bin\ibwalpr.exe
del interbase\bin\gds_wal_print.exe
copy interbase\bin\gds_wal_writer.exe interbase\bin\ibwalwrt.exe
del interbase\bin\gds_wal_writer.exe
copy interbase\bin\iscinstall.exe interbase\bin\ibinstal.exe
del interbase\bin\iscinstall.exe
copy interbase\examples\v3\*.gbak interbase\examples\v3\*.gbk
del interbase\examples\v3\*.gbak
:end

154
src/makefiles/build_kit.cmd Normal file
View File

@ -0,0 +1,154 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
set ISC_USER=builder
set ISC_PASSWORD=builder
cmd /c "cd jrd && make gds.h"
if errorlevel 1 goto end
cmd /c "cd dsql && make dsql_objects"
if errorlevel 1 goto end
cmd /c "cd lock && make lock.obj"
if errorlevel 1 goto end
cmd /c "cd remote && make rem_objects"
if errorlevel 1 goto end
cmd /c "cd intl && make intl_objects"
if errorlevel 1 goto end
cmd /c "cd wal && make wal_objects"
if errorlevel 1 goto end
cmd /c "cd jrd && make gdsshr.dll"
if errorlevel 1 goto end
rem cmd /c "cd jrd && make gds_b.lib"
rem if errorlevel 1 goto end
cmd /c "cd gpre && make gpre.exe"
if errorlevel 1 goto end
cmd /c "cd msgs && make check_messages.exe"
if errorlevel 1 goto end
cmd /c "cd msgs && check_messages -d yoda:/usr/gds/dev/msgs/master_msg_db"
if errorlevel 1 goto end
cmd /c "cd msgs && make interbase.msg"
if errorlevel 1 goto end
cmd /c "cd jrd && make includes.msg"
if errorlevel 1 goto end
cmd /c "cd dudley && make dudley.exe"
if errorlevel 1 goto end
cmd /c "cd intl && make intl"
if errorlevel 1 goto end
cmd /c "cd isql && make isql.exe"
if errorlevel 1 goto end
cmd /c "cd burp && make burp.exe"
if errorlevel 1 goto end
cmd /c "cd qli && make qli.exe"
if errorlevel 1 goto end
cmd /c "cd lock && make lock_print.exe"
if errorlevel 1 goto end
copy lock\config_params interbase\isc_config
cmd /c "cd remote && make inet_server.exe"
if errorlevel 1 goto end
cmd /c "cd alice && make alice.exe"
if errorlevel 1 goto end
cmd /c "cd journal && make gjrn.exe"
if errorlevel 1 goto end
cmd /c "cd journal && make gds_archive.exe"
if errorlevel 1 goto end
cmd /c "cd journal && make journal.db"
if errorlevel 1 goto end
cmd /c "cd journal && ..\compress_dbs ..\journal.gdl"
set SAVE_USER=%ISC_USER%
set SAVE_PASSWORD=%ISC_PASSWORD%
set ISC_USER=sysdba
set ISC_PASSWORD=masterkey
interbase\bin\gdef -z -r journal.gdl
interbase\bin\gbak -z journal.gdb interbase/bin/journal.gbak
set ISC_USER=%SAVE_USER%
set ISC_PASSWORD=%SAVE_PASSWORD%
del journal.gdl journal.gdb
cmd /c "cd wal && make wal_writer.exe"
if errorlevel 1 goto end
cmd /c "cd wal && make wal_print.exe"
if errorlevel 1 goto end
cmd /c "cd wal && make driver.exe"
if errorlevel 1 goto end
cmd /c "cd utilities && make dba.exe"
if errorlevel 1 goto end
cmd /c "cd utilities && make gsec.exe"
if errorlevel 1 goto end
rem cmd /c "cd utilities && make install_reg.exe"
rem if errorlevel 1 goto end
rem cmd /c "cd utilities && make install_svc.exe"
rem if errorlevel 1 goto end
del isc4.gdb
set SAVE_USER=%ISC_USER%
set SAVE_PASSWORD=%ISC_PASSWORD%
set ISC_USER=sysdba
set ISC_PASSWORD=masterkey
interbase\bin\isql -z -i utilities\isc4.sql
interbase\bin\gdef -z utilities\isc4.gdl
interbase\bin\gsec -da isc4.gdb -add sysdba -pw masterkey
interbase\bin\gbak -z isc4.gdb interbase\bin\isc.gbk
set ISC_USER=%SAVE_USER%
set ISC_PASSWORD=%SAVE_PASSWORD%
ren isc4.gdb interbase\isc4.gdb
echo sm ibase.h interbase\include\ibase.h > sm_include
echo sm perf.h interbase\include\perf.h >> sm_include
echo sm ibase.h >> sm_include
echo sm gdsold.h >> sm_include
marion -c jrd -x -v -z -d yoda:/usr/gds/dev/marion.gdb < sm_include
copy ibase.h+gdsold.h interbase\include\gds.h
del sm_include ibase.h gdsold.h
cmd /c "cd examples && make examples"
if errorlevel 1 goto end
set SAVE_USER=%ISC_USER%
set SAVE_PASSWORD=%ISC_PASSWORD%
set ISC_USER=sysdba
set ISC_PASSWORD=masterkey
cmd /c "cd example4 && make v4_examples"
if errorlevel 1 goto end
interbase\bin\gbak yoda:/usr/gds/dev/qli/master_help_db interbase\help\help.gbk
del interbase\help\help.gdb
interbase\bin\gbak -r interbase\help\help.gbak interbase\help\help.gdb
set ISC_USER=%SAVE_USER%
set ISC_PASSWORD=%SAVE_PASSWORD%
cmd /c "cd msgs && make locales.msg"
if errorlevel 1 goto end
copy interbase\isc_config interbase\ibconfig
del interbase\isc_config
copy interbase\isc_ins.hlp interbase\ib_instl.hlp
del interbase\isc_ins.hlp
copy interbase\interbase.msg interbase\interbas.msg
del interbase\interbase.msg
copy interbase\bin\journal.gbak interbase\bin\journal.gbk
del interbase\bin\journal.gbak
copy interbase\bin\gds_archive.exe interbase\bin\ibarchiv.exe
del interbase\bin\gds_archive.exe
rem copy interbase\bin\gds_install.exe interbase\bin\instreg.exe
rem del interbase\bin\gds_install.exe
rem copy interbase\bin\gds_install_service.exe interbase\bin\instsvc.exe
rem del interbase\bin\gds_install_service.exe
copy interbase\bin\gds_lock_print.exe interbase\bin\iblockpr.exe
del interbase\bin\gds_lock_print.exe
copy interbase\bin\gds_inet_server.exe interbase\bin\ibremote.exe
del interbase\bin\gds_inet_server.exe
copy interbase\bin\gds_wal_print.exe interbase\bin\ibwalpr.exe
del interbase\bin\gds_wal_print.exe
copy interbase\bin\gds_wal_writer.exe interbase\bin\ibwalwrt.exe
del interbase\bin\gds_wal_writer.exe
copy interbase\bin\iscinstall.exe interbase\bin\ibinstal.exe
del interbase\bin\iscinstall.exe
copy interbase\examples\v3\*.gbak interbase\examples\v3\*.gbk
del interbase\examples\v3\*.gbak
:end

111
src/makefiles/ccs.sco Normal file
View File

@ -0,0 +1,111 @@
#!/bin/ksh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
scriptname="$0"
step="$1"
keywords="$2"
pkglist="$3"
# Source in the standard functions library, ccsSetup.sh
. ccsSetup.sh
doPreLoad() {
if [ -e /usr/interbase ]
then
echo
echo
echo "----------------***** ERROR *****-----------------"
echo "/usr/interbase existing on the system. "
echo
echo "Aborting installation ...."
echo
echo "You must remove an active existing installation of Interbase"
echo "from the system before attempting to install this one."
echo "For further details, please refer to the release notes"
echo "included on the media."
echo
echo
ccs_return_value=1
fi
}
doPostExport() {
/usr/interbase/install
# Extract the InterBase version and save it in .version file
/usr/interbase/bin/gpre -z 2>/dev/null | head -1 | cut -d' ' -f3 > $SSO_CLIENT_ROOT/.version
# Copy .version file to /usr/interbase for cross checking during removal
cp $SSO_CLIENT_ROOT/.version /usr/interbase
echo
echo
echo "----------------***** IMPORTANT *****-----------------"
echo "Please read release notes in /usr/interbase/ReleaseNotes.txt"
echo "or /usr/interbase/ReleaseNotes.html. They contain important"
echo "information about this version of InterBase on SCO and"
echo "instructions on how to access other products and"
echo "documents on the CD-ROM"
echo
echo
}
doPreUnexport() {
if [ -d /usr/interbase ]
then
# Check whether /usr/interbase contains exactly the
# same version that is being removed and only then remove.
if cmp /usr/interbase/.version $SSO_CLIENT_ROOT/.version
then
touch /tmp/.RMIBDIR
fi
fi
}
doPostUnload() {
if [ -f /tmp/.RMIBDIR ]
then
rm -rf /usr/interbase
rm -f /tmp/.RMIBDIR
rm -rf /usr/include/gds.h
rm -rf /usr/include/ibase.h
rm -rf /usr/lib/libgds*
else
# Either /usr/interbase does not contain a .version
# or it contains a .version which is different from
# $SSO_CLIENT_ROOT/.version. So don't remove
# /usr/interbase
echo
echo
echo "Warning"
echo "-------"
echo "The package has been removed from the system but"
echo "/usr/interbase contains a version other than the one"
echo "you are trying to remove."
echo "Hence /usr/interbase has not been removed."
echo
echo
fi
}
ccs_return_value=0
case "$step" in
PRE_LOAD) doPreLoad ;;
POST_EXPORT) doPostExport ;;
PRE_UNEXPORT) doPreUnexport ;;
POST_UNLOAD) doPostUnload ;;
esac
exit $ccs_return_value

View File

@ -0,0 +1,35 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
MACROS:
DEFAULT_EXEC_MODE = 0755
DEFAULT_FILE_MODE = 0644
DEFAULT_FILE_OWNER = bin
DEFAULT_FILE_GROUP = bin
DEFAULT_DIR_MODE = 0755
DEFAULT_DIR_OWNER = bin
DEFAULT_DIR_GROUP = bin
DEFAULT_FIFO_MODE = 0644
DEFAULT_FIFO_OWNER = bin
DEFAULT_FIFO_GROUP = bin
DEFAULT_DISTTREEROOT = /usr/gds.sco6/custom
DEFAULT_DISTTREEROOT_SHARED = /usr/gds.sco6/custom
DEFAULT_DISTTREEROOT_CLIENT = /usr/gds.sco6/custom

View File

@ -0,0 +1,30 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
s?\"$(DB_DIR)/jrd/yachts.lnk\"?\"yachts.lnk\"?g
s?\"$(DB_DIR)/journal/journal.gdb\"?\"journal.gdb\"?g
s?\"$(DB_DIR)/msgs/msg.gdb\"?\"msg.gdb\"?g
s?\"$(DB_DIR)/jrd/codes.gdb\"?\"codes.gdb\"?g
s?\"$(DB_DIR)/msgs/master_msg_db\"?\"master_msg_db\"?g
s?\"$(DB_DIR)/pyxis/forms.gdb\"?\"forms.gdb\"?g
s?\"$(DB_DIR)/qli/yachts.link\"?\"yachts.link\"?g
s?\"$(DB_DIR)/qli/master_help_db\"?\"master_help_db\"?g
s?\"$(DB_DIR)/qli/help.gdb\"?\"help.gdb\"?g
s?\"$(DB_DIR)/jrd/yachts.gdb\"?\"yachts.gdb\"?g
s?\"$(DB_DIR)/jrd/isc.gdb\"?\"isc.gdb\"?g
s?\"$(DB_DIR)/example4/empbuild.gdb\"?\"empbuild.gdb\"?g
s?\"$(DB_DIR)/example5/empbuild.gdb\"?\"empbuild.gdb\"?g
s?\"$(DB_DIR)/utilities/rebuild.gdb\"?\"rebuild.gdb\"?g

View File

@ -0,0 +1,26 @@
#!/bin/sh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
if [ $# != 1 ]
then
echo "Usage: compress_dbs filename"
exit 1
fi
echo "Compressing DB in... $1"
sed -f source/$(SYSTEM)/compress.sed $1 > ./sed.TMP
mv ./sed.TMP $1
exit 0

View File

@ -0,0 +1,30 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
@echo off
if "%1" == "" goto err
if not "%2" == "" goto err
echo Compressing DB in... %1
sed -f ..\$(SYSTEM)\compress.sed %1 > .\sed.TMP
copy .\sed.TMP %1
del .\sed.TMP
goto end
:err
echo "Usage: compress_dbs filename"
:end

View File

@ -0,0 +1,6 @@
@SET_MAKE@
all: firebird
firebird:
cd generated && $(MAKE) SYSTEM="builds" firebird

1371
src/makefiles/config/config.guess vendored Executable file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,63 @@
#ifndef AUTOCONFIG_H
#define AUTOCONFIG_H
/* Headers */
#undef HAVE_UNISTD_H
#undef HAVE_FCNTL_H
#undef HAVE_SYS_TYPES_H
#undef HAVE_TIME_H
#undef HAVE_SYS_TIME_H
#undef HAVE_SYS_STAT_H
#undef HAVE_CTYPE_H
#undef HAVE_SYS_UIO_H
#undef HAVE_SYS_WAIT_H
#undef HAVE_VARARGS_H
#undef HAVE_STDARG_H
#undef HAVE_STRING_H
/* Is the platform big endian? */
#define WORDS_BIGENDIAN 0
/* CPU types */
#undef PowerPC
#undef sparc
#undef i386
#undef mips
#undef alpha
/* various OS efforts */
#undef DARWIN
#undef LINUX
#undef FREEBSD
#undef NETBSD
#undef apollo
#undef sun
#undef SOLARIS
#undef MAC
#undef NeXT
#undef hpux
#undef ultrix
#undef PC_PLATFORM
#undef NETWARE_386
#undef WINDOWS_ONLY
#undef VMS
#undef AIX
#undef OS2_ONLY
#undef WIN_NT
#undef SCO_EV
#undef DGUX
#undef DECOSF
#undef sgi
#undef mpexl
#undef _CRAY
#undef DELTA
#undef M88K
#undef UNIXWARE
#undef NCR3000
#undef IMP
#undef EPSON
#endif

1362
src/makefiles/config/config.sub vendored Executable file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,73 @@
AC_INIT(src)
AC_CONFIG_AUX_DIR(src/makefiles/config)
AC_CACHE_VAL(ac_cv_prog_make_set, [AC_PROG_MAKE_SET])
AC_CONFIG_HEADER(generated/jrd/autoconfig.h:src/makefiles/config/config.h.in)
AC_CANONICAL_SYSTEM
AC_PROG_AWK
AC_PROG_CC
AC_PROG_CXX
AC_PROG_LEX
AC_PROG_LN_S
AC_PROG_RANLIB
AC_PROG_YACC
AC_CHECK_HEADERS(unistd.h)
AC_CHECK_HEADERS(fcntl.h)
AC_CHECK_HEADERS(sys/types.h)
AC_CHECK_HEADERS(sys/stat.h)
AC_CHECK_HEADERS(sys/uio.h)
AC_CHECK_HEADERS(sys/wait.h)
AC_CHECK_HEADERS(varargs.h)
AC_CHECK_HEADERS(stdarg.h)
AC_CHECK_HEADERS(ctype.h)
AC_CHECK_HEADERS(time.h)
AC_CHECK_HEADERS(sys/time.h)
AC_CHECK_HEADERS(string.h)
AC_C_BIGENDIAN
case "$target_cpu" in
powerpc) AC_DEFINE(PowerPC) ;;
esac
case "$target" in
*-*-darwin*) MAKEFILE_PREFIX=prefix.darwin ; PLATFORM=DARWIN ; AC_DEFINE(DARWIN);;
*-*-freebsd*) MAKEFILE_PREFIX=prefix.freebsd ; PLATFORM=FREEBSD ; AC_DEFINE(FREEBSD);;
*-*-linux*) MAKEFILE_PREFIX=prefix.linux ; PLATFORM=LINUX ; AC_DEFINE(linux) ;;
*-*-netbsd*) MAKEFILE_PREFIX=prefix.netbsd ; PLATFORM=NETBSD ; AC_DEFINE(NETBSD) ;;
*-apollo-*) MAKEFILE_PREFIX=prefix.apollo ; PLATFORM=apollo ; AC_DEFINE(apollo) ;;
*-*-hpux*) MAKEFILE_PREFIX=prefix.hpux ; PLATFORM=hpux ; AC_DEFINE(hpux) ;;
esac
AC_SUBST(PLATFORM)
ln -fs ../src/makefiles/${MAKEFILE_PREFIX} generated/.prefix.platform
AC_OUTPUT( \
generated/alice/Makefile:generated/.prefix.platform:src/makefiles/sfx.alice \
generated/burp/Makefile:generated/.prefix.platform:src/makefiles/sfx.burp \
generated/csv/Makefile:generated/.prefix.platform:src/makefiles/sfx.csv \
generated/dbs/Makefile:generated/.prefix.platform:src/makefiles/sfx.dbs \
generated/dsql/Makefile:generated/.prefix.platform:src/makefiles/sfx.dsql \
generated/dudley/Makefile:generated/.prefix.platform:src/makefiles/sfx.dudley \
generated/example5/Makefile:generated/.prefix.platform:src/makefiles/sfx.example5 \
generated/extlib/Makefile:generated/.prefix.platform:src/makefiles/sfx.extlib \
generated/gpre/Makefile:generated/.prefix.platform:src/makefiles/sfx.gpre \
generated/intl/Makefile:generated/.prefix.platform:src/makefiles/sfx.intl \
generated/isql/Makefile:generated/.prefix.platform:src/makefiles/sfx.isql \
generated/journal/Makefile:generated/.prefix.platform:src/makefiles/sfx.journal \
generated/jrd/Makefile:generated/.prefix.platform:src/makefiles/sfx.jrd \
generated/lock/Makefile:generated/.prefix.platform:src/makefiles/sfx.lock \
generated/msgs/Makefile:generated/.prefix.platform:src/makefiles/sfx.msgs \
generated/pipe/Makefile:generated/.prefix.platform:src/makefiles/sfx.pipe \
generated/pyxis/Makefile:generated/.prefix.platform:src/makefiles/sfx.pyxis \
generated/qli/Makefile:generated/.prefix.platform:src/makefiles/sfx.qli \
generated/remote/Makefile:generated/.prefix.platform:src/makefiles/sfx.remote \
generated/utilities/Makefile:generated/.prefix.platform:src/makefiles/sfx.utilities \
generated/wal/Makefile:generated/.prefix.platform:src/makefiles/sfx.wal \
generated/Makefile:generated/.prefix.platform:src/makefiles/sfx.firebird \
Makefile:src/makefiles/config/Makefile.in \
)

251
src/makefiles/config/install-sh Executable file
View File

@ -0,0 +1,251 @@
#!/bin/sh
#
# install - install a program, script, or datafile
# This comes from X11R5 (mit/util/scripts/install.sh).
#
# Copyright 1991 by the Massachusetts Institute of Technology
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of M.I.T. not be used in advertising or
# publicity pertaining to distribution of the software without specific,
# written prior permission. M.I.T. makes no representations about the
# suitability of this software for any purpose. It is provided "as is"
# without express or implied warranty.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch. It can only install one file at a time, a restriction
# shared with many OS's install programs.
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
transformbasename=""
transform_arg=""
instcmd="$mvprog"
chmodcmd="$chmodprog 0755"
chowncmd=""
chgrpcmd=""
stripcmd=""
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=""
dst=""
dir_arg=""
while [ x"$1" != x ]; do
case $1 in
-c) instcmd="$cpprog"
shift
continue;;
-d) dir_arg=true
shift
continue;;
-m) chmodcmd="$chmodprog $2"
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
-s) stripcmd="$stripprog"
shift
continue;;
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
shift
continue;;
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
shift
continue;;
*) if [ x"$src" = x ]
then
src=$1
else
# this colon is to work around a 386BSD /bin/sh bug
:
dst=$1
fi
shift
continue;;
esac
done
if [ x"$src" = x ]
then
echo "install: no input file specified"
exit 1
else
:
fi
if [ x"$dir_arg" != x ]; then
dst=$src
src=""
if [ -d $dst ]; then
instcmd=:
chmodcmd=""
else
instcmd=$mkdirprog
fi
else
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if [ -f $src -o -d $src ]
then
:
else
echo "install: $src does not exist"
exit 1
fi
if [ x"$dst" = x ]
then
echo "install: no destination specified"
exit 1
else
:
fi
# If destination is a directory, append the input filename; if your system
# does not like double slashes in filenames, you may need to add some logic
if [ -d $dst ]
then
dst="$dst"/`basename $src`
else
:
fi
fi
## this sed command emulates the dirname command
dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Make sure that the destination directory exists.
# this part is taken from Noah Friedman's mkinstalldirs script
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
defaultIFS='
'
IFS="${IFS-${defaultIFS}}"
oIFS="${IFS}"
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
IFS="${oIFS}"
pathcomp=''
while [ $# -ne 0 ] ; do
pathcomp="${pathcomp}${1}"
shift
if [ ! -d "${pathcomp}" ] ;
then
$mkdirprog "${pathcomp}"
else
:
fi
pathcomp="${pathcomp}/"
done
fi
if [ x"$dir_arg" != x ]
then
$doit $instcmd $dst &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else : ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else : ; fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else : ; fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else : ; fi
else
# If we're going to rename the final executable, determine the name now.
if [ x"$transformarg" = x ]
then
dstfile=`basename $dst`
else
dstfile=`basename $dst $transformbasename |
sed $transformarg`$transformbasename
fi
# don't allow the sed command to completely eliminate the filename
if [ x"$dstfile" = x ]
then
dstfile=`basename $dst`
else
:
fi
# Make a temp file name in the proper directory.
dsttmp=$dstdir/#inst.$$#
# Move or copy the file name to the temp name
$doit $instcmd $src $dsttmp &&
trap "rm -f ${dsttmp}" 0 &&
# and set any options; do chmod last to preserve setuid bits
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $instcmd $src $dsttmp" command.
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else :;fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else :;fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else :;fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else :;fi &&
# Now rename the file to the real destination.
$doit $rmcmd -f $dstdir/$dstfile &&
$doit $mvcmd $dsttmp $dstdir/$dstfile
fi &&
exit 0

130
src/makefiles/copy_makes Normal file
View File

@ -0,0 +1,130 @@
#!/bin/sh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
# This procedure refreshes the support and makefiles for non-link systems
#
SYSTEM=$(SYSTEM)
#
# Alice
cp $SYSTEM/make.alice alice/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.alice_ss $SYSTEM/super/alice/makefile
fi
# Burp
cp $SYSTEM/make.burp burp/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.burp_ss $SYSTEM/super/burp/makefile
fi
# Client
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.client client/makefile
fi
# Csv
cp $SYSTEM/make.csv csv/makefile
# Dsql
cp $SYSTEM/make.dsql dsql/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.dsql_ss $SYSTEM/super/dsql/makefile
fi
# Dudley
cp $SYSTEM/make.dudley dudley/makefile
# Examples
cp $SYSTEM/make.examples examples/makefile
# V4 Examples
cp $SYSTEM/make.example4 example4/makefile
# V5 Examples
cp $SYSTEM/make.example5 example5/makefile
# Gpre
cp $SYSTEM/make.gpre gpre/makefile
# Intl
cp $SYSTEM/make.intl intl/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.intl_ss $SYSTEM/super/intl/makefile
fi
# Isql
cp $SYSTEM/make.isql isql/makefile
# Journal
cp $SYSTEM/make.journal journal/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.journal_ss $SYSTEM/super/journal/makefile
fi
# Jrd
cp $SYSTEM/make.jrd jrd/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.jrd_ss $SYSTEM/super/jrd/makefile
fi
# Lock
cp $SYSTEM/make.lock lock/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.lock_ss $SYSTEM/super/lock/makefile
fi
# Msgs
cp $SYSTEM/make.msgs msgs/makefile
# Pipe
cp $SYSTEM/make.pipe pipe/makefile
# Pyxis
cp $SYSTEM/make.pyxis pyxis/makefile
# Qli
cp $SYSTEM/make.qli qli/makefile
# Remote
cp $SYSTEM/make.remote remote/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.remote_ss $SYSTEM/super/remote/makefile
fi
# Utilities
cp $SYSTEM/make.utilities utilities/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.utilities_ss $SYSTEM/super/utilities/makefile
fi
if [ $SYSTEM != 'WIN_NT' -a $SYSTEM != 'OS2' -a $SYSTEM != 'WIN_NTS' ]; then
SECURITY='utilities/scrty_unix.gdl'
else
SECURITY='utilities/scrty_unix.gdl'
fi
if [ -f $SECURITY ]; then
cp $SECURITY utilities/security.gdl
fi
# Wal
cp $SYSTEM/make.wal wal/makefile
if [ -d $SYSTEM/super ]; then
cp $SYSTEM/make.wal_ss $SYSTEM/super/wal/makefile
fi
# Top level
cp $SYSTEM/make.interbase make_kit
#
# miscellaneous
cp $SYSTEM/original/v3meta testing/v3meta
if [ $SYSTEM = 'WIN_NT' -o $SYSTEM = 'OS2' -o $SYSTEM = 'WIN_NTS' ]; then
cp $SYSTEM/original/bind_gds.win_nt jrd/gds.bind
if [ $SYSTEM = 'WIN_NT' -o $SYSTEM = 'WIN_NTS' ]; then
cp $SYSTEM/original/bind_gds_rsp.win_nt jrd/gds.rsp
else
cp $SYSTEM/original/bind_gds_rsp.\os2 jrd/gds.rsp
fi
cp $SYSTEM/original/bind_gdsintl.win_nt intl/gdsintl.bind
else
cp $SYSTEM/original/install.nolink $SYSTEM/install
#
# IMPORTANT!!!!!!!!!!
#
# The following should be set for...
# inetd.conf.unx = gds_inet_server
# inetd.conf.psx = gds_inet_srvr (14 character limit)
#
# cp $SYSTEM/original/inetd.conf.unx $SYSTEM/inetd.conf.isc
cp $SYSTEM/original/inetd.conf.psx $SYSTEM/inetd.conf.isc
fi

185
src/makefiles/copy_set_prot Normal file
View File

@ -0,0 +1,185 @@
#!/bin/sh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
# Shell script to set the protections on files in
# the installation directory and copy stuff over from ../interbase
# Also deletes extra .gdb, core and .gbl files and removes the COFF comment
# section from executables.
# stripping executables is commented out.
RUNNER=`who am i`
set $RUNNER
if [ "$1" != "root" ]; then
echo 'copy_set_prot must be run as "root" or super user'
exit 1
fi
PATH=$PATH:/etc:/bin:.
export PATH
set -x
copy -romv ../interbase source/usr/interbase
find . \( -name \*.gbl -o -name core -o -name isc_event1 \) -print | xargs rm
rm -f interbase/install interbase/lock_header interbase/interbase.log
rm -f interbase/isc_lic.dat
mcs -d source/usr/interbase/bin/*
mcs -a "Interbase version V4.0A built `date`" source/usr/interbase/bin/*
#strip source/usr/interbase/bin/*
cd source/usr/interbase
chown root \
. \
bin examples help include intl lib \
bin/* \
examples/* \
examples/*/* \
help/* \
include/* \
intl/* \
lib/* \
inetd.conf.isc \
install \
interbase.msg \
isc4.gdb \
services.isc
chgrp bin \
. \
bin examples help include intl lib \
bin/* \
examples/* \
examples/*/* \
help/* \
include/* \
intl/* \
lib/* \
inetd.conf.isc \
install \
interbase.msg \
isc4.gdb \
services.isc
chmod uog=rx install bin/*
chmod uog=r \
examples/*/* \
help/* \
include/* \
intl/* \
lib/* \
inetd.conf.isc \
interbase.msg \
services.isc
chmod uog=rwx . help
chmod u=rwx,go=rx bin examples examples/v3 examples/v4 include intl lib
chmod uog=rw isc4.gdb help/help.gdb examples/*/*.gdb
chmod u+s,g+s \
bin/gds_relay
if [ -f bin/gds_inet_srvr ]
then
chmod u+s,g+s \
bin/gds_inet_srvr
else
chmod u+s,g+s \
bin/gds_inet_server
fi
if [ -f isc_ins.hlp ]; then
chown root \
isc_ins.hlp
chgrp bin \
isc_ins.hlp
chmod uog=r \
isc_ins.hlp
else
chown root \
isc_ins_hlp.dat
chgrp bin \
isc_ins_hlp.dat
chmod uog=r \
isc_ins_hlp.dat
fi
if [ -f lock_header_t ]; then
chown root \
lock_header_t
chgrp bin \
lock_header_t
chmod uog=r \
lock_header_t
else
chown root \
lock_header_template
chgrp bin \
lock_header_template
chmod uog=r \
lock_header_template
fi
if [ -f servers.isc ]; then
chown root \
servers.isc
chgrp bin \
servers.isc
chmod uog=r \
servers.isc
fi
if [ -f bin/gds_dnet_server ]; then
chmod u+s,g+s \
bin/gds_dnet_server
fi
if [ -f bin/gds_drop ]; then
chmod u+s,g+s \
bin/gds_drop
fi
if [ -f bin/gds_lock_mgr ]; then
chmod u+s,g+s \
bin/gds_lock_mgr
fi
if [ -f bin/gds_lock_manager ]; then
chmod u+s,g+s \
bin/gds_lock_manager
fi
if [ -f lib/gds_s.a ]; then
chmod uog=rx \
lib/gds_s \
lib/gdsf_s
fi
if [ -f lib/gds.sl ]; then
chmod uog=rx \
lib/gds.sl
fi
if [ -f lib/gdslib ]; then
chmod uog=rx \
lib/gdslib \
lib/dsqllib \
lib/pyxislib \
lib/bridge
fi
rm -f isc_lic.dat interbase.log lock_header install isc_event1
rm -f isc_lock1.gbl
cd ../../..
docut -c -i

View File

@ -0,0 +1,18 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
Copyright (c) 1998,1999, InterBase Software Corporation
All Rights Reserved

View File

@ -0,0 +1,18 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
Copyright (c) 1998, 1999, InterBase Software Corporation
All Rights Reserved

View File

@ -0,0 +1,19 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
gds__alloc_debug @900
gds_alloc_flag_unfreed @901
gds_alloc_report @902

17
src/makefiles/depend.cl Normal file
View File

@ -0,0 +1,17 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
I IBCS60 InterBase Client and Server

19
src/makefiles/depend.clnd Normal file
View File

@ -0,0 +1,19 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
I IBCS60 InterBase Client and Server
I IBCSN60 InterBase Client and Server with No Documentation
I IBC60 InterBase Client only

17
src/makefiles/depend.clsr Normal file
View File

@ -0,0 +1,17 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
I IBC60 Interbase Client only

View File

@ -0,0 +1,19 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
I IBC60 Interbase Client only
I IBCN60 Interbase Client only with No Documentation
I IBCS60 Interbase Client and Server

66
src/makefiles/edit_make Normal file
View File

@ -0,0 +1,66 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
if [ "$SYS_TYPE" != "NOLINK_OS" -a "$1" != "WIN_NT" -a "$1" != "OS2" -a $1 != 'WIN_NTS' ]; then
if [ "$3" = "make.client" ]; then
sed -e "s/\$(SUPER_FLAG)/-DSUPERCLIENT/g" \
-e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" $3 > $4
elif [ "$3" = "make.dsql_ss" -o "$3" = "make.intl_ss" -o "$3" = "make.journal_ss" -o "$3" = "make.jrd_ss" -o "$3" = "make.lock_ss" -o "$3" = "make.remote_ss" -o "$3" = "make.wal_ss" -o "$3" = "make.burp_ss" -o "$3" = "make.alice_ss" -o "$3" = "make.utilities_ss" ]; then
if [ "$1" = "HP10" -o "$1" = "LINUX" ]; then
sed -e "s/\$(SUPER_FLAG)/-DSUPERSERVER -D_REENTRANT/g" \
-e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" $3 > $4
else
sed -e "s/\$(SUPER_FLAG)/-DSUPERSERVER/g" \
-e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" $3 > $4
fi
else
sed -e "s/\$(SUPER_FLAG)//g" \
-e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" $3 > $4
fi
elif [ "$3" != "make.interbase" -a "$3" != "build_kit" -a "$3" != "set_prot" -a "$3" != unset_prot -a "$3" != "refresh" -a "$3" != "refresh.all" ]; then
if [ "$1" != "WIN_NT" -a "$1" != "OS2" -a $1 != 'WIN_NTS' ]; then
sed -e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?source/?../?g" \
-e "s?source;?..;?g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" $3 > $4
else
sed -e "s/\$(SYSTEM)/$1/g" -e "s/\$(VERSION)/$2/g" -e "s?source/?../?g" -e "s?source;?..;?g" -e "s?source\\\\?..\\\\?g" -e "s?\$(DB_DIR)?$DB_DIR?g" -e "s?\.o?.obj?g" -e "s?/interbase/bin/?\\\\interbase\\\\bin\\\\?g" -e "s?/interbase/bin?\\\\interbase\\\\bin?g" -e "s?/interbase/lib/?\\\\interbase\\\\lib\\\\?g" -e "s?/interbase/examples/v3/?\\\\interbase\\\\examples\\\\v3^\\\\?g" -e "s?/interbase/examples/v4/?\\\\interbase\\\\examples\\\\v4^\\\\?g" -e "s?/interbase/examples/v5/?\\\\interbase\\\\examples\\\\v5^\\\\?g" -e "s?/interbase/examples/?\\\\interbase\\\\examples^\\\\?g" -e "s?\.\./examples/?..\\\\examples^\\\\?g" -e "s?\.\./example4/?..\\\\example4^\\\\?g" -e "s?\.\./example5/?..\\\\example5^\\\\?g" -e "s?/interbase/intl/?\\\\interbase\\\\intl^\\\\?g" -e "s?/interbase/?\\\\interbase^\\\\?g" -e "s/\$(COMPILER)/$COMPILER/g" $3 > $4
fi
else
if [ "$1" != "WIN_NT" -a "$1" != "OS2" -a $1 != 'WIN_NTS' ]; then
sed -e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?source/?./?g" \
-e "s?source;?.;?g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" $3 > $4
else
sed -e "s/\$(SYSTEM)/$1/g" \
-e "s/\$(VERSION)/$2/g" \
-e "s?source/?./?g" \
-e "s?source;?.;?g" \
-e "s?\$(DB_DIR)?$DB_DIR?g" \
-e "s/\$(COMPILER)/$COMPILER/g" $3 > $4
fi
fi

17
src/makefiles/edit_makes Normal file
View File

@ -0,0 +1,17 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
ls make.* | awk '{print "./edit_make $(SYSTEM) $(VERSION) " $1 " ../" $1}' | sh

30
src/makefiles/expand.sed Normal file
View File

@ -0,0 +1,30 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
s?\"yachts.lnk\"?\"$(DB_DIR)/jrd/yachts.lnk\"?g
s?\"journal.gdb\"?\"$(DB_DIR)/journal/journal.gdb\"?g
s?\"msg.gdb\"?\"$(DB_DIR)/msgs/msg.gdb\"?g
s?\"codes.gdb\"?\"$(DB_DIR)/jrd/codes.gdb\"?g
s?\"master_msg_db\"?\"$(DB_DIR)/msgs/master_msg_db\"?g
s?\"forms.gdb\"?\"$(DB_DIR)/pyxis/forms.gdb\"?g
s?\"yachts.link\"?\"$(DB_DIR)/qli/yachts.link\"?g
s?\"master_help_db\"?\"$(DB_DIR)/qli/master_help_db\"?g
s?\"help.gdb\"?\"$(DB_DIR)/qli/help.gdb\"?g
s?\"yachts.gdb\"?\"$(DB_DIR)/jrd/yachts.gdb\"?g
s?\"isc.gdb\"?\"$(DB_DIR)/jrd/isc.gdb\"?g
s?\"empbuild.gdb\"?\"$(DB_DIR)/example4/empbuild.gdb\"?g
s?\"empbuild.gdb\"?\"$(DB_DIR)/example5/empbuild.gdb\"?g
s?\"rebuild.gdb\"?\"$(DB_DIR)/utilities/rebuild.gdb\"?g

26
src/makefiles/expand_dbs Normal file
View File

@ -0,0 +1,26 @@
#!/bin/sh
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
if [ $# != 1 ]
then
echo "Usage: expand_dbs filename"
exit 1
fi
echo "Expanding DB in... $1"
sed -f source/$(SYSTEM)/expand.sed $1 > ./sed.TMP
mv ./sed.TMP $1
exit 0

View File

@ -0,0 +1,30 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
@echo off
if "%1" == "" goto err
if not "%2" == "" goto err
echo Expanding DB in... %1
sed -f ..\$(SYSTEM)\expand.sed %1 > .\sed.TMP
copy .\sed.TMP %1
del .\sed.TMP
goto end
:err
echo "Usage: expand_dbs filename"
:end

59
src/makefiles/fetch_comp Normal file
View File

@ -0,0 +1,59 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
if [ "$SYS_TYPE" != "NOLINK_OS" ]; then
DB="-d $1"
SINCE="$2"
COMP="$3"
else
DB=""
SINCE="$1"
COMP="$2"
fi
if [ "$SYSTEM" = "DELTA" ]; then
DB=""
SINCE="$1"
COMP="$2"
fi
if [ "$COMP" = "examples" -o "$COMP" = "EXAMPLES" ]; then
HEADER="-x"
fi
if [ "$COMP" = "example4" -o "$COMP" = "EXAMPLE4" ]; then
HEADER="-x"
fi
if [ "$COMP" = "example5" -o "$COMP" = "EXAMPLE5" ]; then
HEADER="-x"
fi
if [ "$COMP" != "builds" -a "$COMP" != "isc_lock" -a "$COMP" != "BUILDS" -a "$COMP" != "ISC_LOCK" ]; then
cd $COMP
fi
if [ "$COMP" = "isc_lock" -o "$COMP" = "ISC_LOCK" ]; then
if [ "$SYS_TYPE" != "NOLINK_OS" ]; then
cd $COMP
else
cd lock
fi
fi
if [ "$COMP" = "builds" -o "$COMP" = "BUILDS" ]; then
if [ "$SYS_TYPE" != "NOLINK_OS" ]; then
cd $COMP
else
cd $SYSTEM/original
fi
fi
set -x
marion $DB -a -s $SINCE -c $COMP -v -z $HEADER
exit

View File

@ -0,0 +1,33 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
@echo off
set HEADER=
if "%2" == "examples" set HEADER=-x
if "%2" == "EXAMPLES" set HEADER=-x
if "%2" == "example4" set HEADER=-x
if "%2" == "EXAMPLE4" set HEADER=-x
set SUBDIR=%2
set CWD=..
if "%2" == "builds" set SUBDIR=WIN_NT\original
if "%2" == "builds" set CWD=..\..
if "%2" == "BUILDS" set SUBDIR=WIN_NT\original
if "%2" == "BUILDS" set CWD=..\..
if "%2" == "isc_lock" set SUBDIR=lock
if "%2" == "ISC_LOCK" set SUBDIR=lock
cd %SUBDIR%
marion -c %2 -a -s %1 -z -v %HEADER%
cd %CWD%

View File

@ -0,0 +1,20 @@
# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
alias <_isc_start_transaction>=<isc_start_transaction>
alias <_isc_event_block>=<isc_event_block>
alias <_isc_expand_dpb>=<isc_expand_dpb>
end

Some files were not shown because too many files have changed in this diff Show More