2006-5-27 Britton Leo Kerin * Version 0.9.991 released. * play.c, record.c, move_au.c, move_fd.c: Fixed bug which caused root permissions to be dropped before all threads were created. 2006-1-10 Britton Leo Kerin * main.c: fixed command line help output, fixed problem when program invoked by full path name. * all_files: updated copyright. 2002-11-28 Britton Leo Kerin * Version 0.9.98 released. * main.c: basename() is no longer used at all. * play.c, record.c, ringbuf_init.c: Accounted for fact that POSIX defines for MEMLOCK can be magic numbers meaning features are not available or need a runtime check. Accounted for fact that libc doesn't seem to set these symbols exactly as specified by the standard. * Makefile: Added commented out variable which can define a preprocessor symbol to enable some fancy thread responsiveness features. 2002-11-22 Britton Leo Kerin * globals.c: Comment fix. * get_au_blksz.c: Changed type for internal blocksize variable from long to int to hopefully keep ioctl happy. 2002-09-02 Britton Leo Kerin * main.c: Added FIXME comment about limiting core production. 2002-06-21 Britton Leo Kerin * record.c, play.c: Fixed comment to refer to correct variable name. * move_au.c: Added a FIXME about wrong-looking dropping of partial samples from the middle of the stream. 2002-05-10 Britton Leo Kerin * Makefile: Used wildcard make function to get rid of explicit header list and .o file list. 2002-04-08 Britton Leo Kerin * usage.c: Made description of -v flag better. * usage.c: Added newlines after first line of usage() output. 2002-03-19 Britton Leo Kerin * rawrec.h: Added clarifying comment. 2002-02-09 Britton Leo Kerin * Makefile, audio_close.c, audio_init.c, data_close.c, data_init.c, err_die.c, get_au_blksz.c, get_format_code.c, globals.c, is_pow_two.c, main.c, min.c, move_au.c, move_fd.c, play.c, process_command_line.c, rawrec.h, record.c, ringbuf_close.c, ringbuf_init.c, set_au_blksz.c, shutdown_signal_handler.c, sleep_on_option.c, test_dsp_params.c, thread_functions.h, usage.c, write_silence_on_option.c: Imported sources into CVS. 2002-01-02 Britton Leo Kerin * src/record.c (record): Now uses __func__ to report function name if the unrecognized sample format bug occurs. 2001-12-12 Britton Leo Kerin * err_die function now used wherever appropriate. * src/Makefile (debug): Now invokes gcc with -v option. (debug): No longer does clean first. 2001-12-01 Britton Leo Kerin * src/play.c (play): Fixed prototype for shutdown_signal_handler, removed bogus cast due to bad prototype. * src/record.c (record): Fixed prototype for shutdown_signal_handler, removed bogus cast due to bad prototype. * src/shutdown_signal_handler.c (shutdown_signal_handler): Used signal value as flag true value. Added prototype. * src/Makefile: Fewer compilation warnings by default. 2001-11-16 Britton Leo Kerin * src/Makefile (CFLAGS): Introduced new subvars WARNFLAGS, DEBUGFLAGS, and OPTFLAGS. * src/Makefile (debug): Fixed target, changed to use -ggdb3 flag. 2001-03-27 Britton Leo Kerin * Version 0.9.97 released. * src/play.c (play): Skipping in pipes now correctly uses audio_fragsz instead of incorrect app->fragsz. * src/play.c (play): The audio device is now grabbed and the audio_fragsz determined before skipping (as per -j or -J). 2001-03-26 Britton Leo Kerin * Version 0.9.96 released. * src/process_command_line.c (process_command_line): If the channels are not set exactly as requested, the user is always notified, regardless of the verbosity setting. * src/process_command_line.c (process_command_line): When INVALID_PARAM is returned by test_dsp_params, the value that failed to get set is reported to the user in the error. 2001-03-23 Britton Leo Kerin * src/main.c (main): Invalid argument to -f option no longer displays full usage information. * src/get_format_code.c (get_format_code): New file get_format_code.c, new function get_format_code translates string representation of sample format to driver integer code. * src/Makefile: New file names added to OBJS and SRSC. * src/test_dsp_params.c (test_dsp_params): Now calls get_format_code. * src/audio_init.c (audio_init): Now calls get_format_code. * src/test_dsp_params.c: Fixed typo bug which caused u16_le format to be improperly tested as format AFMT_U16_BE. 2001-03-20 Britton Leo Kerin * src/play.c (play): Jumping (-j and -J options) code modified to allow jumping into pipes using throw away reads. 2001-03-19 Britton Leo Kerin * src/main.c (main): Added --version option. 2001-03-07 Britton Leo Kerin * src/process_command_line.c (process_command_line): INT64_MAX used for maximum ap.samplim if __GNUC__ defined. * src/rawrec.h: (parameters_stt): Conditional use of int64_t for samplim, sys/types.h #include 'd. * src/rawrec.h: Local definition of INT64_MAX if __GNUC__ defined. * src/write_silence_on_option.c (write_silence_on_option): changed types of bytes_silence and bytes_done from long to double to allow long silent writes. * src/Makefile (CFLAGS): Added new defines to enable LFS. 2001-02-18 Britton Leo Kerin * src/Makefile: install is not used instead of cp, and directories are created if they don't exist. 2001-01-01 Britton Leo Kerin * src/process_command_line.c (process_command_line): added exit(EXIT_FAILURE) to INVALID_CHANNELS error condition. 2000-12-13 Britton Leo Kerin * Version 0.9.95 released. 2000-12-08 Britton Leo Kerin * src/main.c (main): added exit(EXIT_FAILURE) after usage() for badly names executables. 2000-12-03 Britton Leo Kerin * src/Makefile (distclean): New target. * docs/user/rawrec.1: Updated to include information on signal handling and buffer overflow behavior. * src/Makefile (bin_install): Now correctly depends on $(PROG), which prevents relinking on make install. * src/Makefile: Removed -m486 from CFLAGS. Not that I've tested anything on other archs yet. * src/move_au.c (move_au): When recording, move_au now aborts the entire program if a trylock on a segment fails (if it finds itself waiting on move_fd). * Added special shutdown processing for SIGTERM. Involved adding shutdown_signal_seen and tell_main_follower_done flags and associated mutex awareness to play, record, move_au, move_fd, and term_handler. * New file: src/shutdown_signal_handler.c. Contains a handler function which allows us to perform clean shutdown on SIGTERM. Mechanism should work fine for other signals as well, but currently only SIGTERM and SIGINT get special treatment. 2000-09-01 Britton Leo Kerin * src/ringbuf_close.c (ringbuf_close): added free(is_last_seg) 2000-08-24 Britton Leo Kerin * Version 0.9.94 released * src/play.c (play): jump_bytes set from time_startjump is now correctly rounded down to a multiple of (app->channels * bps / 8) (no more hideous static from unlucky arguments to -j option). * src/write_silence_on_option.c (write_silence_on_option): modified to write correctly rounded number of bytes as above 2000-08-22 Britton Leo Kerin * Version 0.9.93 released * src/globals.c (have_root_authority): added global have_root_authority, modified other functions to allow operation with or without root permissions * src/ringbuf_init.c (ringbuf_init): error checking on all mallocs * src/write_silence_on_option.c (write_silence_on_option): error checking on all mallocs * src/move_fd.c (move_fd): added wait on condition variable wrap_ready_cv to prevent buffer wrap around before second thread started * src/ringbuf_init.c (ringbuf_init): code to determine seg_cnt now insists on at least three segments (so staggered locking works right) * src/main.c (main): changed format of long option names to hyphen seperated words, rather than underscore seperated words * src/usage.c (usage): changed output to reflect new option name format 2000-08-18 Britton Leo Kerin * src/play.c (play): changed audio_init call to use correct FOR_WRITING instead of incorrect FOR_READING 2000-08-17 Britton Leo Kerin * src/play.c (play): actual lseek moved inside conditional so lseek is only called if time_startjump or samp_startump nonzero 2000-08-09 Britton Leo Kerin * Version 0.9.9 released * src/main.c (main): changed long option --format to --sample_format to agree with documentation 2000-08-08 Britton Leo Kerin * Version 0.9.8 released * src/process_command_line.c (process_command_line): added case to handle setting of sample limit when a filename is given to rawplay without a time limit. * src/process_command_line.c (process_command_line): when a limit gets set, then ap.time_limit_set and ap.samp_limit_set also get set as appropriate (except when the limit is a bogus maximum of a type). 2000-08-04 Britton Leo Kerin * src/Makefile (bin_install): added suid warning 2000-08-03 Britton Leo Kerin * all vars holding large byte counts are now doubles, not longs * src/Makefile: man_install target now links rawplay.1 to rawrec.1 2000-07-25 Britton Leo Kerin * Version 0.95 released (first public release)