mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 18:43:02 +01:00
Merge final changes from fb1 tree.
This commit is contained in:
parent
7a834c5506
commit
89e06a1b43
@ -35,6 +35,7 @@ AC_CHECK_HEADERS(time.h)
|
||||
AC_CHECK_HEADERS(sys/time.h)
|
||||
AC_CHECK_HEADERS(sys/timeb.h)
|
||||
AC_CHECK_HEADERS(sys/param.h)
|
||||
AC_CHECK_HEADERS(sys/ioctl.h)
|
||||
AC_CHECK_HEADERS(varargs.h)
|
||||
AC_CHECK_HEADERS(stdarg.h)
|
||||
AC_CHECK_HEADERS(stdlib.h)
|
||||
|
@ -96,7 +96,7 @@ static void put_asciz(SCHAR, SCHAR*);
|
||||
static void put_numeric(SCHAR, int);
|
||||
static BOOLEAN read_header(DESC, ULONG*, USHORT*, USHORT);
|
||||
static BOOLEAN write_header(DESC, ULONG, USHORT);
|
||||
static void* next_volume(DESC, int, USHORT);
|
||||
static DESC next_volume(DESC, int, USHORT);
|
||||
|
||||
|
||||
//____________________________________________________________
|
||||
@ -263,7 +263,7 @@ void MVOL_init_write(UCHAR* database_name,
|
||||
BURP_error(269, tdgbl->action->act_file->fil_name, 0, 0, 0, 0);
|
||||
/* msg 269 can't write a header record to file %s */
|
||||
}
|
||||
tdgbl->file_desc = (DESC) next_volume(tdgbl->file_desc, MODE_WRITE, FALSE);
|
||||
tdgbl->file_desc = next_volume(tdgbl->file_desc, MODE_WRITE, FALSE);
|
||||
}
|
||||
|
||||
tdgbl->mvol_actual_buffer_size = temp_buffer_size;
|
||||
@ -299,7 +299,7 @@ int MVOL_read(int* cnt, UCHAR** ptr)
|
||||
{
|
||||
if (!tdgbl->mvol_io_cnt || errno == EIO)
|
||||
{
|
||||
tdgbl->file_desc = (DESC) next_volume(tdgbl->file_desc, MODE_READ, FALSE);
|
||||
tdgbl->file_desc = next_volume(tdgbl->file_desc, MODE_READ, FALSE);
|
||||
if (tdgbl->mvol_io_cnt > 0)
|
||||
{
|
||||
break;
|
||||
@ -679,7 +679,7 @@ UCHAR MVOL_write(UCHAR c, int *io_cnt, UCHAR ** io_ptr)
|
||||
else
|
||||
full_buffer = FALSE;
|
||||
tdgbl->file_desc =
|
||||
(DESC) next_volume(tdgbl->file_desc, MODE_WRITE, full_buffer);
|
||||
next_volume(tdgbl->file_desc, MODE_WRITE, full_buffer);
|
||||
if (full_buffer)
|
||||
{
|
||||
left -= tdgbl->mvol_io_buffer_size;
|
||||
@ -863,7 +863,7 @@ static int get_text(UCHAR* text, SSHORT length)
|
||||
// Get specification for the next volume (tape).
|
||||
// Try to open it. Return file descriptor.
|
||||
//
|
||||
static void* next_volume( DESC handle, int mode, USHORT full_buffer)
|
||||
static DESC next_volume( DESC handle, int mode, USHORT full_buffer)
|
||||
{
|
||||
SCHAR new_file[MAX_FILE_NAME_LENGTH];
|
||||
DESC new_desc;
|
||||
@ -891,7 +891,7 @@ static void* next_volume( DESC handle, int mode, USHORT full_buffer)
|
||||
(tdgbl->action->act_file = tdgbl->action->act_file->fil_next) &&
|
||||
(tdgbl->action->act_file->fil_fd != INVALID_HANDLE_VALUE))
|
||||
{
|
||||
return (void*) tdgbl->action->act_file->fil_fd;
|
||||
return tdgbl->action->act_file->fil_fd;
|
||||
}
|
||||
|
||||
BURP_error_redirect(0, 50, NULL, NULL); /* msg 50 unexpected end of file on backup file */
|
||||
@ -972,7 +972,7 @@ static void* next_volume( DESC handle, int mode, USHORT full_buffer)
|
||||
}
|
||||
|
||||
strcpy(tdgbl->mvol_old_file, new_file);
|
||||
return reinterpret_cast<void*>(new_desc);
|
||||
return new_desc;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
*
|
||||
*/
|
||||
/*
|
||||
$Id: dsql.cpp,v 1.17 2002-07-05 15:00:17 skywalker Exp $
|
||||
$Id: dsql.cpp,v 1.18 2002-07-06 05:31:55 skywalker Exp $
|
||||
*/
|
||||
/**************************************************************
|
||||
V4 Multi-threading changes.
|
||||
@ -2252,7 +2252,12 @@ void DSQL_pretty(NOD node, int column)
|
||||
if (string)
|
||||
PRINTF("%s.", string->str_data);
|
||||
string = (STR) node->nod_arg[e_fln_name];
|
||||
PRINTF("%s\"\n", string->str_data);
|
||||
if (string != 0) {
|
||||
PRINTF("%s\"\n", string);
|
||||
}
|
||||
else {
|
||||
PRINTF("%s\"\n","*");
|
||||
}
|
||||
FREE_MEM_RETURN;
|
||||
|
||||
case nod_map:
|
||||
@ -2279,7 +2284,10 @@ void DSQL_pretty(NOD node, int column)
|
||||
|
||||
case nod_variable:
|
||||
variable = (VAR) node->nod_arg[e_var_variable];
|
||||
PRINTF("%svariable %s %d\n", buffer, variable->var_name);
|
||||
// Adding variable->var_variable_number to display, obviously something
|
||||
// is missing from the printf, and Im assuming this was it.
|
||||
// (anyway can't be worse than it was MOD 05-July-2002.
|
||||
PRINTF("%svariable %s %d\n", buffer, variable->var_name, variable->var_variable_number);
|
||||
FREE_MEM_RETURN;
|
||||
|
||||
case nod_var_name:
|
||||
|
@ -136,7 +136,7 @@ NOD MAKE_constant(STR constant, int numeric_flag)
|
||||
|
||||
while (isdigit(*p))
|
||||
value = 10 * value + (*(p++) - '0');
|
||||
if (*p++ = '.') {
|
||||
if (*p++ == '.') {
|
||||
while (isdigit(*p)) {
|
||||
value = 10 * value + (*p++ - '0');
|
||||
node->nod_desc.dsc_scale--;
|
||||
@ -839,7 +839,8 @@ void MAKE_desc( DSC * desc, NOD node)
|
||||
case nod_dbkey:
|
||||
/* Fix for bug 10072 check that the target is a relation */
|
||||
context = (CTX) node->nod_arg[0]->nod_arg[0];
|
||||
if (relation = context->ctx_relation) {
|
||||
relation = context->ctx_relation;
|
||||
if (relation != 0) {
|
||||
desc->dsc_dtype = dtype_text;
|
||||
desc->dsc_length = relation->rel_dbkey_length;
|
||||
desc->dsc_flags = 0;
|
||||
@ -1176,7 +1177,8 @@ PAR MAKE_parameter(MSG message, USHORT sqlda_flag, USHORT null_flag)
|
||||
|
||||
parameter = new(*tdsql->tsql_default) par;
|
||||
parameter->par_message = message;
|
||||
if (parameter->par_next = message->msg_parameters)
|
||||
parameter->par_next = message->msg_parameters;
|
||||
if (parameter->par_next != 0)
|
||||
parameter->par_next->par_ordered = parameter;
|
||||
else
|
||||
message->msg_par_ordered = parameter;
|
||||
|
@ -966,9 +966,6 @@ UDF METD_get_function(REQ request, STR name)
|
||||
X.RDB$FUNCTION_NAME EQ name->str_data
|
||||
SORTED BY X.RDB$ARGUMENT_POSITION
|
||||
|
||||
/* AND
|
||||
X.RDB$ARGUMENT_POSITION EQ return_arg */
|
||||
|
||||
THREAD_ENTER;
|
||||
|
||||
if (X.RDB$ARGUMENT_POSITION == return_arg) {
|
||||
@ -982,7 +979,12 @@ UDF METD_get_function(REQ request, STR name)
|
||||
else {
|
||||
udf_->udf_sub_type = 0;
|
||||
}
|
||||
udf_->udf_length = X.RDB$FIELD_LENGTH;
|
||||
/* CVC: We are overcoming a bug in ddl.c:put_field()
|
||||
when any field is defined: the length is not given for blobs. */
|
||||
if (X.RDB$FIELD_TYPE == blr_blob)
|
||||
udf_->udf_length = sizeof (ISC_QUAD);
|
||||
else
|
||||
udf_->udf_length = X.RDB$FIELD_LENGTH;
|
||||
|
||||
if (!X.RDB$CHARACTER_SET_ID.NULL) {
|
||||
udf_->udf_character_set_id = X.RDB$CHARACTER_SET_ID;
|
||||
|
4044
src/dsql/parse.cpp
4044
src/dsql/parse.cpp
File diff suppressed because it is too large
Load Diff
@ -288,7 +288,6 @@ static void yyerror (TEXT *);
|
||||
%token RAW_PARTITIONS
|
||||
%token READ
|
||||
%token REAL
|
||||
%token RECREATE
|
||||
%token REFERENCES
|
||||
%token RESERVING
|
||||
%token RETAIN
|
||||
@ -380,6 +379,7 @@ static void yyerror (TEXT *);
|
||||
%token CURRENT_ROLE
|
||||
%token KW_BREAK
|
||||
%token SUBSTRING
|
||||
%token RECREATE
|
||||
%token KW_DESCRIPTOR
|
||||
%token FIRST
|
||||
%token SKIP
|
||||
|
@ -1533,6 +1533,10 @@ static BOOLEAN aggregate_in_list (NOD sub, BOOLEAN *field, NOD list)
|
||||
else
|
||||
return FALSE;
|
||||
|
||||
case nod_via:
|
||||
/* Allow sub-selects - no validation in context of group by */
|
||||
return TRUE;
|
||||
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
@ -1917,7 +1921,7 @@ static void field_error( TEXT * qualifier_name, TEXT * field_name, NOD flawed_no
|
||||
TEXT field_string [64], linecol [64];
|
||||
|
||||
if (qualifier_name) {
|
||||
sprintf(field_string, "%s.%s", qualifier_name,
|
||||
sprintf(field_string, "%.31s.%.31s", qualifier_name,
|
||||
field_name ? field_name : "*");
|
||||
field_name = field_string;
|
||||
}
|
||||
@ -3300,8 +3304,30 @@ static NOD pass1_insert( REQ request, NOD input)
|
||||
|
||||
/* If there isn't a field list, generate one */
|
||||
|
||||
if (fields = input->nod_arg[e_ins_fields])
|
||||
if (fields = input->nod_arg[e_ins_fields]) {
|
||||
fields = PASS1_node(request, fields, 0);
|
||||
/* begin IBO hack */
|
||||
for (ptr = fields->nod_arg, end = ptr + fields->nod_count; ptr < end; ptr++) {
|
||||
CTX tmp_ctx = 0;
|
||||
DEV_BLKCHK (*ptr, dsql_type_nod);
|
||||
temp = *ptr;
|
||||
if (temp->nod_type == nod_field &&
|
||||
(tmp_ctx = (CTX) temp->nod_arg [e_fld_context]) != 0 &&
|
||||
tmp_ctx->ctx_relation &&
|
||||
strcmp (tmp_ctx->ctx_relation->rel_name, relation->rel_name)) {
|
||||
|
||||
DSQL_REL bad_rel = tmp_ctx->ctx_relation;
|
||||
FLD bad_fld = (FLD) temp->nod_arg [e_fld_field];
|
||||
// At this time, "fields" has been replaced by the processed list in
|
||||
// the same variable, so we refer again to input->nod_arg [e_ins_fields].
|
||||
|
||||
field_error (bad_rel ? (TEXT *) bad_rel->rel_name : (TEXT *) NULL_PTR,
|
||||
bad_fld ? (TEXT *) bad_fld->fld_name : (TEXT *) NULL_PTR,
|
||||
input->nod_arg [e_ins_fields]->nod_arg [ptr - fields->nod_arg]);
|
||||
}
|
||||
}
|
||||
/* end IBO hack */
|
||||
}
|
||||
else {
|
||||
/* CVC: Ann Harrison requested to skip COMPUTED fields in INSERT w/o field list. */
|
||||
stack = NULL;
|
||||
|
@ -44,7 +44,7 @@ static NOD parse_from(USHORT *, USHORT *);
|
||||
static NOD parse_function(void);
|
||||
static NOD parse_gen_id(void);
|
||||
static CON parse_literal(void);
|
||||
static int parse_matching_paren(void);
|
||||
static void parse_matching_paren(void);
|
||||
static NOD parse_multiply(USHORT *, USHORT *);
|
||||
static NOD parse_not(USHORT *);
|
||||
static NOD parse_primitive_value(USHORT *, USHORT *);
|
||||
@ -52,7 +52,7 @@ static CTX parse_relation(void);
|
||||
static NOD parse_relational(USHORT *);
|
||||
static NOD parse_sort(void);
|
||||
static NOD parse_statistical(void);
|
||||
static int parse_terminating_parens(USHORT *, USHORT *);
|
||||
static void parse_terminating_parens(USHORT *, USHORT *);
|
||||
|
||||
static struct nod_types {
|
||||
enum kwwords nod_t_keyword;
|
||||
@ -692,7 +692,7 @@ static CON parse_literal(void)
|
||||
}
|
||||
|
||||
|
||||
static int parse_matching_paren(void)
|
||||
static void parse_matching_paren(void)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -707,7 +707,6 @@ static int parse_matching_paren(void)
|
||||
|
||||
if (!MATCH(KW_RIGHT_PAREN))
|
||||
PARSE_error(243, DDL_token.tok_string, NULL); /* msg 243: expected right parenthesis, encountered \"%s\" */
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -1139,9 +1138,8 @@ static NOD parse_statistical(void)
|
||||
}
|
||||
|
||||
|
||||
static int parse_terminating_parens(
|
||||
USHORT * paren_count,
|
||||
USHORT * local_count)
|
||||
static void parse_terminating_parens(USHORT * paren_count,
|
||||
USHORT * local_count)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -1158,5 +1156,4 @@ static int parse_terminating_parens(
|
||||
do
|
||||
parse_matching_paren();
|
||||
while (--(*paren_count));
|
||||
return 0;
|
||||
}
|
||||
|
@ -92,8 +92,8 @@ static void define_relation(void);
|
||||
static void define_security_class(void);
|
||||
static void define_shadow(void);
|
||||
static void define_trigger(void);
|
||||
static ACT define_type(void);
|
||||
static ACT define_view(void);
|
||||
static void define_type(void);
|
||||
static void define_view(void);
|
||||
static void drop_filter(void);
|
||||
static void drop_function(void);
|
||||
static void drop_gfield(void);
|
||||
@ -1490,7 +1490,7 @@ static void define_trigger(void)
|
||||
}
|
||||
|
||||
|
||||
static ACT define_type(void)
|
||||
static void define_type(void)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -1522,11 +1522,10 @@ static ACT define_type(void)
|
||||
}
|
||||
|
||||
parse_end();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static ACT define_view(void)
|
||||
static void define_view(void)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -1671,7 +1670,6 @@ static ACT define_view(void)
|
||||
HSH_insert(relation->rel_name);
|
||||
relation->rel_flags &= ~rel_marked_for_delete;
|
||||
relation->rel_flags |= rel_marked_for_creation;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
434
src/gpre/ada.cpp
434
src/gpre/ada.cpp
File diff suppressed because it is too large
Load Diff
432
src/gpre/cob.cpp
432
src/gpre/cob.cpp
File diff suppressed because it is too large
Load Diff
492
src/gpre/ftn.cpp
492
src/gpre/ftn.cpp
File diff suppressed because it is too large
Load Diff
@ -20,7 +20,7 @@
|
||||
//
|
||||
// All Rights Reserved.
|
||||
// Contributor(s): ______________________________________.
|
||||
// $Id: gpre.cpp,v 1.10 2002-06-29 16:50:34 skywalker Exp $
|
||||
// $Id: gpre.cpp,v 1.11 2002-07-06 05:31:56 skywalker Exp $
|
||||
// Revision 1.2 2000/11/16 15:54:29 fsg
|
||||
// Added new switch -verbose to gpre that will dump
|
||||
// parsed lines to stderr
|
||||
@ -35,10 +35,12 @@
|
||||
//
|
||||
// TMN (Mike Nordell) 11.APR.2001 - Reduce compiler warnings
|
||||
//
|
||||
// FSG (Frank Schlottmann-Gödde) 8.Mar.2002 - tiny cobol support
|
||||
// fixed Bug No. 526204
|
||||
//
|
||||
//____________________________________________________________
|
||||
//
|
||||
// $Id: gpre.cpp,v 1.10 2002-06-29 16:50:34 skywalker Exp $
|
||||
// $Id: gpre.cpp,v 1.11 2002-07-06 05:31:56 skywalker Exp $
|
||||
//
|
||||
|
||||
#define GPRE_MAIN
|
||||
@ -792,8 +794,10 @@ int main(int argc, char* argv[])
|
||||
count_name = "isc-count";
|
||||
slack_name = "isc-slack";
|
||||
}
|
||||
else
|
||||
comment_start = "* ";
|
||||
else { // just to be sure :-)
|
||||
comment_start = "* ";
|
||||
transaction_name = "ISC_TRANS";
|
||||
}
|
||||
|
||||
COB_name_init(sw_ansi);
|
||||
#endif
|
||||
|
@ -31,7 +31,9 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
extern void CPR_abort(void);
|
||||
#ifdef DEV_BUILD
|
||||
extern void CPR_assert(TEXT *, int);
|
||||
#endif
|
||||
extern void CPR_bugcheck(TEXT *);
|
||||
extern void CPR_end_text(TXT);
|
||||
extern int CPR_error(TEXT *);
|
||||
|
@ -29,7 +29,7 @@
|
||||
* John Bellardo <bellardo@cs.ucsd.edu>
|
||||
*
|
||||
*
|
||||
* $Id: alt_use_sec.h,v 1.8 2002-07-05 16:01:08 skywalker Exp $
|
||||
* $Id: alt_use_sec.h,v 1.9 2002-07-06 05:31:56 skywalker Exp $
|
||||
*
|
||||
*/
|
||||
|
||||
|
@ -56,18 +56,24 @@
|
||||
#ifdef _AIX
|
||||
#include <sys/select.h>
|
||||
#endif
|
||||
|
||||
#ifndef VMS
|
||||
#ifdef WIN_NT
|
||||
#include <io.h>
|
||||
#else
|
||||
#include <sys/ioctl.h>
|
||||
#include <signal.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
#endif // !VMS
|
||||
|
||||
#ifndef WIN_NT
|
||||
|
||||
#ifdef HAVE_SYS_IOCTL_H
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SIGNAL_H
|
||||
#include <signal.h>
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
|
||||
|
@ -19,6 +19,8 @@
|
||||
*
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
* 2002.04.16 Paul Beach - HP10 Define changed from -4 to (-4) to make it
|
||||
* compatible with the HP Compiler
|
||||
*/
|
||||
|
||||
#ifndef JRD_DSC_H
|
||||
|
@ -199,7 +199,7 @@ USHORT MATCHESNAME(TEXT * p1, SSHORT l1_bytes, TEXT * p2, SSHORT l2_bytes)
|
||||
#endif /* EVENTS_WILDCARDING */
|
||||
|
||||
|
||||
int EVENT_cancel(SLONG request_id)
|
||||
void EVENT_cancel(SLONG request_id)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -217,7 +217,7 @@ int EVENT_cancel(SLONG request_id)
|
||||
SRQ *que, *que2;
|
||||
|
||||
if (!EVENT_header)
|
||||
return 0;
|
||||
return;
|
||||
|
||||
ACQUIRE;
|
||||
|
||||
@ -230,13 +230,12 @@ int EVENT_cancel(SLONG request_id)
|
||||
if (request->req_request_id == request_id) {
|
||||
delete_request(request);
|
||||
RELEASE;
|
||||
return 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
RELEASE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -282,7 +281,7 @@ SLONG EVENT_create_session(STATUS * status_vector)
|
||||
}
|
||||
|
||||
|
||||
int EVENT_delete_session(SLONG session_id)
|
||||
void EVENT_delete_session(SLONG session_id)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -296,12 +295,11 @@ int EVENT_delete_session(SLONG session_id)
|
||||
**************************************/
|
||||
|
||||
if (!EVENT_header)
|
||||
return 0;
|
||||
return;
|
||||
|
||||
ACQUIRE;
|
||||
delete_session(session_id);
|
||||
RELEASE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -31,9 +31,9 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
int EVENT_cancel(SLONG);
|
||||
void EVENT_cancel(SLONG);
|
||||
SLONG EVENT_create_session(STATUS *);
|
||||
int EVENT_delete_session(SLONG);
|
||||
void EVENT_delete_session(SLONG);
|
||||
struct evh *EVENT_init(STATUS *, USHORT);
|
||||
int EVENT_post(STATUS *, USHORT, TEXT *, USHORT, TEXT *, USHORT);
|
||||
#ifdef EVENTS_WILDCARDING
|
||||
|
@ -1121,9 +1121,7 @@ TextType *DLL_EXPORT INTL_texttype_lookup(
|
||||
return (cs_object);
|
||||
}
|
||||
|
||||
void DLL_EXPORT INTL_pad_spaces(
|
||||
TDBB tdbb,
|
||||
DSC * type, UCHAR * string, USHORT length)
|
||||
void DLL_EXPORT INTL_pad_spaces(TDBB tdbb, DSC * type, UCHAR * string, USHORT length)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
|
@ -82,7 +82,7 @@ typedef struct itm {
|
||||
|
||||
/* Unix/NFS specific stuff */
|
||||
|
||||
#if (defined NFS || defined FREEBSD || defined NETBSD)
|
||||
#if (defined NFS || defined FREEBSD || defined NETBSD || defined SINIXZ)
|
||||
#include <pwd.h>
|
||||
#define MAXPATHLEN 1024
|
||||
#endif
|
||||
@ -759,7 +759,7 @@ BOOLEAN DLL_EXPORT ISC_check_if_remote(TEXT * file_name,
|
||||
}
|
||||
|
||||
|
||||
#if (defined NFS || defined FREEBSD || defined NETBSD)
|
||||
#if (defined NFS || defined FREEBSD || defined NETBSD || defined SINIXZ)
|
||||
int ISC_expand_filename(TEXT * from_buff, USHORT length, TEXT * to_buff)
|
||||
{
|
||||
/**************************************
|
||||
@ -1488,7 +1488,7 @@ int ISC_strip_extension(TEXT * file_name)
|
||||
#endif
|
||||
|
||||
|
||||
#if (defined NFS || defined FREEBSD || defined NETBSD)
|
||||
#if (defined NFS || defined FREEBSD || defined NETBSD || defined SINIXZ)
|
||||
static int expand_filename2(TEXT * from_buff, USHORT length, TEXT * to_buff)
|
||||
{
|
||||
/**************************************
|
||||
|
@ -26,7 +26,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/* $Id: isc_ipc.cpp,v 1.13 2002-07-02 09:49:19 dimitr Exp $ */
|
||||
/* $Id: isc_ipc.cpp,v 1.14 2002-07-06 05:31:56 skywalker Exp $ */
|
||||
|
||||
#ifdef SHLIB_DEFS
|
||||
#define LOCAL_SHLIB_DEFS
|
||||
@ -144,11 +144,15 @@ static int process_id = 0;
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/file.h>
|
||||
#if defined(NETBSD) || defined(SINIXZ)
|
||||
|
||||
#ifdef HAVE_SIGNAL_H
|
||||
#include <signal.h>
|
||||
#else
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_SIGNAL_H
|
||||
#include <sys/signal.h>
|
||||
#endif
|
||||
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
|
||||
|
@ -221,8 +221,11 @@ extern SLONG ftok();
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef SINIXZ
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
|
||||
#ifdef SINIXZ
|
||||
static int getpagesize() {return PAGESIZE;}
|
||||
#endif /* SINIXZ*/
|
||||
|
||||
|
@ -34,10 +34,20 @@
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_SOCKET_H
|
||||
#include <sys/socket.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#ifdef UNIX
|
||||
#define UNIX_JOURNALLING
|
||||
#define BSD_SOCKETS
|
||||
|
@ -64,7 +64,7 @@ SSHORT MISC_build_parameters_block(UCHAR * buffer, ...)
|
||||
pop the arguments off the call stack and put
|
||||
them into the passed buffer */
|
||||
|
||||
while (arg_type = va_arg(ptr, int))
|
||||
while (arg_type = (SCHAR) va_arg(ptr, int)) {
|
||||
switch (arg_type) {
|
||||
case dtype_byte: /* byte */
|
||||
ch = (SCHAR) va_arg(ptr, int);
|
||||
@ -93,6 +93,7 @@ SSHORT MISC_build_parameters_block(UCHAR * buffer, ...)
|
||||
STUFF_BYTES(p, q, sh);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
va_end(ptr);
|
||||
|
||||
|
@ -191,6 +191,10 @@ static BOOLEAN find_type(SLONG, WIN *, PAG *, USHORT, USHORT, UCHAR **,
|
||||
#define CLASS 15
|
||||
#endif
|
||||
|
||||
#ifdef SINIXZ
|
||||
#define CLASS 19
|
||||
#endif
|
||||
|
||||
#ifdef linux
|
||||
#ifdef i386
|
||||
#define CLASS 19
|
||||
|
@ -21,7 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: pwd.cpp,v 1.4 2001-12-24 02:50:52 tamlin Exp $
|
||||
$Id: pwd.cpp,v 1.5 2002-07-06 05:31:56 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
@ -125,7 +125,7 @@ void PWD_get_user_dbpath(TEXT* path_buffer)
|
||||
**************************************/
|
||||
|
||||
#pragma FB_COMPILER_MESSAGE("TMN: What wierdness is this?")
|
||||
#if (defined VMS || defined WIN_NT || defined LINUX || defined FREEBSD || defined NETBSD || defined SUPERSERVER || defined AIX_PPC || defined DARWIN )
|
||||
#if (defined VMS || defined WIN_NT || defined LINUX || defined FREEBSD || defined NETBSD || defined SUPERSERVER || defined AIX_PPC || defined DARWIN || defined SINIXZ )
|
||||
gds__prefix(path_buffer, USER_INFO_NAME);
|
||||
#else
|
||||
strcpy(path_buffer, USER_INFO_NAME);
|
||||
|
@ -21,7 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: pwd.h,v 1.3 2001-12-24 02:50:52 tamlin Exp $
|
||||
$Id: pwd.h,v 1.4 2002-07-06 05:31:56 skywalker Exp $
|
||||
*/
|
||||
|
||||
#ifndef _JRD_PWD_H_
|
||||
@ -43,6 +43,10 @@ $Id: pwd.h,v 1.3 2001-12-24 02:50:52 tamlin Exp $
|
||||
#define USER_INFO_NAME "SYS:/INTERBAS/ISC4.GDB"
|
||||
#endif
|
||||
|
||||
#ifdef SINIXZ
|
||||
#define USER_INFO_NAME "isc4.gdb"
|
||||
#endif
|
||||
|
||||
#ifdef LINUX
|
||||
#define USER_INFO_NAME "isc4.gdb"
|
||||
#endif
|
||||
|
@ -135,7 +135,7 @@ void REC_recover_page(
|
||||
}
|
||||
|
||||
|
||||
int REC_update_next_transid(void)
|
||||
void REC_update_next_transid(void)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -161,7 +161,6 @@ int REC_update_next_transid(void)
|
||||
hdr->hdr_next_transaction = hdr->hdr_bumped_transaction;
|
||||
CCH_RELEASE(tdbb, &window);
|
||||
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
|
@ -28,6 +28,6 @@ extern void REC_recover(TEXT *, TEXT *, struct ctrl_pt *, struct sbm **,
|
||||
USHORT);
|
||||
extern void REC_recover_page(TEXT *, TEXT *, struct ctrl_pt *, SLONG,
|
||||
struct pag *);
|
||||
extern int REC_update_next_transid(void);
|
||||
extern void REC_update_next_transid(void);
|
||||
|
||||
#endif /* _JRD_REC_PROTO_H_ */
|
||||
|
@ -19,7 +19,7 @@
|
||||
*
|
||||
* All Rights Reserved.
|
||||
* Contributor(s): ______________________________________.
|
||||
* $Id: sort.cpp,v 1.9 2002-07-05 15:00:20 skywalker Exp $
|
||||
* $Id: sort.cpp,v 1.10 2002-07-06 05:31:56 skywalker Exp $
|
||||
*
|
||||
* 2001-09-24 SJL - Temporary fix for large sort file bug
|
||||
*
|
||||
@ -70,6 +70,13 @@
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_STDIO_H
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
/* RITTER - declare seek and off_t - :ATTENTION: for 64bit I/O we might need ib_stdio.h ! */
|
||||
|
||||
|
||||
#ifdef SOLARIS
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#endif
|
||||
@ -78,9 +85,6 @@
|
||||
/* for SEEK_SET */
|
||||
#include <stdio.h>
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#ifdef WIN_NT
|
||||
#include <io.h>
|
||||
#endif
|
||||
|
||||
|
@ -21,7 +21,7 @@
|
||||
* Contributor(s): ______________________________________.
|
||||
*/
|
||||
/*
|
||||
$Id: thd.h,v 1.4 2002-07-01 15:07:18 skywalker Exp $
|
||||
$Id: thd.h,v 1.5 2002-07-06 05:31:56 skywalker Exp $
|
||||
*/
|
||||
|
||||
#ifndef _JRD_THD_H_
|
||||
@ -43,7 +43,8 @@ $Id: thd.h,v 1.4 2002-07-01 15:07:18 skywalker Exp $
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if (defined(HP10) && defined(SUPERSERVER))
|
||||
/* RITTER - changed HP10 to HPUX in the line below */
|
||||
#if (defined(HPUX) && defined(SUPERSERVER))
|
||||
#define POSIX_THREADS 1
|
||||
#define MULTI_THREAD 1
|
||||
#endif
|
||||
|
@ -29,8 +29,8 @@
|
||||
#endif
|
||||
|
||||
#include "firebird.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include "../jrd/common.h"
|
||||
#include "../jrd/ib_stdio.h"
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
#include <sys/types.h>
|
||||
@ -39,10 +39,6 @@
|
||||
#include <sys/stat.h>
|
||||
#include <string.h>
|
||||
|
||||
#if !(defined SEEK_END && defined F_OK)
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
@ -1080,11 +1076,12 @@ static BOOLEAN unix_error(
|
||||
operation, gds_arg_unix, errno, 0);
|
||||
|
||||
|
||||
// Added a TRUE for final return - which seems to be the answer,
|
||||
// Added a FALSE for final return - which seems to be the answer,
|
||||
// but is better than what it was which was nothing ie random
|
||||
// Most usages within here want it to return a failure.
|
||||
// MOD 01-July-2002
|
||||
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#if ((defined PREAD_PWRITE) && !(defined SOLARIS_MT || defined LINUX))
|
||||
|
@ -262,7 +262,8 @@ static const TEXT *const impl_implementation[] = {
|
||||
"Firebird/linux Intel", /* 60 */
|
||||
"Firebird/FreeBSD/i386", /* 61 */
|
||||
"Firebird/NetBSD/i386", /* 62 */
|
||||
"Firebird/Darwin/PowerPC" /* 63 */
|
||||
"Firebird/Darwin/PowerPC", /* 63 */
|
||||
"Firebird/SINIX-Z" /* 64 */
|
||||
};
|
||||
|
||||
|
||||
|
@ -165,7 +165,7 @@ SLONG EVENT_create_session(STATUS status_vector)
|
||||
}
|
||||
|
||||
|
||||
int EVENT_delete_session(SLONG session_id)
|
||||
void EVENT_delete_session(SLONG session_id)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
|
@ -30,7 +30,7 @@
|
||||
*
|
||||
*/
|
||||
/*
|
||||
$Id: why.c,v 1.10 2002-07-01 15:07:18 skywalker Exp $
|
||||
$Id: why.c,v 1.11 2002-07-06 05:31:56 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
@ -504,7 +504,7 @@ static CONST_IMAGE IMAGE images[] =
|
||||
#endif
|
||||
|
||||
#if (defined UNIX) && \
|
||||
!(defined SUPERCLIENT || defined SUPERSERVER || defined DECOSF || defined DG_X86 || defined linux || defined FREEBSD || defined NETBSD || defined AIX_PPC || defined DARWIN /* platforms without a V3 bridge */)
|
||||
!(defined SUPERCLIENT || defined SUPERSERVER || defined DECOSF || defined DG_X86 || defined linux || defined FREEBSD || defined NETBSD || defined AIX_PPC || defined DARWIN || defined SINIXZ /* platforms without a V3 bridge */)
|
||||
#ifndef PIPE_SERVER_YVALUE
|
||||
#define PIPE_BRIDGE_TO_V3
|
||||
#endif
|
||||
|
@ -24,7 +24,7 @@
|
||||
*
|
||||
*/
|
||||
/*
|
||||
$Id: lock.cpp,v 1.8 2002-06-29 08:22:08 dimitr Exp $
|
||||
$Id: lock.cpp,v 1.9 2002-07-06 05:31:56 skywalker Exp $
|
||||
*/
|
||||
|
||||
#include "firebird.h"
|
||||
@ -189,7 +189,7 @@ SSHORT LOCK_debug_level = 0;
|
||||
#define DUMMY_OWNER_DELETE ((PTR) -2)
|
||||
#define DUMMY_OWNER_SHUTDOWN ((PTR) -3)
|
||||
|
||||
#if !(defined linux || defined NETWARE_386 || defined WIN_NT || defined FREEBSD || defined NETBSD || defined DARWIN)
|
||||
#if !(defined linux || defined NETWARE_386 || defined WIN_NT || defined FREEBSD || defined NETBSD || defined DARWIN )
|
||||
extern SCHAR *sys_errlist[];
|
||||
#endif
|
||||
|
||||
|
@ -63,13 +63,13 @@ static struct {
|
||||
} LOCK_hdrtbl[] = {
|
||||
"SHMSIZE", &LOCK_shm_size, NULL, NULL};
|
||||
|
||||
static int prt_lock_init();
|
||||
static int get_lock_header();
|
||||
static int prt_history(PTR, char *);
|
||||
static int prt_lock(LBL );
|
||||
static int prt_process(PRB );
|
||||
static int prt_request(LRQ );
|
||||
static int prt_que(UCHAR *, SRQ );
|
||||
static void prt_lock_init();
|
||||
static void get_lock_header();
|
||||
static void prt_history(PTR, char *);
|
||||
static void prt_lock(LBL );
|
||||
static void prt_process(PRB );
|
||||
static void prt_request(LRQ );
|
||||
static void prt_que(UCHAR *, SRQ );
|
||||
|
||||
static TEXT *history_names[] = {
|
||||
"n/a", "ENQ", "DEQ", "CONVERT", "SIGNAL", "POST", "WAIT",
|
||||
@ -277,7 +277,7 @@ int V3_lock_print(USHORT argc, UCHAR **argv)
|
||||
}
|
||||
|
||||
|
||||
static int get_lock_header()
|
||||
static void get_lock_header()
|
||||
{
|
||||
/*************************************
|
||||
*
|
||||
@ -309,7 +309,7 @@ static int get_lock_header()
|
||||
}
|
||||
|
||||
|
||||
static int prt_lock_init()
|
||||
static void prt_lock_init()
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -325,7 +325,7 @@ static int prt_lock_init()
|
||||
}
|
||||
|
||||
|
||||
static int prt_history(PTR history_header, char *title)
|
||||
static void prt_history(PTR history_header, char *title)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -354,7 +354,7 @@ static int prt_history(PTR history_header, char *title)
|
||||
}
|
||||
|
||||
|
||||
static int prt_lock(LBL lock)
|
||||
static void prt_lock(LBL lock)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -372,7 +372,7 @@ static int prt_lock(LBL lock)
|
||||
LRQ request;
|
||||
|
||||
if (sw_series && lock->lbl_series != sw_series)
|
||||
return 0;
|
||||
return;
|
||||
|
||||
if (LOCK_header->lhb_version >= LHB_VERSION7)
|
||||
q = lock->lbl_key7;
|
||||
@ -424,7 +424,7 @@ static int prt_lock(LBL lock)
|
||||
}
|
||||
|
||||
|
||||
static int prt_process(PRB process)
|
||||
static void prt_process(PRB process)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -456,7 +456,7 @@ static int prt_process(PRB process)
|
||||
}
|
||||
|
||||
|
||||
static int prt_request(LRQ request)
|
||||
static void prt_request(LRQ request)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -479,7 +479,7 @@ static int prt_request(LRQ request)
|
||||
}
|
||||
|
||||
|
||||
static int prt_que(UCHAR *string, SRQ que)
|
||||
static void prt_que(UCHAR *string, SRQ que)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -498,7 +498,7 @@ static int prt_que(UCHAR *string, SRQ que)
|
||||
|
||||
if (offset == que->srq_forward && offset == que->srq_backward) {
|
||||
ib_printf("%s: *empty*\n", string);
|
||||
return 0;
|
||||
return;
|
||||
}
|
||||
|
||||
count = 0;
|
||||
|
@ -238,7 +238,7 @@ V3_lock_print(argc, argv)
|
||||
}
|
||||
|
||||
|
||||
static prt_history(history_header, title)
|
||||
static void prt_history(history_header, title)
|
||||
PTR history_header;
|
||||
char *title;
|
||||
{
|
||||
@ -269,7 +269,7 @@ static prt_history(history_header, title)
|
||||
}
|
||||
|
||||
|
||||
static prt_lock(lock)
|
||||
static void prt_lock(lock)
|
||||
LBL lock;
|
||||
{
|
||||
/**************************************
|
||||
@ -323,7 +323,7 @@ static prt_lock(lock)
|
||||
}
|
||||
|
||||
|
||||
static prt_process(process)
|
||||
static void prt_process(process)
|
||||
PRB process;
|
||||
{
|
||||
/**************************************
|
||||
@ -353,7 +353,7 @@ static prt_process(process)
|
||||
}
|
||||
|
||||
|
||||
static prt_request(request)
|
||||
static void prt_request(request)
|
||||
LRQ request;
|
||||
{
|
||||
/**************************************
|
||||
@ -377,7 +377,7 @@ static prt_request(request)
|
||||
}
|
||||
|
||||
|
||||
static prt_que(string, que)
|
||||
static void prt_que(string, que)
|
||||
UCHAR *string;
|
||||
SRQ que;
|
||||
{
|
||||
|
@ -31,6 +31,7 @@
|
||||
#undef HAVE_SYS_TYPES_H
|
||||
#undef HAVE_SYS_STAT_H
|
||||
#undef HAVE_SYS_UIO_H
|
||||
#undef HAVE_SYS_IOCTL_H
|
||||
#undef HAVE_SYS_WAIT_H
|
||||
#undef HAVE_SYS_TIME_H
|
||||
#undef HAVE_SYS_TIMEB_H
|
||||
|
@ -1453,6 +1453,8 @@ static bool_t xdr_semi_opaque( XDR * xdrs, MSG message, FMT format)
|
||||
case XDR_FREE:
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1698,7 +1700,8 @@ static bool_t xdr_sql_blr(
|
||||
if (!(statement->rsr_format = *fmt_ptr))
|
||||
return TRUE;
|
||||
|
||||
if (!(message = statement->rsr_buffer) ||
|
||||
message = statement->rsr_buffer;
|
||||
if (!(message != 0) ||
|
||||
statement->rsr_format->fmt_length > statement->rsr_fmt_length) {
|
||||
REMOTE_release_messages(message);
|
||||
statement->rsr_fmt_length = statement->rsr_format->fmt_length;
|
||||
|
@ -47,13 +47,13 @@
|
||||
#define FTOK_KEY 15
|
||||
|
||||
static long get_key();
|
||||
static int dummy_init();
|
||||
static int get_lock_header();
|
||||
static void dummy_init();
|
||||
static void get_lock_header();
|
||||
static int sem_exclusive(long , int );
|
||||
#ifndef MMAP_SUPPORTED
|
||||
static int remove_resource(int , TEXT *, int, int , TEXT *);
|
||||
static void remove_resource(int , TEXT *, int, int , TEXT *);
|
||||
#else
|
||||
static int remove_resource(int, TEXT *,int ,int ,TEXT *);
|
||||
static void remove_resource(int, TEXT *,int ,int ,TEXT *);
|
||||
#endif
|
||||
|
||||
static int LOCK_shm_size, LOCK_sem_key, LOCK_blk_signal, LOCK_sem_count;
|
||||
@ -73,7 +73,7 @@ static struct {
|
||||
};
|
||||
|
||||
|
||||
int V3_drop(int argc, UCHAR **argv)
|
||||
void V3_drop(int argc, UCHAR **argv)
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -144,7 +144,7 @@ int V3_drop(int argc, UCHAR **argv)
|
||||
}
|
||||
|
||||
|
||||
static int dummy_init()
|
||||
static void dummy_init()
|
||||
{
|
||||
/**************************************
|
||||
*
|
||||
@ -186,7 +186,7 @@ static long get_key(TEXT *filename)
|
||||
}
|
||||
|
||||
|
||||
static int get_lock_header()
|
||||
static void get_lock_header()
|
||||
{
|
||||
/*************************************
|
||||
*
|
||||
@ -230,7 +230,7 @@ static int get_lock_header()
|
||||
|
||||
|
||||
#ifndef MMAP_SUPPORTED
|
||||
static int remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
static void remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
int sem_count, TEXT *label)
|
||||
{
|
||||
/**************************************
|
||||
@ -297,7 +297,7 @@ static int remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
|
||||
|
||||
#ifdef MMAP_SUPPORTED
|
||||
static int remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
static void remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
int sem_count, TEXT *label)
|
||||
{
|
||||
/**************************************
|
||||
@ -325,7 +325,7 @@ static int remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
#endif
|
||||
if (stat(expanded_filename, &stat_buf) == -1) {
|
||||
ib_printf("\n***No bridge %s file found.\n", label);
|
||||
return 0;
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef SUN_V3_LOCK_MANAGER
|
||||
@ -336,13 +336,13 @@ static int remove_resource(int lock_flag, TEXT *filename, int shm_length,
|
||||
if ((key = get_key(filename)) == -1) {
|
||||
ib_printf("\n***Unable to get the key value of the bridge %s file.\n",
|
||||
label);
|
||||
return 0;
|
||||
return;
|
||||
}
|
||||
|
||||
if ((semid = sem_exclusive(key, sem_count)) == -1) {
|
||||
ib_printf("\n***Semaphores for bridge %s are currently in use.\n",
|
||||
label);
|
||||
return 0;
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef DARWIN
|
||||
|
@ -24,6 +24,6 @@
|
||||
#ifndef _UTILITIES_DRPV3_PROTO_H_
|
||||
#define _UTILITIES_DRPV3_PROTO_H_
|
||||
|
||||
extern int V3_drop ( int, UCHAR**);
|
||||
extern void V3_drop( int, UCHAR**);
|
||||
|
||||
#endif /* _UTILITIES_DRPV3_PROTO_H_ */
|
||||
|
Loading…
Reference in New Issue
Block a user