Change Log
Documentation Conventions
Each change or addition will be prefixed by the module name. In
cases where both C/C++ and
TCL
code is being explained, the TCL code references will
contain the prefix tcl/ before the module name. Unix shell
scripts will be prefixed with script/.
September 1, 2008
Changes and additions in the TCL GPL package designated as
.66-1.36-2008.09.01
New Items
- tcl/cupsched.tcl - graphical personal schedule and budget program
with Bbuuzzb database support
- tcl/popupdown.tcl - library module to display and remove a popup window
Modified Items
- tcl/sched.tcl
- fixed bug in display_events that caused non-budget events not
to display
- added return statement and db_close calls to missing
parts in copy_month
- tcl/stdhead.tcl - added logic flags TRUE and FALSE
March 30, 2008
Additions in the TCL GPL package designated as
.65-1.35-2008.03.30
New Item
- tcl/sched.tcl - personal schedule and budget program with Bbuuzzb
database support
September 17, 2006
Changes and additions in the C/C++ GPL package designated as
1.36-2006.09.17
New Items
- ialive.c - Internet connection test program with Bbuuzzb database
support
- sched.c - personal schedule and budget program with Bbuuzzb
database support
- script/mkialive - build single user ialive application
- script/mkialivem - build client/server ialivem application
- script/mksched - build single user sched application
- script/mkschedm - build client/server schedm application
Modified Items
- dbeng.c - modified dbeng_ll_new_table to open only if tid
flag is positive
- dbeng.h - changed DBENG_VERSION
- db.c - changed c_new_table to only display tid if open
was requested
- iexlib.c
- removed calc of scale and call to fxp_scale in
iexlib_import_conv_wind_dir
- fixed bug in iexlib_import where db_write was called
when the import ASCII line was empty
- daymvdel.c - modified all or nothing processing by creating
functions delete_all_files and move_all_files
- ipcomm.c - commented out calls to log_file_date unless there
is an error
- script/mkall
- added build of ialive
- added build of ialivem
- added build of sched
- added build of schedm
August 19, 2006
Changes and additions in the Tcl GPL package designated as
.64-1.35-2006.08.19
New Items
- tcl/dos2unix.tcl - text convesion application
Modified Items
- tcl/ialive.tcl - changed to assume nothing received if no output from
the ping command
- tcl/datime.tcl - fixed bug in proc juldate by calling
int_remove_lz before addition
August 7, 2006
Changes and additions in the Tcl GPL package designated as
.63-1.35-2006.08.07
New Items
- tcl/path.tcl - path parsing (split and join) API
- tcl/ialive.tcl - Internet connection test application
- tcl/daymvdel.tcl - file/tree move/delete application
Modified Items
- tcl/stdhead.tcl
- added constant OB for open square bracket
- added constant CB for close square bracket
- tcl/spec.tcl - added proc catch_exec
June 19, 2006
Changes and additions in the Tcl GPL package designated as
.62-1.35-2006.06.19
New Items
- tcl/wlib.tcl - weather calculation/conversion API
- tcl/iexlib.tcl - database import API
- tcl/iex.tcl - single user database import application
Modified Items
- tcl/cupcake.tcl
- added code to place current file name in the window title when file name
is passed as an argument
- added code to initialize file_changed and save_name elements
of the textedit array when the file name is passed as an argument
- added code to put the load directory name into the lastdirectory
element of the prefs array when the file name is passed as an argument
May 13, 2006
Changes and additions in the Tcl GPL package designated as
.61-1.35-2006.05.13
New Items
- tcl/dbstress.tcl - single user database stress application
Modified Items
- tcl/appinit.tcl - added exit log message to appinit_remove_name
- tcl/dbeng.tcl
- changed db_put_subfield to allow for no existing record
- changed db_put_subsubfield to allow for no existing record
- tcl/dbmess.tcl - changed DBENG_VERSION
- tcl/dbengsrt.tcl
- fixed bug in dbeng_sort_match_tables in call to db_io_code_log
- fixed bug in dbeng_sort_rl_delete that defined global dbengsrt_sort_memory_in_use incorrectly
April 16, 2006
Changes and additions in the Tcl GPL package designated as
.6-1.35-2006.04.16
New Items
- tcl/db.tcl - single user command line application for the Bbuuzzb database
Modified Items
- tcl/dbeng.tcl
- fixed bug in db_delete_subsubfield that failed to check range
- changed dbeng_ll_new_table to open only if tid flag is positive
- added global DBENG_NO_SUCH_TID to db_get_is_table_locked
- tcl/parse.tcl - added -- to switch in command_words
- tcl/dbmess.tcl - changed DBENG_VERSION
- tcl/dbcomm.tcl - added DBCOM_CONFIG_SET_LOG which was missing
- tcl/logman.tcl - changed logman_start by removing braces
- tcl/dbengcat.tcl - renamed dbeng_catalog_list to db_get_catalog_list
- tcl/dbengsrt.tcl - fixed bug in db_set_sort_max_open_bin range check
March 22, 2006
New Tcl modules added that make up the package .5-1.35-2006.03.22.
- tcl/dbgen.tcl - single user database random data generator application
March 18, 2006
New Tcl modules added that make up the package .4-1.35-2006.03.18.
- tcl/dbengsrt.tcl - database sort module
March 8, 2006
New Tcl modules added that make up the package .3-1.35-2006.03.08.
- tcl/dbfxp.tcl - database fixed-point read/write API
March 3, 2006
Changes and additions in the GPL package designated as
1.35-2006.03.03
New Items
- daymvdel.c - application to remove/move files by date age
- path.c - path parsing API
- path.h - path parsing API header
- script/mkdaymvdel - build daymvdel application
Modified Items
- flsocket.h - added IPC_HEAD_SIZE
- ipcomm.c
- changed function ipc_recv to receive data header before actual data
- changed function ipc_send to send data header before actual data
- script/mkall - added build of mkdaymvdel
- script/cclib - added compile of path.c
October 16, 2005
New Tcl modules added that make up the package .1-1.34-2005.10.16
- tcl/cupcake.tcl - Cupcake editor application main module
- tcl/prefsdlg.tcl - Cupcake editor preferences dialog module
- tcl/cupcalc.tcl - Cupcalc expression calculator application module
- tcl/datagen.tcl - Datagen application
- tcl/fxpstres.tcl - Fixed-point stress application
- tcl/appinit.tcl - Application initialization/notification API
- tcl/comcode.tcl - Common codes module
- tcl/conv.tcl - Math conversion API
- tcl/datime.tcl - Date/time API
- tcl/dscan.tcl - Directory scanning API
- tcl/fio.tcl - File I/O API
- tcl/fxp.tcl - Fixed-point math API
- tcl/logger.tcl - Personal logging API
- tcl/logman.tcl - Log manager API
- tcl/misc.tcl - Misc procedures
- tcl/parse.tcl - String parsing API
- tcl/prefs.tcl - Save/load prefs file API
- tcl/spec.tcl - Procedures specific to Tcl
- tcl/stdhead.tcl - Common intro
- tcl/cutcopy.tcl - Cut/copy/paste Tk API
- tcl/finddlg.tcl - Find dialog Tk API
- tcl/fontdlg.tcl - Font dialog Tk API
- tcl/gotodlg.tcl - Goto line number in text widget Tk API
- tcl/menu.tcl - Add items to menu Tk module
- tcl/menubar.tcl - Create base menu Tk module
- tcl/pathdlg.tcl - Dialog to get a path from the user Tk module
- tcl/tw.tcl - Various text widget procedures Tk module
- tcl/winprint.tcl - Print a file under Windows from a text widget Tk module
- tcl/dbcomm.tcl - Database command code definition module
- tcl/dbeng.tcl - Main bbuuzzb engine module
- tcl/dbengcat.tcl - Database catalog API
- tcl/dbengcfg.tcl - Database configuration API
- tcl/dbiocode.tcl - Database error translation module
- tcl/dbmess.tcl - Database code definition module
July 24, 2005
Changes and additions in the GPL package designated as
1.34-2005.07.24
New Items
- logman.h - logging manager API header
- logman.c - logging manager API
- armtree.h - directory tree removal API header
- armtree.c - directory tree removal API
- rmtree.c - application to remove directory trees
- script/mkrmtree - build rmtree application
- script/chasyslog - compile a module that contains references to
sys_log
Modified Items
- enhlib.h - added include of logman.h
- dbmess.h
- added define DBENG_NO_CATALOG
- added define DBENG_SEND_GET_AUTOPACK
- added define DBENG_SEND_SET_AUTOPACK
- added define DBENG_SEND_SET_LOG
- dbcomm.h
- added define DBCOM_GET_AUTOPACK
- added define DBCOM_SET_AUTOPACK
- added define DBCOM_CONFIG_CLIENT_GET_LOG
- added define DBCOM_CONFIG_CLIENT_GET_LOG_FLAG
- added define DBCOM_CONFIG_CLIENT_SET_LOG
- added define DBCOM_CONFIG_CLIENT_SET_LOG_FLAG
- added include of fio.h
- changed define DBCOM_MAXCOMLINE to same as BUFSIZE
(defined in fio.h)
- dbeng.h
- changed record_count in dbeng_table to
active_record_count
- added dbeng_table member deleted_record_count
- added dbeng_table member record_status
- added additional parameter to prototype dbeng_count_rec
- added additional parameter to prototype dbeng_rec_count
- added prototype dbeng_set_record_count
- added autopack member to dbeng_table
- added define DBENG_SYSTABLE_MAX_DELETED
- added prototype dbeng_autopack
- added prototype dbeng_set_autopack
- dbengcat.h
- added define DBENG_CATALOG_FIELD_AUTOPACK
- added new structure dbengcat_details
- added prototype dbeng_catalog_table_details
- added prototype dbeng_catalog_init_table_details
- added prototype dbeng_catalog_term_table_details
- removed prototype dbeng_catalog_rep_list
- dbengrep.h - added a parameter to prototype dbeng_rep_rll_load
- dblocal.h
- added prototype db_get_catalog_list
- changed parameters in prototype db_count
- added parameter to prototype db_get_rec_count
- added deleted_count parameter to function db_count
- removed allopt parameter in function db_count
- removed save and restore of process_deleted flag in function
db_count
- added deleted_count parameter to function db_get_rec_count
- removed allopt parameter in function db_get_rec_count
- added prototype db_get_autopack
- added prototype db_set_autopack
- dbcs.h
- added parameter to prototype db_count
- removed allopt parameter in prototype db_count
- added parameter to prototype db_get_rec_count
- added prototype db_get_autopack
- added prototype db_set_autopack
- dbcscfg.h
- added prototype db_config_client_init
- added prototype db_config_client_set_log
- added prototype db_config_client_set_log_flag
- added prototype db_config_client_get_log
- added prototype db_config_client_get_log_flag
- sys_log.h
- added prototype sys_log_console
- added prototype sys_log_get_console
- datime.h
- added prototype juldate
- added prototype datdif
- dscan.h - added new define DSCAN_TYPE_SYMLINK
- appinit.c
- fixed bug in function appinit_get_name that ignored
whether appinit_apname was NULL
- changed all logging calls from log_file_date to logman
- parse.c
- changed function getyn to use fgets instead of gets
- fixed logic error in function rpad
- plugged memory leak in function ll_worddel
- logger.c - changed default value of p_console_output to FALSE
- fio.c
- changed function unique to use sequential count for file
name instead of a random number
- added check for proper directory name in function unique
- fixed ifdef in function qrename
- conv.c - changed all logging calls from log_file_date to
logman
- dscan.c - changed all logging calls from log_file_date to
logman
- fxp.c - changed all logging calls from log_file_date to
logman
- misc.c - changed all logging calls from log_file_date to
logman
- timesapi.c - changed all logging calls from log_file_date to
logman
- sconnect.c - changed all logging calls from log_file_date to
logman
- slconfig.c - changed all logging calls from log_file_date to
logman
- sloc.c - changed all logging calls from log_file_date to
logman
- dbiocode.c
- added text of error message DBENG_NO_CATALOG
- changed all logging calls from sys_log to logman
- dbeng.c
- changed counting logic in dbeng_count_rec
- added a parameter to function dbeng_count_rec
- saved process_deleted table flag in function dbeng_count_rec,
set the process_deleted table flag high before counting records and
restored original process_deleted table flag after counting
- changed all calls to function dbeng_count_rec
- changed all references to dbeng_table member record_count
to either active_record_count or deleted_record_count
- changed function dbeng_rec_count by adding a parameter
- added function dbeng_set_record_count
- modified function dbeng_ll_open_table to load the autopack
value from the catalog (non-systable) or DBENG_SYSTABLE_MAX_DELETED
(systable)
- added function dbeng_autopack
- added function dbeng_set_autopack
- added logic to autopack in function dbeng_delete_recd
- changed all logging calls from sys_log to logman
- modified function dbeng_ferror to use logman functions
- fixed bug in dbeng_ll_new_table where output table name may not
be large enough
- changed dbeng_write_recd to create a new record when attempting
to re-write a record marked for deletion
- plugged memory leak in function dbeng_ll_open_table when the
open failed due to no catalog entry
- dbengcfg.c
- changed dbeng_config structure to always contain
catalog information
- changed dbeng_config_get_catalog to return DBENG_NO_CATALOG
if catalog name has not been loaded
- automatically turned on catalog in function dbeng_config_read in
single user mode if a catalog file name is present in the config file
- changed all logging calls from sys_log to logman
- changed function dbeng_config_set_log so that it no loger attempts
to validate the file/path name of the log
- removed private function dbeng_config_valid_log
- changed function dbeng_config_set_log_flag so that it activates
and deactivates logging
- added include of appinit.h
- dbengcat.c
- added function dbeng_catalog_init_table_details
- added function dbeng_catalog_term_table_details
- added function dbeng_catalog_table_details
- made function dbeng_catalog_rep_list private
- changed all logging calls from sys_log to logman
- dbengrep.c
- added a parameter to function dbeng_rep_rll_load
- modified function dbeng_rep_init to call dbeng_catalog
functions to acquire replication list details
- changed all logging calls from sys_log to logman
- dbengses.c
- added support for DBENG_SEND_GET_AUTOPACK in function
dbeng_session_should_rs
- added support for DBENG_SEND_SET_AUTOPACK in function
dbeng_session_should_rs
- changed all logging calls from sys_log to logman
- added support for DBENG_SEND_SET_LOG in function
dbeng_session_should_rs
- dbengsrt.c
- changed all logging calls from sys_log to logman
- changed dbeng_sort_compare to allow empty sort fields
- dblocal.c
- added function db_get_catalog_list
- added function db_get_autopack
- added function db_set_autopack
- changed all logging calls from sys_log to logman
- dbcs.c
- added parameter to function db_count
- removed allopt parameter in function db_count
- added parameter to function db_get_rec_count
- added function db_get_autopack
- added function db_set_autopack
- changed all logging calls from sys_log to logman
- dblocfg.c
- enabled all catalog functions
- changed all logging calls from sys_log to logman
- removed logging activate and deactivate code in function
db_config_set_log_flag
- dbcscfg.c
- changed all logging calls from log_file_date to logman
- modified to send command DBENG_SEND_SET_LOG
- added function db_config_client_init
- added function db_config_client_set_log
- added function db_config_client_set_log_flag
- added function db_config_client_get_log
- added function db_config_client_get_log_flag
-
- dbfxp.c - changed all logging calls from sys_log to
logman
- iexlib.c - changed all logging calls from sys_log to
logman
- dscan.c - modified symbolic link detection code to use lstat
- sys_log.c (API)
- added function sys_log_console
- added function sys_log_get_console
- added global sys_log_console_output
- modified function sys_log to output the message to the screen if
sys_log_console_output flag is high
- modified function sys_log_nf to output the message to the screen if
sys_log_console_output flag is high
- datime.c
- added function days_in_month
- added function isleap
- changed all logging calls from sys_log to logman
- added function juldate
- added function datdif
- db.c
- enabled all catalog commands in single and multi user modes
- added support for DBCOM_GET_AUTOPACK
- added support for DBCOM_SET_AUTOPACK
- added support for DBCOM_CONFIG_CLIENT_GET_LOG
- added support for DBCOM_CONFIG_CLIENT_GET_LOG_FLAG
- added support for DBCOM_CONFIG_CLIENT_SET_LOG
- added support for DBCOM_CONFIG_CLIENT_SET_LOG_FLAG
- added include of appinit.h
- added call to appinit_register_name from main
- removed DEBUG define
- recoded function term_app
- added define APNAME
- dbsrv.c
- changed function c_get_catalog_list to get list from
db_get_catalog_list
- changed function c_count to reply with active and deleted counts
- changed function c_get_rec_count to reply with active and
deleted counts
- added support for send code DBENG_SEND_GET_AUTOPACK
- added support for send code DBENG_SEND_SET_AUTOPACK
- added processing for the send code DBENG_SEND_SET_LOG
- added global console_output
- changed function main to accept command line input for both
TCP and QNX message passing IPC's
- changed function parameters for parse_comline to accept all
command arguments
- changed all logging calls to use the logman API
- added command line switch q to supress all console output
- recoded function term_app
- dbstress.c
- changed default table names to the logical names for single user and
client/server
- changed calls to db_count and db_get_rec_count to use
new parameters
- added support for DBCOM_GET_AUTOPACK
- added support for DBCOM_SET_AUTOPACK
- added support for DBCOM_CONFIG_CLIENT_GET_LOG
- added support for DBCOM_CONFIG_CLIENT_GET_LOG_FLAG
- dbgen.c
- added include of appinit.h
- added call to appinit_register_name from function main
- changed debug code to use the logman API
- recoded function term_app
- sys_log.c (APP)
- changed message when unable to receive data from
client connection in process_request
- code cleanup
- dumsockc.c
- added include appinit.h
- added include sliocode.h
- added define APNAME
- changed all logging calls to use the logman API
- used the appinit API to register and remove application name
- changed call in function main from gets to get_rec
- changed commnad line buffer size to BUFSIZE
- dumsocks.c
- changed all logging calls to use the logman API
- recoded function term_app
- sockc.c
- code cleanup
- changed all logging calls to use the logman API
- socloc.c - code cleanup
- fxpstres.c
- changed all logging calls to use the logman API
- changed all requests for random numbers to use the rnd function
(defined in misc.c)
- iex.c
- added include of appinit.h
- added call to appinit_register_name from function main
- changed all logging call to use logman API
- recoded function term_app
- iresolve.c - code cleanup
- timesync.c
- changed all logging calls to use the logman API
- added command line switch s to wait for system logging
service
- script/include.linux
- added pre-processor define HAS_SYSLOG
- changed define LIBASE to point to new compiler directory
- script/cclib - added compile of logman.c
- script/mkdb
- added module dbengcat.c
- added module appinit.o
- added module logman.c
- removed module sys_log.o
- removed module slogcode.o
- removed module ip.o
- removed module sloc.o
- removed module sliocode.o
- removed module slconfig.o
- removed module sconnect.o
- removed pre-processor define IPC
- script/mkdbm
- added module appinit.o
- added module logman.c
- added define HASYSLOG
- script/mkdbgen
- added module dbengcat.c
- added module appinit.o
- added module logman.c
- removed module sys_log.o
- removed module slogcode.o
- removed module ip.o
- removed module sloc.o
- removed module sliocode.o
- removed module slconfig.o
- removed module sconnect.o
- removed pre-processor define IPC
- script/mkdbgenm
- added module appinit.o
- added module logman.c
- added define HASYSLOG
- script/mkdbsrv
- script/mkdbstress
- added module dbengcat.c
- added module logman.c
- added module appinit.o
- script/mkdbstresm
- added module logman.c
- added module appinit.o
- added define HASYSLOG
- script/mkiex
- added module dbengcat.c
- added module appinit.o
- added module logman.c
- removed module sys_log.o
- removed module slogcode.o
- removed module ip.o
- removed module sloc.o
- removed module sliocode.o
- removed module slconfig.o
- removed module sconnect.o
- removed pre-processor define IPC
- script/mkiexm
- added module logman.c
- added module appinit.o
- added define HASYSLOG
- script/mkdumsockc
- added module logman.c
- added module appinit.o
- added module sys_log.o
- added module slogcode.o
- added define HASYSLOG
- script/mkdumsocks
- added module logman.c
- added module sys_log.o
- added module slogcode.o
- added define HASYSLOG
- script/mksockc
- added module logman.c
- added module sys_log.o
- added module slogcode.o
- added define HASYSLOG
- script/mksocloc - added module logman.c (not directly used but
needed for linking)
- script/mksys_log - added module logman.c (not directly used but
needed for linking)
- script/mkdatimec - added define HASYSLOG
- script/mktimesync
- added module logman.c
- added module sys_log.o
- added module slogcode.o
- added define HASYSLOG
October 19, 2003
Changes and additions in the GPL package designated as
1.33-2003.10.19:
New Items
- iexlib.h - Bbuuzzb import library header
- wlib.h - weather station library header
- weather.h - weather station main header
- slocsrv.h - socloc server library header
- misc.h - misc. library header
- iexlib.c - Bbuuzzb import (and someday export) library
- wlib.c - weather station library
- slocsrv.c - socloc server library to talk to other socloc
servers
- misc.c - misc. library
- iex.c - Bbuuzzb import command application
- script/mkiex - build iex single user command application
- script/mkiexm - build iexm client/server user command application
Modified Items
- enhlib.h - added include of misc.h
- comcode.h - added defines SOCKET_SEND_TRANS_NUM and
SOCKET_SEND_CONNECT_NUM
- flsocket.h
- changed scope of IPC_SEND_RETRY from QNX to all
IPC methods
- changed QUEUE_SIZE to 1024
- added define SA (Unix)
- ipcsrv.h
- added prototypes ipc_trans_num and ipc_connect_num (TCP)
- changed prototype ipc_server_wait to return nothing (TCP)
- removed prototype ipc_end (QNX)
- added prototype ipc_close
- socloc.h - added defines SL_SEND_TRANS_NUM and
SL_SEND_CONNECT_NUM
- sloc.h
- added prototype sloc_end
- added prototypes sloc_trans_num and sloc_connect_num
- added prototype sloc_term_api
- sys_log.h - added prototypes sys_log_trans_num and
sys_log_connect_num
- dbengver.h - changed DBENG_VERSION
- dbeng.h - added prototypes dbeng_delete_field,
dbeng_delete_subfield and dbeng_delete_subsubfield
- dblocal.h
- added prototypes db_delete_field,
db_delete_subfield and db_delete_subsubfield
- added prototype db_end
- dbcs.h
- added prototypes db_delete_field,
db_delete_subfield and db_delete_subsubfield
- added prototypes db_trans_num and db_connect_num
- dbcomm.h
- added defines DBCOM_DELETE_FIELD,
DBCOM_DELETE_SUBFIELD, and DBCOM_DELETE_SUBSUBFIELD
- added defines DBCOM_TRANS_NUM and DBCOM_CONNECT_NUM
- dbmess.h
- added defines DBENG_SEND_DELETE_FIELD,
DBENG_SEND_DELETE_SUBFIELD and DBENG_DELETE_SUBSUBFIELD
- added defines DBENG_SEND_TRANS_NUM,
DBENG_SEND_CONNECT_NUM and DBENG_NO_INIT
- dumsocks.h - added defines DM_SEND_TRANS_NUM,
DM_SEND_CONNECT_NUM, DM_NOT_IMPLEMENTED, DMCOM_TRANS_NUM,
DMCOM_CONNECT_NUM, DMCOM_SOCLOC_TRANS_NUM and
DMCOM_SOCLOC_CONNECT_NUM
- timesync.h
- added send codes TS_SEND_TRANS_NUM and TS_SEND_CONNECT_NUM
- added error code TS_NOT_IMPLEMENTED
- added prototypes timesync_trans_num, timesync_connect_num
and timesync_end
- parse.c
- fixed bug in functions lpad and rpad that returned an
empty string if no padding was necessary
- re-wrote function ll_worddel to use function delbytes
- ipclient.c - changed to connect only upon ipc_set_active
and to keep the socket open (TCP)
- sloc.c
- re-write to keep socket open (TCP)
- added functions sloc_trans_num and sloc_connect_num
- added function sloc_term_api
- ipcsrv.c
- changed to use select to manage list of client sockets (TCP)
- added functions ipc_trans_num and ipc_connect_num (TCP)
- changed function ipc_server_wait to return nothing (TCP)
- renamed function ipc_end (QNX) to ipc_close
- sys_log.c (API)
- modified to keep socket open (TCP)
- added functions sys_log_trans_num and sys_log_connect_num
- dbeng.c
- fixed bug in function dbeng_tmp_systable which caused a
memory leak
- added functions dbeng_delete_field,
dbeng_delete_subfield and dbeng_delete_subsubfield
- changed function dbeng_get_recd to goto the top of the table
on a record header read error
- dblocal.c
- added functions db_delete_field,
db_delete_subfield and db_delete_subsubfield
- added function db_end
- dbiocode.c - added text of error message DBENG_NO_INIT
- dbcs.c
- added functions db_delete_field,
db_delete_subfield and db_delete_subsubfield
- re-wrote to keep socket open until DBENG_VC_ERROR or
db_end
- added functions db_trans_num and db_connect_num
- dbengrep.c - changed call to function connect from
dbengrep_connect to use SA define (Unix)
- dbengses.c
- added support for the send codes DBENG_SEND_DELETE_FIELD,
DBENG_SEND_DELETE_SUBFIELD and DBENG_DELETE_SUBSUBFIELD
in the function dbeng_session_should_rs
- added support for the send codes DBENG_SEND_TRANS_NUM and
DBENG_SEND_CONNECT_NUM in the function dbeng_session_should_rs
- dbengsrt.c - changed to use specified amount of sort memory and
specified number of open bin tables
- tlogcode.c - added translation of error code TS_NOT_IMPLEMENTED
- timesapi.c
- changed to keep socket open (TCP)
- added functions timesync_trans_num, timesync_connect_num
and timesync_end
- sys_log.c (APP)
- modified for updated socloc API and ipcsrv
- added function term_app
- re-wrote function output_log to take variable number of parms
- added function output_log_nf
- db.c
- modified for updated socloc API
- added support for the commands DBCOM_DELETE_FIELD,
DBCOM_DELETE_SUBFIELD and DBCOM_DELETE_SUBSUBFIELD
- modified for updated sys_log API
- added support for the commands DBCOM_TRANS_NUM and
DBCOM_CONNECT_NUM
- modified for the updated bbuuzzb API
- socloc.c
- changed for updated ipcsrv
- added support for the send codes SL_SEND_TRANS_NUM and
SL_SEND_CONNECT_NUM
- changed for new slocsrv API
- added function term_app
- dbsrv.c
- added support for the send codes DBENG_SEND_DELETE_FIELD,
DBENG_SEND_DELETE_SUBFIELD and DBENG_DELETE_SUBSUBFIELD
- modified for updated socloc API
- modified for updated sys_log API
- modified for updated ipcsrv
- added function term_app
- added support for the send codes DBENG_SEND_TRANS_NUM and
DBENG_SEND_CONNECT_NUM
- dbstress.c
- added support for the commands DBCOM_DELETE_FIELD,
DBCOM_DELETE_SUBFIELD, and DBCOM_DELETE_SUBSUBFIELD
- modified for updated socloc API
- modified for updated sys_log API
- added support for the commands DBCOM_TRANS_NUM and
DBCOM_CONNECT_NUM
- modified for the updated bbuuzzb API
- sockc.c
- added support for the commands socloc.trans.num (TCP),
socloc.connect.num (TCP), trans.num (any server) and
connect.num (any TCP socket server)
- modified for updated socloc API
- datimec.c - modified for updated socloc API
- dbgen.c
- modified for updated socloc API
- modified for updated sys_log API
- modified for the updated bbuuzzb API
- dumsockc.c
- modified for updated socloc API
- added function term_app
- dumsocks.c
- modified for updated socloc API and ipcsrv
- added function term_app
- added support for the send codes DM_SEND_TRANS_NUM and
DM_SEND_CONNECT_NUM
- datimec.c
- added function term_app
- modified for the updated timesync API
- script/dbeng - added compile of iexlib.c
- script/cclib
- added compile of wlib.c
- added compile of misc.c
- script/mkall - added build of iex and iexm,
- script/mkdbstress - added object file misc.o
- script/mkdbstresm - added object file misc.o
February 1, 2003
Changes and additions in the GPL package designated as
1.32-2002.02.01:
New Items
- dbengsrt.h - Bbuuzzb sort module header
- dbengsrt.c - Bbuuzzb sort module
- dos2unix.c - ASCII text file conversion program
Modified Items
- parse.h - added function prototype strip_space
- logger.h - changed name of function prototype log to
logger as the GNU C++ compiler has this function defined
- fxp.h - added function prototype fxp_remove_decimal
- dbfxp.h - added function prototypes dbfxp_get_subfield,
dbfxp_put_subfield, dbfxp_get_subsubfield and
dbfxp_put_subsubfield
- dbengcat.h - added function prototype dbeng_catalog_list
- dbcomm.h
- added define DBCOM_GET_CATALOG_LIST
- added define DBCOM_SORT
- added defines DBCOM_GET_SORT_MEM, DBCOM_SET_SORT_MEM,
DBCOM_GET_SORT_OPEN_BIN and DBCOM_SET_SORT_OPEN_BIN
- dbmess.h
- added define DBENG_SEND_GET_CATALOG_LIST
- added defines DBENG_SEND_SORT, DBENG_SEND_GET_SORT_MEM,
DBENG_SEND_SET_SORT_MEM, DBENG_SEND_GET_SORT_OPEN_BIN and
DBENG_SEND_SET_SORT_OPEN_BIN
- dbeng.h
- added a parameter to the function prototype dbeng_open_table_list
- added function prototype dbeng_tmp_systable
- added dbeng_table members sort_max_open_bin and
sort_max_mem
- dblocal.h
- added a parameter to the function prototype db_get_open_table_list
- added function prototypes db_sort, db_get_sort_max_mem,
db_set_sort_max_mem, db_get_sort_max_open_bin and
db_set_sort_max_open_bin
- dbcs.h
- added function prototype db_get_catalog_list
- added a parameter to the function prototype db_get_open_table_list
- added function prototypes db_sort, db_get_sort_max_mem,
db_set_sort_max_mem, db_get_sort_max_open_bin and
db_set_sort_max_open_bin
- datime.h
- added function prototype datime_hour12_2_hour24
- added function prototype run_year
- added function prototype get_ftime
- csocket.h - added directive using namespace std
- ssocket.h - added directive using namespace std
- parse.c - added function strip_space
- logger.c - changed name of function log to
logger as the GNU C++ compiler has this function defined
- fxp.c - added function fxp_remove_decimal
- dbfxp.c - added functions dbfxp_get_subfield,
dbfxp_put_subfield, dbfxp_get_subsubfield and
dbfxp_put_subsubfield
- dbengcat.c - added function dbeng_catalog_list
- dbeng.c
- added a parameter to the function dbeng_open_table_list
- added function dbeng_tmp_systable
- changed function dbeng_pack_table to create a new system
table using the function dbeng_tmp_systable
- added include dbengsrt.h
- added initialization code for dbeng_table members
sort_max_open_bin and sort_max_mem
- dblocal.c
- added a parameter to the function db_get_open_table_list
- added include of dbengsrt.h
- added functions db_sort, db_get_sort_max_mem,
db_set_sort_max_mem, db_get_sort_max_open_bin and
db_set_sort_max_open_bin
- dbcs.c
- added function db_get_catalog_list (multiuser only)
- added a parameter to the function db_get_open_table_list
- added functions db_sort, db_get_sort_max_mem,
db_set_sort_max_mem, db_get_sort_max_open_bin and
db_set_sort_max_open_bin
- dbengses.c - added support for the commands DBENG_SEND_SORT,
DBENG_SEND_GET_SORT_MEM, DBENG_SEND_SET_SORT_MEM,
DBENG_SEND_GET_SORT_OPEN_BIN and
DBENG_SEND_SET_SORT_OPEN_BIN in the function
dbeng_session_should_rs
- datime.c
- added function datime_hour12_2_hour24
- added private function datime_get_ampm
- changed function get_time to return a compact date/time string
- added function run_year
- added function get_ftime
- csocket.cpp - added directive using namespace std
- ssocket.cpp - added directive using namespace std
- sys_log.c (API) - added extra error messages that will be sent to the
personal log
- script/include.linux - added pre-processor defines OS_UNIX_LINUX
and OS_UNIX_LINUX_DEBIAN
- script/mkdbsrv - added object file dbengsrt.o
- script/mkdb - added object file dbengsrt.o
- script/mkdbstress - added object file dbengsrt.o
- script/cdbeng - added compilation of dbengsrt.c
- script/mkall - added build of datagen and dos2unix
applications
- db.c
- added a parameter to the support of the command
DBCOM_GET_OPEN_TABLE_LIST
- added support for the command DBCOM_GET_CATALOG_LIST
- added support for the commands DBCOM_SORT, DBCOM_GET_SORT_MEM,
DBCOM_SET_SORT_MEM, DBCOM_GET_SORT_OPEN_BIN and
DBCOM_SET_SORT_OPEN_BIN
- dbsrv.c
- added support for a additional parameter with the send code
DBENG_SEND_GET_OPEN_TABLE_LIST
- added support for send code DBENG_SEND_GET_CATALOG_LIST
- added support for the send codes DBENG_SEND_SORT,
DBENG_SEND_GET_SORT_MEM, DBENG_SEND_SET_SORT_MEM,
DBENG_SEND_GET_SORT_OPEN_BIN and
DBENG_SEND_SET_SORT_OPEN_BIN
- dbstress.c - added support for the commands DBCOM_EXIST,
DBCOM_GET_CATALOG_LIST, DBCOM_SORT, DBCOM_GET_SORT_MEM,
DBCOM_SET_SORT_MEM, DBCOM_GET_SORT_OPEN_BIN and
DBCOM_SET_SORT_OPEN_BIN
- sys_log (app) - changed output_log function to obtain date/time
string from function get_time
July 29, 2002
Changes and additions in the GPL package designated as
1.31-2002.07.29:
New Items
- fxp.h - fixed point math API header
- conv.h - math conversion API header
- datime.h - date/time API header
- appinit.h - application initialization API header
- dbfxp.h - Bbuuzzb fixed point API header
- fxp.c - fixed point math API
- conv.c - math conversion API
- datime.c - date/time API
- appinit.c - application initialization API
- dbfxp.c - Bbuuzzb fixed point API
- fxpstres.c - fixed point math stress program
Modified Items
- parse.h
- added prototypes lpad and rpad
- moved prototype get_time to header datime.h
- enhlib.h - added include of fxp.h, conv.h and datime.h
- dbengver.h - changed DBENG_VERSION
- dbmess.h
- added defines DBENG_TABLE_IN_USE and DBENG_SEND_DELETE_TABLE
- added define DBENG_SEND_CLEAR_TABLE
- added define DBENG_SEND_COPY_TABLE
- dblocal.h
- added prototype db_delete_table
- added prototype db_exist
- added prototype db_clear_table
- added prototype db_copy_table
- dbcomm.h
- added define DBCOM_DELETE_TABLE
- added define DBCOM_EXIST
- added define DBCOM_CLEAR_TABLE
- added define DBCOM_COPY_TABLE
- dbcs.h
- added prototype db_delete_table
- added prototype db_exist
- added prototype db_copy_table
- dbeng.h
- added prototype dbeng_exist
- added prototypes dbeng_clear_table and dbeng_copy_table
- dbengcfg.h - added prototype dbeng_config_is_catalog
- sys_log.h - changed prototype sys_log_init by adding a parameter
- parse.c
- added functions lpad and rpad
- moved function get_time to module datime.c
- dbeng.c
- changed function dbeng_get_tid to obtain the next tid based on the number of tables in use
- added private functions dbeng_put_which_field, dbeng_put_which_subfield and dbeng_put_which_subsubfield
- modified dbeng_put_field, dbeng_put_subfield and dbeng_put_subsubfield to call its respective dbeng_put_which function
- added functions dbeng_delete_table and private function dbeng_table_in_use
- added function dbeng_exist
- added functions dbeng_clear_table and dbeng_ll_copy_table
- modified function dbeng_pack_table to call dbeng_ll_copy_table
- added function dbeng_copy_table
- added database server name by calling function appinit_get_name to pass to function sys_log_init in function dbeng_ferror
- dblocal.c
- modified db_put_field, db_put_subfield and db_put_subsubfield to allow a zero field, sub-field or sub-sub-field value
- added function db_delete_table
- added function db_exist
- added function db_clear_table
- added function db_copy_table
- dbcs.c
- modified db_put_field, db_put_subfield and db_put_subsubfield to allow a zero field, sub-field or sub-sub-field value
- added function db_exist
- added function db_clear_table
- added function db_copy_table
- dbiocode.c - added translation of DBENG_TABLE_IN_USE
- dbengses.c
- added DBENG_SEND_DELETE_TABLE to function dbeng_session_should_rs
- changed function dbeng_session_flush_all to clear the session table using dbeng_clear_table
- added trap of send codes DBENG_SEND_EXIST and DBENG_SEND_CLEAR_TABLE to function dbeng_session_should_rs
- dbengcfg.c
- added function dbeng_config_is_catalog
- changed function dbeng_config_set_session_flag to flush the session table (by calling dbeng_session_flush_all) when the session flag is set high
- dblocfg.c - added database server name by calling function appinit_get_name to pass to function sys_log_init in function db_config_set_log_flag
- sys_log.c (API)
- added application name parameter to function sys_log_init
- added module global variables to store application name, local host name (TCP), node ID (QNX 4.x) and process ID (QNX 4.x)
- changed function sys_log_init to obtain and store new module globals
- changed function sys_log_end to de-allocate module globals
- changed function sys_log_sr_code to prefix any message to be logged with the application name and either the local host name (TCP) or the node ID (QNX 4.x) and the process ID (QNX 4.x)
- script/cl - added files fxp.o, conv.o and datime.o
- script/cclib - added files fxp.c, conv.c, datime.c and appinit.c
- script/cdbeng - added file dbfxp.c
- script/mksocloc - added object files datime.o and appinit.o
- script/mksys_log - added object files datime.o and appinit.o
- script/mkdbsrv - added object files datime.o and appinit.o
- script/mkdumsocks - added object files datime.o and appinit.o
- script/mktimesync - added object files datime.o and appinit.o
- script/mkdb - added object file datime.o
- script/mkdbm - added object file datime.o
- script/mkdbstress - added object file datime.o
- script/mkdbstresm - added object file datime.o
- script/mkdbgen - added object file datime.o
- script/mkdbgenm - added object file datime.o
- script/mkdatimec - added object file datime.o
- script/mkdumsockc - added object file datime.o
- script/mksockc - added object file datime.o
- script/mkiresolve - added object file datime.o
- socloc.c
- made main return an int
- coded to use appinit API
- sys_log.c (application) - coded to use appinit API
- dbsrv.c
- coded to use appinit API
- added support for DBENG_SEND_DELETE_TABLE
- modified to allow zero field, sub-field and sub-sub-field numbers
- added support for DBENG_SEND_EXIST
- added support for DBENG_SEND_DELETE_TABLE
- added support for DBENG_SEND_COPY_TABLE
- removed call to dbeng_session_flush_all during initialization as this is now automatically done when the session flag is set high
- db.c
- added support for zero field, sub-field and sub-sub-field
- added support for the command delete.table
- added support for the command exist
- added support for the command clear.table
- added display of Bbuuzzb server version in opening message (multiuser only)
- added support for the command copy.table
- changed call to sys_log_init by adding application name
- dumsocks.c - coded to use appinit API
- timesync.c - coded to use appinit API
- dbgen.c - changed call to sys_log_init by adding application name
April 19, 2002
Changes and additions in the GPL package designated as
1.30-2002.04.19:
New Items
- dbengrep.h - Bbuuzzb replication management header
- timesync.h - timesync header
- timesapi.c - timesync main API
- tlogcode.c - timesync error translation API
- timesync.c - timesync server
- datimec.c - timesync client
- dbgen.c - Bbuuzzb random data generator
- dbengrep.c - Bbuuzzb replication management
- script/mktimesync - make timesync server
- script/mkdatimec - make timesync client
- script/mkdbgen - make dbgen stand-alone
- script/mkdbgenm - make dbgenm client server
Modified Items
- dbcomm.h
- added defines DBCOM_GET_NSUBFIELDS,
DBCOM_GET_SUBFIELD_SIZE, DBCOM_GET_SUBFIELD,
DBCOM_PUT_SUBFIELD, DBCOM_GET_NSUBSUBFIELDS,
DBCOM_GET_SUBSUBFIELD_SIZE, DBCOM_GET_SUBSUBFIELD,
DBCOM_PUT_SUBSUBFIELD
- added DBCOM_CONFIG_GET_REPLICATE_FLAG and
DBCOM_CONFIG_SET_REPLICATE_FLAG
- added command DBCOM_REPLICATE_UPDATE
- dbmess.h
- changed define DBENG_NO_SUCH_VALUE to
DBENG_NO_SUCH_SUBFIELD, DBENG_NO_SUCH_SUBVALUE to
DBENG_NO_SUCH_SUBSUBFIELD and DBENG_FIELD_PUT_ERROR to
DBENG_PUT_ERROR
- added send codes DBENG_SEND_GET_NSUBFIELDS,
DBENG_SEND_GET_SUBFIELD_SIZE, DBENG_SEND_GET_SUBFIELD,
DBENG_SEND_PUT_SUBFIELD, DBENG_SEND_GET_NSUBSUBFIELDS,
DBENG_SEND_GET_SUBSUBFIELD_SIZE, DBENG_SEND_GET_SUBSUBFIELD,
DBENG_SEND_PUT_SUBSUBFIELD
- added error code DBENG_RECORD_POSITION_CHANGED
- added send code DBENG_SEND_REPLICATE
- added error codes DBENG_REPLICATION_NOT_ACTIVE and
DBENG_NO_REPLICATION_ENTRY
- added send code DBENG_SEND_REPLICATE_UPDATE
- dblocal.h - added prototypes db_get_nsubfields,
db_get_subfield_size, db_get_subfield, db_put_subfield,
db_get_nsubsubfields, db_get_subsubfield_size,
db_get_subsubfield and db_put_subsubfield
- dblocfg.h - added prototypes db_config_get_replicate_flag
and db_config_set_replicate_flag
- dbeng.h
- changed DBENG_VM to DBENG_SFM, DBENG_SVM to
DBENG_SSFM
- added prototypes dbeng_nsubfields, dbeng_subfield_size,
dbeng_get_subfield, dbeng_put_subfield,
dbeng_nsubsubfields, dbeng_subsubfield_size,
dbeng_get_subsubfield, dbeng_put_subsubfield
- added prototype dbeng_record_header
- added structure dbeng_rep and the define DBENG_ROT_NULL
- added pointer rep_list to dbeng_table structure
- added send codes DBENG_SEND_GET_REPLICATE_FLAG and
DBENG_SEND_SET_REPLICATE_FLAG
- added dbeng_table member is_systable
- added prototypes dbeng_open_systable, dbeng_new_systable
and dbeng_is_systable
- dbengver.h - changed DBENG_VERSION
- dbengcat.h
- added catalog field defines
DBENG_CATALOG_FIELD_REPLICATE, DBENG_CATALOG_SSF_PORT and
DBENG_CATALOG_SSF_TNAME
- removed prototype dbeng_catalog_find
- added prototype dbeng_catalog_rep_list
- changed prototypes dbeng_catalog_set_name and
dbeng_catalog_new_table by adding another parameter
- dbengcfg.h
- added prototypes dbeng_config_get_replicate_flag and
dbeng_config_set_replicate_flag
- removed prototype dbeng_config_is_systable
- added prototype dbeng_config_is_session
- dbcs.h
- added function prototypes db_get_nsubfields,
db_get_subfield_size,
db_get_subfield and db_put_subfield
- added prototype db_replicate_update
- dbcscfg.h - added prototype db_config_get_replicate_flag and
db_config_set_replicate_flag
- dbiocode.c
- added DBENG_RECORD_POSITION_CHANGED error translation
- changed define DBENG_NO_SUCH_VALUE to
DBENG_NO_SUCH_SUBFIELD, DBENG_NO_SUCH_SUBVALUE to
DBENG_NO_SUCH_SUBSUBFIELD and DBENG_FIELD_PUT_ERROR to
DBENG_PUT_ERROR and altered message text
- added error translation for DBENG_REPLICATION_NOT_ACTIVE and
DBENG_NO_REPLICATION_ENTRY
- dbeng.c
- added functions dbeng_nsubfields,
dbeng_subfield_size, dbeng_get_subfield,
dbeng_get_subfield, dbeng_put_subfield,
dbeng_nsubsubfields, dbeng_subsubfield_size,
dbeng_get_subsubfield and dbeng_put_subsubfield
- added function dbeng_record_header and changed functions
dbeng_get_recd and dbeng_delete_recd to use this function
- dbeng_delete_recd now checks for a valid record header and
returns the error code DBENG_RECORD_POSITION_CHANGED
- changed dbeng_pack_table to reconcile the starting record
positions of any table in use
- changed dbeng_write_string_recd to retain the file positions
- added include of dbengrep.h
- set rep_list pointer to NULL in dbeng_open_table
- called replicate function dbengrep_rll_delete from function
dbeng_close_table (multiuser TCP only)
- added functions dbeng_open_systable, dbeng_ll_open_table,
dbeng_new_systable, dbeng_ll_new_table and
dbeng_is_systable
- added call to dbengrep_send from functions
dbeng_write_new_recd, dbeng_write_string_recd,
dbeng_delete_recd and dbeng_pack_table
- changed function dbeng_ll_new_table to create a new physical
file in single-user mode only
- dbengcfg.c
- added replicate_flag to configuration structure
- added functions dbeng_config_get_replicate_flag and
dbeng_config_set_replicate_flag
- removed function dbeng_config_is_systable
- added function dbeng_config_is_session
- dblocal.c - added functions db_get_nsubfields,
db_get_subfield_size, db_get_subfield, db_put_subfield,
db_get_nsubsubfields, db_get_subsubfield_size,
db_get_subsubfield and db_put_subsubfield
- dblocfg.c
- made sure returned flag value is set to FALSE in the
functions db_config_get_log_flag, db_config_get_catalog_flag
and db_config_get_session_flag
- added functions db_config_get_replicate_flag and
db_config_set_replicate_flag
- dbengses.c
- added support for the send codes
DBENG_SEND_GET_NSUBFIELDS,
DBENG_SEND_GET_SUBFIELD_SIZE, DBENG_SEND_GET_SUBFIELD,
DBENG_SEND_PUT_SUBFIELD, DBENG_SEND_GET_NSUBSUBFIELDS,
DBENG_SEND_GET_SUBSUBFIELD_SIZE, DBENG_SEND_GET_SUBSUBFIELD,
DBENG_SEND_PUT_SUBSUBFIELD in function dbeng_session_should_rs
- changed function dbeng_session_open to open with
dbeng_open_systable
- added support for the command DBCOM_REPLICATE_UPDATE in
function dbeng_session_should_rs
- dbengcat.c
- changed name of static function dbeng_catalog_find to
dbeng_catalog_tfind
- added static function dbeng_catalog_ffind
- added function dbeng_catalog_rep_list
- changed function dbeng_catalog_open to open with
dbeng_open_systable
- added parameter to functions dbeng_catalog_new_table and
dbeng_catalog_set_name called systable_flag
- changed function dbeng_catalog_new_table to create both the new
table and the catalog entry (if required)
- dbcs.c
- added functions db_get_nsubfields, db_get_subfield_size,
db_get_subfield and db_put_subfield
- added function db_replicate_update under TCP only
- dbcscfg.c - added functions db_config_get_replicate_flag and
db_config_set_replicate_flag
- db.c
- added support for the commands DBCOM_GET_NSUBFIELDS,
DBCOM_GET_SUBFIELD_SIZE, DBCOM_GET_SUBFIELD,
DBCOM_PUT_SUBFIELD, DBCOM_GET_NSUBSUBFIELDS,
DBCOM_GET_SUBSUBFIELD_SIZE, DBCOM_GET_SUBSUBFIELD,
DBCOM_PUT_SUBSUBFIELD
- added support for DBCOM_CONFIG_GET_REPLICATE_FLAG and
DBCOM_CONFIG_SET_REPLICATE_FLAG
- added support for the command DBCOM_REPLICATE_UPDATE
- dbstress.c
- added support for the commands DBCOM_GET_NSUBFIELDS,
DBCOM_GET_SUBFIELD_SIZE, DBCOM_GET_SUBFIELD,
DBCOM_PUT_SUBFIELD, DBCOM_GET_NSUBSUBFIELDS,
DBCOM_GET_SUBSUBFIELD_SIZE, DBCOM_GET_SUBSUBFIELD,
DBCOM_PUT_SUBSUBFIELD
- added support for DBCOM_CONFIG_GET_REPLICATE_FLAG and
DBCOM_CONFIG_SET_REPLICATE_FLAG
- dbsrv.c
- added support for the send commands DBENG_SEND_GET_NSUBFIELDS,
DBENG_SEND_GET_SUBFIELD_SIZE, DBENG_SEND_GET_SUBFIELD,
DBENG_SEND_PUT_SUBFIELD, DBENG_SEND_GET_NSUBSUBFIELDS,
DBENG_SEND_GET_SUBSUBFIELD_SIZE, DBENG_SEND_GET_SUBSUBFIELD,
DBENG_SEND_PUT_SUBSUBFIELD
- added support for DBENG_SEND_GET_REPLICATE_FLAG and
DBENG_SEND_SET_REPLICATE_FLAG
- added replication support
- added support for send code DBENG_SEND_REPLICATE_UPDATE
- socloc.c
- fixed bug in function s_ll_put_list on call
to log_file_date
- fixed bug in function s_find which sometime would calculate
an incorrect size for the reply string
- parse.c - fixed bug in function ll_wordput which sometimes would
return an empty string
- script/cclib - added compilation of timesapi.c and tlogcode.c
- script/mkall - added builds of mktimesync and mkdatimec
- script/include.linux - split MULTI variable into multiuser and
IPC type
- script/cmulti - added IPC variable
- script/cdbeng - added compile of dbengrep.c
- script/mkdb - added IPC variable
- script/mkdbm - added IPC variable
- script/mkdbsrv
- added IPC variable
- added object file dbengrep.o
- script/mkdbstresm - added IPC variable
- script/mkdbstress - added IPC variable
- script/mkdumsockc - added IPC variable
- script/mkdumsocks - added IPC variable
- script/mkiresolve - added IPC variable
- script/mksockc - added IPC variable
- script/mksocloc - added IPC variable
- script/mksys_log - added IPC variable
- script/mktestcs - added IPC variable
- script/mktestss - added IPC variable
- script/ppcmulti - added IPC variable
December 10, 2001
Changes and additions in the GPL package designated as
1.29-2001.12.15:
New Items
- script/cmulti - new compilation Unix shell script
- dbengses.h - header for database session table management
- dbengcat.h - header for database catalog management
- dbengses.c - database session table management (used by server only)
- dbengcat.c - database catalog management (used by server only)
- rb/dbengses - database session table management (used by server only)
- rb/dbengcat - database catalog management (used by server only)
Modified Items
- dbmess.h - changed to accommodate both sockets and QNX message passing
- sys_log.h - ditto and added prototype sys_log_nf
- script/csocloc - changed compile from c to cmulti
- script/cclib - ditto for multiuser modules
- script/cdbeng - ditto
- script/include.generic - removed definition of MULTI
- script/include.linux - added definition of MULTI
- slogcode.c - removed include of headers sys_log.h and slogcode.h
- stdhead.h - removed QNX specific defines and added OS message passing includes
- flsocket.h - adapted for use with sockets and QNX message passing
- ipclient.c - ditto
- ipclient.h - ditto
- ipcsrv.c - ditto
- ipcsrv.h - ditto
- sys_log.c(API) - ditto and added function sys_log_nf
- dbcs.h - adapted for use with sockets and QNX message passing
- dbcs.c - ditto
- db.c - ditto
- dbsrv.c - ditto and added session table and catalog support
- dbstress.c
- adapted for use with sockets and QNX message passing
- removed processing of commands config.set.log.flag, config.set.catalog.flag and config.set.session.flag
- added catalog support for multiuser version
- sockc.c - adapted for use with sockets and QNX message passing and ported to QNX 4.x
- sys_log.c(server) - adapted for use with sockets and QNX message passing
- dumsocks.c - ditto and ported to QNX 4.x
- dumsockc.c - ditto and re-coded to use ipclient API
- logger.c - added function log_file_date_nf and changed log_file_date to get date/time string from get_time
- logger.h - added prototype log_file_date_nf
- parse.c - added function get_time
- parse.h - added prototype get_time
- dbeng.c
- added functions dbeng_ll_open and dbeng_ll_close
- added support for session table
- re-wrote dbeng_pack_table and added a dbeng_goto_top after the pack
- dbeng.h - added prototypes dbeng_ll_open and dbeng_ll_close
- dbengcfg.c - changed dbeng_config_is_systable to detect temporary tables
- dbeng.h - added dbeng_table member current_position
- dbengver.h - changed DBENG_VERSION
- dbmess.h - added error codes DBENG_NO_CATALOG_ENTRY and DBENG_CATALOG_ENTRY_EXISTS
- dumsocks.h - adapted for use with sockets and QNX message passing
- fio.c - fixed bug in zcreate which would truncate an existing file
- dbiocode.c - added translation of new error codes DBENG_NO_CATALOG_ENTRY and DBENG_CATALOG_ENTRY_EXISTS
- dblocal.c - fixed bug in db_next which caused an exception with logging on
- rb/dbeng
- changed scope of function dbengAtidLookup to public
- added functions dbengLLOpen and dbengLLClose
- added session table support
- re-wrote dbengPackTable and placed a call to dbengGotoTop after the pack
- rb/dbengConstants - added dbengNoCatalogEntry and dbengCatalogEntryExists and changed dbengVersion
- rb/dbsrv - added session table and catalog support and changed version
- rb/dbstress - changed default table names to logical in multiuser version
- rb/parse - added function 'getTime'
- rb/dbengcfg - changed dbengConfigIsSystable to detect temporary tables
- rb/dbengTable - added currentPosition
- rb/dbiocode - added translation of error codes dbengNoCatalogEntry and dbengCatalogEntryExists
- rb/logger - changed logFileDate to get date/time from function getTime
September 16, 2001
Changes and additions in the GPL package designated as
1.28-2001.09.21:
New Items
- rb/dbengConstants - constants module, database
- rb/dbiocode - code module, database error translation
- rb/dbcs - code module, database client/server, high level
- rb/dbcscfg - code module, database client/server configuration, high level
- rb/dbeng - code module, database stand-alone engine, low level
- rb/dbengcfg - code module, database stand-alone configuration, low level
- rb/dblocal - code module, database stand-alone, high level
- rb/dblocfg - code module, database stand-alone configuration, high level
- rb/dbengConfigEntry - class, database configuration
- rb/dbengTable - class, database table instance
- rb/dirEntry - class, directory scanning
- rb/dscan - code module, directory scanning
- rb/dscanEntry - class, directory scanning
- rb/datagen Project - application, random data generation
- rb/Db Single User Project - application, stand-alone database command line
- rb/Db Multi User Project - application, client/server database command line
- rb/Bbuuzzb Server Project - application, Bbuuzzb database server
- rb/Dbstress Single User Project - application, stand-alone database stress
- rb/Dbstress Multi User Project - application, client/server database stress
- rb/Dumsockc Project - application, socket client for dumsocks server
- rb/Dumsocks Server Project - application, simple test socket server
- rb/Sockc Project - application, command line interface to almost any socket server
Modified Items
- rb/globalConstants - added new constant multiuser
- rb/parse
- added methods subString, int2bool,
bool2int and pmatch
- fixed bug in llWordPut involving first word in string
- fixed bug in strReplace that caused the string not to be replaced
- fixed bug in commandWords that sometimes ignored a word at the end of the string
- rb/misc - added methods randBool and dispLineDelim
- rb/logger - changed llog to use new dispLineDelim method
- sys_log.h - added define SYS_LOG_BAD_IP
- dbmess.h - added defines DBENG_BAD_IP, DBENG_LIST_DELIM
and DBENG_SEND_GET_OPEN_TABLE_LIST
- dbeng.c
- added function dbeng_open_table_list
- removed requirement of an active record from the functions
dbeng_delete_flag and dbeng_set_delete_flag
- documented exit using sys_log function in dbeng_rec_count
- dbeng.h - added prototype dbeng_open_table_list
- dblocal.c - added function db_get_open_table_list
- dblocal.h - added prototype db_get_open_table_list
- dbcs.c - added function db_get_open_table_list
- dbcs.h - added prototype db_get_open_table_list
- dbcomm.h
- added define DBCOM_GET_OPEN_TABLE_LIST
- changed value of define DBCOM_MAXCOM
- fio.c - changed function filecopy to use C standard stream I/O
- db.c
- corrected some return codes and syntax of documented commands
- modified function c_count to use table process_deleted
flag if all option is not used
- added support for command get.open.table.list
- slogcode.c - added translation of new define SYS_LOG_BAD_IP
in function sys_log_code_string
- dbiocode.c - added translation of new define DBENG_BAD_IP in
function dbeng_io_code_string
- dbsrv.c
- added support for DBENG_SEND_GET_OPEN_TABLE_LIST
- fixed bug in process_request that ignored parameter with opening
quote
- dbengver.h - changed define DBENG_VERSION
- dbengcfg.c - changed session_flag and catalog_flag default
values to FALSE
- dbstress.c - added support for command get.open.table.list and made
function c_new_table available in single user mode only
- sloc.c - changed global sockClientAddr to slsockClientAddr
- dumsocks.c - removed multiple declarations of localHost
- sockc.c - minor message and documentation changes
February 23, 2001
Changes and additions in the GPL package designated as
1.27-2001.02.23:
New Items
- dscan.c - is a new API used for scanning directories for matching
files or other directories
- dscan.h - header file for the directory scanning API
Modified Items
- logger.c - the local variable mes in the function
log_file_date has been changed in size to the define of
MAXMES (given in the header logger.h)
- logger.h - the size of the define MAXMES has been increased to 2kb
- stdhead.h - added the include of the headers dirent.h and
sys/stat.h
- parse.c - changed functions ll_indxword and ll_wordlen
to call the function inittstring only if the word delimiter is a
space, otherwise use the function initstring
- parse.c - new function pmatch to perform pattern matching
- parse.h - new prototype for the function pmatch
- fio.c - changed function isdirectory to be compiled for all
platforms and now uses the opendir system call
- fio.h - enabled prototype of the function isdirectory for all
platforms
- dbengcfg.c - added include of the header dbeng.h
- cclib script - added compile of new library module dscan.c
January 24, 2001
Changes and additions in the REALbasic package designated as
1.26p-2001.01.24:
New Items
- TCPSocketServerList - link list class used by the TCPSocketServer
class and managed by the ipcSrv code module
- writeTimer - timer class used to sent a reply back to the client
application used by the TCPSocketServer class
- sysLog - code module which is the system logger API
- sysLogConstants - code module containing system logger constants
- slogcode - code module with methods to translate a system logger reply
code to an English explanation
- sys_log Server Project - the complete system log server
Modified Items
- TCPSocketServer - during stress testing of the system log server, I
realized that the server would not respond when a connection was active
and another connection was attempted. Unlike the BSD or WinSock
socket API, the REALbasic socket class has no ability to queue
requests when a connection is already active. This class has been modified
to spawn a new listener when a connection takes place. The new
TCPSocketServerList class stores all current listeners. This class
also has been changed to use the new writeTimer class to
transmit/send data back to the client application.
- ipcSrv - this socket server API has been modified to manage the
TCPSocketServerList link list.
- Socloc Server Project - the socloc server has been modified to
use the new socket server API including the ipcSrv code module,
the TCPSocketServer class, the new TCPSocketServerList class
and the new writeTimer class.
November 10, 2000
A new C++ class has been added starting in package version
1.26-2000.11.10. This new class called word string encapsulates
most of the functionality of the parse C module.
September 23, 2000
New C++ code has been added to the GPL package starting in
package version 1.25-2000.09.23. Two classes have been created. Both are
TCP/IP socket related. One which implements a socket client and the other
which creates a socket server. These new classes are contained within the
clib GPL package directory.
Two test example applications have also been created to that use the
new C++ classes. One application is a socket client and the other is
a socket server. Both of these applications are located in the apps
GPL package directory.
Many new Unix shell scripts have been added. These scripts are used
to compile/build C++ code. In addition, the existing shell scripts
include.linux and mkall have been modified to accommodate
C++ code.
September 10, 2000
The changes in the new REALbasic
code starting in GPL package 1.24p-2000.07.05 will be reflected in
this log.
July 5, 2000
The following modules have changed as a result of the implementation of
the new library module ip.c. These changes are reflected in the
GPL package 1.24-2000.07.05. Here is a list of the changes:
Header Files
There is a new library header file called ip.h. This header is
not automatically included.
Library Modules
A new library module called ip.c has been created to handle all
functions related to IP addressing and resolution. There are currently
three functions in this module: ip_host2ip will resolve a host
name to an IP address, ip_ip2host will resolve an IP address to a
host name and the function isip, which used to be located in the
library module parse.c has been moved to this new library module.
Application Modules
The following application server modules have changed:
- dbsrv.c - Bbuuzzb database server
- dumsocks.c - dumsocks server
- socloc.c - socloc server
- sys_log.c - system log server
The above servers have had their main initialization function changed
to obtain the IP address of the current machine and passing this IP
address to socloc.
The following application client modules have changed:
- db.c - Bbuuzzb database client
- dbstress.c - Bbuuzzb database stress
- dumsockc.c - dumsocks client
- iresolve.c - IP resolve
- sockc.c - universal socket client
Each of the above applications has had the new library module ip.c
added to its link sequence and also included the header file ip.h.
API Modules
The two socloc API modules sloc.c and slconfig.c
have had the header file ip.h included.
Unix Shell Scripts
The following Unix shell scripts have been changed to add the new
library module ip.c:
- cclib
- mkdbsrv
- mkdumsocks
- mksocloc
- mksys_log
- mkdb
- mkdbm
- mkdbstress
- mkdbstresm
- mkdumsockc
- mkiresolve
- mksockc
July 1, 2000
While porting the socloc API code to
REALbasic, I
discovered that the automatic failover built into the API was not
functioning as designed. Only the first dead socloc server was being
recorded. Changed the function sloc_client_connect to call the
function sl_config_get_first. Also changed the function
sloc_failover to record the value of the dead port index (spos)
before entering the sloc_config_delete loop.
This change is reflected in the GPL package version
1.23-2000.07.01.
May 31, 2000
I found a major structural problem with the
client socket high level API module.
The function ipc_init was calling the socket function
connect. This means that the only way to connect to a socket server
would be to call this function. This is not the intention of the design.
I re-structured the ipclient.c module
by removing the ipc_init function as there is no specific
initialization required other than to load the host name and port number
of the socket server. I also added the functions ipc_set_active to
set/load the host name and port number of the server, ipc_get_active
to obtain the current host name and port number and also added the
function ipc_send_receive which will connect to the server, send the
command request and wait for a reply. The connection to the server is now
performed in the new function ipclient_connect. The functions
ip_send_data and ipc_recv_data no longer have any purpose
and have been removed.
The
client socket high level API header
has also been changed so that the function prototypes match the
client socket high level API module.
The sockc application also has been changed
by adding two command line switches. The -s switch will disable the
socloc interface when the program is executed.
The -l (el) command line switch specifies a client log file to use
once logging is enabled. The application now uses the
client socket high level API module to
communicate to the currently connected socket server. The client socket
global data that also was part of this application has now been removed as
well as the d_client_connect function. Two new commands have been
added to the application, they are: socloc.on and socloc.off
which allow the socloc interface to be turned
on or off while the application is running.
The above changes are reflected in the GPL package version
1.22-2000.06.01.
May 25, 2000
I discovered a bug in the sockc application. The commands
socloc.list and socloc.config.list sometimes caused the
program to blow. Upon investigation, the program turned out to be dynamic
memory allocation related. I was freeing a string and then later in
the function, attempting to use that same string. This bug has been
corrected in the new package 1.21-2000.05.25.
April 30, 2000
Completed coding of the new GPL software package designated as
1.2-2000.05.03. This version contains the completed integration of the
socloc interface with all applications.
The new GPL package has not been posted as yet. See the
newsletter for more information.
Here is a detailed list of all the code changes:
Header Files
- comcode.h - This is a new header file which contains the common socket
send and reply codes. This header is now included from other API header
files. Normally, this file should not be included from your application.
- dbcomm.h - A new command DBENG_VERSION has been added which
represents the socket server version.
- dbcs.h - Added the function prototypes db_version and
db_get_active.
- dbcscfg.h - Added the extern "C" sections for a C++ compiler.
- dbengcfg.h - Added the extern "C" sections for a C++ compiler.
- dbengver.h - Changed the value of DBENG_VERSION to
.40.03-2000.04.28.
- dbmess.h - Added the reply codes DBENG_SOCLOC_NO_INIT,
DBENG_NO_SERVER and DBENG_FAILOVER. Added include of
comcode.h.
- flsocket.h - Moved the common socket send and reply codes to the
include file comcode.h.
- ipclient.h - Added the extern "C" sections for a C++ compiler.
- ipcomm.h - Added the extern "C" sections for a C++ compiler.
- ipconfig.h - Added the extern "C" sections for a C++ compiler.
Note that this module is now obsolete but is not being removed as it might
be of some use.
- ipcsrv.h - Added the extern "C" sections for a C++ compiler.
- logger.h - Added log_file_name, log_console and
log_get_console prototypes.
- parse.h - The prototypes for the functions stricmp and
strnicmp will now only be included if the define
HAS_STRICMP (from stdhead.h) is not defined. These function
prototypes used to be controlled via the platform define OS_DOS.
- sconnect.h - Added the extern "C" sections for a C++ compiler
and added the include of the file comcode.h.
- sliocode.h - Added the extern "C" sections for a C++ compiler.
- slogcode.h - Added the extern "C" sections for a C++ compiler.
- socloc.h - Added the include of the file comcode.h.
- stdhead.h - Added the define HAS_STRICMP to control the
definition and compilation of the functions stricmp and
strnicmp. These are non-ANSI functions and some compilers include
them.
- sys_log.h - Added the include of the file comcode.h. Added the
prototype of the new function sys_log_get_active.
Library Modules
- ipconfig.c - This module is now obsolete since
socloc is now used to obtain the host name
and TCP/IP port number. This file will not be removed as it still may be of
some use.
- logger.c - This module has undergone a major change including:
- Added the global variable p_has_init to track whether the logger
interface has been successfully initialized at least once.
- Added the global variable p_console_output to control message
output to the console/display.
- Added the function log_file_name to obtain the name of the
current log file.
- Modified the function log_start to allow a NULL string in place
of the log file name if the logger interface has been successfully
initialized at least once. A NULL or empty log file name indicates to start
logging with the previously registered log file name.
- Added the function log_console to turn console/screen message
output on or off.
- Added the function log_get_console to obtain the current value
of the console/screen output flag p_console_output.
- sys_log.c - Added the function sys_log_get_active to obtain the
host name and TCP/IP port number of the currently connected sys_log server.
Removed all personal logging calls from the sys_log and
sys_log_header functions as these cause too many debugging messages.
Database API Modules
- dbcs.c - This module has seen major changes with the integration of
socloc. A Bbuuzzb server failover
will be detected and another server will be selected (if one is running)
but the database command will not be re-tried as the new Bbuuzzb
server does not have the same tables open as the original server. Upon
failover and a successful connection to another Bbuuzzb server, this
API module will return DBENG_FAILOVER to the application. Changed
items include:
- Removed all references to Winsock WSA functions and the
WSAdata structure since it is now the responsibility of the
application to use these.
- Renamed all socket variables by adding the prefix db_.
- Added function db_version to obtain the Bbuuzzb server
version string.
- Modified to use the socloc interface.
- Implemented limited failover as above.
- Added function db_get_active to obtain the current
Bbuuzzb server host name and TCP/IP port in use.
- dbeng.c - Cleaned up some debug messages.
- dbiocode.c - Added messages for reply codes DBENG_SOCLOC_NO_INIT,
DBENG_NO_SERVER and DBENG_FAILOVER.
- dblocal.c - Cleaned up some debug messages.
- dblocfg.c - Implemented turning on or off of the system logger
or personal logger (depending on the MULTIUSER define) from the
function db_config_set_log_flag.
Unix Shell Scripts
All of the Unix shell scripts have had major changes including:
- Compilation and linking is assisted using environment variables.
- Two new shell scripts have been composed called include.generic
and include.linux which load the environment variables. These two
shell scripts are dot executed from the compile/link scripts.
Refer to the script documentation for
a complete reference
Applications
- datagen - Removed log statements and unnecessary printf
statements.
- db/dbm - Moved the include of the flsocket.h inside the
multiuser defines. Modified to use socloc
if in multiuser mode. Changed the keyword connecting character from the
underscore (_) to the period (.). Added the command
version. Added the display of the currently connected Bbuuzzb
server host name and TCP/IP port number if in multiuser mode.
- dbsrv - Modified to use the socloc
interface. Added all common send and reply codes. Removed requirement in
function process_request to have at least two command words
received. Added a command line parameter consisting of the TCP/IP port
number to service.
- dbstress/dbstresm - Moved the include of the flsocket.h inside
the multiuser defines. Modified to use
socloc if in multiuser mode. Changed
function c_config_set_log_flag to turn logging back on if it was
turned off. Added command line parameters to specify the primary and
alternate table names as well as the log file name.
- dumsocks - Added command line option to suppress all console/screen
output, running quiet.
- socloc - Added command line options to run quiet and specify the
output log file name.
- sys_log - Added command line option to suppress all console/screen
output, run quiet.
April 3, 2000
Generated a new version of the GPL software package designated as
1.11-2000.04.03. This version contains the inclusion of the
socloc interface into the
sys_log server and the
Bbuuzzb database server. The database client
applications that use the sys_log API
have also been re-compiled to include the socloc API
although these applications do not (as yet) directly call the
socloc API.
While adapting the
Bbuuzzb database server, I discovered a
structural problem with the common socket codes.
These codes are required for both single and multi user applications and by
placing the codes in the header file
flsocket.h,
the single user applications will require the include of this header
which is not appropriate. For now, I have included this header file as
required. In the next version of the GPL software, I plan to separate these
common socket codes into a separate header file.
The website documentation has not yet been updated with these changes.
The documentation will be updated once the integration of
socloc is complete.
March 9, 2000
Generated a new version of the GPL software package designated as
1.1-2000.03.09. This version contains the following new components:
- dumsockc client application
- dumsocks server application
- socloc server application
- socloc APIs
- sockc client application
This GPL software package also contains the following changes:
The function log_start
has been changed to return a integer flag representing success or
failure.
The TCP IPC library modules
ipclient.c and
ipcsrv.c have been changed to remove the
Windows specific WinSock functions WSAStartup and
WSACleanup. These functions should now be called from the application
module instead of the library module. The name of the socket structure
was also changed in these two modules to prevent global naming conflicts
that have been found to affect the CodeWarrior V4 Windows compiler.
A new function called
isip has
been added to the GPL parse library module. This function will check for
a valid TCP/IP address.
September 12, 1999
While building a DOS version of the GPL software package, I encountered
some bugs in the code that the other compilers did not catch. Generated a
new package designated as 1.01-99.09.12 which contains the corrected code
in the iresolve application.
September 7, 1999
Initial release of the Future Lab GPL software including the following
components:
- clib - GPL library
- datagen - application
- db - application
- dbeng - Bbuuzzb database engine and APIs
- dbsrv - Bbuuzzb server application
- dbstress - application
- include - header files
- iresolve - application
- sys_log - system log server and API
This release designated as 1.0-99.09.07
Copyright © 1999-2008 Future Lab, Last Updated Sep 01, 2008