]> git.sur5r.net Git - bacula/bacula/blob - bacula/technotes
68fcabf08700b555a914f873c0e6c8f3e930fdda
[bacula/bacula] / bacula / technotes
1               Technical notes for current SVN
2           
3 General:
4
5 22Aug09
6 kes  Don't print different filesystem. Will not descend 
7      message if directory explicitly excluded
8 21Aug09
9 ebl  Tweak status storage slot command to release db lock just
10      after the usage.
11 kes  Rework the bsock.h class to put public structures last
12 20Aug09
13 kes  Integrate patch for building dmg on OSX from Lorenz Schori <lo@znerol.ch>
14 kes  Add commas in num files for estimate command
15 19Aug09
16 kes  Fix bat crash due to alignment diff in bat and core code
17      In bsock.h, exact reason unknown.
18 kes  Ensure timestamp put in SQL log
19 15Aug09
20 kes  Modify acquire alogrithm so jobs do not block during despooling
21      This can give significantly more parallelism
22 ebl  Fix couple of segfault with new ACL/XATTR code
23 kes  Apply Marco's branch with jcr structure cleanup
24 kes  Apply Marco's branch with new acl/xattr code
25 13Aug09
26 ebl  update lock manager to display file:line all the time
27 kes  Make SD lock tracing work again. Has not worked for some time.
28 ebl  bat: Add a re-run button on job info page, that allows to
29           run the selected job with the same properties (level, pool, 
30           etc...)
31 ebl  bat: tweak the run job window to make it a bit more sexy
32 12Aug09
33 kes  Make new big-virtual-changer test. Test concurrency.
34 ebl  Add .lsfiles, .lsdirs, .update command to interface user with bvfs object
35 10Aug09
36 kes  Pull Philipp Storz' bacula.spec changes for OpenSuSE build service
37 kes  Implement MaximumConcurrentJobs for SD devices.
38      This should significantly help spread jobs among different drives.
39 09Aug09
40 kes  Fix bug #1344 show pool displayed wrong variable for maxvolbytes
41 kes  Fix compiler warnings in acl and xattr code
42 kes  Fix screw up with setting JobLevel and JobType
43 kes  Change version
44 kes  Apply Marco's acl/xattr rework code
45 08Aug09
46 ebl  bat: display a Warning icon when having Errors>0 and Status=T
47 07Aug09
48 ebl  bvfs: Add example to list files versions
49 ebl  bvfs: Fix directory listing
50 ebl  bvfs: Add limit/offset implementation to save resources on director
51 ebl  bvfs: Create cache tables on the fly when using Bvfs object (for testing)
52 06Aug09
53 ebl  Document FT_DELETED FileIndex=0 special value in database Schema
54 ebl  Add a new Bvfs class that implements brestore instant navigation
55      cache inside Bacula. Works for Mysql, Postgresql and Sqlite3
56 kes  bat: fix compiler warning for unreferenced argument
57 04Aug09
58 ebl  bat: Go to the media info panel when double-click on job page or media list
59 ebl  bat: cleanup job and mediainfo panel
60 03Aug09
61 ebl  Add new media info panel to bat
62 02Aug09
63 kes  Remove old sqlite3 build from bacula.spec
64 kes  Move bat from bacula.spec to bacula-bat.spec
65 kes  Remove installing gconsole start script from Makefile.in
66 01Aug09
67 ebl  Add Job Info panel to bat
68 30Jul09
69 ebl  Add restore from multiple storage functionality with
70      a part of Graham's patch.
71 kes  Add 'show disabled' command that lists the disabled jobs.
72 kes  Modify enable/disable commands to show only appropriate Jobs.
73 29Jul09
74 kes  Add ACL check for client in estimate command
75 ebl  Change time_t by utime_t in accurate function
76 kes  Start reworking 3.0.2 bacula.spec file
77      - Add SuSE build codes
78      - Add depkgs-qt so bat can build on any system
79      - Reorganize defines
80 26Jul09
81 kes  Tweak RedHat spec files
82 24Jul09
83 kes  Add format to a fprintf
84 kes  Attempt to fix SQLite seg fault problem
85 23Jul09
86 kes  Fix int/int32_t problem in accurate_add_file 
87      reported by "Eli Shemer" <elish@consist.co.il>
88 kes  Remove Qt 4.4 code so it compiles on 4.3 (setHeaderHidden).
89 22Jul09
90 kes  Apply idea of part of Graham's tidy-bsr-source.patch, but modified
91 kes  Fix bug #1337 Console tries to build with SSL when libssl-dev not installed. 
92 21Jul09
93 kes  Add setJobStatus method to JCR class.
94 kes  Modify setJobStatus so cancel has same priority as fatal errors
95 20Jul09
96 kes  Fix Solaris compiler warning in signal.c
97
98 Release version 3.0.2:
99 18Jul09
100 kes  Fix bat command line input bug
101 17Jul09
102 ebl  Fix sql query for sqlite on suse10 on copy job
103 16Jul09
104 ebl  tweak some bat screens
105 ebl  Replace info_msg by send_msg in status slots command.
106 ebl  Fix #1323 about a problem when mounting a requested volume
107      during a restore.
108 15Jul09
109 kes  Make CONF::init header and .c file agree about types.
110      Reported by "Eli Shemer" <elish@consist.co.il>
111 kes  Fix Win64 build
112 kes  Add more example SD Device configurations.
113 ebl  Force the client_encoding to SQL_ASCII when database is already
114      using this mode.
115 ebl  Fix #1335 about postgresql error message during copy session
116 ebl  Cleanup old job records when starting the director 
117      (Created/Running -> Failed)
118 14Jul09
119 kes  Tweak debug print in accurate
120 kes  Apply patch in bug #1315 by McMichaeli that fixes scripts/logwatch
121 kes  Add more output when spooling and no space left
122 ebl  Fix postgresql driver bug that displayed <NULL> rows from time to time.
123 kes  More cleanup of bootstrap
124 ebl  Implement the project 'restore' menu: enter a JobId, automatically 
125      select dependents
126 ebl  Should fix #1323 about verify accurate jobs and deleted files.
127 13Jul09
128 kes  Send bootstrap directly from DIR to SD
129 kes  Create build scripts for Win64 somewhat equivalent to the Win32 ones.
130 10Jul09
131 ebl  Print correct JobId in bls, should fix #1331
132 kes  Apply python detect patch from Bastian Friedrich <bastian.friedrich@collax.com>
133 09Jul09
134 kes  Add --with-hostname to ./configure
135 mvw  Changed ACL_OTHER into ACL_OTHER_OBJ as IRIX doesn't seem to have
136      ACL_OTHER. Fixes bug #1333
137 04Jul09
138 mvw  Change checking for acl and xattr support from first file to
139      job level.
140 mvw  Call acl and xattr function only when requested for fileset
141      and filed has support for acl or xattr
142 mvw  Fix typo introduces by fix for bug #1305
143 03Jul09
144 ebl  Should fix the first part #1323 about the restore option
145      'List Jobs where a given File is saved' which display deleted files
146 02Jul09
147 kes  Another fix for bug #1311 to get the correct last_full_time
148 ebl  Make estimate command accurate compatible. Should fix #1318
149 ebl  Add estimate accurate=yes/no
150 ebl  Change the code to check jcr->accurate and not jcr->job->accurate
151 01Jul09
152 kes  Fix bug #1317 Allow duplicate jobs = no does not work
153 kes  Eliminate double job report when do_xxx_init() returns failure
154 kes  Add debug code to MaxDiffInterval
155 29Jun09
156 kes  Change bacula-dir.conf default job name from Client1 to BackupClient1.
157 28Jun09
158 mvw  Fix missing case for NetBSD xattr restores.
159 27Jun09
160 kes  Fix Win32 build -- turn off lockmgr and remove lockmgr defs
161 25Jun09
162 kes  Modify xattr.c and acl.c not to fail the job on errors. This should
163      fix bug #1305.
164 23Jun09
165 mvw  Fix 2 rather big bugs in the xattr and acl code and fix a small
166      memory leak on a particular code path for Linux xattr/acl handling.
167 ebl  Update FileSetId when initializing job.
168 ebl  Fix compilation problem with message.c
169 ebl  Add '*' when volume is online when displaying volume list in restore. Should
170      complete project 31.
171 21Jun09
172 kes  Re-fix bug #1311 if MaxDiffInterval exceeded ensure job upgraded
173 18Jun09
174 kes  Add all Job Types to job_type_to_str() for bat.
175 kes  Fix bug #1311 if MaxDiffInterval exceeded ensure job upgraded
176 17Jun09
177 kes  Fix bug #1305 make errors obtaining acl during backup non-fatal
178 kes  Fix bug #1309 inappropriate error message during btape fill command
179 kes  Fix bug #1307 AllowHigherDuplicates=no prevents automatic job escalation
180 12Jun09
181 kes  Remove non-portable code referencing pthread_t fixes bug #1308.
182 kes  Create patch that may fix bug #1298 and bug #1304, which causes
183      an SD crash after canceling a job.
184 08Jun09
185 kes  Attempt to get bat conf file installation to work with DESTDIR
186 05uun09
187 kes  Improve error messages when a migration sql query is used and correct
188      the problem identified in bug #1303 with starting Job names
189      containing spaces.
190 ebl  Fix #1306 about a problem when building the static bconsole
191 26May09
192 ebl  Apply Steve Polyack patch to add DirSourceAddress and FDSourceAddress
193      directives. That permits to choose the outgoing interface.
194 25May09
195 mvw  Allow acl and xattr to be explicitly enabled and fail the configure
196      if we are asked to enable acl or xattr support and the OS doesn't support
197      acls or xattrs.
198 23May09
199 kes  Create Client record in database at startup -- makes bat work better.
200 kes  Turn off useless End of file message during restore.
201 kes  When doing a tree selection restore, look at the PurgedFiles column
202      in the first JobId, and if non-zero, the Job was purged, so do
203      not do selection.
204 kes  Yet another try to get qmake to install bat correctly. It looks
205      like the trick is to have an executable bat file when qmake is
206      run during ./configure.
207 21May09
208 kes  Add Catalog = all to the default Messages resource.
209 19May09
210 ebl  Fix #1029 about IPV6/IPV4 address resolution order with help
211      of David Steinn Geirsson.
212 kes  During jcr destruction hold jcr_chain lock only for minimum
213      time necessary.  This should fix the SD deadlock in bug #1287.
214 18May09
215 kes  Simplify messages printed by SD when reserve fails. This
216      should fix bug #1285.
217 16May09
218 kes  Create archivedir.
219 15May09
220 kes  Yet another attempt to get qmake to generate valid Makefiles
221      that installs the binaries. It seems to require the binary to
222      exist at qmake time :-(
223 14May09
224 kes  Apply fix to sql_cmds.c suggested by
225      Ulrich Leodolter <ulrich.leodolter at obvsg.at>
226      which prevents restore by file selection from using
227      Copy jobs.
228 kes  Add new nagios_plugin_check_bacula.tgz from
229      Masopust, Christian <christian.masopust at siemens.com>
230 kes  Reduce bconsole help to fit in 80 columns
231 kes  Add bconsole @help command
232 kes  Fix Show FileSet command to handle spaces
233 kes  Allow specification of base daemon resource name.
234      --with-basename=<name>
235 kes  Fix bat to automatically use installed bat.conf
236 kes  bat was not installed even if configured. Fix by working
237      around apparent bug in qmake.
238 13May09
239 ebl  Turn on lockmanager when using DEVELOPER flag
240 07May09
241 kes  Fix typo in Solaris acl code.
242 kes  Remove junk from configure.in
243 06May09
244 kes  Update projects file.
245 04May09
246 kes  Add --with-bsrdir and --with-logdir for placement of Bacula bsr
247      files and Bacula log files.
248
249 Release Version 3.0.1:
250 29Apr09
251 kes  Fix bug #1282 Setting job.Priority in python crashes director by
252      checking if string addr is NULL.  Not tested.
253 kes  Fix bug #1281 allow all on restore command line to restore
254      pruned JobIds without prompting.
255 28Apr09
256 dirk Correct bat Select dialog. Fixes bug #1276.
257 kes  Check for job_canceled() in fd_plugin code.
258 kes  Update Win32 table creation to have new DB version 11 format
259 kes  Remove illegal Options in Exclude of default Win32/64 bacula-dir.conf
260 27Apr09
261 ebl  Fix bug #1274 where a migration job can be canceled like the
262      original job by the MaxRunTime directive.
263 mvw  Added fix for bug #1275 where acl or xattr data is saved for
264      virtual filenames generated by filed plugins.
265 26Apr09
266 ebl  Remove 'Reposition' message when restoring
267 kes  Fix platform scripts not to clean configured files during
268      'make clean' use 'make distclean' to clean everything. Fixes
269      bug #1272.
270 kes  Update projects file
271 21Apr09
272 ebl  Tweak version string to display versionid field at the end
273      and keep fields order.
274 16Apr09
275 kes  Add additional mysql connection debug code submitted by:
276      Chandranshu <chandranshu@gmail.com>
277 14Apr09
278 kes  Fix bug #1246 Sometimes access denied with VSS enabled. UCS
279      conversion cache was not properly flushed at the end of a Job.
280 kes  Fix bug #1268 Full Max Run Time cancels jobs (when Max Run Time = 0).
281 11Apr09
282 kes  Modify insertion of read Volumes in SD to be done before the
283      drive reservation. This ensures that a Volume to be read will not
284      be reserved for writing. Significant enhancement.
285
286 Release Version 3.0.0
287 06Apr09
288 kes  Change default plugins dir to /usr/lib.
289 05Apr09
290 kes  Fix Win32 make clean to clean correctly 
291 kes  Cleanup Win installer dialog messages a bit ...
292 04Apr09
293 kes  Separate object/binaries in Win32 and Win64 builds. More to be done.
294 kes  Add bconsole to Win64 installer.
295 03Apr09
296 kes  Implement more automatic build of Win64 client. Note, there are still
297      lots of warning messages, but it seems to build a correct binary.
298 02Apr09
299 kes  Enhance Job messages from SD when the FD->SD protocol is incorrect
300      and the SD hangs up. Previously this looked like a comm error.
301 mvw  Fixed problem in xattr and acl code trying to send empty acl or xattr
302      streams.
303 mvw  Fix for bug #1261 where we send out a null stream when a file only an
304      acl and xattr support is also turned on.
305 mvw  Added some warnings to configure when using libtool and static in
306      one configure.
307 30Mar09
308 ebl  Fix small memory leak in fileregexp bsr code
309 29Mar09
310 kes  Correct bacula32.def entry point as specified by James.
311 kes  Add code to FD plugin driver to make a copy of the plugin
312      filename to be saved to avoid save_file from zaping it.
313 28Mar09
314 kes  Directly mark all files saved by plugin as being seen for Accurate.
315 kes  Add checks on the plugin version and the plugin license. Currently
316      only implemented for FD plugins.
317 kes  Add installation of /usr/share/doc/bacula
318 kes  Modify plugin checkFile to return bRC_Seen to cause file
319      to remain.  Previously was true/false.
320 27Mar09
321 kes  Implement installation of bat help files
322      The help files are installed in the htmldoc dir and can be set
323      by --htmldoc=xxx on the ./configure. Default is:
324      /usr/share/doc/bacula/html
325 kes  Update projects file
326 kes  Apply patch from  Pasi Karkkainen <pasik@iki.fi> that adds
327      Previous Job name to migrate job report.
328 26Mar09
329 kes  Apply bacula-autoconf-db-m4.patch from Kjetil Torgrim Homme 
330      <kjetilho@linpro.no> that doesn't *require* the static libraries
331      for the SQL database engine. Fixes a build problem if the static
332      libraries are not loaded.
333 25Mar09
334 ebl  Update Makefiles to compile win64 using 'make WIN64=yes'
335 kes  Disable plugin options in ua_run.c
336 kes  Added the following to provide solutions to the plugin/Accurate
337      problem -- bug #1236 Cannot restore incremental backups with 
338      the Exchange plugin.
339      - New Bacula read-only variable bVarAccurate -- returns accurate flag
340      - New Bacula write-only variable bVarFileSeen -- marks a file as seen
341      - New plugin entry point -- checkFile that is called at the end
342        of an Accurate job and allows the plugin to mark a file as seen.
343 24Mar09
344 kes  Temporarly turn off comm timers because it causes bat to seg fault.
345      Must research making SIGUSR2 work with bat and Qt.
346 24Mar09
347 ebl  Use MTIMEONLY fileset option in accurate check
348 23Mar09
349 ebl  Tweak code to compile win64 version with mingw
350 21Mar09
351 Kes  Attempt to correct timing problems with starting bat and obtaining
352      lists. Maintain in_command counter to know when a list is coming.
353 20Mar09
354 kes  Convert seconds.seq separator into seconds_seq so that Bacula
355      editing of the Job name from the full Job name works. This fixes
356      bug #1255 'variable %n changed'.
357 kes  Second half of proposed fix for bug #1227 that does not
358      mark virtual volumes for unloading.
359 kes  Proposed fix for bug #1227 Job and labeling new tape.
360
361 Beta release 2.5.42-b2
362 16Mar09
363 kes  Increase timeout for unmounting DVD as suggested by reporter
364      of bug #1250.
365 15Mar09
366 jh   Fix by James Harper to print error code when attempting to
367      restore two databases (only one is permitted). This responds
368      to bug #1234.
369 kes  Apply the nodump patch supplied by Frank Kardel that fixes
370      the NODUMP flag problem. This fixes bug #1221
371 kes  Add more output if a user attempts to clone a job but does not
372      uniquely specify the Job name.  This responds to bug #1248 which
373      was not a bug, but improves user feedback.
374 14Mar09
375 kes  Fix problems with bug #1247 and 64 bit time_t OSes by not 
376      editing (printf) time_t values.
377 12Mar09
378 kes  Install bacula (start/stop script) in sbindir in addition to
379      scripts dir.
380 ebl  Tweak configure to remove bash specific code
381 ebl  Remove TCABD reference
382 11Mar09
383 ebl  Free lock manager in when btape exits
384 09Mar09
385 kes  Apply patch from bug #1224, which fixes waiting on max Storage
386      jobs during migration.  Submitted by Alexandre Simon.
387 kes  On 03Mar08 (a year ago) applied patch from bug #1059 (kardel)
388      to implement the NODUMP flag on FreeBSD.
389 07Mar09
390 kes  When deleting a Volume by MediaId require the Id to be
391      prefixed by a * to avoid confusing with an integer volume
392      name.
393 kes  Prevent bls from printing binary data when a plugin stream
394      encountered. This fixes bug #1238
395 kes  Prepare to add JS_Warnings termination status.
396 kes  Attempt to resolve bwx-console Win32 crash. Not likely to
397      work.
398 06Mar09
399 kes  Move src/win32/dll to src/win32/lib, which is much more logical.
400 kes  Fix the Win32 build.
401 kes  Fix broken casting in src/compat/print.cpp.
402 kes  Eliminate jcr Errors and always use jcr JobErrors.  This should
403      ensure that SD and FD errors are correctly reported.  Also add
404      JobErrors to SD returned values. This should fix bug #1242.
405 28Feb09
406 mvw  Implemented xattr support for Solaris 9 and above and extensible
407      attributes for OpenSolaris.
408 mvw  Added some limits to the xattr code so that we don't blow up the
409      filed on big xattrs.
410 mvw  Fixed some comments which changed due to xattrs being implemented.
411 mvw  Changed xattr support checking in configure to test first for
412      generic solutions and when not found for specific OS functions.
413 25Feb09
414 mvw  Don't try to copy empty jobs (e.g. with jobbytes == 0)
415      which gives Unable to get Job Volume Parameters errors.
416      Which leads to copying the same job over and over again.
417 21Feb09
418 kes  Ensure that src/qt-console/.libs is cleaned properly
419 20Feb09
420 mvw  Use acl_data_len instead of seperate var for length
421      of acl stream.
422 ebl  Add database update scripts to updatedb dir
423 19Feb09
424 ebl  Fix #1226 about bconsole segfault when using readline()
425 18Feb09
426 kes  Apply Eric's next-beta.patch that enables 64 bit FileIds and
427      adds new columns to the catalog.
428 kes  Ensure that libtool directory always cleaned + reduce 
429      unnecessary output during make clean.
430 15Feb09
431 ebl  Check postgresql database encoding that should be SQL_ASCII
432      and print a warning if it's something else.
433 08Feb09
434 kes  Free name item in guid_to_name.c when already in list.
435 kes  Add more info to error message in ua_tree.c
436 05Feb09
437 kes  Make re-read last block fatal if block numbers differ by
438      more than one.
439 30Jan09
440 ebl  Try to disable _FORTIFY_SOURCE by default
441 29Jan09
442 ebl  Tweak compat.h for new mingw
443 28Jan09
444 ebl  Add new ScratchPool directive to Pool. Thanks to Graham
445 ebl  Turn on db_get_file_list() single SQL because the failure
446      was due to a full FS. And the accurate test fails with the
447      other code.
448 27Jan09
449 ebl  Fix a bug that doesn't update RecyclePool all the time 
450      during the first startup.
451 25Jan09
452 kes  Turn off db_get_file_list() giant SQL because if fails on
453      my production machine.
454 kes  Fix bat.pro.in so that bat is properly installed rather
455      than just copied.
456 24Jan09
457 kes  Modify search for .conf file so that if one is given on
458      the command line, it will be used, otherwise it will use
459      the SYSCONF directory.  It will no longer look in the current
460      directory unless explicitly requested on the command line.
461      This fixes bug #1189.
462 kes  Fail a job that references a plugin if no Plugin Directory is
463      defined.
464 22Jan09
465 kes  Fix bug #1211 crash during reload with bad dird.conf file.
466 21Jan09
467 ebl  Add detection of intptr_t and uintptr_t to configure process
468 20Jan09
469 ebl  Change some cast to use intptr_t instead of long
470 18Jan09
471 kes  Apply acl_solaris_update.patch submitted by Marco (thanks).
472 kes  Remove configure check for resolv.h -- it is apparently not needed
473      and causes build warnings on FreeBSD.
474 kes  Ensure that the installer and newinstaller Makefiles are called
475      during a make clean.
476 12Jan09
477 kes  Apply Eric's fix for suppressing extended attributes error messages
478      when dealing with deleted files.
479 11Jan09
480 kes  Add src/win32/newinstaller -- single file installer
481 kes  Attempt to explicitly call gmake when needed, or if not found
482      skip the calls.  This should fix the FreeBSD regression/build.
483 10Jan09
484 kes  Fix bat.pro.in so that bat will install.
485 09Jan09
486 kes  Add more debug output to VSS init.
487 kes  Attempt to correct win32 debug in berrno.
488 09Jan09
489 kes  Fix bug reported by Dan where make fails in clean of src/win32. 
490 07Jan09
491 kes  Fix bug #1212, SD is unable to recycle purged volumes. fstat()
492      was broken.
493 06Jan09
494 ebl  Despool attributes directly from the director if attribute
495      spool file is present
496 Beta Release 2.5.28-b1
497 05Jan09
498 kes  Fix bat install broken by $DESTDIR change.
499 02Jan09
500 kes  Fix annoying compiler warnings in console/conio.c
501 kes  Fix win32 build (depended whether or not ./configure was run).
502 28Dec08
503 kes  Apply fix suggested by Bruno Friedmann to configure.in to
504      find python2.5
505 26Dec08
506 kes  Turn on Eric's match_bsr tape block checking code.
507 kes  Correct values used for tape block numbers in record.c.
508 23Dec08
509 ebl  Fix a problem with PoolUncopiedJobs option which was broken
510      by the new JT_JOB_COPY type.
511 kes  Fix bug #1206 -- Error: sql_update.c:194, which was probably
512      caused by the user modifying the Bacula DB schema.
513 kes  Remove rogue line of C code.
514 kes  Fix bug #1208
515
516 Beta Release 2.5.16-b1
517 20Dec08
518 ebl  Work on copy jobs
519      - Add 'list copies' command
520      - Add JT_JOB_COPY type for job copies
521      - Don't allow copy jobs in automatic restore
522      - Promote next copy job as backup when original job is deleted
523 kes  Closed bug #1207 -- 2.4.4-b1 strange volume/device handling
524 kes  Closed bug #1204 -- Undescriptive help options
525 kes  Closed bug #1202 -- Revise documentation
526 kes  Closed bug #1178 -- Bat 2.4.3 tries to double-purge volumes 
527      unable to reproduce.
528 kes  Closed bug #1166. Fixed by Eric -- Problem canceling job if 
529      client looses connection while being backed up.
530 kes  Fixed bug #1200 -- inconsistent auto purge documention
531 kes  Fix documentation for Recyling ambiguity. Fixes bug #1200.
532 kes  Remove old mmap code from compat.h/cpp
533 kes  Update ChangeLog
534 kes  Correct typo in Win32 Makefile editing
535 kes  Correct typos in debug output.
536 kes  Improved error detection in creating bsrs.
537 kes  Add debug code to Win32 restore
538 19Dec08
539 kes  Fix Win32 build.
540 ebl  Cleanup director VolParam struct
541 18Dec08
542 ebl  Replace File:Block in BSR by Address to fix #1190
543 16Dec08
544 kes  Correct missing return in Darwin code.
545 15Dec08
546 ebl  Copy joblog after a Copy job
547 14Dec08
548 kes  Tweak block.c read to more closely simulate write for computing
549      block addresses and turn on disk block testing.
550 kes  Implement a crude 'list joblog' mostly for debugging.
551 13Dec08
552 kes  Fix Migration bug #1206 sql error with NULL FileSetId when no jobs
553      to migrate.
554 kes  Fix Migration JobLog bug #1171. Get the JobIds correct.
555 12Dec08
556 ebl  Fix segfault in bscan when using debug mode
557 11Dec08
558 kes  Fix configure to do minimum Win32 configure so that make clean
559      works.
560 kes  Tweak modify FD header to use %ld instead of %d.
561 kes  Remove hand scanning of FD header in SD and use Bacula's
562      sscanf, which is now OS independent.
563 kes  Define new object (file/dir) begin and end Volume label records 
564      in SD.
565 kes  Use new method of defining XATTR #defines to avoid need for having
566      them in config.h.in
567 10Dec08
568 ebl  Rename all STREAM_ACL_..._T into STREAM_ACL_..
569 09Dec08
570 ebl  Add a new lock manager that can detect deadlock situation
571      This new option is activated with a --enable-lockmgr configure
572      option.
573 ebl  Add new Director->MaxConsoleConnections directive
574 03Dec08
575 ebl  Fix bacula-sd hanging after tape gets full + unload 
576 02Dec08
577 ebl  Remove extra db_lock() in get_prune_list_for_volume()
578 ebl  Apply 2.4.3-prune-deadlock.patch that fixes a problem when
579      using Catalog as message backend.
580 01Dec08
581 kes  Apply Marco's Darwin xattr patches.
582 28Nov08
583 kes  Fix Win32 build.
584 26Nov08
585 kes  Apply Marco's Extended attribute support patch.
586 kes  Update projects file
587 25Nov08
588 kes  More changes to ensure that during thread switches the jcr
589      is removed from the TSD.
590 kes  Ensure that consoles attach jcr to thread, and that only the
591      thread attached is removed from the TSD.
592 24Nov08
593 kes  Move definition of FileId_t to bc_types and define it once in the jcr.
594 22Nov08
595 kes  Remove all time_t from arguments in favor of utime_t, which is
596      machine independent.
597 kes  Add more debug to match_bsr.c and use %u for unsigned debug editing.
598 20Nov08
599 ebl  Apply patch for bug #1182  about Recycle flag
600      that is not updated after a pool change.
601 kes  Since the user has been warned, allow console purge command 
602      to purge volumes that are in use. This is a fix for bug
603      #1191 before it was submitted.
604 kes  Fix Win32 build to add new sd_plugins.c
605 ebl  Apply patch from bug #1175 that reset the Slot and the Inchanger
606      flag in db_make_inchanger_unique().
607 ebl  Remove a Emsg() after recieving a Fatal signal that can lock
608      the catalog.
609 19Nov08
610 kes  Apply patch from bug #1187. It prints an error message if the
611      Maximum Block Size in the SD is too big.  
612 kes  Increase Maximum Block Size to 2,000,000 bytes.
613 kes  Use doubly linked bsr list so that consumed bsrs may be
614      removed.  Removing not yet implemented.
615 18Nov08
616 kes  Implement a fix that very likely fixes the undesired volume
617      purge reported by Graham Keeling.
618 kes  Implement bsr block level checking for disk files. However,
619      it does not work correctly in accurate tests, and all the
620      migration and copy tests, so it is turned off.
621 ebl  Make SD plugins work.
622 14Nov08
623 ebl  Apply Riccardo's patch to compile bacula+mysql on mandriva
624 13Nov08
625 ebl  Add more variables accessible through the director plugin
626      interface.
627 12Nov08
628 ebl  Do work on plugins
629      - fix compilation of the director plugins
630      - add plugin list to status dir output
631      - add director plugin dump after a fatal signal
632 ebl  Apply Riccardo's patch that fix some win32 compilation errors 
633      and a bug with bat version browser.
634 11Nov08
635 ebl  Add Plugin debug after a fatal signal.
636 ebl  Add db and rwlock debug after a fatal signal.
637 10Nov08
638 ebl  Fix maxwaittime to fit documentation, this time is now counted
639      from the job start and group all wait periods.
640 ebl  Add tips for postgresql to improve performance when having
641      multiple batch insert at the same time.
642 09Nov08
643 ebl  Remove extra debug for db lock.
644 07Nov08
645 kes  Apply Riccardo's second patch that cleans up the #include
646      file order + a few Win32 particularities to make bat work
647      on Win32.
648 ebl  Add allow_transactions flag to mysql db backend.
649 kes  Apply win32-fixes patch from Riccardo that makes the Win32
650      bat more stable and faster (but still slow).
651 06Nov08
652 kes  Fix bug with job name duplication if more than 60 jobs created
653      during a minute.
654 kes  Correct some bugs of cleanup in SD if the FD connection fails.
655 ebl  Add code to get more information after a fatal signal.
656 05Nov08
657 ebl  Apply Bastian's patch that add spooldata=yes|no option
658      to run command.
659 04Nov08
660 ebl  Fix bash shell to sh shell in database creation script
661 02Nov08
662 kes  Fix orphaned jobs (possible deadlock) while pruning.
663 kes  Use jcr stored in bsock rather than searching in getmsg.c.
664      This results in about a 5% speed improvement with four
665      concurrent jobs.
666 kes  Implement win32_chmod that uses wide characters, if possible,
667      to get and set the file attributes.
668 29Oct08
669 kes  Apply pane freezing during updates patch from Riccardo Ghetta.
670 kes  Rework next_vol and autoprune a bit due to failure in
671      recycle-test.  prune_volumes() now returns no status,
672      but should prune at least one Volume, if possible.
673 kes  Modify check_if_volume_valid_or_recyclable to reject a
674      volume with Recycle set off.
675 kes  Modify prune_volumes() to continue if volume Recycle is off
676      or if the volume has expired. Add more debug.
677 28Oct08
678 kes  Fix bug #1046 VolumeToCatalog incorrectly reports mounted 
679      filesystems as missing on the Volume.
680 kes  Rewrite the set_jcr_job_status() code to include job status
681      priorities so that more important status changes occur but
682      lower priority status changes will not overwrite something
683      more serious.  This could possibly cause reporting incorrect status
684      reporting in some cases.  More testing is needed to ensure
685      I have the right priorities. This vastly simplifies the previous
686      contorted logic.
687      Verify Diff status should now be correctly reported, whereas it
688      was previously lost.
689 kes  Reduce some debug output.
690 kes  Apply Joao's patch to SQLite tables to make chars work.
691 27Oct08
692 ebl  Fix #1175 About update slots that don't reset InChanger flag when 
693      slot is empty.
694 ebl  Fix #1173 where prune_volume() returns a volume from the scratch.
695 25Oct08
696 kes  Remove jobq.c constraint that read and write SD must be
697      different. This may lead to more deadlocks in the SD,
698      but they should be resolved there.
699 kes  Ensure that job report is always printed even if job is failed
700      in the director.
701 kes  Don't print job report twice for failed VBackup jobs.
702 24Oct08
703 kes  Fix editing of retention time difference to use 64 bit
704      int instead of 64 bit unsigned. This should permit very
705      long retention periods.
706 kes  Implement code to prohibit a write job from appending to  a 
707      Volume that will be used for a read operation.  This is
708      new code and could possibly cause some conflicts.
709 23Oct08
710 kes  Integrate James Harper's Exchange Win32 plugin patch.
711 kes  Apply patch from Marco van Wieringen that implements the new
712      Solaris libsec interface for ACLs so that Bacula can save and
713      restore both the new ACLs and old ACLs.
714 kes  Marco's patch also corrects the file dependency generation code
715      so that it works properly both with shared libraries and static
716      libraries.
717 kes  Marco's patch also includes a small cleanup of the cats Makefile
718      to remove some references to non-existent files.
719 22Oct08
720 kes  Modify win32 Makefiles to use full paths in most cases.
721      In particular add MAINDIR environment variable that points
722      to the main Bacula source directory.
723 21Oct08
724 kes  Add read volume list code to SD -- not yet used.
725 kes  Add James' binutils patch
726 kes  Split volume management code out of src/stored/reserve.c into
727      a new file vol_mgr.c 
728 kes  Modify configure to do an automatic make clean.  This ensures
729      that any changes to ./configure options are handled correctly.
730
731 Beta version 2.5.16 release:
732 20Oct08
733 ebl  Rename JobStat table to JobHistory
734 kes  Ensure that only normally terminated jobs are migrated.
735 19Oct08
736 kes  Add Makefile dependency when using LIBTOOL_LINK so that any
737      change in ./configure options will be accounted for.
738 18Oct08
739 kes  Fix typo in the ACL patch that I overlooked.
740 kes  Apply Marco's libtool include patch.
741 17Oct08
742 kes  Apply Bastian Friedrich's ACL patch to eliminate ACL
743      errors during restore.
744 kes  Minor cleanup of create_restore_volume_list() code.
745 kes  Fix typo in console Makefile.in
746 16Oct08
747 ebl  Fix #1110 about RunScript that can't execute a script with
748      Unicode characters in the path.
749 15Oct08
750 kes  Apply tray-monitor patch from Bastian Friedrich to make it
751      work with the new FD.
752 14Oct08
753 kes  Apply cleanup patch from Marco
754 kes  Apply patch from  Marco van Wieringen <mvw@planets.elm.net>
755      that implements libtool to create shared objects out of
756      the Bacula libraries.
757 kes  Fix tray-monitor so it will speak to new FD.
758 ebl  Fix bug with ANSI label when volume name length < 6
759 ebl  Fix segfault in debug level > 50 with btape.
760 ebl  Remove warning message in btape when command is empty.
761 kes  Fix Win32 build to pull in new BACULA define.
762 13Oct08
763 kes  Change IncludeDir to Exclude Dir Containing.
764 kes  Implement code to prohibit ExcludeDirContaining in an
765      Exclude section (same for Plugin and Options).  A bit
766      of a kludge with RES_ITEM2 ...
767 ebl  Add field to command list to restrict Runscript console
768      command.
769 ebl  Use a separate JCR when running Console command with Runscript.
770 ebl  Permit to mark version as Beta in some outputs
771 11Oct08
772 kes  Add plugin types in jcr.h to reduce need to cast.
773 kes  Do better checking of plugin return values.
774 kes  Free plugin context after calling pluginFree() as
775      requested by James.
776 kes  Allow plugin to call JobMessage with NULL context.
777 kes  Do not add plugin to global list if loadPlugin returns error.
778 kes  Rework plugin.h a bit to reduce dependence on Bacula.
779 10Oct08
780 kes  Move generation of bsr file for Virtual Backup to run section
781      so that it is generated just before actually running.
782      Suggested by Graham Keeling.
783 09Oct08
784 kes  Add malloc and free Bacula entry points for plugins. Increment
785      FD plugin interface version. Create a Bacula plugin context 
786      structure to keep track of whether or not the plugin is disabled.
787 kes  Apply FileIndex fix for plugin name stream suggested by James.
788 kes  List plugins in FD status report when debug > 0.
789 08Oct08
790 ebl  Add a new VerId variable that is printed in version command.
791 kes  Fix migration SQL not to migrate a job that has not terminated.
792      This is a partial fix to bug #1164.
793 kes  Sort JobIds returned from db_accurate_get_jobids() to fix Virtual
794      backup start time bug reported by Graham Keeling.
795 08Oct08
796 ebl  Fix possible bug in cancel_job() with job that are not
797      yet created.
798 07Oct08
799 kes  Fix bat build for Win32.
800 06Oct08
801 kes  Copy plugin link field into ffpkt.
802 05Oct08
803 kes  Integrate patch from Kjetil Torgrim Homme <kjetilho@linpro.no>
804      It provides FileRegex in bsr files and code to collect regex
805      from the user during restore, an Allow Mixed Priorities feature,
806      and documentation for the above.
807 ebl  Remove db Berkeley from configure process
808 kes  Do dirty check on hostname (Linux only) and if not resolvable
809      use localhost as default.
810 kes  Increase vtape max block to 20GB.
811 04Oct08
812 kes  Refactor restore code to create a close_previous_stream(). This
813      This may destabilize the source.
814 kes  Implement planned startRestoreFile() plugin call.
815 ebl  Remove missing Loaded information from status slots storage command.
816 ebl  Fix Console command problem that cancels the job
817 kes  Add more plugin restore debug code.
818 03Oct08
819 kes  Fix plugin_bwrite - plugin-blseek mixup pointed out by James.
820 kes  Rewrite plugin restore interface a bit to correspond to how Bacula
821      creates and writes to the restored file.
822 kes  Add some DebugMessage() calls to the bpipe-fd.c program.
823 30Sep08
824 kes  Apply Marco van Wieringen's set of patches, cleans up Migration/Copy
825      Implement 'Pool Uncopied Jobs', allow Solaris Compiler to build
826      Bat; allow add and delete in place of mark and unmark.
827 kes  Another attempt to fix the endRestoreFile plugin bug noted below.
828 29Sep08
829 kes  Apply dbi driver patch from Joao.
830 kes  Correct a bug in passing the context to the endRestoreFile() plugin command.
831      Bastien Friedrich reported the bug.
832 kes  Create plugin instance only when FD job starts.
833 kes  Add new FD plugin event: bEventCancelCommand when
834      a cancel command is issued to the FD.
835 28Sep08
836 kes  Add cmd_plugin flag to jcr so we can globally know if a 
837      command plugin is running.
838 kes  If command plugin running, do not attempt (for the moment)
839      to get Win32 extended attributes.
840 kes  Ensure that proper Win32 flags are set in bfile packet
841      if plugin_bopen() works on Win32.
842 kes  Remove generated src/plugins/fd/Makefile
843 27Sep08
844 kes  Implement build and install of bpipe-fd.so plugin.
845 kes  Rework the interface that passes packets to the plugin
846      so that the packet is started and ended by the packet size.
847      This allows the driver to do a sanity check.
848 26Sep08
849 kes  Rework the pluginIO Bacula internal code to enable   
850      proper handling of Win32 error codes from GetLastError.
851 kes  Apply Joao's patch to regress startover_libdbi.
852 25Sep08
853 ebl  Add -B option to dbcheck to get catalog information
854 kes  Fix Win32 build to include new library function.
855 kes  Remove some old reader/writer code.
856 kes  Implement ./configure --with-plugindir=xxx
857 ebl  Fix the mysql bug in the new accurate code
858 kes  Improve plugin debug. Create plugin test.
859 kes  Set main thread specific data to INVALID because it
860      has no jcr. This allows debug output to work correctly.
861 kes  Add src/plugins/fd/Makefile to ./configure process.
862 kes  Make first cut attempt to correct SQL that computes the current
863      Pool usage.  This is to fix bug #1159.
864 kes  Do a bunch of plugin cleanups for Win32 and more careful checking
865      of PluginDirectory and whether or not a plugin was found.
866 24Sep08
867 kes  This code should fix the race condition that leads to a Director
868      crash at job end time when the job list is updated. This was reported
869      in bug #1162.
870 kes  Add more plugin documentation and fix include of config.h for
871      Win32 build (I hope).
872 22Sep08
873 ebl  Revert to htable instead of rblist
874 ebl  Cleanup accurate code (remove tcdbm parts) and use red/black
875      tree instead of htable.
876 ebl  Use a dedicate DB link to compute and send the accurate list
877      file to the client.
878 21Sep08
879 kes  Fix compile errors in filed/fd_plugin.c.
880 20Sep08
881 kes  Remove all double quotes from SQLite creating script and
882      replace by single quotes as suggested by John Huttley.
883 18Sep08
884 kes  Apply dbcheck patch from Yuri Timofeev <tim4dev@gmail.com>.
885      It significantly improves the performance of dbcheck for
886      MySQL.
887 kes  Fix bad debug code call in src/filed/accurate.c
888 17Sep08
889 kes  Change two Jmsgs in accurate to Dmsg to reduce unnecessary
890      output. Perhaps we really need to implement M_SAVED.
891 16Sep08
892 kes  Fix bug #1156 FD crash during processing of Accurate data.
893 kes  Tweaks to htable code to improved debugging and make names
894      a bit more meaningful.
895 15Sep08
896 ebl  Remove time_t from update_stats()
897 14Sep08
898 kes  Modify the license of the example plugin program to allow
899      it to be used by anyone for making a Bacula plugin.
900 kes  Make apply_rp_codes() in bpipe-fd.c be static.
901 13Sep08
902 kes  Remove Encryption and Accurate lines in vbackup output -- not used.
903 kes  Fix subtle bug in vbackup by not changing DEV_RECORD packet.
904 kes  Add host name to items printed during dump.
905 kes  Make Check File Changes default on.
906 11Sep08
907 kes  Set the default FD timeout to 3 minutes (previously 30).
908 kes  Apply Bastian Friedrich's weird spelling correction patch.
909 10Sep08
910 kes  Always print Verify hash differences. Rename variable to make the
911      code slightly more readable.
912 09Sep08
913 kes  Correct tests for MaxFullInterval as reported by
914      Ulrich Leodolter <ulrich.leodolter@obvsg.at>..
915 kes  Fix MaxDiffInterval code as well.
916 kes  Enable Win32 plugin load code in lib.
917 kes  Make Verify code that computes disk checksums use the same
918      algorithm as backup when dealing with sparse files.
919 kes  Attempt to run VSS on any systems newer than Vista -- should
920      make it work on Windows Server 2008.
921 ebl  Change the new statistic implementation. Remove the UseStatistic
922      directive and add a 'update stats [days=...]' command. You can
923      now decide when copy job records from Job table to JobStat.
924      Statistics are much more accurate with this.
925 08Sep08
926 kes  Fix SQL case problem that may cause the failure of DiskToCatalog
927      in bug #1149.
928 kes  First cut adding SD plugins.
929 03Sep08
930 kes  Add Slot if it is non-zero to writing bsr file after a
931      backup.
932 kes  Change a number of bnet_fsend() into class method calls.
933 kes  Begin audit of diff of 2.4 branch to trunk code.
934 01Sep08
935 ebl  Fix the mysql creation script that double-created an 
936      index of the same field on the Media table.
937      Add an index to on VolumeName to the Media table for mysql.
938 30Aug08
939 kes  Another try at fixing Vbackup. It looks much better this time.
940      Disable file index sanity check in FD with value stored in
941      attributes record because with Vbackup the File Index gets
942      changed, but not the attributes record.
943      Enhance some debug code.
944      Fix handling of re-indexing records that are copied in Vbackup.
945 29Aug08
946 kes  Made level_to_str() know about Virtual backup.
947 kes  Set correct Virtual backup write pool.
948 kes  Fix compile warning in new dbcheck port code.
949 kes  Fix migration code broken by previous virtual backup fix.
950 28Aug08
951 kes  Fix problem of Virtual backup not writing a sequential FileIndex.
952 kes  Reset Virtual backup time/date to the value from the last backup.
953 kes  Ensure that storage name is passed to SD on read.
954 kes  Correct a problem with Level and Virtual backup, rework how
955      bsrs are printed in debug to use standard routine.
956 kes  Apply patch from Chris in bug #1133 that provides alternate db port
957      support for dbcheck.
958 ebl  Remove catalog dependency from bcopy tool.
959 ebl  Modify catalog scripts to have an easier packaging integration,
960      using default variables.
961      Make difference between SQLite3 and SQLite in db_get_type()
962 27Aug08
963 kes  Apply most of changes in a patch from:
964       Michael Stapelberg <michael+bacula@stapelberg.de>
965       that allow the Bacula FD to compile on IRIX 6.5.
966 26Aug08
967 kes  Apply patch from Bastian Friedrich that accepts a yes on a
968      delete volume command line.
969 kes  Attempt to fix bug #1128 InChanger flag cleared during Migration
970      job when reading from one autochanger and writing to another.
971 kes  Minor tweaks (copyright dates convert to use method instead of bnet).
972 21Aug08
973 kes  Fix NULL Volume error when reading (or Migration or VBackup) must switch
974      drives when no tape is mounted.
975 18Aug08
976 kes  Add additional info to some SD messages.
977 kes  Add fix supplied by Martin Simmons for turning off EOL character
978      in new console multi-command code.
979 14Aug08
980 kes  Fix a Verify InitCatalog problem where in certain cases
981      a garbage filename may be entered in the verification database.  This 
982      fixes bug #1143.
983 13Aug08
984 kes  Add VSS 64 bit dll entry point in src/win32/filed/vss_generic.cpp
985      sent in by Riyas Yoosuf.
986 12Aug08 
987 kes  Fix seg fault in Dir during estimate command with no level value
988      given. This fixes bug #1140.
989 08Aug08
990 kes  Add message to migration job when the target job is already migrated.
991      This closes bug #1129.
992 30Jul08
993 kes  Fix Win32 build.
994 kes  Raise some restore debug levels.
995 kes  Replace off_t by boffset_t where ever I found it.
996 28Jul08
997 kes  Define a machine dependent ioctl request type for use with 
998      vtape_ioctl().
999 26Jul08
1000 kes  When a migration job actually runs, re-check the Job record
1001      and skip if the job is already migrated. This should
1002      significantly reduce the problems with bug #1129.
1003 24Jul08
1004 kes  Set MALLOC_CHECK_=0 in environment before starting Bacula to
1005      turn off glibc checks that prevent getting good dumps.
1006 kes  Implement console 'wait mount' command. Doesn't yet work.
1007 kes  Implement timeout=nn on console 'wait mount timeout=nn' command.
1008 kes  Break the do_swapping into do_unload, do_swapping, and
1009      do_load.  It is much more logical that way.
1010 kes  Implement a set_dcr_from_vol subroutine in acquire.c for
1011      reading volumes. This allows the dcr to be refreshed after being
1012      zapped when the wrong volume is mounted.
1013      This should fix bug #1126 -- During multiple tape restore, bacula 
1014      does not ask for physical tape change, but rereads same tape
1015 23Jul08
1016 kes  Apply patch submitted for bug #1107 with a small modification.
1017      This fixes a bug where bcopy copied too many records.
1018 kes  Make some tweaks to bsmtp based on patch submitted in bug #1124.
1019      This fixes bug #1124.
1020 kes  Make the default bat restore Pool be Any. This fixes bug #1118.
1021 22Jul08
1022 kes  Remove debug statement that crashes the SD at the end of
1023      a tape during restore. Fixes bug #1125.
1024 21Jul08
1025 kes  Implement Win32 bat changes made to Branch-2.4
1026 20Jul08
1027 kes  Tweak separator command in console to start disabled and
1028      allow defining no separator character.  Also make code a
1029      bit more fault tolerant.
1030 kes  Make btraceback write the traceback to the working directory
1031      before attempting to mail it.
1032 kes  Add a RFC to Projects.
1033 18Jul08
1034 kes  Attempt to implement a kludge to make Qt work with bat
1035      on Win32.
1036 kes  Setup rstorage correctly. Virtual backups are working.
1037 17Jul08
1038 kes  Move setting JobLevel and JobType into a method, which should
1039      allow completing Virtual Backups.
1040 kes  Fix verify jobs to work again.
1041 16Jul08
1042 kes  Virtual Backup tweaks -- it is close to working.
1043 15Jul08
1044 kes  Ensure that SD tried to mount a volume not in an autochanger
1045      at least once before asking for operator intervention.
1046 kes  Make SD aware of Virtual Backup jobs.
1047 kes  Add VirtualFull for bat.
1048 kes  Changes to get read storage correct for Virtual Backup.
1049 14Jul08 
1050 kes  Remove old code from label.c
1051 kes  Split display_display_info() out of write_bsr_file()
1052 kes  do_vbackup_init() working -- i.e. bootstrap file built.
1053 kes  Change Bacula trademark owner from John Walker to Kern Sibbald
1054 kes  First non-working cut of vbackup
1055 kes  Correct FD heartbeat code to use volatile variable accessed by
1056      two threads.
1057 kes  Zero thread id with memset if on Win32 in case it is a struct.
1058 kes  If cannot create JobMedia record, continue to try to write eof
1059      and clean up in block.c
1060 12Jul08
1061 kes  Add code to interface OpenSSL to new Win32 pthreads code which
1062      used a structure for thread_t.
1063 09Jul08
1064 ebl  tweak bat for win32 compilation
1065 08Jul08
1066 ebl  Remove tokyo cabinet from the source
1067 ebl  Update configure/autoconf to support berkeley DB
1068 ebl  Add a sort to db_get_file_list() to improve bsr construction time.
1069 07Jul08
1070 kes  Add a mtx-changer.conf file that is not overwritten during
1071      an upgrade. It fully configures the mtx-changer script.
1072 kes  Clear in-use bit on vol when unused while swapping.
1073 06Jul08
1074 kes  Remove sleep at end of ./bacula
1075 kes  Clear hash packet for hardlinked files correctly. This corrects
1076      a long standing bug where hardlinked files selected individually
1077      would occasionally not be restored.
1078 05Jul08
1079 kes  Apply Eric's patch to ensure that autoprune does not return
1080      a Volume not in the autochanger unless requested to do so.
1081 kes  Correct bat restore display of multiple drives. This fixes    
1082      bug #1117.
1083 kes  Do find_a_volume() each time an unload is done. This
1084      fixes the failure of maxvol2-test.
1085 04Jul08
1086 kes  Add some SD debug code.
1087 kes  Do find_a_volume() each time an unload is done.
1088 kes  Apply Joao's DBI patch that adds easier configuration of DBI drivers,
1089      and adds --with-db-port to ./configure.
1090 kes  Use Qmsg() in job.c watchdog callback.
1091 03Jul08
1092 kes  Release main control rwlock if ABORTing.
1093 kes  Make watchdog connect timeout queue messages rather than sending
1094      directly to avoid lock conflicts with the real thread.
1095 kes  Add const char in dbd.c to avoid compiler warnings.
1096 kes  Fix python compiler string warning. Note, IMO the GNU C++ 
1097      compiler guys have made a *very* bad change to their compiler.
1098      They now force all strings to be 'const' unless you explicitly
1099      cast them, which is extremely ugly and ruins nice code as well
1100      as creates a lot of useless work.
1101 02Jul08
1102 kes  Fix mtx-changer to detect both versions of Ubuntu (Debian)
1103      mt. This fixes bug #1116.
1104 kes  Add const in python files to reduce compiler warnings.
1105      This may have to be backed out because of later compiler
1106      strict checking.
1107 kes  Fix failure of 2drive-concurrent-test. Always read label;
1108      clear_unload() only after drive is defined in acquire_for_read().
1109 27Jun08
1110 kes  Generally clean up the manual tape loading code. The main
1111      conceptual change is that when a volume is marked to be unloaded,
1112      its volume name is retained, and it is only marked as unloaded
1113      when either the autoloader says it is unloaded or another tape
1114      is read on that drive.                                     
1115 25Jun08
1116 kes  Add debug code and refactor subroutine in stored/mount.c
1117 kes  Fix format problem in bscan output reported in bug #1105.
1118 ebl  Fix get_next_volume_for_append logic with autochanger
1119       - use pruned volumes if found
1120       - don't reset the inchanger flag after getting a recycled volume
1121         or a scratch one
1122      Fix recycle_oldest_purged_volume to take InChanger flag in account
1123 23Jun08
1124 ebl  Add mmap/unmmap implementation for tokyodbm under win32
1125 22Jun08
1126 kes  Make first step toward eliminating globals from config
1127      scanning. Also should be a workaround for FORTIFY_SOURCE
1128      GNU C bug -- fixes bug #1042.
1129 21Jun08
1130 kes  Apply duplicate job tests to restarted jobs.
1131 kes  Copy more data when restarting a job so that run
1132      overrides are kept. This should fix bug #1094.
1133 20Jun08
1134 kes  More word alignment cleanup.
1135 kes  Fix bug where SD did not ask operator if the device could not
1136      be opened. Reported by Eric.
1137 19Jun08
1138 kes  Add dbuser to DIR conf file (replaces user).
1139 kes  Add --with-db-password to ./configure
1140 kes  Fix regress to handle db_password.
1141 ebl  Add new 'status storage slots' that list autochanger
1142      content.
1143 ebl  Update vtape driver to compile only under Linux.
1144 ebl  Fix a bug when restoring with a wrong mediatype.
1145 18Jun08
1146 kes  Eliminate ints from conf files and structures to avoid
1147      word alignment problems
1148 17Jun08
1149 kes  Fix bug reported by Scott Barninger where the bacula script
1150      refers to scripts in the wrong directory. Needed to meet the
1151      requirements of recent FHS location changes.
1152 ebl  Disable vtape for FreeBSD.
1153 15Jun08
1154 ebl  Modify disk-changer to check if slot contains something before
1155      loading it.
1156 14Jun08
1157 ebl  Fix vtape on win32 and debian.
1158 ebl  Fix autoselect patch (cause segfault).
1159 13Jun08
1160 ebl  Fix autoselect option broken for a while. Fix #1089. Need some
1161      work with StorageId to be able to use a particular drive in a 
1162      autochanger.
1163 09Jun08
1164 ebl  Rename vtape to vtape.
1165 ebl  Update vtape driver.
1166 08Jun08
1167 ebl  Modify vtape driver to avoid sparse file.
1168 kes  Add make clean of qt-source directory during ./configure
1169 kes  Store last block number written to tape in DEVICE and
1170      use it for testing for correct last block on EOT.
1171
1172 Release Version 2.4.0:
1173 04Jun08
1174 kes  Fix Win32 build.
1175 03Jun08
1176 kes  Make sure to clear JS_WaitMedia when operator mounts a Volume.
1177      This fixes bug #1095.
1178 31May08
1179 kes  Add create_postgresql_database.sql to Win32 installer. Should 
1180      fix problem reported by Juilio Monteiro.
1181 kes  Get correct slot when auto unloading a device. This fixes bug
1182      #1086.
1183 30May08
1184 kes  Fix multiple media restore.
1185 kes  Make DEVICE Slot private and access it via a method.
1186      Allows better control over when it is set and cleared.
1187 kes  Fix possible seg fault if SQL error.
1188 28May08
1189 kes  Add Martin's fixes to argument scanning for the estimate   
1190      command. This fixes bug #1093.
1191 kes  Add debug code to SD.
1192 kes  Fix renaming a Volume, which used the wrong Volume name.
1193 26May08
1194 kes  If operator has rewind tape, print warning, release tape and
1195      try once more. If tape is positioned somewhere, something went
1196      wrong, so mark the tape in error and try once more. Previously
1197      this error was fatal, now it produces an error message.
1198 kes  Ensure correct volume name displayed during restore
1199 kes  Ensure that Volume is mounted for restore.
1200 25May08
1201 kes  Fix a few more Coverity reported problems.
1202 24May08
1203 kes  Apply Allan Black's status dir job count patch.
1204 ebl  Add information about IMPORT/EXPORT slots in mtx-script.
1205 kes  Enhance a couple of SD debug messages.
1206 kes  Tweak unload flag setting and ensure it is set during swap.
1207 23May08
1208 ebl  Fix #1091 about bad output in estimate command.
1209 21May08
1210 kes  Modify autochanger locking to attempt to avoid race
1211      conditions. 
1212 kes  Make sure device not busy before doing label command.
1213 kes  Display open() errors except when polling. Previously too
1214      many were suppressed.  This should fix bug #1070.
1215 kes  Fix Win32 reparse points. Bacula will not recurse into any
1216      reparse point directory, including mount points, unless the
1217      directory is explicitly mentioned at the top level (same as
1218      with Unix).  A file that is linked to another file will be
1219      backed up -- much as Unix does for hardlinked files.
1220      This fixes bug #1041.
1221 20May08
1222 kes  Remove double quotes from ChangeLog and ReleaseNotes
1223 kes  Remove StorageId test when pruning and recycling (Eric's changes).
1224 kes  Remove old form of locking when getting volumes -- causes deadlock.
1225 kes  Change bat dirstat layoutWidget to dirstatlayoutWidget to make
1226      the name unique and to eliminate compile time error.
1227 kes  Add accurate.o to Win32 FD Makefile
1228 19May08
1229 kes  Fix cats dll build on Win32 after db_update_job_end_record
1230      calling sequence change.
1231 ebl  Switch to tokyo dbm instead of htable in accurate code
1232 ebl  Include tokyo dbm to bacula source tree
1233 17May08
1234 kes  Fix buffer overruns detected by Coverity.
1235 13May08
1236 kes  Tweak joblog display.
1237 12May08
1238 kes  Implement --without-qwt
1239 kes  Fix layout of restore tree dialog
1240 kes  Add configure bat QWT libraries, so that bat can be built
1241      with or without the QWT libaries.
1242 11May08
1243 ebl  Add dummy tape driver for regression tests.
1244 kes  Make sure we unload the right slot when swapping.
1245 10May08
1246 kes  Add debug times, reduce size of two-pool-changer test 
1247 08May08
1248 ebl  Tweak autoconf scripts for vtape
1249 07May08
1250 kes  Improve SD reserve debug code.
1251 kes  Testing an improvement to free up volumes no longer in use.
1252 03May08
1253 kes  Rework SD acquire for read to handle autochanger Volume
1254      swapping.
1255 kes  Implement regression that explicitly tests swapping a Volume
1256      from one drive to another.
1257 kes  Enhance disk-changer to detect most error conditions.
1258 kes  Fix SD code so that it properly swaps a Volume between drives.
1259      This fixes bug #1083.
1260 02May08
1261 kes  Apply libdbi patch from Joao Freitas for regress and for 
1262      Bacula trunk. Regress now works with libdbi. Nice.
1263 kes  Apply .nobackup patch from bug #1077 submitted by 
1264      Edwin Groothuis.
1265 kes  Apply Bastian Friedrich's patch that adds %p to edit the pool
1266      name into jobs cloned via the run directive.
1267 01May08
1268 kes  Prevent a Volume that is being swapped from being freed from
1269      the volume list. This will most likely fix, at least partially,
1270      bug #1083.
1271 kes  Fix strippath so that it does not get a buffer overrun and crash FD.
1272      This fixes bug #1078.
1273 kes  Remove 50 millisec wait in SD that broke debugger.
1274 ebl  Add MaxRunSchedTime option that specifies the maximum allowed time 
1275      that a job may run, counted from when the job was scheduled.
1276 ebl  Fix MaxWaitTime option that specifies the maximum allowed time that 
1277      a job may block waiting for a resource, counted from when the job starts
1278 ebl  Rename (add) Max(Incr|Diff|Full)WaitTime to Max(Incr|Diff|Full)RunTime
1279 kes  Apply patch from bug #1076 by Tullio Andreatta <t.andreatta@troppoavanti.it>
1280      that implements multiple commands per line in the console when using 
1281      readline. Modify the default to use a semicolon as the command separator.  
1282 28Apr08
1283 ebl  Fix SQL query in migration code.
1284 ebl  Make accurate mode with hash disk pass regression tests
1285 27Apr08
1286 ebl  Implement first cut of accurate backup with hash disk.
1287 19Apr08
1288 kes  Force unload of volume when wrong volume mounted in SD.
1289 17Apr08
1290 kes  Fix bat seg fault at termination.
1291 kes  Add Bacula generated version to bat about box.
1292  
1293 16Apr08
1294 kes  Experiment with allowing multiple read jobs.
1295 kes  Move final volume swapping code to DCR method and
1296      call it from acquire_for_read().
1297 kes  When wrong volume is mounted during read, unload_autochanger.
1298 15Apr08
1299 kes  Integrate the libdbi changes from Joao Henrique Freitas
1300 14Apr08
1301 kes  Stop searching for Volumes in SD askdir if DIR returns the
1302      same volume name twice in a row.
1303 kes  Close bat console windows first to eliminate error message
1304      from the notifier.
1305 13Apr08
1306 kes  Tweak the swap Volume from one drive to another code so that
1307      it now seems to work.
1308 kes  Resolve several problems with recycling that broke the new
1309      code (these problems are in 2.2.9 as well).
1310 kes  Remove the volume lock when calling the sysop code.   
1311 kes  Don't mark a reserved volume with no writers as unused otherwise
1312      jobs fail.
1313 12Apr08
1314 kes  Rework class structures for VOLRES, DCR, and DEVICE to make
1315      the method names a bit more logical, and for more logically
1316      handling the responsibilities.
1317 11Apr08
1318 kes  Remove redundant code in terminating the scheduler that just
1319      causes a seg fault in many cases.
1320 kes  Cleanup releasing a volume and make it a DCR method.
1321 kes  Improve algorithm for detecting pre-reserved volume and
1322      swapping volumes.
1323 10Apr08
1324 kes  Tweak volume swapping code so it works.
1325 kes  Correct name overloading in mount.c
1326 kes  Replace released flag in VOLRES with reserved and add access
1327      methods for the VOLRES class.
1328 kes  Prevent volume from being released while being swapped.
1329 kes  Apply Bastian Friedrich's edit codes patch for the bpipe-fd
1330      plugin that add %w (where) and %r (replace flag) editing to
1331      the plugin line.
1332 kes  Apply Bastial Friedrich's edit pool=%p patch for run clone
1333      jobs.
1334 kes  Refactor parts of stored/mount.c
1335 09Apr08
1336 ebl  Add sanity checks for VolWriteTime and VolReadTime
1337 ebl  Take care of bad clock changes while computing VolWriteTime
1338      and VolReadTime. This should fix or limit #1066
1339 kes  Correct error string numbers in dird/catreq.c
1340 kes  Restructure reserving, acquiring, and mounting volumes. Calls to
1341      autochanger are deferred for mount.c -- simplifes the code.
1342 08Apr08
1343 kes  Do not prune any running job. It just fails the job.
1344 kes  Lock the volumes when changing dev->reserved_device and marking
1345      the volume unused otherwise the device can get reserved by
1346      another job before the volume is released, thus blocking it.
1347 06Apr08
1348 kes  Correctly detect Ubuntu systems, and add ubuntu platform directory.
1349 kes  Fix bug #1063, reuse of freed ptr in list nextvol.
1350 kes  Release regex compile buffer in filed/job.c
1351 kes  Add proper type of const char in sql_create.c
1352 kes  Turn off debug in daemon termination routines
1353 kes  Move free_volume_list() before devices are freed in stored.c
1354 kes  Fix reference to uninitalized stack variables in bregex.c. 
1355      This should correct bug #1067.
1356 04Apr08
1357 kes  Fix possible seg fault in SD when freeing a volume entry.
1358 03Apr08
1359 kes  Implement unload_dev() before swap device.
1360 ebl  Add statistics prunning with option and menu
1361 kes  Separate unload_dev() from unload_other_device() in autochanger.c
1362 02Apr08
1363 kes  Apply patch from bug #1069 that corrects spurious error messages
1364      when ACLs enabled on SGI but no ACL exists.
1365 ebl  Fix small segfault in bacula-sd when debug level is 500
1366 kes  Modify run_program() and run_program_full_output() to use
1367      call by reference for the results string. This corrects a long
1368      standing problem where the address of the string may be changed
1369      in the subroutine but not in the calling program.
1370 01Apr08
1371 kes  Re-enable code to remember last volume mounted on a non-tape
1372      Autochanger.
1373 kes  Add patch supplied in bug #1068 that fixes a SD crash when using
1374      a Virtual autochanger.
1375 kes  Generate correct JobMedia records during spooling/despooling when
1376      running concurrent jobs.  Thanks to Tom Ivar Helbekkmo
1377      <tih@hamartun.priv.no> for excellent analysis and testing.
1378 31Mar08
1379 kes  Tweak hash algorithm for htable using Martin Simmons idea
1380      for doing a circular shift.
1381 kes  Remember what volume is in VTLs (previously turned off for
1382      testing).
1383 kes  Analysis of JobMedia records by Tom Ivar Helbekkmo <tih@hamartun.priv.no>
1384      pointed out some problems in creating JobMedia records during
1385      spooling with concurrent jobs. Fix the problem by updating the
1386      start file position before despooling and generate a jobmedia
1387      record at the end of despooling.
1388 28Mar08
1389 kes  Fix handling of JobMedia records during spooling and when a
1390      Volume is changed without actually writing data to the Volume.
1391 27Mar08
1392 kes  Rework certain SD locking based on gdb tracebacks of deadlocks
1393      sent by Eric. This code now uses only the volume_lock() rather
1394      than the reservations lock when at EOM and acquiring a new
1395      volume. 
1396 kes  Ensure only one exit point in several subroutines.
1397 26Mar08
1398 kes  Implement bsock code to permit locking. Use the new code in Verify
1399      in the FD to prevent the heartbeat thread from disrupting the Verify
1400      data sent to the Dir.
1401 kes  Modify SD locking to eliminate locking the reservations system from
1402      outside the system. Use the volume lock when getting media data
1403      and reserving a new volume at end of media.   
1404 kes  Add Eric's volume_unused() fix to stored.c so that Volumes found
1405      when SD starts are not locked into place.
1406 24Mar08
1407 kes  Fix error compiling runscript code on 64 bit machines.
1408 kes  Tweak Win32 mount point code.
1409 kes  Fix a couple of bugs in the accurate code (bad sscanf, buffer not
1410      cleared giving bad file estimate).
1411 kes  Implement BIG_MALLOC in htable code. Runs 2.5 times faster for
1412      5 Million entries.
1413 22Mar08
1414 kes  Keep Schedule run lists in order as suggested by
1415      Bastian Friedrich.
1416 21Mar08
1417 kes  Implement autostart scripts for Debian.
1418 ebl  Implement upgrade catalog scripts.
1419 20Mar08
1420 ebl  Apply jobstat patch for long term statistics. Have to implement
1421      purge stats command and upgrade scripts.
1422 kes  Fix mtx-changer.in for broken Debian mt program.
1423 19Mar08
1424 kes  Fix large number of JobMedia records reported by Eric Bollengier.
1425 18Mar08
1426 kes  Apply doc fix from bug #1062.
1427 kes  Resolve crash and improper restore wx-console Win32 restore
1428      GUI. Fixes bug #1065.                   
1429 kes  Update Win32 wxWidgets to latest version.
1430 kes  Attempt to do correct handling of Win32 mount points. Should
1431      fix bug #1046.
1432 kes  Fix Win32 FD backup/restore memory leak due to improper termination
1433      of BackupRead/Write. This fixes bug# 1038.
1434 16Mar08
1435 ebl  Reduce memory usage for accurate backup, working only with ctime
1436      and mtime. (not all Lstat field) 
1437      About 40MB for my Linux system (400.000 files)
1438 14Mar08
1439 kes  Add dcr->reserved_volume flag that allows us to release a volume
1440      even if it is not vol->released.  This allows maxvol2 to work when
1441      Volumes expire and we are already writing to the device (i.e. a
1442      volume is pulled out from under us by another job terminating after
1443      we reserve the drive).
1444 13Mar08
1445 ebl  Permit multiple command/console per runscript definition.
1446      RunScript { command = /bin/true ; command = /bin/false ... }
1447 ebl  Add RunsWhen = AfterVSS to runscript. You can execute a command
1448      (restart an application) just after the VSS snapshot on windows.
1449 kes  Don't zap dcr values during release_volume() as they might
1450      have the next Volume to be mounted.
1451 kes  Fix AIX prototype.
1452 12Mar08
1453 kes  Second cut of drive switching during backup.
1454 11Mar08
1455 kes  Fix Win32 build.
1456 kes  Update Win32 version of wxWidgets to most recent version.
1457 kes  Tweak Copy job details.
1458 kes  Rework dir_find_next_appendable_volume to make a bit more effort
1459      to find a suitable volume before giving up.
1460 10Mar08
1461 kes  Make ask_sysop_to_create... to return if waken from wait.
1462      This helps get out of blocked conditions.
1463 kes  Experimental implementation of switch_device in reservations. 
1464 kes  Implement FD version to allow easier protocol changes.
1465 kes  Add Plugin Options string -- not yet passed to FD.
1466 kes  Implement PluginOptions ACL.
1467 09Mar08
1468 kes  Attempt to correct problems with restores with autochangers and
1469      use counts going negative 
1470 kes  Rework SD status command and implement API for bat. Implements
1471      header, runing waitreservation, devices, volumes, spooling,
1472      and terminated status keywords.
1473      .status storage=xxx <keyword>
1474 kes  Clarify TLS error message by adding double quotes around name.
1475 kes  Simplify SD/FD status code by putting api flag in STATUS_PKT
1476 kes  Pass jcr to tls routines so debug messages can be handled better.
1477 kes  Rework jobq resource allocation code, and possibly fix a bug
1478      that caused reference counts to get out of sync.
1479 08Mar08
1480 kes  Rename fd/dir plugin to use Bacula standard underscore.
1481 kes  Plugin work -- bring dir up to fd level.
1482 kes  Start implementation of VTL code
1483 kes  Fix Win32 build after adding new cats subroutine.
1484 06Mar08
1485 kes  First cut at Duplicate Job implementation.
1486 05Mar08
1487 kes  Fix bugs in MaxFullInterval and Implement MaxDiffInterval.
1488 kes  Start PluginOptions string, and refactor a bit of ua_run.c
1489 ebl  Apply Allan patch that permit to reset recyclepool. 
1490 04Mar08
1491 kes  Test patch -- possible fix or improvement for bug #1053
1492 kes  Refactor FD and SD status commands to permit new API code in
1493      SD, and to fix Win32 build.
1494 kes  Win32 build is now working.
1495 03Mar08
1496 kes  Implement 'MaxFullInterval' and start 'MaxDiffInterval' based on
1497      some ideas in patch from Scott Bailey.
1498 kes  Begin implementation of duplicate Job control.
1499 kes  Fix some of Win32 build after recent additions.
1500 kes  Apply patch from Frank Kardel that implements 'honor no dump flag',
1501      which causes the FD to detect whether or not the OS has the 
1502      honor no dump bit (*BSD systems), and if so, to skip backing up
1503      any file with this bit set.  The feature is enabled by setting
1504      'honor no dump flag = yes' in the Options section of a FileSet.
1505 28Feb08
1506 kes  Correct po warning message with datarootdir
1507 kes  Implement more code in dird.c to put configuration parsing in
1508      a class rather than use globals.
1509 kes  Restructure SD status command for implementation of bat API
1510      interface.
1511 27Feb08
1512 kes  Suppress incorrect 'Will not descend from x into y' messages.
1513 kes  Eliminate FORTIFY_CODE=2 bug, and make first cut at removing 
1514      daemon globals used by parser.              
1515 kes  Apply Joao's patch to separate DB_TYPE and DB_PROG in configure.
1516 26Feb08
1517 kes  Fix free of plugin_list when none exists.
1518 25Feb08
1519 ebl  Apply accurate project patch.
1520 24Feb08
1521 ebl  Fix a segfault when using strip_path option. (Use of pm_strcpy
1522      on non-mempool object) 
1523 kes  First cut of converting FD .status to work with bat API.
1524      New form is:
1525      .status client=XXX header
1526      .status client=XXX running
1527      .status client=XXX terminated
1528 kes  Implement first cut of Copy Job.
1529 kes  Implement Catalog in Pool resource. It overrides catalog specified
1530      in the Client resource.
1531 22Feb08
1532 kes  Apply patch (with some difficulties) from Joao Henrique Freitas 
1533      <joaohf@gmail.com>, which adds support for libdbi as a Bacula
1534      database driver.
1535 kes  Add patch from Martin Schmid scm@apsag.com that checks to see if
1536      ftruncate() actually works. In the case of some (cheap) NAS devices,
1537      it does not, and so recycling NAS Volumes does not work. The code
1538      simply unlink()s the file, then recreates it.  This fixes bug #1011.
1539 21Feb08
1540 kes  First incomplete cut of big malloc blocks for htable.
1541 kes  Tweak plugin code.
1542 17Feb08
1543 kes  Plugin debug code + tweak a couple bat dialog layouts
1544 14Feb08
1545 kes  Fix creating first JobMedia record during Migration to include
1546      proper index. This caused slow restores of migrated jobs.
1547 kes  Temp fix to plugin name file_index.
1548 kes  Bacula backed up and restored a MySQL database.
1549 13Feb08
1550 kes  Implement plugin restore.
1551 kes  Implement parsing of db_driver to give db_type index.
1552 10Feb08
1553 kes  First cut of plugin restore code.
1554 kes  Fix bug #1047, which had a heap overrun when stripping certain paths,
1555      and do not strip paths on symbolic links.
1556 kes  Set catalog backup database and user name from values specified on
1557      the ./configure line.
1558 ebl  Fix #1031 about wrong pool source information in job report.
1559 09Feb08
1560 kes  Fix Win32 build.
1561 kes  Remove a redundant jcr argument to find_files, match_files, and
1562      find_one_file.
1563 kes  Implement '.status dir header|scheduled|running|terminated' that
1564      prints the requested status section. With the exception of the
1565      header, the other reports have fields separated by tabs (\t).
1566 08Feb08
1567 kes  Apply patch from Peter Much <pmc@citylink.dinoex.sub.org> that fixes
1568      a resource embedded run command to find a since time if no explicit
1569      since time was supplied on the command line.
1570 kes  Apply state-file.patch sent by Allan Black <Allan.Black@btconnect.com>
1571      that updates the state file at job termination time in addition to
1572      when the daemon terminates.
1573 05Feb08
1574 kes  First version where a plugin did a backup.
1575      bpipe-fd.so created a backup file, wrote a test
1576      string to it, and Bacua could restore this fabricated file.
1577 02Feb08
1578 kes  Implement DB Driver = string for the DBI driver.
1579 kes  Remove all old bdb_xxx.c code.  Add dummy routines to bdb.c
1580 kes  First cut of code for loading Win32 plugin dlls. Implement
1581      dlopen, dlsym, dlclose, and dlerror in src/win32/compat/compat.cpp
1582      and implement a dlfcn.h file based on opengroup's definitions of
1583      the functions.
1584 01Feb08
1585 kes  First cut plugin directives.
1586 30Jan08
1587 kes  Apply patch from bug #1049 to prevent stripping the path on a
1588      symlink.
1589 kes  Attempt to fix bug #1047 where stripping a path corrupts the
1590      heap. Waiting for feedback.
1591 kes  Correct the Mount message not to suggest labeling a new tape
1592      when doing a restore.  Submitted by email by John Stoffel.
1593 kes  Attempt to work around gcc FORTIFY_SOURCE bug that crashes the 
1594      FD by using casting. Reported in bug #1042.
1595 28Jan08
1596 kes  A bit of crypto cleanup.  More later.
1597
1598 Release Version 2.2.8
1599 25Jan08
1600 kes  Apply patch from Martin to correct bug #1040, bscan sets existing
1601      ClientId to zero.
1602 kes  Fixed important spelling error in doc -- bug #1045.
1603 23Jan08
1604 ebl  Fix bextract to be able to extract non-portable Win32 data to 
1605      Unix/Linux clients
1606 kes  Move initialization of read/write res lock earlier in the code.
1607      This fixes the crash with a null conf file. This fixes bug
1608      #1030.
1609 kes  Redefine CURES in lib/parse_conf to be URES and move it all
1610      into lib/parse_conf.c -- this responds to bug #1042, but does
1611      not fix it. The fix is not to compile with FORTIFY_SOURCE.
1612 kes  Backport to 2.2.8 fix de-referencing a NULL pointer in the scanner from
1613      the trunk SVN. I don't think this was reported as a bug.
1614 17Jan08
1615 ebl  Fix a bug during tape initialization with MTSETDRVBUFFER.
1616 12Jan08
1617 kes  Fix Win32 build with new .def files and DLL_IMP_EXP ...
1618 10Jan08
1619 kes  Add DataDespooling and DataCommitting status (committing is
1620      the last despooling).
1621 kes  Finish implementation of new reservations code noted below.
1622 08Jan08
1623 kes  Fix bsnprintf for float point numbers. I broke recently when
1624      parameterizing some variables. This fixes bug #1036.
1625 kes  Undo recent reservations changes ... will apply them later
1626      when they work better.
1627 06Jan08
1628 ebl  Fixes #1034 which cause mysql to hang the connection after 8h
1629 ebl  Change default statistics target of filename.name and path.path
1630      fields for PostgreSQL. This speeds lookup by indexes. Thanks
1631      to Marc Cousin.
1632 kes  A few more tweaks to new reservation code. Make sure to clear
1633      vol released flag when retaking volume. When reading label and
1634      label is bad mark volume unused. When recycling, mark volume
1635      unused so it can be renamed.
1636 05Jan08
1637 kes  Fix reserve_volume() so it doesn't release a volume in use
1638      (i.e. a volume entry not marked released). This should be
1639      the last part needed to fix bug #1018.
1640 03Jan08
1641 kes  Move Heartbeat documentation from Job to Director resource.
1642      This fixes bug #1033.
1643 02Jan08
1644 kes  Fix existing switch drive SD code to call autochanger to release
1645      any old volume. This must be done to keep the autochanger from
1646      releasing subsequently newly reserved volumes in doing a close().
1647      This should fix bug #1018.
1648 kes  Fail if attempting to get console input in batch mode. This
1649      should help fail RunScript console commands that are incomplete.
1650 kes  First cut implementing switch_drive() in SD (not actually called).
1651 31Dec07
1652 kes  Implement first cut running console commands in a RunScript.
1653 29Dec07
1654 ebl  Fixes bug #1028 where 'Selection Type' option was not usable 
1655      with JobDefs.
1656 ebl  Fixes bug #897 and bug #1005 where bacula doesn't display runscript
1657      output in error.
1658
1659 Release Version 2.2.7
1660 24Dec07
1661 kes  Add new free_tls() entry point so that Win32 builds.
1662 kes  Fix compile warning in src/lib/util.c
1663 kes  Fix entry point for edit_job_codes() so that Win32 builds.
1664 kes  Fix seg fault Frank Sweetser reports in regression testing
1665      on his systems. The problem was that the original author of
1666      bsnprintf.c did not take into account the side effects of
1667      using ++x in the argument to a #define.
1668 kes  Make SD protocol backward compatible with version 2.2.x.
1669 19Dec07
1670 ebl  Fixes bug #1015 where bacula failed to restore acl to a socket
1671      because Bacula no longer restores sockets.
1672 ebl  Always use ignorecase fileset option on win32 FD.
1673 14Dec07
1674 kes  Apply patch from  Michael Stapelberg <michael@stapelberg.de>
1675      that implements double quoting include names in conf files,
1676      and also allows piping input by having the first character 
1677      be a vertical bar (|). 
1678 kes  Apply patch from Bastian Friedrich <bastian.friedrich@collax.com>
1679      that implement %f in RunScripts to pass the FileSet name.
1680 kes  Skip leading | when lex input comes from a pipe as suggested
1681      by Michael Stapelberg <michael@stapelberg.de>.
1682 13Dec07
1683 kes  Apply patch for bsmtp Win32 daylight savings time fix supplied by
1684      Nerijus Baliunas <nerijus@users.sourceforge.net>
1685 12Dec07
1686 kes  Implement Plugin Directory and plugin events.
1687 11Dec07
1688 kes  Implement a security enhancement: TLS authentication but no       
1689      encryption. Enabled by setting 'TLS Authentication = yes'.
1690      Note when this is on, TLS encryption is turned OFF!
1691 10Dec07
1692 kes  This patch corrects a problem where the maximum concurrent storage
1693      jobs counter gets out of sync during restore jobs causing jobs to
1694      'wait on max Storage jobs'.  This patch fixes bug #1009.
1695 03Dec07
1696 kes  This patch fixes bcopy so that it produces correct Volumes.
1697      It fixes bug #1022.
1698 kes  This patch eliminates spurious output to the console during a VerifyVolume
1699      job that contains encrypted data. It fixes bug #1024.
1700 02Dec07
1701 kes  This patch prevents the 'status dir' command from trying to use a scratch
1702      volume and possibly moving it from one pool to another.  This patch fixes
1703      bug #1019.
1704 01Dec07
1705 kes  Add new include to postgresql.c suggested by Marc Cousins so
1706      that it compiles correctly with pgre version 8.3.
1707 30Nov07
1708 kes  Fix --archivedir addition to configure. Replace it with
1709      --with-archivedir in configure.in  This fixes the regression       
1710      test builds.
1711 kes  This patch fixes bug #1012 where the job is canceled because
1712       of Max Run Time exceeded when the job has not yet started.
1713 29Nov07
1714 ebl  Apply Richard Mortimer patch that fixes #1016 when there are more than 
1715      one 'part' to write.  Instead of each part being stored on disk, 
1716      written to DVD, then deleted from disk, all parts are written to disk,
1717      and only the last is written and deleted from disk.
1718 kes  This patch fixes the status command to include the formating string for
1719      JS_AttrInsterting.  It fixes bug #1021.
1720 kes  This patch should fix the Mac OS X build problem on the latest
1721      Darwin, where sys/types.h was not included correctly (apparently
1722      due to a change in the Mac headers).  The solution was to explicitly
1723      ensure that it is defined for the ./configure.
1724      This patch also has a rebuild of configure that includes the Debian
1725      qt4 patch to check for qmake-qt4. This patch fixes bug #1020.
1726 kes  This patch should ensure that queued messages to the console are
1727      displayed as soon as possible.  It should fix bug 1007, but has been
1728      reported not to work.
1729 14Nov07
1730 kes  This patch fixes the infinite loop when trying to increase the
1731      maximum number of volumes in a Pool during the add command.
1732      This patch fixes bug #1008. 
1733
1734 Release Version 2.2.6
1735 09Nov07
1736 db   Remove extra data on estimate command in joblist for bat.
1737 04Nov07
1738 kes  Cleanup of code in SD that sets the LastWritten date. This doesn't 
1739      really change anything, but is the beginning of doing it *right*.
1740      To do it completely right the LastWritten date must be passed to
1741      the SD, but it is not yet done.
1742 kes  Minor tweaks to some bat restore SQL.
1743 kes  This patch fixes bug #1003 where putting the message output from
1744      a Verify job into the catalog results in a recursive loop.  The problem
1745      seems to show up only with postgresql (to be verified).
1746 kes  Correct %x to %p in postgresql debug statement.
1747 02Nov07
1748 kes  Fix bug #942 where lots of emails where generated when the heartbeat
1749      interval was low and Bacula wanted a different tape from the one in
1750      the drive.
1751 25Oct07
1752 ebl  Add new SD despooling attributes and Dir inserting attributes 
1753      job status codes in the catalog (Status table).
1754 24Oct07
1755 ebl  Use qmake-qt4 instead of qmake when available (debian system).
1756 22Oct07
1757 kes  Add a security warning to src/cats/make_catalog_backup.in indicating
1758      that passing the password via the command line (arg 3) is insecure.
1759      This responds to bug #990 (it doesn't fix it).
1760 19Oct07
1761 kes  Set default debug_level to zero. This corrects bugs #991 and #993. 
1762 kes  Fix a crash in bat when it cannot connect to the Director for example
1763      if the Director is not running.
1764 kes  Remove redundant INDEX (JobId) from File table in the trunk.
1765      This fixes bug #992.
1766 kes  Make explicit exception to GPL in LICENSE to permit linking
1767      the Win32 FD with Microsoft VSS code.
1768 kes  Apply the Solaris package patch from 
1769      Masopust, Christian <christian.masopust@siemens.com>
1770 kes  Apply the patch to optionally add a timestamp in the debug output
1771      submitted by Mariusz Czulada <manieq@wp.eu>.
1772 18Oct07
1773 ebl  Use PQerrorMessage instead of PQresultErrorMessage in postgresql
1774      backend (sql_strerror). Fixes bug #989
1775 16Oct07
1776 kes  Apply Michael Short's <mdshort@gmail.com> Win32 regress patch.
1777      It applied with no problems.
1778 kes  Add PATH command to SunOS part of mtx-changer.in so that sed and
1779      awk are on the path.  
1780 kes  Redirect stderror to stdin on mt status command in mtx-changer.in
1781      since the status is returned on stderr on Solaris.              
1782 kes  Activate Close button on tray-monitor window. This fixes
1783      bug #986.
1784 kes  Check for NULL item in parse_conf.c before calling it.  In the
1785      case of Device, there is no item and this caused a seg fault when
1786      Device appears in the conf file.
1787 kes  Add a #define __CONFIG_H when including config.h in bacula.h. This
1788      avoids pulling in config.h multiple times in some new code.
1789 12Oct07
1790 kes  Fix spurious warning message printed when creating a volume with
1791      a LabelFormat. This fixes bug #976.
1792
1793 Release Version 2.2.5
1794 09Oct07
1795 kes  Add JobId in place of Job name in all the Jmsg() output.
1796 kes  Correct the APP_DESC for the Win32 storage service (remove an e).
1797 07Oct07
1798 kes  Make maxvol-test and new more strict maxvol2-test work. 
1799 kes  Print JobId in all Jmsg() job output.
1800 06Oct07
1801 kes  Add new SD despooling attributes and Dir inserting attributes 
1802      job status codes.  This fixes bug 961.
1803 kes  Fix Win32 drive display in bat version browser. Fixes bug #962.
1804 05Oct07
1805 kes  Fix doc issue. This fixes bug #963.
1806 kes  Fix listing performance problems in bat. Pointed out by 
1807      Chris Howells.
1808 kes  Remove old debug code.
1809 kes  Fix bat code that tests for Win32. This should fix bug #968
1810 kes  Query 5 list wrong Vol after migration. This fixes bug #960
1811 04Oct07
1812 ebl  Fix #969 where user can't change Replace option in restore menu.
1813 5ASep07
1814 kes  Save jcr in thread specific data (tsd) for each thread.
1815 kes  Make Dmsg() print JobId as -%u.
1816 kes  Make Jmsg, Emsg, and others automatically pickup the jobid
1817      for the thread if it exists.
1818 kes  Remove old reservation debug jid code.
1819 kes  Remove get_jcr_from_tid() from OpenSSL and tls code.
1820 ebl  Add an option that permit to specify spool size in job
1821      definition. (Applying patches/testing/spoolsize_per_job.patch).
1822      You must upgrade SD and DIR at the same time.
1823 dvl  Add new configuration item --archivedir
1824 dvl  Adjust regression tests to use tmp not /tmp.  This will allow
1825      multiple concurrent runs of the regression tests.
1826 28Sep07
1827 kes  Fix race condition that drops final block written to volume.
1828      This happens in rare cases with multiple simultaneous jobs 
1829      when the Volume fills.  This fixes bug #964.  May be related
1830      to bug #935 and possibly #903.
1831 kes  Eliminate more strerror() and replace with bstrerror().
1832 kes  Remove BSD getopt and replace with unrestricted IBM version.
1833 kes  Fix Win32 build for changed calling sequences.
1834 kes  More tweaks to the mount volume routines to get everything
1835      right. Changed variable name from find to have_vol, which is
1836      much easier to understand.
1837 kes  Enhance btimer debug code.
1838 27Sep07 
1839 kes  Fix FD->SD authorization failure, which was due to spurious
1840      wakeups from a pthread_cond_timedwait().  Simply check the
1841      predicate before continuing.  This fixes bug #953.
1842 kes  Add const char where needed (more to do). Remove temp debug code.
1843 26Sep07
1844 kes  Setup SQLite busy handler before doing queries. Fixes bug #967.
1845 kes  Don't overwrite error message in check_tables_version.
1846      Fixes bug #966.
1847 kes  Unlock batch insert tables with same calls used elsewhere.
1848 kes  Allow starting 59 jobs a second.
1849 kes  Make SD session key more random.
1850 kes  Add retry for SQLite opening db if it fails. Probably helps
1851      for bug #967.
1852 kes  Suppress extra error messages during batch insert failure.
1853      Fixes bug #966.
1854 kes  Add jcr to timer packets so if killed message can be sent to job.
1855 kes  Add JobId to all Dmsg() output.
1856 kes  Put some FD auth code on dbglvl rather than fixed.
1857 kes  Return insert attributes error message in db msg buffer to avoid
1858      false error messages. Helps fix bug #966.
1859 kes  Separate batch init error messages. Probably helps fix bug #966.
1860 kes  Make SD code that contructs attribute insert check string lengths
1861      more carefully.
1862 kes  If Dir gets an error during inserting attributes, cancel SD.  
1863      This reduces unnecessary error messages.
1864 24Sep07 
1865 kes  Correct search boolean for getting Volume info
1866 ebl  Cleanup batch insert code. Probably fixes bug #965.
1867 kes  Back out one small change to the reservation system (reserving a volume).
1868 kes  Rework how a Volume is mounted. It is now much more intelligent and
1869      will always attempt to use any mounted volume if possible and reduces
1870      calls to the Director asking about volumes.
1871 23Sep07 
1872 kes  Turn off some code when batch insert not enabled.
1873 kes  Edit FD name in connect error messages.
1874 kes  Rework the reservation system to take into account that the Director
1875      might give us a Volume that is different from the current one being
1876      used, and to ensure that we don't exceed Maximum Volume Jobs.
1877      This fixes (mostly) bug #947 '  Maximum Volume Jobs = 1 produces 
1878      fatal error with multiple jobs running'
1879 kes  Add more debug code in reservation system.
1880 kes  Implement maxvol-test to check bug #947.
1881 22Sep07 
1882 kes  Add code to handle tray monitor separated from Win32 FD.
1883 kes  Fix display of Win32 tray monitor after reboot. Fixes bug #952.
1884 20Sep07
1885 kes  Add missed return in fixing verify bug -- trunk only.
1886 ebl  Fix a command parser issue causing a director segfault.
1887 kes  Fix ANSI tape labeling. Fix restoring ANSI labeled Volumes. 
1888      This fixes bug #954.
1889 kes  Increase the max block size to 4MB fixes bug #957.
1890 kes  ERABT if user sets min block size > max block size.  Fixes bug #956.
1891 kes  Apply 2.2.4-poll-mount fix, that resolves bug #908 where a tape
1892      is not properly mounted (recognized) during a poll.
1893 kes  Apply 2.2.4-verify patch that resolves bug #958.  A Verify catalog
1894      Job that has differences reports Verify OK.
1895 ebl  Fixes #955 bug seg fault in Dir introduced  with regexwhere relocation.
1896 17Sep07
1897 ebl  Add an option to operate on all pools with update vol parameters.
1898      This complete the project 20. Patch from Nigel Stepp.
1899 ebl  Add history support to bconsole when using readline.
1900      Using Ctrl-D to exit doesn't update .bconsole_history
1901 kes  Modify new volume algorithm to use max MediaId for generating next
1902      volume number rather than the count of Volumes. This should essentially
1903      eliminate the failure rate if some volumes were deleted. Bug #921.
1904 kes  Begin implemention of Optimize Job Scheduling.
1905 kes  Implement restore callback that Dirk and I agreed on for bat 
1906      restore. This fixes bug #928. Restore of backup of zero files fails.
1907 kes  Fix SQL Catalog logging which broke with new db_escape_string 
1908      calling sequence.
1909
1910 Release Version 2.2.4
1911 14Sep07
1912 kes  Fix bacula_cats.def for new db_escape_string().
1913 kes  Increase size of name string when FD making connection to SD.
1914      May fix bug #953. FD->SD connection failure.
1915 13Sep07
1916 kes  Add code to help Dan debug 2drive-incremental-2disk test.
1917 kes  Add code to try to fix bug #908.
1918 kes  Add waits to multiple exit detection code to try to force pid
1919      file to always be deleted.
1920 kes  Restore good dev.tar.gz to rescue set appropriate binary property.
1921      This fixes bug #950.
1922 kes  Fix seg fault in error exit of acquire_for_read after unsuccessfully
1923      trying to switch drives by checking for blocking before unblocking.
1924      Fixes bug #906.
1925 kes  Cancel storage daemon in all cases where FD reports error. This
1926      should fix virtually all cases of bug #920.
1927 kes  Fix db_escape_string() for MySQL which did not compile.
1928 12Sep07
1929 kes  Fix error message that was clobbered when Dir tells SD it does not
1930      have write permission on Volume.  This should fix a minor point
1931      in bug #942, but not the main problem.
1932 kes  Add code to cancel job in SD if FD connection fails. This should
1933      fix bug #920.
1934 kes  Add code in FD exit to prevent loops and a crash on FreeBSD.
1935 dvl  Pass jcr and db into db_escape_string() to enable better escaping
1936      of strings
1937 kes  Fix migration code to get correct Volume name with multiple volumes 
1938      by skipping |.  Fixes bug #936.
1939 kes  Implement patch supplied by Landon to fix bug #944 where using
1940      TLS with bconsole uses 99+% of the CPU.
1941 kes  Note, you need GTK >= 2.10 to be able to link the Tray Monitor
1942      program.
1943 kes  Move patches into patches directory.
1944 11Sep07 
1945 ebl  Fix bug #946 about 'bacula-dir -t' which doesn't works
1946      as expected.
1947 09Sep07 
1948 ebl  Using 'm' in bconsole will show messages like before,
1949      and not memory usage.
1950 kes  Fix bug #935, and probably also bug #903 where files were not
1951      restored. MediaId was not properly set in JobMedia record after
1952      a Volume change.
1953 08Sep07
1954 kes  Suppress chown and chmod error messages if the FD is not running
1955      as root.
1956 07Sep07
1957 kes  Apply Martin Simmons' patch that should turn off the new API usage
1958      when batch insert is turned off allowing building on older
1959      PostgreSQLs.
1960 kes  Add ./configure search in qwt-qt4 for qwt package
1961 05Sep07
1962 kes  Bacula is now free of 3rd party GPL copyrighted code!
1963 kes  Remove idcache.c 
1964 kes  Add guid_to_name.c/h which replace idcache.
1965 kes  Remove enh_fnmatch.c.  Make code that references it use fnmatch.c
1966 04Sep07
1967 ebl  Detect if new PosgreSQL batch insert API is present.
1968 kes  Correct incorrect mempool call causing Director crash. Occurs on
1969      systems without va_copy().
1970 sb   Update spec files for 2.2.1 release
1971 03Sep07
1972 kes  Fix memory pool call in ua_output.c. bug #934.
1973 kes  Replace fnmatch.c and fnmatch.h by modified BSD versions.
1974      Add test program to fnmatch.c
1975 02Sep07
1976 kes  Integrate patch to README.vc8 from 
1977      Hederer Jean-Sébastien <hedererjs@asperience.fr, had to manually
1978      edit it to get it into Unix patch format.
1979 kes  Implement mkpath.c to replace old FSF makepath.c
1980 01Sep07
1981 kes  Implement savecwd.h and savecwd.c. Remove FSF versions.
1982
1983 Release Version 2.2.1
1984 30Aug07
1985 kes  Update POTFILES.in
1986 kes  Cleanup a few underquoted AC_DEFUNs in configure   
1987 kes  Apply patch from Martin Simmons that adds a test for va_copy to
1988      ./configure
1989 29Aug07
1990 kes  Fix bug #921 by increasing the number of tries to create a new volume
1991      from 11 to 100.
1992 kes  Rework bmsg in ua_output to use va_copy() so that bvsnprintf()
1993      can be called multiple times.  Implement a version for machines
1994      without va_copy() that gets a big buffer.
1995 25Aug07
1996 kes  Integrate more portable zone offset code into bsmtp.c
1997      Submitted by Attila Fülöp.
1998 24Aug07
1999 kes  Fix bad SD->FD return status reported by 
2000      (James Harper) <james.harper@bendigoit.com.au>
2001 ebl  Fix a bug in read_close_session which return random status
2002      thanks to James Harper
2003 23Aug07
2004 kes  Fix (hopefully) bug #930 by doing a db_escape_string() on file  
2005      and directory names during restore of single file/directories.
2006 kes  Add sanity checks to .sql command when string is empty. Hopefully
2007      that will resolve Dirks Director crash.
2008 22Aug07 
2009 kes  Apply patch submitted by Martin Simmons that corrects a seg fault
2010      in the bsmtp chat subroutine when debug is >= 10.
2011 21Aug07
2012 kes  Fix Director crash when running bat SQL queries.
2013 kes  Add David's notes on Item 8: Copy pools.
2014 18Aug07
2015 kes  Rework projects file to be current and ready for a vote.
2016 kes  Enhance lex scanner error message.
2017 17Aug07
2018 kes  Tweak LICENSE file to mention BSD code.
2019 kes  Fix bat.pro.in so that it includes the OpenSSL libraries only
2020      if specified on the ./configure.
2021 kes  Add first (not yet tested) cut of bcomm to the qt-console directory.
2022      This class is intended to allow us to open a second bsock to the
2023      Director while in the restore subdialog.  
2024 16Aug07
2025 kes  Fix configure to create bat Makefile before creating dependencies.
2026 kes  Eliminate the egg files from the tray-monitor. Use gtk calls.
2027 kes  Add a tooltip to the tray monitor.
2028 dvl  Set the Director's PID file before dropping privs. This fixes
2029      bug #923.
2030 15Aug07
2031 kes  Update AUTHORs file
2032 kes  Increase the default max concurrent jobs to 20 in FD and SD to
2033      correspond with the default .conf files.
2034 kes  Rewrite the Win32 service routines.  This eliminates the 3 copies
2035      some different, of the same file created by RN when porting the 
2036      Win32 SD and Dir.
2037 kes  Rearrange some of the Win32 directories and the placement of the files
2038      in them.
2039 kes  Set DEVELOPER flag in version.h
2040
2041 ========================================================================
2042 Release Version 2.2.0
2043 09Aug07
2044 kes  Apply a second doc patch from Marc.
2045 kes  Apply a doc patch from Marc Schiffbauer <marc@schiffbauer.net> that
2046      improves the tips section that discusses how to setup multiple
2047      simultaneous jobs.
2048 08Aug07
2049 kes  Update bat README file.
2050 kes  Apply patch from Allan Black <Allan.Black@btconnect.com> that     
2051      corrects a typo in the Recycle status check in db_find_next_volume().
2052      This will probably fix a number of annoying problems with multiple
2053      Recycled volumes.
2054 kes  Modify most of dird/msgchan.c to use bsock class calls rather than
2055      bnet calls -- no functionality change.
2056 07Aug07 
2057 kes  Modify the Verify output to specify if files are missing on    
2058      the Volume(s) or disk.  Fixes confusion in bug #916.
2059 kes  When more than one Volume is read in a migration job, the last
2060      Volume bytes reported are from the last read volume rather than
2061      the last written volume. Fixed. This fixes bug #910.
2062 kes  Fix display of Recycle flag after update volume=foo recycle=yes.
2063      It previously printed New Recyle flag is: no. This fixes bug
2064      #917.
2065 06Aug07
2066 kes  Correct seg fault when switching tape drives during restore.
2067 kes  Commit uid_gid_name.c (replacement for idcache.c), but will not
2068      be used until after 2.2.0 release.
2069 04Aug07
2070 kes  Remove fnmatch() in SD that permitted wild card specifications.
2071      This fixes bug #914.
2072 31Jul07
2073 kes  Fix %g in filename returned by SQL for browse tree reported by
2074      Dirk.
2075 kes  Fix configure so that it puts config.out in the cwd rather than
2076      in src/qt-console
2077 kes  Attempt to fix the locking problem reported by Eric in bug #906.
2078 kes  Make berrno class to leave errno unchanged after constructor call.
2079 kes  Make bnet_server use the heap rather than the stack to allocate
2080      its socket fd pointers to avoid a crash at termination. Problem
2081      reported by Ryan Novosielski and bugs pointed out by Martin Simmons.
2082 30Jul07 
2083 kes  Create new depkgs and depkgs-qt separating the qwt out of depkgs
2084      and putting it in depkgs-qt along with Qt4.3.
2085 29Jul07
2086 kes  Rework code in acquire.c that switches drives for reading when
2087      the Media Type does not match. This should fix bug #906
2088 28Jul07
2089 ebl  Fix a director segfault during job setup #907
2090 kes  Correct seg fault in postgresql when first operation returns no
2091      rows.  Fixes Dirks File browser problem seg fault with bat.
2092 25Jul07
2093 kes  Apply patch from Felix Schwarz <Felix.Schwarz@web.de> that allows
2094      building wxconsole on Fedora 7 with wxWidgets 2.8 (it works with
2095      2.6 as well).
2096 24Jul07 
2097 kes  Implement PopUp YES/NO dialog for bat.
2098 23Jul07
2099 ebl  Fix a compilation bug when using #define BACL_WANT_NUMERIC_IDS
2100 22Jul07
2101 kes  Correct RunScript to terminate job in FD on failure.
2102 kes  Change abort_on_error and AbortJobOnError to fail_on_error
2103      and FailJobOnError in RunScripts.
2104 kes  Minor tweaks of code formating in RunScripts, principally to
2105      avoid depassing 80 columns.
2106 21Jul07
2107 kes  Eliminate one #ifdef Win32 in bsmtp
2108 kes  Implement grow tool to grow a file for testing very large databases.
2109 kes  Add big-vol-test to test Bacula seeking with > 5GB.
2110 Release 2.1.28 beta
2111 19Jul07
2112 kes  Modify find_next_volume() to return all values in Media record.
2113 kes  Ensure that we keep Recycle Pool when moving Scratch volumes.
2114
2115 Release 2.1.28 beta
2116 18Jul07
2117 kes  Update Release notes 
2118 17Jul07
2119 ebl  fix a bug in get_scratch_volume() report by Andreas Helmcke
2120      Warning, in previous beta version, all media get from scratch keep their
2121      old retention.
2122 16Jul07
2123 kes  Tweaked Win32 installer to remove temp conf files at uninstall time.
2124      This should fix bug #842. Made a note to look at removing the temp
2125      files at the end of the install.
2126 kes  Add ability to mount and unmount a file device providing it is
2127      marked as being removable and has the appropriate mount and unmount
2128      commands defined in the Device resource. This fixes bug #830.
2129 kes  When applying a storage override, release all previous storage
2130      definitions rather than just prepending the new storage.
2131      This should prevent a good deal of confusion.
2132 14Jul07
2133 kes  Implement ./configure search for qwt libraries.
2134 13Jul07
2135 kes  Disable posting the WM_CLOSE message in KillRunningCopy of the 
2136      Win32 FD.  This should fix bug #893.
2137 kes  Remove an unnecessary beep in Win32 init code.
2138 kes  Update copyright dates in Win32 executable about boxes.
2139 kes  Replace the FSF copyrighted getopt.c and getopt.h in the Win32
2140      code with a BSD getopt.c and getopt.h.
2141 kes  Remove sched.h from the Win32 compat directory -- not used.
2142 kes  Remove the Exit menu item from the Win32 tray monitor. If you really
2143      need to shut it down, do it through the services panel or the command
2144      line.
2145 kes  Remove some inappropriate Bacula FSFE copyrights.
2146 ebl  Tweak status client=xxx to be more easy to parse (more like in 2.0.x)
2147 kes  Fix regress config non-portable test as pointed out by
2148      Florian Heigl <florian.heigl@gmail.com>
2149 kes  Fix PSCMD for HP-UX in configure.in to have proper syntax.
2150      as pointed out by Florian Heigl <florian.heigl@gmail.com>
2151 12Jul07
2152 kes  Fix missing rctx. prefixes on the Darwin code in src/filed/restore.c
2153      Reported by Frank Sweetser.
2154
2155 Release 2.1.26 beta
2156 12Jul07
2157 kes  Fix client-only build.
2158 kes  Integrate client-only fixes for bsys (initgroups) and conio from
2159      Sergey Svishchev <svs@ropnet.ru> for the AIX platform.
2160 kes  Make arguments to get_scratch_volume() in same order as other
2161      such calls.
2162 kes  Rework the prune_volumes() subroutine so that after purging and
2163      no volume found in desired pool, it will check for a scratch 
2164      volume. This prevents recycling the whole scratch pool.
2165 kes  Add code to status storage to print boffset_t (largefile support).
2166 11Jul07
2167 kes  Move qwt (Graphics libarary for Qt4) to depkgs.
2168 kes  You now need a --with-qwt=<dir> to be able to build bat.
2169 kes  Update src/win32/cats/bacula_cats.def to include the new       
2170      db_get_query_dbids() call on Win32.
2171 07Jul07
2172 kes  Correct a problem when selecting a scratch volume and moving
2173      it to another pool that lost some columns.
2174 kes  Tweak some code in ua_update.c to use POOL_MEM instead of POOLMEM.
2175 kes  Enhance Autochanger error messages to include Volume and device name.
2176 kes  Rework prune_volumes() code to take account of InChanger flag,
2177      and to handle recycling volumes going to the Scratch pool and
2178      current pool because the RecyclePool directive.
2179 kes  Implement a better and more efficient db_get_query_dbids() to
2180      handle creating and passing back a list of DBIds.
2181
2182 Release 2.1.24 beta
2183 03Jul07
2184 kes  Start work on new more efficient DBId subroutine. First use
2185      will be for recycling volume to Scratch inchanger.
2186 kes  Increase number of JobIds in pruning from 1000 to 10000. 
2187      This to be replaced by above routine.
2188 kes  Begin implementation of building Qt4 on Win32.
2189 kes  Correct typo in fix I added for bad TLS shutdown.
2190 kes  Pull 2.0.3 patches into patches directory.
2191 kes  Update Release notes.  Include qt-console in line count.
2192 kes  Update Projects file.
2193 30Jun07
2194 kes  Integrate patch from Sergey Svishchev <svs@ropnet.ru> that fixes 
2195      bug in migration code where a job that spanned two volumes
2196      was migrated twice.
2197 29Jun07
2198 kes  Implement new BST_DESPOOLING blocked state. Change from locking
2199      during despooling in SD to blocking. This means that other threads
2200      can work with the device structure, in particular the reservations
2201      system while despooling.
2202 28Jun07
2203 kes  Fix return in reservation message queue that missed clearing
2204      the jcr lock (implemented 26Jun07 below).
2205 kes  Rename a number of dev methods to make locking function names
2206      a bit clearer.
2207 kes  Document locking in lock.c. Move lock structures to new file
2208      lock.h.
2209 26Jun07
2210 kes  Move reservations message lock to lock jcr only this
2211      fixes bug #861.
2212 kes  Move main SD locking code into lock.c (new file).
2213 kes  Update Win32 build to include lock.c
2214
2215 Release 2.1.22 beta
2216 26Jun07
2217 kes  Dirk committed the qwt library code for drawing graphs in bat.
2218 kes  Tweak install of qwt so that it is integrated with ./configure.
2219 25Jun07
2220 kes  Fix HAVE_BATCH_INSERT to be HAVE_BATCH_FILE_INSERT, pointed
2221      out by Eric (my typo).
2222 ebl  Fix configure.in to get batch mode enable
2223 kes  Return correct string from authenticate.cpp in bat when connecting
2224      to Dir.
2225 kes  Apply patch suggested by Frank Sweetser to fix bug #888 --     
2226      spurious line drops when using TLS.  
2227 kes  Do not file reparse points when restoring a file that already
2228      exists -- Win32.
2229 24Jun07
2230 kes  Implement Windows reparse points -- similar to directories, but
2231      we do not descend into it. This is a first cut. They seem to 
2232      be backed up, but restore is not yet tested.
2233 kes  Remove restore_blocking in tls code when shutting a socket to leave
2234      it in blocking mode. Hopefully this will fix the encryption bug  
2235      reported by Frank Sweetser.
2236 kes  When opening a file for backup, tell the OS that we are going to
2237      read it sequentially -- optimization.
2238 kes  Change variable names in authenticate_director() to not conflict
2239      with member names in bat. Caused great confusion with compiler,
2240      but no warnings.
2241 23Jun07
2242 kes  Queue openssl error messages in case of comm problem.
2243 kes  Do shutdown() call if socket terminated.
2244 kes  Remove some duplicated code in tls.c
2245 kes  Move more of the bsock member variables into private and access
2246      them with methods.
2247 kes  Add Frank Sweetser's tls-test to the regression suite.
2248 22Jun07
2249 kes  Add Swedish sv.po file
2250 21Jun07
2251 kes  Don't print clock skew message in FD if less than 3 seconds diff.
2252 kes  Add a bit of VSS info to status client.
2253 kes  Implement a first cut of Vista VSS, using Win2003 code.
2254
2255 Release: 2.1.20 beta
2256 20Jun07
2257 kes  Fixed bug #886 (multidrive autochanger: SD doesn't use drive with
2258      loaded tape but uses first drive).
2259 kes  Fixed bug #807 Restore encrypted backup failed on Windows 2003
2260      This was indeed a Win32 issue.
2261 19Jun07 
2262 kes  Simplify search of autochanger for in-use Volume.  
2263 kes  Fix exit condition of check for in-use volume.  kes Remove
2264      inappropriate my_postgresql_free_result() in db_close()
2265      routine.
2266 kes  Fix bad return in FD when encryption signature not found.
2267      Probably caused a crash.
2268 kes  Inhibit missing encryption signature error messages for 
2269      file types where no signature computed.
2270 kes  Correct inverted check on autochanger in reservation system.
2271 kes  Tweak debug code in autochanger reservation.
2272 18Jun07
2273 kes  Add some additional locking in the cats directory in subroutines
2274      that modify packet variables called from batch insert.
2275 kes  Rework how dcrs are allocated. new_dcr() can now be called
2276      with an existing pointer, and it will simply clean it up.
2277      This allows the reservation system to test various different
2278      devices, and will permit easy device changes.
2279 kes  A bunch of changes all over to handle new new_dcr() calling
2280      sequence.
2281 kes  Work more on the Volume management in the SD. Remember Volumes
2282      for tape drives and for autochangers (even virtual disk changers).
2283 kes  When looking at the Volume list to reserve a drive, handle 
2284      autochanger names correctly by interating through the changer 
2285      devices.  Also call the Director to see if a Volume is suitable
2286      for the current job.
2287 kes  Fix some bugs in bscan. Make sure all media records are written.
2288      Make sure that valid JobMedia records are written for disk files.
2289      Previously they were completely wrong.
2290 kes  Move source tar files for depkgs-mingw32 to www.bacula.org so
2291      that the URLs don't change and so that the developers will all
2292      work off the same copy. Rebuild from scrach.
2293 kes  Upgrade Win32 SQLite3 from 3.3.8 to 3.3.17.
2294
2295 Release: 2.1.18 beta
2296 16Jun07
2297 kes  Fix seg fault in FD from incorrect digest size. 
2298 kes  Fix argument to non-OpenSSL crypto.c subroutine.      
2299
2300 Release: 2.1.16 beta
2301 16Jun07
2302 kes  Remove a few malloc()s from the encryption code.
2303 kes  Use the class calls to bsock in filed/backup.c and restore.c in
2304      place of the old bnet_xxx code.
2305 kes  Implement code that does an on the fly calculation of the  
2306      signing digest during restore of encrypted files.  It makes
2307      a best guess at the algorithm, and if it is not correct, will
2308      then revert to the old code which reads the file after it is
2309      restored.
2310 kes  Implement at least one missing crypto stream in stream_to_ascii()
2311 kes  Apply patch from William <chowmeined@gmail.com> that fixes bug
2312      #877 where a reload with bad syntax causes Dir to exit.
2313
2314 Cut: 2.1.14 beta (not released)
2315 14Jun07
2316 kes  Do not free a volume on a tape drive until another volume is
2317      mounted and read, or the autochanger unloads the volume.
2318      This should help the SD re-use volumes that are already mounted,
2319      and should fix bug #886.
2320 kes  Apply patch from user brettedgar that allows gnome2-console include
2321      the OpenSSL libraries, and hence work with SSL.  Fixes bug #885.
2322 kes  Apply patch from Lucien Weller that fixes day of week calculation
2323      because of DST flag problem. Fixes bug #887.
2324 10Jun07
2325 kes  Move find_next_appendable_volume() to after acquiring a valid device
2326      in reserve.c.  This fixes bug #864 -- confirmed by reporter.
2327 09Jun07
2328 kes  Unable to reproduce bug 872. However added additional testing for
2329      integer.
2330 kes  Bug #874 resolved by documenting SQLite limitations.
2331 kes  Bug #882 resolved by documenting mtx-changer script for new drive code.
2332 kes  Bug #881 resolved by removing typo in mtx-changer script.
2333 kes  Made Frank Sweetser's wiki the official Bacula wiki with his
2334      approval. Added a link to the wiki on the web page, and implemented
2335      a backup from http://paramount.ind.wpi.edu                                          
2336 08Jun07
2337 kes  Fix update allfrompool to pass pool name.
2338 07Jun07
2339 kes  Convert to pure GPL v2 license.
2340 kes  Fix sscanf problems reported by Peter Buschman that caused
2341      a bus error on Solaris.
2342 kes  Rework (simplify) the select prompt in bat.
2343 kes  Move get_jobid_from_tid() into lib and create a 
2344      get_jcr_from_tid().
2345 kes  Use get_jcr_from_tid() to conver all tls Emsg() to Jmsg().  This
2346      should definitely fix the problem of lost error messages in the
2347      encryption code.
2348 kes  Remove over zellous addition of FSFE copyright in a few eggxxx files.
2349 kes  Eliminate tcpd.h from the project. Enclose the #include from the
2350      library with extern C ...
2351 kes  Add print of signal name when a signal is trapped.
2352
2353 Release: 2.1.12 beta
2354 04Jun07
2355 kes  Fix a seg fault in the PostgreSQL driver dereferencing a NULL pointer.
2356 03Jun07
2357 kes  Implement SQLITE3_INIT_QUERY in version.h that can do an initial
2358      query for SQLite3. Use it to set PRAGMA synchronous = OFF. This
2359      makes SQLit3 run 30 times faster, though a bit less safe.
2360 kes  Implement --with-batch-insert in configure and detection of thread
2361      safe libraries.  It is on by default, but turned off if no thread
2362      safe library (e.g. SQLite 2) is available.
2363 02Jun07
2364 kes  Fix Bacula PostgreSQL buffer overruns.
2365 kes  Do better checking for NULL results returned from PostgreSQL;
2366      implement retry for failed queries; clear results buffer after
2367      failed query. Hopefully this will correct the PostgreSQL failures.
2368 01Jun07
2369 kes  Implement algorithm to handle only one appendable volume with
2370      Prefer Mounted Volumes = no.
2371 kes  Fix a Bacula PostgreSQL bug dereferencing a NULL pointer      
2372      returned from a query.
2373 kes  Make volume lock recursive.
2374 kes  Implement an additional volume reservation algorithm that
2375      starts by considering all reserved volumes then uses the
2376      old brute force algorithm of searching the resources to
2377      find a suitable device.
2378 kes  Add new reservations debug code and refine the old code.
2379 kes  Update the win32/dll/bacula.defs file.
2380 29May07
2381 kes  Tweak reservations algorithm to permit a few more cases, i.e.
2382      volume reserved, but on different drive, ...
2383 kes  Enhance SD status to include Pool and Media Type for drive in a
2384      more readable format (a bit longer). 
2385 kes  Fix PostgreSQL double free.
2386 28May07
2387 kes  Minor refactoring of restore decryption code.
2388 kes  Add code to smartall.c to detect double free of a buffer.
2389 27May07
2390 kes  Add < > around %r in from field on mail command of bacula-dir.conf.in
2391      so that bsmtp will create a correct email address (mailbox only).
2392 kes  Modify 'memory' command so that the buffers are listed as 'In use'
2393      to avoid confusion with Orphaned buffers.
2394 kes  I reworked the OpenSSL include/lib flags to be handled in     
2395      the standard Bacula way, which should fix bug #863 concerning
2396      non-standard OpenSSL libraries.
2397 26May07
2398 kes  Implement Help Browser window for bat.
2399 kes  Fix reload bug that reset StorageId to zero.
2400 25May07
2401 kes  Fix TLS #ifdefing when TLS turned off.
2402 kes  Ensure that when labelling a tape with Slot=0 that InChanger
2403      is not set.
2404 kes  Use DISTINCT to make MySQL and PostgreSQL uar_list_temp query        
2405      the same.
2406 kes  Add StartTime to final uar_sel_jobid_temp query so that we can
2407      add DISTINCT (required by PostgreSQL).
2408 kes  Implement BSOCK authenticate_director() method. Eventually will
2409      authenicate all daemons.
2410 kes  Move several more functions into the BSOCK class.
2411 24May07
2412 kes  Add code to tell the OS that we no longer need a cached
2413      file that we were reading. In findlib/bfile.c.  Also,
2414      only cache files that we are reading. Thanks to
2415      Tobias Oetiker <tobi@oetiker.ch> for the idea.
2416 kes  Tweak to bsmtp to eliminate compiler warnings on Win32.
2417 kes  Implement script to automatically generate cats and dll .def
2418      files for Win32 dll.
2419 kes  Update README.mingw32 to include new .def file generation.
2420 kes  Correct typo in UTF-8 error message as reported by:
2421      jhernandez <julianhernandez@gmail.com>
2422 kes  Add additional sm_check() code on debug level 1.
2423 kes  Set default debug level to 1.
2424 kes  Trap SIGABRT in attempt to get traceback.
2425 23May07
2426 kes  Reduce bat connect timeout from 30 to 15 seconds.
2427 kes  More restructuring and implementing BSOCK class in place of
2428      old bnet.c code.
2429 kes  Remove a few unnecessary malloc() tests in crypto code.
2430 kes  Turn off crypto calls for > 128 bits in crypto.c if HAVE_SHA2
2431      not defined. Bug reported by Allan Black <Allan.Black@btconnect.com>
2432 kes  Remove duplicate HAVE_CRYPTO definition in config.h.in
2433 22May07
2434 kes  Fix Verify InitCatalog mysql_escape_string() trashing memory.
2435      Make buffer bigger.
2436 kes  Fix Verify InitCatalog. The attributes were not pointing to the
2437      correct saved location.
2438 kes  Implement message callback so that GUI is sure to get all
2439      daemon messages. Currently displayed in a dialog in bat.
2440 kes  Ignore SIGUSR2 (Bacula timer) in bat.
2441 kes  Apply regress patch from bug #859 to allow regress to work 
2442      with Solaris compiler.
2443 21May07
2444 kes  Begin adding TLS support to bat.
2445 kes  Apply UTF-8/16 patch from Yves Orton <demerphq@gmail.com> to
2446      clean up lex.c and make it more readable.
2447 20May07
2448 kes  Move more bnet functions into the BSOCK class.
2449 kes  Fix tray-monitor by not requiring a timer interval in bnet_connect()
2450 kes  Complete change of berrno strerror() method to bstrerror() 
2451
2452 Release: 2.1.10 beta
2453 18May07
2454 kes  Cleanup incorrect email addresses in bsmtp.
2455 kes  Make bat display initial messages rather than discard them.
2456 16May07
2457 kes  First cut of adding .mod to the run command.    
2458 kes  Implement auto display of messages in bat.
2459 kes  Enhanced preferences to allow all Bacula output to be
2460      displayed in bat.
2461 15May07
2462 kes  Try to make bsmtp date routines more generic.
2463 kes  Fixed bug #856 autochanger documentation.
2464 kes  Rework bsmtp date editing for Win32. This fixes bug #854.
2465 kes  Add new cats entry point so Win32 builds.
2466 14May07 
2467 kes  Attempt to fix bsmtp date editing on OSes without %z editing. 
2468      Fixes bug #854.
2469 kes  Do better checking for the MySQL 64 bit libraries looking for both
2470      .a and .so libraries.
2471 kes  Add a kludge for Ubuntu's non-standard locations for MySQL -- allow
2472      /usr/include/mysql/mysql.h AND /usr/lib/... rather than /usr/lib/mysql/...
2473 kes  Require the thread safe version of MySQL during configure. Thanks
2474      to Andre Noll for pointing this out.
2475 kes  Ensure that calls to find_jobids_from_mediaid_list() check count before
2476      continuing in migration code.
2477 kes  Apply implementation of tray-monitor font derived from gnome-console
2478      submitted by Andreas Piesk <a.piesk@gmx.net>
2479 13May07
2480 kes  Eliminate important memory loss in SQLite
2481 kes  Fixed the batch insert MySQL thread specific data that was not
2482      being freed. See cats/mysql.c:db_thread_cleanup().
2483 kes  Fix restore before command.
2484 kes  Convert old hdr.name to name() in a few places.
2485 kes  Implement update jobid command.
2486 kes  Return all time_t dates in db_get_job_record()
2487 kes  Stop watchdog in SD earlier.
2488 kes  Put Pool just after Storage in please mount message.
2489 kes  Fix pointer usage bugs in Verify InitCatalog pointed out by
2490      Eric.
2491 12May07
2492 kes  Update the po files.
2493 kes  Fix Verify InitCatalog by making it cache attributes.
2494 11May07
2495 kes  Change name bacula-bat to bat for man 1 page to correspond to
2496      Makefile.
2497 kes  Check for client and store NULL pointers in status command.  This
2498      fixes bug #845.
2499 kes  Fix non-ssl build so that it works (add JCR *jcr to crypto structures).
2500 kes  Fix sign extended editing of %p.
2501 kes  Clean out a little old #ifdefing in cats/mysql.c
2502 10May07
2503 kes  If time diff between DIR and FD is more than 600 seconds convert
2504      INFO message to WARNING.
2505 kes  Implement heap size display in status for all daemons.
2506 kes  Attempt to fix MySQL db open memory loss (not successfull).
2507 kes  Don't set SIGKILL and SIGSTOP neither can be trapped.
2508 kes  Eliminate memory loss in MySQL (possibly other SQLs) during
2509      Query. This looks like a MySQL but but by doing extra releases,
2510      the memory goes away.  This should fix bug #847.
2511 09May07 
2512 kes  When backup fails, cancel SD before waiting for sd termination.
2513 kes  If SD is waiting for FD to connect during cancel, wake up the 
2514      thread.
2515 kes  Fix fsf code so that errno is correctly reported.
2516 kes  Apply migration patch (with changes) from Sergey Svishchev <svs@ropnet.ru>
2517 08May07
2518 kes  Make lack of Pool directive in Job an ERROR_TERM rather than FATAL
2519      so that Bacula doesn't later stumble into a seg fault.
2520 kes  Use the term Restore Client in the restore Job report.
2521 kes  Merge patch from Sergey Svishchev <svs@ropnet.ru> that preserves 
2522      the original job's FileSetId.
2523 kes  Merge patch from Sergey Svishchev <svs@ropnet.ru> that implements
2524      spooling in migration jobs.  Not yet tested.
2525 kes  Merge patch from Jorj Bauer <jorj@seas.upenn.edu> that implements
2526      reading conf file from a pipe.  However, do it with open_bpipe()
2527      rather than popen.  Not yet tested.
2528 07May07 
2529 kes  Fix an ugly bug where the VolCatBytes were getting updated
2530      during a restore.
2531 kes  Implement bconsole memory command that prints current memory
2532      usage, plus smartalloc dump.
2533 kes  Clarify some error messages in backup, admin, and migrate.
2534 kes  Shrink label dialog to smaller size.
2535 kes  Invert Cancel OK buttons on restore to be OK Cancel.
2536 kes  More strerror() to bstrerror() conversions.
2537 06May07 
2538 kes  Start implementing bstrerror() in place of strerror().
2539 kes  Stripping path -- seems to work.
2540 04May07
2541 kes  Prevent door and port files from being restored (mostly
2542      Solaris stuff).
2543 kes  Free an unreleased buffer in compat code.
2544 kes  Change console Job name from *Console* to -Console- to eliminate
2545      Win32 filename problems.  Put Win32 path separator when creating
2546      Console file.  This fixes bug #846.
2547 kes  Change berrno::strerror() to berrno::bstrerror().  Not yet full
2548      implemented.
2549 kes  Pass jcr to crypt_sign_decode because it creates a new SIGNATURE
2550      structure.
2551 kes  Define b_errno_win32 on Linux to be zero so that it can be or'ed in
2552      to force Win32 error message.
2553 03May07
2554 kes  First cut strip path. The data should be passed to the FD,
2555      but nothing is done with it yet.
2556 kes  Enhance the digest and signature routines in the crypto
2557      library to accept a JCR and to use it to print error messages
2558      so that they will go in the Job report rather than the daemon's
2559      messages.
2560 kes  Simplify some of the verify signature code.
2561 kes  Simplify a few of the alternative returns in the signature 
2562      code.
2563 02May07
2564 ebl  Use only POSIX regex instead of GNU regex in breg.c for
2565      File relocation. It fix broken freebsd compilation.
2566 kes  Convert all other Dir files to use new ua class message 
2567      routines for bat.
2568 kes  Tentative fix for missing digest signature in bug 807.
2569 kes  Correct handle problem in new win32_ftruncate routine.
2570 kes  Convert ua_purge.c and ua_update.c to use new ua class
2571      message routines for bat.
2572 29Apr07 
2573 kes  Correct incorrect installation of LICENSE in Win32 installer.
2574 kes  Display LICENSE at the beginning of the Win32 install.
2575 kes  Attempt to correct the need for the png files to be installed 
2576      for bat.
2577 kes  Reapply my bat.conf install script in qt-console. I think I 
2578      editted bat.pro instead of bat.pro.in and it was lost.
2579 kes  Apply CentOS patches someone sent me. Checks for /var/run/subsys,
2580      the /var/lock/subsys for subsysdir.  Also corrects typos in the
2581      doc.
2582 28Apr07
2583 kes  First cut update job.
2584 kes  Correct configure to include qmake of src/qt-console directory.
2585 26Apr07
2586 kes  Make restore job yes/mod/no print in one command so GUI works.
2587 kes  First cut implementing backup and restore client.
2588 kes  Correct editing in Verify output that caused a seg fault.
2589 25Apr07
2590 kes  Insure that bat.conf is not overwritten during installation.
2591 kes  Fix important bug in db_sql_query() in mysql.c.  It was introduced
2592      while I was implementing migration in March 2006 !
2593 24Apr07
2594 ebl  Cleanup file relocation, using char *RegexWhere instead of
2595      char *where + bool where_use_regexp
2596 kes  Update some manpages and add bat manpage.
2597 kes  Make a first cut at converting bacula.spec.in for bwx-console
2598      and bgnome-console.
2599 kes  Apply patch from John Goerzen to add hostname as fourth argument
2600      to make_catalog_backup script.
2601 kes  Fix typos I introduced into bsmtp.c
2602 kes  Make pm_strxxx() routines handle input of NULL pointer. This
2603      is to protect from NULL pointers returned from SQL databases.
2604 kes  Correct typo in bacula-sd manpage as pointed out by John Goerzen.
2605 kes  Add more debug to FIFO code -- fix fifo regression test.
2606 23Apr07
2607 kes  Implement posix_fadvise in FD, and for reading spool files in SD.
2608 kes  Add thread timer to bnet_connect() to break from OS if wait time
2609      expires.
2610 22Apr07
2611 kes  Update Win32 build to include new files, new symbols, and    
2612      renamed files.
2613 kes  Implement socket level heartbeat (tcp_keepidle)
2614 ebl  Commit File relocation patch
2615 kes  Make bat have 'make install' target.
2616 kes  Warn during install if old gnome-console binary found.
2617 kes  Warn during install if old wx-console binary found.
2618 kes  Add -8 option to bsmtp command line to add content type utf-8. 
2619      Fixes bug #809. (Character coding problem in bsmtp).
2620 kes  If < is found in target (from, to, cc) then do not enclose the
2621      target in < >  in bsmtp. Fixes bug #772  (malformed address).
2622 kes  When printing certain items in dbcheck, stop after 300000.
2623      Fixes bug #822. (dbcheck loops).
2624 kes  Incorrect status in Dir after waiting for mount with poll set.
2625      Fixes bug #825.
2626 21Apr07 
2627 kes  Extend idea of Prefer Mounted Volumes to mean a volume about
2628      to be mounted.
2629 kes  Print waiting to reserve a device every 5 mins.           
2630 20Apr07
2631 kes  Don't call close_part in label.c if tape and relabel.
2632 kes  Don't free volume if busy in close() -- should help with
2633      bug 801.
2634 ebl  Fix #824 RunScript bug (After script could be execute twice)
2635      Now, Before Script can use RunsOnSuccess and RunsOnFailure options
2636      By default (like before) RunsOnSuccess=true and RunsOnFailure=false
2637      Add a regression script to test RunScript
2638 19Apr07
2639 kes  Correct usage of MTIOCLRERR ioctl for clearing persistant errors
2640      on Solaris.
2641 18Apr07
2642 kes  The bgnome-console (gnome-console) and bwx-console (wx-console) are
2643      deprecated. No additional bugs will be fixed, and they will be dropped
2644      in a future release (probably 2.4.0).
2645 kes  Change name of wx-console to bwx-console to make it more Bacula
2646      unique.
2647 kes  Change the name of gnome-console to bgnome-console to make it
2648      more Bacula unique.
2649 14Apr07
2650 kes  Some time in March, a Feature Request with patch from Jorj Bauer
2651      <jorj@seas.upenn.edu> was committed by Landon (with my approval).
2652      It implements:
2653      The ability for the director to validate a Client (FD) CN against
2654      an arbitrary set of patterns rather than the hostname, with
2655      A new 'TLS Allowed CN' set of directives which are implemented
2656      in the Client resource.  Then pattern matching is used in place
2657      of hostname matching against the Certificate's CN. As an example, we
2658      have certificates which (a) use a local CA, and (b) have a CN of the
2659      form client_123.
2660 kes  Add new/changed entry points to Win32 build
2661 kes  Create unaccepted-projects for projects that are not accepted.
2662 kes  Simplify locking in the reservations system.
2663 kes  Add more debug code in reservations.
2664 kes  Make sure error condition on reserving a volume is handled correctly.
2665 kes  Correct handling of volume_in_use.
2666 kes  Correct handling of initializing a device.
2667 kes  Move handling of broadcasting releasing a device into release_device().
2668 kes  Correct attaching dcr to dev so that it is only done if device
2669      is properly initiated.
2670 12Apr07
2671 kes  Locking debug level tweaks in SD.
2672 kes  Tweak new Volume code.
2673 11Apr07
2674 kes  Add exec external-command [wait-seconds] to bconsole. This
2675      executes the external-command.  Note! normally external-command
2676      should be enclosed in double quotes.
2677 kes  Turn the .die command on only if DEVELOPER is defined -- i.e.
2678      it should normally be off in a production system.
2679 10Apr07
2680 kes  Implement die command for SD so that we can force it to dump.
2681 kes  Implement SD lock debug code.
2682 kes  Implement new algorithm for keeping Volume list in SD.  It
2683      is now owned by the device.
2684 04Apr07
2685 kes  Implement new code for freeing in use volumes that should 
2686      resolve if not all, some of the problems of multiple drive
2687      tape conflicts described in bug 801.
2688 03Apr07
2689 kes  Fix gui/bacula-web/images files in svn.
2690 kes  Turn on FreeBSD/OpenBSD code to set EOT model on tape.
2691 02Apr07
2692 ebl  Fix a bug in batch mode (in string escape)
2693 kes  Correct migration prune SQL typo that crept in in a    
2694      recent 2.1.x change.
2695 01Apr07
2696 kes  Move bnet_despool() into class in bsock.c
2697 kes  Modify job report to include director name and Build OS.
2698 kes  Move drop root privilege and check_catalog() before fork.
2699 kes  Add update database scripts (version 9 to 10) to updatedb directory.
2700 31Mar07
2701 ebl  Check size and age of each file after its backup to see if
2702      it has changed during backup, if 'checkfilechanges' is set.
2703      The FD will do an extra check (stat(2)) after
2704      each file backup. mtime, ctime and size are compared with
2705      'before backup' information. If time or size mismatch, an
2706      error message will be generated. You must upgrade FD to use it.
2707 30Mar07
2708 kes  Make database name and user configurable
2709      --with-db-name=xxx --with-db-user=xxx
2710 kes  Add back database type to message.c for debugging.
2711 29Mar07
2712 kes  Implement dir_sql() which issues an SQL query.
2713 kes  Modify bat medialist to use dir_sql() and do some minor C++
2714      formatting as well as eliminating a number of pointers, simplifing
2715      the code.
2716 28Mar07
2717 kes  Fix some of the mtx-changer grep commands for tape label readers.
2718 kes  Convert a number of bsendmsg into the appropriate send/warning/error
2719      message class calls.
2720 kes  Suppress the using database message in the .sql command.
2721 kes  Correct an incorrect bnet_tls_client prototype -- patch from Martin.
2722 27Mar07
2723 kes  Add context menu for floating a window.
2724 kes  Some minor cleanup and name changes in qt-console
2725 kes  Add doing mt setblk 0 in Win32 mtx-changer.
2726 kes  Apply Martin's bug fix to move definition of ENODATA for 
2727      FreeBSD to bsock.c
2728 ebl  Add a BUSY handler to sqlite to be able to use multi_db = 1 with
2729      sqlite2 and sqlite3.
2730 26Mar07
2731 kes  More pruning cleanup.
2732 kes  Turn on wait_for_drive by default in mtx-changer.
2733 kes  Turn on Batch insert code by default as it now passes regression.
2734 kes  Add ./configure --enable-bat to enable building of Bat.   
2735      No install yet though.
2736 25Mar07
2737 kes  Implement a new .sql command for bat.
2738 kes  Implement code to turn off pruning in obtaining the next volume.
2739      Pruning is turned off for the status dir command, but turned on
2740      for SD requests and for the list nextvolume command.
2741 24Mar07
2742 kes  Correct Qmsg() that was not updated correctly when committing a
2743      previous change (probably the recent TLS patch).
2744 23Mar07
2745 kes  Write new subroutine is_volume_purged() that explicitly checks
2746      if the Volume is purged, and if so marks it as such. This should
2747      resolve problems reported about needing to mount twice to recycle
2748      volumes.
2749 kes  Rewrite pruning algorithm to do more work in the SQL engine, and
2750      to pass a list of JobIds to be deleted to SQL.  Also, minimize the
2751      amount of duplicated code.     
2752 kes  Do volume pruning only for the Media Type desired (reduces pruning time
2753      if multiple Media Types are in the same pool).
2754 kes  Implement more detailed info in the Job report for the Bacula version
2755      and architecture.
2756 kes  Switch from POOLMEM to POOL_MEM (a real class) in ua_prune.c and
2757      ua_purge.c.
2758 ebl  Add bbatch tool to bench database and insert mode.
2759      Fix sql quote stuff in batch mode
2760      Fix sql stuff for mysql
2761 22Mar07
2762 kes  Correct problems with am/pm scheduling. Fixes bug #808.
2763 kes  Implement new prunning code that prunes up to 1000 jobs at
2764      the same time.  The same technique can be applied to a number
2765      of other prune/purge subroutines.
2766 kes  Add an insanity check when starting a new tape job to ensure
2767      that the tape position has not been changed. If so fail the
2768      job.
2769 kes  Fix Win32 build for dlls to add the folllowing:
2770      src/lib/bsock.c -- new file with new entry points
2771      src/lib/dlist.c  -- new entry points
2772      src/cats/sql_create.c -- new entry point
2773      src/cats/sql_cmds.c -- new DATA item exported
2774 21Mar07
2775 ebl  batch mode cleanup bscan-test is ok now.
2776 kes  Implement SD code to check length of disk volume before appending.
2777 18Mar07
2778 kes  Correct return status on db_batch... routines.
2779 kes  Add call to db_write_batch_file_records() to migration code.
2780 ebl  Fix AfterJob timing
2781 kes  Move the checking of the database in initializion of the Director
2782      to after we drop privileges.  This avoids the need for both root
2783      and bacula access to the DB.
2784 kes  Correct a misplaced variable definition in src/filed/backup.c
2785 kes  Correct how the new batch insert db_create_attributes_record()
2786      uses the arguments.  Caused a seg fault in bscan.
2787 kes  Implement lock() and unlock() methods in DEVICE class.
2788      Implement block() and set_block(xx) methods in DEVICE class.
2789 kes  Modify bnet_connect() so that it uses time() to check for the
2790      wait time expiring (on some OSes, some system calls may not
2791      return immediately).
2792 kes  Modify Verify to obtain the previous JobId when it is actually
2793      running rather than at schedule time (as it was in 1.38.x).     
2794 kes  Fix src/job.c to handle MaxWaitTime correctly.  This should
2795      fix bug #802.
2796 kes  When checking pid in pid file, continue running if the pid is
2797      the same as ours. This occurs on IRIX after a system crash.
2798      Fixes bug #797.
2799 10Mar07
2800 kes  Extend new GUI API.
2801 kes  Make the ua structure a class, and implement send_msg(),
2802      error_msg(), warning_msg(), and info_msg().
2803 08Mar07
2804 kes  Apply fix from for building wx-console on the Mac from
2805      bug #798.
2806 kes  Implement new select mechanism for GUI programs.
2807 kes  Reorganize initialization of stackedWidgets in bat.
2808 07Mar07
2809 kes  Add updated nagios plugin supplied by Christian Masopust.
2810 05Mar07
2811 kes  More bat implementation.
2812 kes  File migrate bug with Pool Occupancy using mediaid instead
2813      of jobids.  Fixes bug #795.
2814 kes  Fix orphaned buffers in filed backup and verify due to
2815      crypto buffers not freed during errors.  Fixes bug #789.
2816 kes  Extend new GUI api code to tree commands.
2817 kes  Ensure that tree and dot commands check console ACLs.
2818 kes  Permit marking directory with trailing slash.
2819 kes  Allow 20 console connections (instead of only 10).
2820 04Mar07
2821 kes  Add smartctl call to bacula-sd.conf as an example of getting
2822      tape alert info.
2823 02Mar07
2824 kes  Modify jobq.c to let simultaneous restore jobs run. This may 
2825      cause them to fail if they cannot get a drive.
2826 kes  Add Client Connect Wait to Storage daemon to permit users to
2827      modify the time the SD waits for a FD connection.
2828 29Feb07
2829 kes  Correct virtual changer check which was backwards. This caused
2830      volumes to be unloaded into slots already occupied.
2831 28Feb07
2832 kes  Apply Command ACL filter to JobId list in restore command.
2833 kes  Correct typeo in var.c patch.
2834 27Feb07
2835 kes  Don't let Bacula prune File or Job records for the current Job.
2836 kes  Fix variable substitution pad + inc bug reported (with patch)
2837      in bug #791.
2838 26Feb07
2839 kes  Correct SQLite log table index as reported by Luca Berra.
2840 24Feb07
2841 ebl  fix fifo stuff, bacula tries to rewind the fifo... Thanks to Andreas
2842 22Feb07
2843 kes  Begin implementing new comm signals for API.
2844 kes  Fix a few places in lib/message.c where the open fd may 
2845      not be zeroed.
2846 kes  Continue implementing lib/bsock.c (real class).  Make jcr,
2847      who, host, and port private. There are new methods to access
2848      them for non-class use. This required touching a number of files.
2849 21Feb07
2850 kes  Add LANG=C to autoconf/randpass so it works with languages other
2851      than English.  Fixes bug #788.
2852 20Feb07
2853 ebl  Revert ClientRunBeforeJob to old position as in 1.38.X.
2854      This fixes bug #780
2855      You will not be able to generate Include/Exclude list any more.
2856      It will be fixed soon.
2857      If you want to use this, you can apply
2858      trunk/bacula/patches/testing/clientrunbeforejob_can_generate_include_exclude_list.patch
2859 19Feb07
2860 kes  Restore of sockets created false error messages because Bacula
2861      no longer restores sockets, but the code was still trying to
2862      set the attributes on a non-existent file. Reported by a user.
2863 ebl  finish RecyclePool feature
2864      Media will takes Pool.RecyclePool
2865      when moving from Scratch to a Pool or when user will do
2866      update volume=xxx frompool
2867      To use it, add RecyclePool = aPool to your Pool resource
2868         Pool {
2869                 Name = Default
2870                 RecyclePool = Scratch
2871                 ...
2872         }
2873      TODO: update manual
2874 kes  Expand new BSOCK class adding signal() and new BNET signals.
2875 kes  Begin enhancing the dot commands adding a new API function
2876      that returns more information and will make it easier
2877      to interface to the Director from a program.
2878 18Feb07
2879 kes  Make DEVICE fd private. Its new name is m_fd, and can be
2880      obtained with dev->fd() outside the class.  This is the
2881      first of many DEVICE members to be made private.
2882 kes  Implement Michael Renner's idea on having a virtual disk
2883      changer. I made some minor modifications (e.g. I did not
2884      implement the Virtual Changer directive, but simply set
2885      the Changer Command to an empty string.
2886 17Feb07
2887 kes  Implement a BSOCK send() method that writes the whole record
2888      in a single write() request rather than in two.
2889 ebl  add update volume=xxx recyclepool=yyyy
2890      volume takes recyclepool from pool when using update volume=xxx from pool
2891 16Feb07
2892 kes  Fix encryption deblocking bug, which caused some restored files
2893      to be truncated. This fixes bug #763.
2894 kes  Add FD event sequence order prepared by Eric -- for RunScripts.
2895 kes  Fix 12am/pm bug as reported in bug #782 -- scheduler problem.
2896 13Feb07
2897 kes  Apply Eric's ClientRunScriptAfter patch to 2.0 and 2.1.
2898 ebl  Use btime_t instead of uint64_t in media patch.
2899 11Feb07
2900 kes  Optimize the use of the database a bit in the Status dir command.
2901      Only open it when needed, ensure that if any previous database
2902      was opened, it is closed.
2903 10Feb07
2904 kes  Correct VolCatBytes bug from media patch.
2905 kes  Apply patch from bug #612 by Rudolf Cejka to speedup pruning
2906      in the case of orphaned records.
2907 kes  Modify dbcheck to handle orphaned JobMedia, Path, Filename,
2908      and File records in 300K chunks to be more efficient. This
2909      idea came from Juan Luis Frances (if I remember right).
2910 kes  Apply Eric's scratch patch that moves a purged Volume to
2911      the RecyclePool.  Question: how is RecyclePool set? what
2912      happens to the ScratchPool?
2913 kes  Apply Eric's media patch that collects read/write media
2914      times as well as byte counts.  This patch requires a
2915      simultaneous upgrade of the DIR and SD.  Note, there
2916      should be some way to turn off timing. I'm not sure
2917      times are in Bacula units.
2918 kes  Apply Eric's batch-insert patch.
2919 09Feb07
2920 kes  Update projects list.
2921 08Feb07
2922 kes  Implement Include/Exclude file lists in FD as dlists using
2923      the new dlistString class. This permits efficiently having
2924      large include/exclude lists and completes project Item 25.
2925 kes  Fix dird/ua_cmds.c so that a cancel command checks if the
2926      console is authorized to cancel the job.  This fixes bug 
2927      #767.
2928 kes  Modify SD so that the VolCatJobs medium record is updated
2929      at the beginning of a Job rather than the end.  This
2930      fixes bug #775 where exceeding MaxVolJobs caused jobs
2931      to fail.
2932 kes  Added a mutex around getting and setting Volume information
2933      so that multiple simultaneous jobs will single thread.
2934 07Feb07
2935      Switch to using Subversion
2936 kes  Remove src/pygtk-console/ from configure
2937 06Feb07
2938 kes  Delete src/lib/btree.c from win32 build, then add rblist.c
2939      plus the entrypoints.
2940 kes  Apply patch supplied that corrects debug print
2941      in canceling jobs for max run time.  Supplied as
2942      part of bug #621, which was previously fixed.
2943 05Feb07
2944 kes  Test on job_canceled() and sd_msg_thread_done inside
2945      loop starting the message thread to avoid a race condition.
2946      Fixes bug #771.
2947 kes  Remove rl_catch_signal from console.c as it conflicted
2948      with the header definition. Fixes bug #765.
2949 ebl  Fixes bug #766 about RunsOnClient = Yes (case sensitive)
2950 04Feb07
2951 kes  Clarify some stored/acquire messages to indicate if the
2952      problem is with read or append.
2953 02Feb07
2954 kes  Fix memory leak with storage ids in cats/sql_get.c
2955 kes  Terminate watchdog earlier to avoid reference to released
2956      memory -- reported by Jason Austin.
2957 kes  Move closing the database from jobq.c to the director daemon
2958      termination routine. This fixes memory leaks for shadow jobs
2959      (i.e. migration jobs).
2960 kes  Free up the unique jobid chain items in migrate.c.  This fixes
2961      a memory leak problem.
2962 kes  Convert some ugly looking for statements to use foreach_alist
2963      in findlib/find.c.  This will facilitate converting the structures
2964      to use dlist (for large include/exclude lists).
2965 kes  Fix a bug in the btree.c and btree.h routines, then rename them
2966      rblist and add them to be built in src/lib.  Include some new
2967      methods written by Rudolf Cejka that make the code more readable
2968      (hides some of the ugly casting).
2969 kes  Add set_next() and set_prev() methods which make the code much more 
2970      readable. Also add a new dlistString class that facilitates storing
2971      strings in dlists.  To be used in the large include/exclude lists.
2972 kes  Make some trivial modifications to lib/tree.h that use rblist
2973      rather than dlist for storing the tree links. This was suggested
2974      by Rudolf Cejka.  The result of this is that the restore tree now
2975      uses red-black binary trees rather than simple linked lists. This
2976      should give rather dramatic speed improvements for directories
2977      contining large numbers of directories/files (more than 10000).
2978 28Jan07 
2979 kes  Fix maxruntime bug #621.
2980 26Jan07
2981 ebl  Implement the include JobID in spool file name project.
2982 kes  Reorder projects file in order determined by Jan 2007 vote.
2983 kes  Implement item #12 on project list -- quick release of FD by
2984      the SD.
2985 kes  Fix open of SQLite3 db where user does not have write permission
2986      so that DIR does not crash. Fixes bug #761.
2987 25Jan07
2988 kes  Add back missing @ in Win32 Makefile.
2989 kes  Change 'Device not configured to autolabel' from INFO
2990      to WARNING.
2991 kes  Fix jobq.c to restart failed jobs when Reschedule Times = 0 
2992      which should restart an indefinite # of times.
2993 kes  Fix configure --help to print --with-mysql[=DIR]. Same for
2994      other DIR specifications.
2995 23Jan07
2996 rn   Fix msvc build problems. Fix bacula.dll exports for msvc build.
2997      Fix path quoting in SQLite scripts.
2998      Fix problems with SHGetFolderPath.
2999 19Jan07
3000 kes  Create patches/2.0.1-restart.patch. Fixes bug #755.
3001 18Jan07
3002 kes  Fix Job restart on error bug that promotes an Inc to a Full
3003      backup.  This should fix bug #755.
3004 kes  Add qt-console and first cut of code.
3005
3006 Version 2.0.1
3007 12Jan07
3008 kes  Fix Bacula->Documentation link on Win32 to point to index.html
3009      instead of bacula.html. Fixed bug #750.
3010 kes  Return JobId in db_get_job_record() when JobId==0. This should
3011      fix bug #741.
3012 kes  Do not release source pointers when restarting a failed job.
3013 11Jan07
3014 kes  Add dynamic dll entry point for SHGetFolderPath to Win32 code.
3015      This *should* fix bug #747.
3016 kes  Modify winbacula.nsi to substitute with g bin_dir_cmd. Should fix
3017      bug #742.
3018 09Jan07
3019 kes  Modify USTORE constructor to set an empty store_source string, 
3020      and don't copy the store_source string in a cancel.  Hopefully
3021      this will fix Arno's seg fault, bug #744.
3022 kes  Add back code to disable conio in configure. Fixes bug #743.
3023 kes  Correct the Options scanner in the FD to correctly handle  
3024      SHA1 option, which was eating the next option.  Reported by    
3025      Sebastien Guilbaud.
3026 kes  Add code to indicate when the SD is spooling, spool wait, and 
3027      despooling as requested by Alan Brown.
3028
3029 Version 2.0.0 released: 4 January 2007