]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/ChangeLog
This commit was manufactured by cvs2svn to create tag
[bacula/bacula] / bacula / ChangeLog
index c06d96429aa5278af715a05f92dbb479e60a8e41..865e7df63fd86c6ff91fe364e69099e2b34ed839 100644 (file)
@@ -1,4 +1,916 @@
 
+2004-06-22 Version 1.34.5 21Jun04 Release
+21Jun04
+- Fixed Gnome crash on up/down arrow with no history.
+- Fixed btape "fill" crash with multiple tape option.
+19Jun04
+- Fix a number of places in query.sql where multiple JobIds are
+  printed (due to JobMedia records).
+- Add new query: List jobs on Volume given Volume name.   
+- Correct socket close on Win32 in bnet.c (in addition to compat.cpp).
+  Caused fd leak in Win32 for each connection.
+- Remove vol labeled test in askdir update_volume_info so that non-labeled
+  Volume in catalog can be marked in error.
+- Close socket in SD when connection rejected. Caused fd leaks.
+- Initialize job_start_wait cond variable after every new_jcr() otherwise
+  NetBSD gets error in library when trying to delete it without being inited.
+- Fix typo (9 instead of 0) return status in write_new_volume_label.
+- Fix mount.c to call routine that correctly marks a volume in error.
+18Jun04
+- Eliminate printing INFO message in UpdateDB (cats) -- it generates
+  "false" error messages.
+- Eliminate some GTK error messages when running the Gnome2 console.
+16Jun04
+- Apply Peter Eriksson's lib file order changes in linking for IRIX.
+- Abort configure if Internal is  selected as the database.
+- Add testimonials to the Web page
+- Add the bugs list to the Web page "lists".
+- Clarify the English in SuSE and Slackware when SD not running.
+15Jun04
+- Applied the patches sent by Andreas Jellinghaus: build Gnome and  
+  wx-console in client-only build if configured; add ./configure option
+  to permit setting of sbin modes -- default is 0745 as before; remove
+  cats library from Gnome console build; remove old version from Gnome
+  About box. Thanks Andreas.
+
+2004-06-14 Version 1.34.4 14Jun04 Release
+12Jun04
+- Enhance regression scripts.
+- Apply Tim Oberfoell's ACL patch.
+11Jun04
+- Implement bsscanf() because sscanf on FreeBSD amd64 stores
+  in 64 bit words for %ld. Turned on for the moment only for
+  FreeBSD amd64.
+- Fix all conversions of ptr to int to use (long unsigned) this
+  works on i386 and amd64.
+- Add mtimeonly and keepatime to new Options list -- omitted before.
+- Add a bit more authentication debug code.
+- Start variable name/overload cleanup in SD
+- Fix sscanf() in askdir.c scanning into bool to use local int.
+- Make max_spool_size int to allow proper arithmetic.
+- Remove trailing junk on sscanf() of "Hello Start Job" in SD.
+- Make ask_sysop_to_mount_volume() always ask sysop.
+- In SD mount.c, if get I/O error or read label error on non-removable
+  Volume, mark the volume in error and retry. 
+- In SD mount.c, if non-removable volume, never ask sysop to mount. We
+  ask sysop if there are no appendable Volumes though.
+- The above 3 items fix the looping error Bacula would get if the
+  Volume was in the catalog but didn't exist -- or was zero bytes 
+  long.
+10Jun04
+- Implement | and < in FD for new FileSet files.
+- Implement simplistic attribute spooling statistics in status.
+- Make storage=xxx on restore override the restore default.
+- Fix an uninitialized stack variable in append.c that caused data
+  corruption on amd64 machines and *could* cause the same on other
+  machines.
+- Fix a seg fault in automatic tape labeling.
+- Eliminate a PoolId=nn when zeroing the InChanger flag for a Volume.
+- Add a bit more debug info to bls.c
+- Clear InChanger flag during "update barcodes" if no VolName present,
+  i.e. no Volume in Changer.
+- An update pulled in Christopher Hull's fixes to the client program          
+  execution on Win32 to search the path and use COMSPEC.  New rules
+  apply!
+- Fix UpdateDB to complain if mum_rows < 1 rather than != 1.
+
+
+2004-06-09 Version 1.34.3 09Jun04 Release
+09Jun04
+- Add missing FT codes in new FileSet callback, which caused error
+  return on unchanged directories.
+08Jun04
+- Fix "update volumes" move from one pool to another.
+- Change default search location for PostgreSQL -- thanks
+  to Hans-Ulrich Schaefer.
+06Jun04
+- Zero Slot if not autochanger in stored/mount.c
+- As a last ditch effort to mount the next tape in mount.c, zero slot
+  and ask sysop.                 
+- Win32 status was picking up the first status in the list job terminated
+  jobs instead of the last.
+05Jun04
+- Add additional fields to llist pools
+- Correct some minor label scan problems with update slots
+- Ensure correct Pool is used with tape cleaning prefixes.
+- Eliminate false error message in update slots (slots taken as
+  Storage device).
+02Jun04
+- Print "Unimplemented" message if user does reload command in Console.
+- Add DISTINCT to Volumes for restore in query message (user supplied fix).
+- Fix crash in btape during read after fill -- important bug.
+- Turn config parse ABORTs into ERROR_TERM in Storage daemon.
+- Add dbcheck enhancements submitted by Mano Abels and
+  Jose Luis Tallon.
+- Update autoconf files to latest version.
+01Jun04
+- Modify jobq scheduler to require exclusive use of the Storage device
+  before starting it.
+31May04
+- Eliminate a few compiler warnings on Win32
+- Change Win32 to use btimers instead of timers.
+- Remove two returns in void subroutines in wxbconfigpanel.cpp
+30May04
+- Apply Christopher Hull's check for error return from open_bpipe()
+  in filed/job.c
+- Be sure to clear *all* bits in hourly when an hour is given.
+- Apply a user fix to query.sql
+- Check status code returned from _open_osfhandle in compat
+28May04
+- Apply Peter Eriksson's bug fixes.
+- Add Alpha (tru64) submitted by Scott Bailey.
+- Update manual
+- Add new Autochanger to list supported
+- Cleanup src dir better after glade trashes it with junk
+- Make another attempt to get hourly, daily, ... keywords working
+  intuitively and correctly.
+- Prevent seg fault when no job name specified on "status job"
+- Rename timers.h/.c in lib to prevent conflict on some machines
+- Trap NULL DCR in block.c
+- Add additional info to failed btape test pointing user to manual.
+- Undefine DCR, which is defined on some stupid systems.
+- Fix stored/dircmd.c not to quote Volume name on label query so that
+  "update slots scan" works right (the quotes confused it).
+- Fix autochanger.c not to attempt to unload a slot if the prior loaded
+  request returned -1.
+01May04
+- In testing for Mike Acar's problem. I *finally* found and nailed
+  the mount command that did not release a waiting job. The return
+  of a stolen lock forgot to broadcast.
+- In examining Mike Acar's problems, it appears that the Bacula                      
+  block size is not always set to a multiple of 1024. I've modified
+  block.c to do so.
+30Apr04
+- Add Excludes to new FileSet handling.
+- Fix bsmtp.c to correspond to RFC-2821 by removing extra spaces.
+29Apr04
+- Implement new style FileSets in both the Director and in the
+  File daemon. No filters yet. Both old and new styles work.
+28Apr04
+- Apply the fixes Chris Hanson sent for mtx-changer and for detecting
+  PostgreSQL on debian.
+- Rework File Options document
+- Re-begin work on File Options.
+- Add define for nl_langinfo in configure
+- Add additional tape drives sent by Jesse.
+27Apr04
+- Modify syslog in win32/compat to throw up a MessageBox().
+- Inhibit sending daemon messages to stdout if Win32 is set.
+- PostgreSQL performance updates from Volker Goetz
+- DB script updates suggested by Dan
+- Doc updates
+
+
+2004-04-26 Version 1.34.2 24Apr04 Release
+24Apr04
+- Get production build on Win32 of wx-console working -- mostly a problem
+  of getting the paths right and installing and building wxWidgets.
+23Apr04
+- Make SD utility programs accept device name as well as archive device
+  on command line.
+- Update docs
+22Apr04
+- Fix one off bug in StartBlock in bscan -- thanks to Gregory Brauer for
+  reporting this.
+- Remove old debug code from Win32 FD.
+
+2004-04-20 Version 1.34.1 20Apr04 Release
+18Apr04
+- Found and fixed SD crash during restore.
+- Added FreeBSD Bare Metal Recovery documentation by Alex Torres 
+  Molina and others.
+- Added nice graphics produced by Aristedes Maniatis giving an
+  overall view of Bacula.
+- Changed textdomain to be "bacula" in all progs.
+- Fixed a major race condition in the job scheduler when multiple
+  simultaneous jobs is enabled. This occurred only when on job had
+  blocked another because of resource usage. This caused a deadlock
+  and CPU usage. Reported by Michel Meyers.
+- Changed the backup report to indicate "Backup OK -- with warnings
+  if any warning messages were generated.
+- Change output of restore report to indicate:
+  "Restore OK -- warning file count mismatch"
+- Make backup report say "Backup OK with warnings" if either FD or SD
+  report any non-fatal errors.
+- Modify bscan to print some elementary statistics (#Jobs, #Files, ...)
+  added to catalog.
+16Apr04
+- Modify bscan to print some elementary statistics (#Jobs, #Files, ...)
+  added to catalog.
+15Apr04
+- Added --enable-wx-console and updated Makefile.in
+- Fix mtx-changer so that the calling sequence is compatible
+  with the previous version (the new one required arguments that
+  were not necessarily used).
+- Document how to use stunnel with Bacula.
+13Apr04
+- Fix crash in query command.
+- Remove schedule from the default restore job.
+- Fix data spooler to use min/max tape blocking factors.
+- Automatically turn of conio if library not found instead of bombing.
+- Cleaned up a lot of copyright dates.
+- Try to keep spool statistics from going negative.
+- Integrated wx-console code from Nicolas Boichat.
+09Apr04
+- Added new Pools chapter. Doc about using two disks.
+- Attempt to keep the spool file statistics size from going 
+  negative.
+-8Apr04
+- Fix the Director's Scheduled Jobs: list to have a ===
+  termination.
+- Fixed ./configure to disable readline rather than stop if 
+  readline.h is not found
+- Fixed a typo in the SQLite database update script as reported
+  by Robert J. Clark - thanks.
+07Apr04
+- Removed src/win32/pthreads and src/win32/zlib from the source
+  tree.
+- Created a new depkgs-win32 that has the pthreads and zlib source
+  code.
+- Removed the JobDefs from the default Restore job as it has a
+  schedule. Thanks to Matt Howard for this.
+
+
+2004-04-06 Version 1.34.0 06Apr04 Release
+06Apr04
+- Turn off SIGQUIT in console.
+05Apr04
+- A good number of document updates.
+- Fixed the order which multiple files are accepted for 
+  inclusion in the restore tree due to the fact that PostgreSQL
+  returns files in a different order from their insertion.
+02Apr04
+- Fix autochanger test in btape. It used old editing routines.
+- Fix run_program to return 0 if program runs and no output.
+- Add more debug to run_program.
+- Make signal debug print signal string.
+01Apr04
+- Build console with client-only build.
+- Add better error messages to some of the db_xxx routines.
+- Apply Christopher Hull's patches for proper Win32 shutdown.
+- Eliminate True and False in favor of true and false.
+- Put correct thread id in jcr once the correct thread is running.
+- Zap head and tail pointers in dlist when everything is removed.
+- Rework sm_dump() so that it won't overrun a buffer when editing
+  and error message.
+- Fix watchdog to properly remove entries while walking the
+  dlist chain.
+- Fix termination of last_jobs list by removing broken code.
+31Mar04
+- Update dbcheck to fix Paths without a trailing slash and Filenames
+  with a trailing slash.
+30Mar04
+- Add -p option to all SD programs including bacula-sd. It causes
+  Bacula to proceed or forge on in case of I/O errors. It is unlikely
+  this will help, and it is strongly recommended against running
+  the daemon with this option in production.
+- Tweaked the Makefile not to create the gnome directories except
+  when doing a gnome install.
+28Mar04
+- Implement Qmsg() queuing of messages to prevent recursion especially
+  for bnet.c where recursion is fatal.
+- Add detection of ncurses if the termcap lib is not found.
+- Tweak winabout -- start cleanup.
+- Fix dlist again, when list is destroyed, be sure to null head and
+  tail pointers.
+27Mar04
+- Make the default for restore to have nothing marked.
+- The "all" keyword on the restore command marks everything by
+  default.
+- The "done" keyword on the restore command prevents user interaction
+  with the tree routines -- used mainly for scripting (regression ...).
+- Correct a bug in the last_sibling code.
+- Add alphabetic sorting of siblings so the "dir" and "ls" commands
+  during restore show files in alphabetic order.
+25Mar04
+- Based on Mike Acar's suggestions rework tree insert routines. Improve
+  performance by using a last_sibling link for inserts.
+24Mar04
+- Apply corrected SQL to sql_get.c supplied by Dan Langille.
+- Implement "delete job jobid=xxx jobid=yyy ..."
+- Implement "purge volume=xxx volume=yyy ..."
+- Fix buffer overrun in query string substitution.
+22Mar04
+- Fix bad format %s instead of %d for editing new slot in update volume.
+  Reported by Vadim Zotov.
+- Better error diagnostics in ./configure for detecting termcap library.
+20Mar04
+- Restore old sql.c split_path and file name since it seems to have
+  broken the Verify stuff.
+19Mar04
+- Hunt down missing free_locked_jcr() in SD that caused zombies.
+- Modify status outputs to be more consistent for zombie checking.
+- Add tests to regression script for zombie jobs.
+- Set EIO in dev_errno for all error returns when bad data found. This
+  fixes ERR=Success messages.
+- Make error messages all contain ERROR for easy regression testing.
+- Add sanity check in DIR for VolFiles becoming smaller.
+18Mar04
+- Second cut GTK+ restore GUI. Ready for testing but much more to do.
+- Phil reported an sql path length=0 message. This broke saves of 
+  /  -- fixed in scan.c
+- Fixed seg fault in btape "test" due to missing allocation of dcr.
+- Tweaked some btape messages.
+- Sort Volume names in Job report according to the order they were
+  written -- user request.
+17Mar04
+- First cut GTK+ restore GUI.
+- Applied bsmtp patch supplied by a user. Thanks.
+- Made a new split_path_and_filename() subroutine -- in lib/scan.c
+15Mar04
+- Fix "typos" in RedHat install-autostart Makefile.in
+13Mar04
+- Added two tar files that Phil sent for adding slackware support.
+  Thanks Phil and Matt Howard.
+- Fix relabel command -- || should have been &&.
+- Correct once more the scheduling algorithm -- this time it should
+  be much better.
+12Mar04
+- Implement simple spool statistics printed by "status sd".
+- Cleanup/add spool error messages.
+- On multiple ctl-c, exit from console quickly.
+- Implement code to select a different Volume in the SD if the
+  current Volume is busy -- requested by Patrick Cole.
+- Change postgreSQL make tables to use bigint instead of integer 
+  for StartBlock and EndBlock because
+  there is no unsigned integer in postgreSQL and these fields use 32 bits.
+- Implement multiple drive autochanger support -- prompted by email of
+  Patrick Cole.
+11Mar04
+- Update version and date in Win32 build.
+- Fix bug in run_conf with month range zapping wday and wom.
+- Correct editing of port for PQsetdbLogin in postgresql.c as reported
+  by J. Conroy, and do a second try.
+10Mar04
+- Integrate Phil's Makefile patch.
+- Add SpoolDirectory to SD Device resource.
+- Add MaximumJobSpoolSize to SD Device resource.
+- Add MaximumSpoolSize to SD Device resource.
+- Implement the above.
+- Make despooling lock the device so only it writes
+  to the device during despooling.
+09Mar04
+- Data spooling now passes the regression tests.
+- Added "Files Expected" to the restore job report.
+- Implemented SpoolData = yes/no in the Job resource
+- Implemented SpoolData = yes/no in the Run overrides.
+- Note, you must have a 1.33.4-09Mar05 SD or later with the Director since
+  the DIR->SD protocol has changed to support data spooling.
+- Remove the confusing "Which DBMS do you want to use (please select only one):"
+  messages from ./configure.
+- Fix broken Jmsg with missing argument in find_one.c
+08Mar04
+- Second cut data spooling code.
+- Fix missing piece of yesterday's patch.
+07Mar04
+- Integrate patches supplied by Jason Conroy that fix Slot numbers 
+  getting lost.
+06Mar04
+- This version contains a *major* addition to the SD structures.
+  Many variables have been moved out of the JCR into a new DCR
+  (Device Context Record). This required quite a few changes, and 
+  introduced a bit of instability. In the end, after a few more
+  rounds of changes, the DCR will replace virtually all arguments
+  to the low level SD read/write routines. This change permits
+  (with a bit more code) the SD to write to multiple devices at
+  the same time for a single Job. It also facilitates adding the
+  data spooling code.
+- Added a patch that fixed the port specification for postgresql.
+- Fixed findlib/find_one.c so that it will complain about backing
+  up a hard linked file twice, which makes a restore impossible.
+- Tighten up permissions on pid file.  
+- Attempt to avoid warnings when casting 64 bit pointers to an
+  integer.
+- Added skeleton code for data spooling.
+- Make sure spooled attributes are discarded on error.
+03Mar04
+- Updated getdiskinfo in rescue/linux to handle the fact that the
+  sfdisk -s option now includes info on partitions. Also, before 
+  creating the diskinfo files, clean out the old ones.
+02Mar04
+- Add debug and error output to jobq.c
+- Fix some minor errors in debug output of scheduler.c
+- Add "trace on/off" command and modify trace code in message.c
+  to work off trace flag rather than #defines.
+01Mar04
+- If console is found during install warn user (new name is bconsole).
+- On install copy console.conf to bconsole.conf if it exists.
+- Make RunAfterJob error non-fatal.
+- Rework minor details in status output.
+- Attempt to define all values for "consoles" in JCR to avoid
+  confusion.
+28Feb04
+- Use net start bacula to start Bacula on WinXP/NT/2K 
+  systems after installation. 
+- Change a few strcpy()s to bstrncpy()s in signal.
+- Add "gui on/off" command to console to turn on gui mode,
+  which will adapt Bacula better to batch or gui programs.
+  Currently, it prevents commas from being inserted into
+  numbers in the list command.
+- Tweak some of the Makefiles so that the install is done with
+  the right program (nothing really changed).
+- Install logrotate in the "make autostart" of Bacula on RedHat.
+- Implement SIGHUP while jobs are running. It *seems* to work but is
+  a bit fragile and still crashes if you push it. More work needed.
+- Applied Phil's GNOME 1.4 patch. Very clean. Thanks Phil.
+- Major updates to the native Win32 installer.
+27Feb04
+- Restructure free of conf resources to handle job_end_push()
+  and SIGHUP.  Lots of changes little substance.
+26Feb04
+- Add mtimeonly=yes/no and keepatime=yes/no to Include list           
+  1.33 style.
+- Allow no modifier in time and size specifications.
+- Attempt to implement disk seeking. More work needed.
+- Implement more in win32 installer and test it.
+25Feb04
+- Implement kb, mb, and gb modifiers for size, which mean
+  1,000 bytes, 1,000,000, ... bytes.
+- Add Makefile to src/win32 to allow building the full 
+  release -- it calls nmake where appropriate.
+- Remove the rsi directory from win32 as suggested by Christopher
+- Add Michel Meyers' nsi file to win32 and integrate it with
+  the build.
+24Feb04
+- Add the frigging _O_BINARY to the right variable. Win32 works!
+- Add debug code to state file. There is a problem with Win32 read
+  returning one byte less than it should.
+- Implement a number of new functions for alist so that it has
+  equivalent functionality to dlist.  It will be used for
+  job_end_push().
+- More work on state file. 
+- Added a popup message box on Windows if Bacula Aborts.
+- Attempt to shutdown the FD server, but doesn't work on Windows. This
+  would have given a cleaner shutdown, no problem.
+23Feb04
+- Update projects
+- Attempt to fix state file on Win32 -- no luck.
+- Add HPUX tweaks to configure.in 
+- Update quickstart and install.wml of doc.
+- Eliminate extern int h_errno from bnet.c by including netdb.h
+- Eliminate NumJobs from last_job structure so that FD and SD
+  correctly report what is in the state file.
+22Feb04
+- Implement daemon state file, and save/restore last_jobs list.
+- Fix time routines in win32 compat.cpp
+- Fix a bug of not checking the bpipe_open() status in do_shell_expansion().
+21Feb04
+- Add Volker's bacula script to the SuSE directory and convert it
+  to bacula.in
+- Make LockRes() and UnlockRes() use read/write locks and have
+  debug info to trace locking and unlocking.
+- Begin work of implementing SIGHUP. It is now enabled for
+  the Director and works only if there are no jobs running,
+  in addition, if the new conf file is incorrect, it will
+  terminate Bacula. Much more work to be done.  I've figured
+  out a scheme to implement it with running jobs without
+  adding individual semaphores or use counts.  
+- Sort "list jobs" by StartTime rather than JobId, which can
+  be random.
+16Feb04
+- Add a lot of "const" to char * arguments to keep the native
+  Sun compiler happy.
+- Added first cut of message queuing to prevent recursion in
+  low level routines. This code is not yet working.
+- Spent a *huge* amount of time looking at the tape driver
+  code in the wake of several reports of tape labels getting
+  trashed. The code looks fine.
+- Created a tape with an error (by writing a block at the
+  beginning of a tape that had valid data), and found that
+  Under Linux there is no way to read past an I/O error.
+  I tried mt; I tried my own program (btape); and I tried
+  using scsitape, which talks directly to the scsi driver.
+  This is *VERY BAD* news.
+- I spent an *enormous* amount of time enhancing the btape
+  test program as well as making the fill command work with
+  both one and two tapes and the autochanger if configured.
+  The multiple tape fill test is now quite comprehensive.
+  It checks the last block on the first tape, the first block
+  on the second tape, and the last block (11) on the second
+  tape.
+- Teaked the tape driver for several functions to use the 
+  OS driver's notion of mt_file if there is an error.
+13Feb04
+- Add DB update scripts retrieved by Scott to a new updatedb
+  directory at the top level.
+- Add -p option to bcopy to allow ignoring errors on input.
+- COALESCE(xx,0) does not work on PostgreSQL because the 0 is not a 
+  correct time. Replaced by adding LastWritten IS NULL to the sort
+  line as was first suggested by JML.
+12Feb04
+- Use COALESCE(LastWritten, 0) in sql_find.c to get NULLs to sort last.
+  See note above.
+- Add write/read and positioning test to btape "test" program.
+10Feb04
+- Fix bad printf of InChanger flag reported by Pascal Pederiva.
+- Fix bad indexing off stack in authenticate.c reported by
+  Pascal Pederiva.
+09Feb04
+- Add \n to hosts.access reject message.
+- Implement security message class and make hosts.access message use
+  that class.
+08Feb04
+- Fix check_memory bug in ua_query.c, which gives a bus error on Solaris.
+  This affected only the query command.
+07Feb04
+- Added backup to cdwriter script to examples provided by Johan Decock.
+- Fixed a bug where ls really did lsmark (just invert command table
+  entries).
+- Fix bug where a soft linked file and a directory had the same name
+  by treating the soft link as a directory and putting the entries under
+  it. This fixes the bug reported by Alexander Mueller.
+- Fix a deadlock situation in the new watchdog code where the 
+  watchdog locks its semaphore, and attempts to lock the jcr_chain,
+  but another thread has locked the jcr_chain and wants to free a
+  watchdog, which tries to lock the watchdog semaphore -- deadlock!
+  Used read/write locks to solve the problem. 
+- Improved the error messages when I/O errors or buffer id errors
+  are detected, and prevent non-sense errors from being printed.
+- Fix some incorrect messages in restore if no name is supplied
+  on the command line (e.g. pool= ).
+- Add the third digit to the release version number.
+04Feb04
+- Add -l option to bls that causes it to ignore tape label errors.
+03Feb04
+- Correct problems with jobs scheduled at a later time by hand.
+  Missing unlock(), backward test on pthread_create status.
+- Fix setip crash reported by Alan Brown.
+- Create bacula.spec.in in SuSE directory from Scott.
+- Fix missing unlock() in ua_status on access denial.
+- Lots of little cleanups, improving jcr use_count debug printing.
+- Add EMSG to mem_pool utilization statistics.
+01Feb04
+- New bacula.spec.in file from Scott
+- Add Scott's spec file to the platforms/suse directory
+- Modify configure.in to make platforms/suse/bacula.spec
+- Do not allow a resource name to be specified twice.
+
+2004-01-30 Version 1.33-30Jan04 Release
+30Jan04
+- Apply Jess Guardiani's second fix to list autochanger volumes without
+  opening the drive (necessary on FreeBSD if no tape is in the drive).
+- Added Postgresql configure search libraries recommended by Alan Brown.
+29Jan04
+- Reworked the command line handler in restore to walk through the
+  arguments one at a time. This makes the file= entries work correctly.
+  Also reworked the code that takes the MediaType and finds a 
+  storage device.
+26Jan04
+- I've noticed that the backups of Rufus, my development machine, can be
+  "stuck" for about 12 hours, then suddenly they run. In running the 
+  debugger, I see that it was stuck on the select() statement waiting
+  for the Hello.  Why this happens I am not sure. I re-organized the code
+  a bit because it didn't seem to be as robust as it could, but I cannot
+  explain the problem. 
+- As a consequence of the above, I have implemented a new bsock timer that
+  can be started and stopped. This is based on Nic Bellamy's new watchdog 
+  code. The timer is set with start_bsock_timer(bsock, timeout); If the
+  timeout expires, the bsock will be marked as timed_out and interrupted
+  with a pthread_kill() on the current thread.
+- Added 5 minute bsock timers to all the opening Hello/authentication 
+  exchanges between the various daemons.               
+24Jan04
+- New spec file from Scott.
+- New patch file from Scott for create_sqlite_database
+- Fix crash in run command if invalid pool specified on the command line
+  and then the user cancels the Pool prompt.
+- Separate Console and ConsoleFont resources in gnome2 conf files.
+- Remove possibly bad ASSERTs from bnet.c
+- Remove open() of device in dircmd.c, which fails on FreeBSD with
+  an autoloader -- thanks to Jesse Guardiani for this fix.
+20Jan04
+- Remove all "hostname -s" from configure except for RedHat. Use uname -n instead.
+- Implement SetIP command.
+- Implement Close On Poll in Device resource on SD.
+- Implement Full, Inc, and Diff Pools.
+- Implement Access control lists for Consoles.
+18Jan04
+- Define default working_dir as /var/bacula/working.
+- Implement setip console command to set new IP address for a Client.
+17Jan04
+- Implement maximum network buffer size directives.
+- Good first cut at access control lists for the console.
+- Optimize restore to select only latest Differential backup after
+  the Full, and then all following Incremental backups. Previously
+  everything after Full was selected.
+16Jan04
+- Organize kernstodo a bit (more to be done).
+- Add client IP address to BSOCK structure.
+- Use bit fields where appropriate in BSOCK structure.
+- Pass UAContext to ua authenticate in Director, and make it
+  set the appropriate console (or NULL for none).
+- Tweak restore "run" argument handling and add "files" keyword.
+- Add device name or Volume name to some SD messages.
+15Jan04
+- First cut multiple consoles.
+14Jan04
+- Update kernstodo
+- Add quit command to restore tree handler.
+- Make restore tree handler remember if a hard link is present, and
+  in doing a mark, only get database entry if there is a hard link.
+  mark commands thus run at least 2 orders of magnitude faster.
+- Add files=xxx field to run command submitted for restore.   
+- Add yes to restore run command if either yes or run is command line
+  argument.
+- Make "yes" on command line argument skip prompt for modification of
+  run job.
+- Add markdir and unmarkdir -- both affect only the directory in
+  question and do not do a recursive descent.
+- Make tree command automatically mark all higher level directories to
+  be restored when a directory or a file is selected.  Such directories
+  are indicated by preceding the name with a + to indicate that only
+  the directory entry is selected and not the whole directory tree.
+- Modify a few tree commands to walk through all arguments rather than
+  just taking the first one.
+13Jan04
+- Update copyright date on changed files.
+- Make mark command in restore tree run *much* faster by accessing database only
+  if the file actually is hard linked -- determined at time tree it built by
+  keeping a has_link bit in the tree entry.
+12Jan04 
+- Modify findlib/makepath.c to create all parent directories with full permissions.
+  This should solve the access problems on restoring files on Win32 systems.
+- Modify restore to report **** Restore Error **** if any error are found.
+  I.e. a file could not be created.
+- Change a few errors into warnings -- e.g. if permissions could not be set, but
+  the file is actually restored.
+11Jan04
+- Replace bsd_queue with dlist in lib/watchdog.c
+- Add Date: header to bsmtp.  Thanks to Meno Abels (abels) on SourceForge
+  for reporting this.
+- Remove ap==NULL check in src/lib/var.c as suggested by Christoph Barbian
+  because ap (va_list) is a struct on the Alpha, so the code does not
+  compile.
+10Jan04
+- Implement first cut of polling for a Volume.  New Device directive
+   "Volume Poll Interval = xxx" where xxx is a time specification      
+   (e.g. 5min). Default is off.
+- Call pthread_cancel on SD msgchan only if the threadid is non-zero.
+07Jan04
+- Change RH autostart scripts to start in Dan's order.
+
+2004-01-06 Version 1.33-06Jan04 Release
+06Jan04
+- Correct calculation of week of month in scheduler and in scheduled
+  listing.
+04Jan04
+- Fix cancel of job waiting on mount to be a bit cleaner.
+03Jan04
+- Fix seg fault -- don't close db in db_open_database(). It must explicitly
+  be called.
+- Doc updates
+- Allow purge of a single JobId from a Volume (code untested)
+- Implement fix to keep SD from looping complaining about the wrong volume
+  at the end of a tape -- reported by Phil, and fix confirmed by him. I cannot
+  seem to reproduce the bug here.
+- Clean up a few more strcpy()s.
+01Jan04
+- Fix configure.in FD User print per Lars.
+- Doc update.
+- New bacula.spec.in from Scott. Nice!
+- Make RunAfterJob non-fatal if it errs since the Job has really  
+  already completed the save.
+- Replace sprintf with bsnprintf in message.c
+31Dec03
+- Note, this change affects only the Win32 FD.
+- Fixed Win32 FD crash due to missing argument in status command. It
+  always crashed if there was a job that had previously run.  Thanks to
+  Christopher Hull for finding and diagnosing this problem.
+29Dec03
+- Fix SELECT as indicated by Dan in sql_get.c for returning Volume names.
+- Fix last_jobs list crash for utility programs (btape, ...).
+- Correct editing of FileSet name into SQL command.
+- Allow calling watchdog stop without initialization for utility programs.
+- Enhance btape test by attempting to forward space past the end of the tape.
+- Detect CAP_FASTFSF in btape test as possible reason for failure.
+- Attempt to prevent infinite loops in fsf_dev() if device not properly
+  configured.
+- Attempt to get correct file number on tape after backspacing at EOM. The    
+  correction should resolve differences in OS tape driver implementations.
+- Add ctl-c detection to bconsole. When reading from tty, interrupts any
+  output from Bacula, when reading from a file, it terminates the reading
+  and returns possibly exiting if it is a batch job.
+- Create devel_bacula.in script and make it configure itself. Very similar
+  to the new bacula.in.  
+- Modify bacula.in to have separate file locations for each daemon -- makes
+  it easier to make a new devel_bacula.in when there are changes.
+- Remove old config files when rebuilding configure to avoid error msgs.
+- Fix btape "test" to respect TWO EOF.
+- Fix fsf_dev() to use system notion of file if it is valid after bsf_dev().
+- Move btraceback.gdb to scripts directory on installl.
+- Add new mandrake bacula.spec.in
+28Dec03
+- Find commonset of c_iflags that work with FreeBSD tcsetattr on terminals.
+- Remove comments from string concatenation -- doesn't work on FreeBSD
+  compiler.
+- Moderately improve bpipe_close() errors. Must rethink status return.
+- Eliminate some Emsgs in favor of Jmsgs.
+27Dec03
+- Add optional Pool keyword on restore command line. If specified, the pool
+  used will be restricted to the specified pool.
+- "Finish" implementation of JobDefs.
+- Fix directory for chmod of cats scripts.
+26Dec03
+- Implement foreach_res() #define and start replacing old code.
+- Work some more on jobdefs -- more to be done.
+- Implement bstrftime_nc() bstrftime with no century.
+- Fix static console problem in gnome2 and gnome directories reported by Alan 
+  Brown.
+- Add code to test for valid Resource Names. Permitted characters are now
+  alpha, numeric, colon, period, minus, underscore, space.
+- Turnoff some unused code in timers.c
+- Start adding code to dev.c to prevent infinite loops if fast forward space
+  file (MTFSF) is configured on but not properly supported by OS.
+24Nov03
+- Sort FileSet selection list by CreateTime.
+- Add "lsmark", and "estimate" to tree routines.
+- Doing a mark or unmark now prints how many entries were changed.
+- Add command argument parsing to btape.c
+- Enhance EOT to print file:block on message.
+- Add repeat counts on btape bsf, fsf, bsr, fsr, and weof commands.
+- Enhance btape's fill command to be much clearer and more reliable.
+- Add state file to btape so that unfill command can be done any time
+  after a fill command.
+- Use reposition_dev() to position for read back of last block.
+22Nov03
+- Zap InChanger flag only if setting Slot to non-zero.
+- Added new SD directive TwoEOF, default off, that tells Bacula whether
+  to write one or two EOFs for EOM.  For the OnStream driver it must
+  be off, otherwise an empty file will be created.
+- Cleaned up the btape "fill" command to compare the last block written
+  and read rather than just printing them.
+21Nov03
+- Implement btape test for autochanger.
+- Implement btape test for Fast Forward Space File.
+- Moved up to cygwin 1.5.5-1
+- Implemented Fast Forward Space File
+20Nov03
+- Add support for selecting volumes from InChanger list first, then
+  selecting from all available volumes.
+- Ensure that Volumes are selected from oldest LastWritten data/time.
+- A couple of bug fixes ensuring the proper ordering of volumes.
+19Nov03
+- Return oldest LastWritten for find_next_volume.
+- Remove ASSERT from stored/acquire.c that could trip when it shouldn't.
+- Enhance SD status if debug_level > 1 to show details of dev status.
+18Nov03
+- Create update_bacula_tables, ... scripts and modify configure and Makefiles
+- Eliminate is_num() and use is_an_integer().
+- Add user slot selection code "slots=1,2-3,5,10, ..."
+- Start daemons at level 90 rather than 20 so that MySQL will already
+  be started.
+- Write alter_mysql_tables.in and alter_sqlite_tables.in
+- Add Drive and InChanger to Media record.
+- Update database level to 7.
+- Add db_make_inchanger_unique() and call it when creating and updating
+  the Media record.
+- Add Drive and InChanger to database code for Media record.
+- Allow changing InChanger flag in update command.
+- First cut at allowing the user to specify slots for updating autochanger.
+- Add scan to "update slots scan".
+- Add command in SD to readlabel.
+15Nov03
+- In the bacula start/stop script, ordered the stop: FD SD Dir to
+  give the SD the best chances of updating the catalog before dying.
+- Add Drive and InChanger to MEDIA_DBR record and to Volume update
+  from the SD.
+- Reorganize the Volume info update from SD so that the Dir sends back the
+  current information in case the Volume status has changed by expiring.
+  The DIR-SD protocol is not backward compatible (must update).
+- Fixed the signal handler to pass the signal to the exit_handler() 
+  previously it passed 1.
+- Modified SD so that on normal shutdown, it walks through all jcrs and
+  cancels them so that the Volume status will be updated in the catalog.
+- Found and fixed a bug where ST_LABEL was not set in append mode
+  (when a different tape was accepted other than the original one
+  proposed by the DIR.
+- Update the catalog Volume info after dev->file is incremented rather
+  than waiting for end of job.
+12Nov03
+- Change getdomainname() prototype for Darwin.
+- Add gethost_strerror() to create correct error message for
+  gethostbyname().
+- After doing a kill() of a stalled connection in watchdog, turn off
+  the timer to prevent an infinite loop.
+- Allow Bacula to rewrite the label on a disk volume.
+- Correct usage report printed by bsmtp.
+11Nov03
+- Complete changing references to bsmtp from smtp.
+- Add L_NONE for Admin and Restore jobs and update level_to_str()
+- Fix segfault from double free of RestoreBootstrap in job.c
+10Nov03
+- Change console to bconsole
+- Change console.conf to bconsole.conf
+- Change smtp to bsmtp
+- Implement .bconsolerc
+- Check if volume has expired when doing an update media for the SD
+09Nov03
+- Implement new code that assures that a non-zero Slot is unique within
+  a given Pool. When setting a non-zero Slot, the Slot of all other
+  Volumes with the same Slot is set to zero.  Redone later to add
+  InChanger flag
+07Nov03
+- Fix bug reported by Lars where an incorrect Volume name was printed
+  by the "status dir" command.
+06Nov03
+- Pretty up a few error messages printed by smtp.
+- Make btime_t int64_t so that one can do arithmetic.
+- Implement since as utime (64 bit UTC). 
+- Compute clock diff between Dir and FD, and adjust since time.
+- Apply SQL fix from Nic Bellamy (thanks).
+- Apply John's zlib #ifdefing fix.
+05Nov03
+- Add Dan's with-sd-user, ... to configure.in.
+- Add Dan's userid and group modifications to bacula.in
+- Lots of documentation updates.
+- Make console print "Enter a period to cancel a command" when starting.
+- Fix the "list nextvol" command so that it doesn't try to close the
+  database twice, giving a segfault.
+- Fix (hopefully) to dircmd.c so that a mount request does a pthread_cond_signal.
+  There was one path were the signal was not sent. This should fix the bug
+  that requires you to do two "mount" commands to free a job waiting on a mount.
+- Make dir_ask_sysop_to_mount_next_volume() return immediately if a slot is
+  specified.
+- Correct some of the messages in testfind.c (pointed out by Dan -- thanks).
+- Alias fd to client, sd to storage.
+- Changed order of Console commands so that short commands such as q (quit) 
+  are more logical.
+
+2003-11-03 Version 1.32d 02Nov03 Release
+02Nov03
+- Mainly a bug fix release.
+- Do a clean of both Gnome directories.
+- Require that FileSet id match when finding an Incremental
+  previous job. This was already the case for a Full.
+- Print message if no status returned from FD.
+- Correct "Do not forget to mount the drive" message. Test was
+  backward.
+- "status dir" stopped scanning the run records on the first
+  one that matched giving an incomplete listing.
+- Edit commas in Bytes on "estimate" command output.
+
+2003-10-30 Version 1.32c 30Oct03 Release
+29Oct03
+- Add %v to job edit codes. It edits in the VolumeName(s).
+- Add code to ensure that fds 0,1, and 2 are defined by dup'ing them
+  to /dev/null if necessary.  Mostly for Windows that does not have them.
+- Error check dir_create_jobmedia_record() 2 places in acquire.c
+26Oct03
+- More doc fixes.
+- Make message buffer longer for a status message that was    
+  truncated.        
+- Put termination on varargs calls in gnome2-console.
+- Scroll only if text sent and not for status update.
+- Add all possible Status codes the jobstatus_to_ascii()
+25Oct03
+- Add new spec file and cats patch from Scott.
+- Optimize tree.c a bit -- turn off debug code, keep node fname
+  length for fast rejection, add some statistics, allocate
+  in 100K and 1Meg chunks, use bool, uint16_t and uint8_t to
+  reduce node packet size.
+24Oct03
+- Eliminate ua_retention.c that was not used.
+- Improve error message when closing brace missing in conf file.
+- More doc updates.
+- Eliminate Don't forget to mount if it is a disk file.
+- Fix Gnome2 scrolling and blank screen problems.
+- Eliminate multiple JobIds in restore selection list.
+- Fix non-portable varargs code in var.c
+- Make doc fixes/changes suggested by Dan Languille
+23Oct03
+- Document new features.
+- Implement mod of Verify Job at the run prompt.
+- Correct SQL table definitions so that MySQL and SQLite
+  have all the values in the same position.
+- Correct a typo in configure.in when configuring GNOME.
+- In doing a "status dir" make it loop over all the run
+  commands in the Schedule rather than doing on the first one.
+- Close all unused file descriptors in bpipe.c otherwise if
+  a daemon is started, it will keep our TCP/IP port open.
+22Oct03
+- Print block read error (checksum, I/O, BB01, ...) once then
+  the number found at the end of the reading.
+- Implement RunAfterFailedJob
+- Change db_find_job_start_time() to require a Full save before
+  running an Incremental or Differential job.
+- Remove has_volume_expired from code that updates vol info
+21Oct03
+- Implement "delete job"
+20Oct03
+- More documentation, add Marc Brueckner's tips to manual.
+- Tweak gnome2-console scroll window.
+- Turn off some debug info.
+18Oct03
+- Modify Verify to accept VerifyJob = xx, where the last backup job
+  of job xxx will be verified.
+- Add changing the Pool name for a Volume to "update volume"
+- Write most of the code for Verify Disk to Catalog.
+- Recreate the src/gnome2-console directory.
+- Change all the text handling code to the Gnome 2.0 way.
+- Correct the way verify filenames are returned to the Director so
+  that directories are in canonical form (i.e. trailing /).
+- Handle casting bug in glade-2 by sed'ing support.c in gnome2-console.
+
 2003-10-15 Version 1.32b 14Oct03 Release
 14Oct03
 - Modify configure so that if threaded MySQL client library