This file documents changes to CWRU bash following its first network-wide release. 3/15 ---- Makefile - change the declaration of $CPP_ARGS so that CPP_CC can have embedded blanks, by adding quotes bashline.c - some cosmetic changes to the FIGNORE support functions glob.c - don't define USGr3 if it's already defined variables.c - a declaration for the argument to put_command_name_into_env was missing builtins.c - only print the command name in builtin_error if this_command_name is non-null expr.c - catch something % 0 as an error subst.c - make sure this_command_name is set to NULL before calling evalexp, because evalexp uses builtin_error 3/18 ---- variables.c - changed getenv() to search the inherited environment if the hash table of shell variables does not exist or has not been created 3/19 ---- subst.c - when doing command substitution, strip only the trailing newlines. This is in accordance with Posix.2. general.c - strip_trailing () has aquired a new flag telling whether to strip all white space or just trailing newlines. variables.c - since some places in the code rely on bind_variable returning a valid value, the dynamic variable assignment functions have been changed to take a pointer to themselves as the first parameter: return ((*(entry->assign_func)) (entry, value)); and then return that value after doing whatever they need to 3/30 ---- bashline.c - disabled builtin commands should not be returned to the readline completion functions as legal command alternatives flags.c - do not redefine NULL; check only after including all needed .h files nojobs.c - fix unconditional reference to status.w_* - fix typo after call to WIFCORED in wait_for readline/readline.c - make sure all calls to BSD signal mechanism are protected by test for HAVE_BSD_SIGNALS define - make sure declaration of struct ltchars variable is protected by test for definition of TIOCGLTC - change #include file from sys/errno.h to errno.h - added a new function rl_stop_output (), the non-emacs version of ^S, to go with rl_restart_output. Haven't done anything with it yet. - added Posix support in the form of tcflow() calls to rl_restart_output and rl_stop_output readline/readline.h - change the declaration of rl_filename_completion_ignore_function to extern. It was coming up as multiply defined on some systems siglist.c - change #include file from sys/signal.h to signal.h - some systems define _NSIG but not NSIG. Define NSIG in terms of _NSIG on those systems ulimit.c - change #include file from sys/errno.h to errno.h subst.c - string_extract_double_quoted() needs to ignore "" inside `` pair, but this code should be executed only if the ` is not backslash- escaped. - changed sv_uids() to give UID, EUID the integer attribute automatically machines.h - check for the DG AViiON defining either __DGUX__ or DGUX, make sure DGUX is defined in any case trap.c - change run_pending_traps to loop from 1 to NSIG instead of 0 to NSIG execute_cmd.c - For a command run explicitly in a subshell via (), run_exit_trap () needs to be called after that command has executed for /bin/sh compatibility variables.c - make $PPID have the integer attribute when it is intialized 4/2 --- subst.c - make string_extract_double_quoted handle backslash-escaped ` correctly when parsing a `` pair 4/3 --- jobs.c - make sure job_control is set to 1 before the first time give_terminal_to is called, so that it does its job and the process groups are correct. subst.c - make string_extract_double_quoted() not turn \\ into \ inside quoted strings. The translations will be taken care of later. nojobs.c - make sure we get the tty state in initialize_jobs(), and don't try to set it in set_tty_state until we know we have saved valid settings. 4/6 --- shell.c, execute_cmd.c, shell.h - shell now exits with status 127 when asked to execute a binary file as a shell script builtins.c - `local' is once again an error outside a function - `trap' now formats output differently when given no arguments; the new format is suitable for feeding back to the shell as input to `trap' - cleaned up a contradiction in the help text for the `export' builtin - `export' and `readonly' now accept a -p flag for Posix.2 compliance that acts the same as if no flags had been specified, and take a `--' option to disable further option processing - `unset' takes a `--' argument to disable further option processing - when given the -f flag, unset will now try to unset a variable if no function is found for the name supplied - `kill' now takes a -s signal argument as equivalent to -signal - `kill' takes a `--' argument to disable further option processing, since a negative number may be used to denote a process group - `kill -l' now takes arguments and lists the names for individual signals by number. If the number given as argument is > 128, it is assumed to be an exit status, and 128 is subtracted before further processing builtins.c, variables.c - `set +' is no more; print_vars_no_values() is no longer needed flags.c, builtins.c - `set -C' is now an alias for noclobber trap.c - SIGNULL is no longer a valid name for signal 0 getopts.c, subst.c - resetopts () --> getopts_reset () - rewrote getopt() per Brian's request builtins.c - `return' is now valid when executing a file with the `.' builtin and causes the execution to be aborted execute_cmd.c - file descriptors > 2 manipulated via `exec' are no longer set to close-on-exec 4/8 --- cpp-Makefile - fixed the bad definition of RANLIB if RANLIB_LOCATION was defined - pass the correct definition of ranlib through to the make of readline readline/readline.c - make sure some defaults for screen size are defined in the case of a dumb terminal builtins.c - `return' now works for aborting files executed with the `.' builtin parse.y - a `"' before a closing ) in a $( ) construct within double quotes is no longer an error subst.c - string_extract_double_quoted now passes everything between $( and ) through verbatim, without scanning it for double quotes. This way, `echo "$(echo "*")"' will echo `*' like it should. documentation/bash.1 - updated to reflect the changes from Posix.2 draft 11. 4/10 ---- execute_cmd.c, builtins.c - changed some instances of absolute_pathname to absolute_program (like doing PATH, CDPATH searching, the `type' builtin, and filename hashing) readline/readline.c - made rl_deprep_terminal do a little sanity checking on the values in otio that it is restoring Minor update of tar files available for FTP from CWRU