-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
461 lines (427 loc) · 23.3 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
* Added Patrick Koppen's burp_ca patches.
2012-12-18 Changes in burp-1.3.20:
* Bug fix for split/strip_vss = 1 on the client side always causing all files
to be backed up.
* Make configure report /usr as the default prefix.
2012-11-02 Changes in burp-1.3.18:
* Turn --enable-ipv6 configure option into --disable-ipv6.
* Print a carriage return when rewriting ssl_peer_cn on Windows.
* Make all places that log 'out of memory' also log the function name.
* Remove version_warn debug.
* Tweaks to the test script.
* Option to store Windows VSS headers separately to the actual file data.
* Option to strip Windows VSS headers from the actual file data.
* If no timebands are given to timer_script, default to not allowing a
backup.
* Add LC_TIME=C to LANG=C in the timer script.
* Add 'vss_strip' program, which is a tool for extracting the file data from
a file containing both VSS data and the file data.
* Add Patrick Koppen's patches:
- Add 'ssl_cipher' option.
- Add support for signal USR2 to Debian init script.
- Write pid first in pidfile.
2012-10-09 Changes in burp-1.3.16:
* Important bug fix for exclude_comp.
* Bug fix for read_blockdev.
* Add 'version_warn=[0|1]' option.
2012-09-28 Changes in burp-1.3.14:
* Remove '-l <logfile> / logfile=' options because they didn't work properly
and were adding too much complexity to the code.
* Add 'stdout=[0|1]' option, which defines whether to log messages to stdout.
* Add 'progress_counter=[0|1]' option for the client, which defines whether
to print counters to stdout.
* When syslogging, do not prepend a date to the log message.
* Don't count phase 2 counters twice when resuming.
* Ignore files in clientconfdir starting with '.' or ending with '~', as
these are hidden or temporary files.
* Fix bug where the client_can_* options were not being overridden in the
client specific conf files.
* Fix bug that stopped client_can_restore=0 working.
* Scan the manifest before restore/verify so that counters and status
monitor can show estimates.
* Add verify/restore notifications.
* Fix Windows batch file IF/ELSE syntax in Windows autoupgrade script.
* Have the server send the client the counters when resuming.
* Have the server send the client the counters when verifying/restoring, so
that it knows what to expect.
* Avi Rozen's bug fix for directory browsing on windows
* Do not skip restores of sockets.
* Add server_can_restore=[0|1] client side option, so that clients can refuse
server initiated restores.
* Allow server_can_restore and encryption_password to be set with the Windows
installer.
* Indicate to the server post script whether there was an error.
* Indicate to the server post script whether a timed backup was attempted.
* Add the ability to restore using a different client. See the
'restore_client' option in the man page.
* Add the ability to exclude compression on files by extension. See the
'exclude_comp' option in the man page.
* Make the functions that strcmp file extensions more efficient.
* Fixed bug introduced in 1.3.12 that made the client crash when scanning
files with very long names.
2012-08-28 Changes in burp-1.3.12:
* Remove 'forward' timestamp references in backup directories, to allow the
easier deletion of backup directories.
* Add missing_return_in_non_void_function.patch from Suse.
* Further break down find_files() into smaller functions.
* Make sure behaviour is sensible when a client runs out of storage
directories.
* On Windows, use PROGRAMFILES environment variable(s) instead of
C:/Program Files/Burp/.
* Stop the Windows installer writing/reading stuff to/from the registry and
the start menu.
* Allow the Windows installer options to be set on the Windows command line.
* Add password_check=[0|1] to options on the server. Defaults to on. Turning
it off disables client password checks (although SSL certificates are still
checked).
* Count deleted files.
* Remove unnecessary counter code.
2012-07-28 Changes in burp-1.3.10:
* Added Tony Cheneau's IPv6 fixes.
* Fixed bug to do with directory_tree=1 that would stop resume working.
* Stop status monitor exiting on terminal resize.
* Small man page corrections about overwriting existing files.
* Don't use mingw64's utime() to set Windows file times, because it doesn't
work on read-only files.
* Tweak to timer_script to let it run with slightly older versions of 'date',
plus the FreeBSD version of 'date'.
* "burp -a l" should say that a backup is finalising.
* Upgraded Windows to gcc-4.6.3.
* Upgraded Windows to zlib-1.2.7.
* Upgraded Windows to openssl-1.0.0j.
* Added pcre-8.31 to Windows.
* Added Gonéri Le Bouder's exclude_regex option.
* Add a gentle shutdown server option - send signal 12 to the main process.
* Make librsync errors in phase4 non-fatal.
* Check for errors on gzclose() and fclose().
2012-06-08 Changes in burp-1.3.8:
* Fix bug introduced in the new storage directory structure stuff that had
the potential to corrupt backups.
* Force directory_tree = 0 for clients on less than version 1.3.6.
* Escape '-' symbols in man pages.
* Save received certs as temporary files and then rename them, to avoid
accidently truncating the current ones.
* If Windows VSS snapshot fails, do not continue.
* 32bit mingw64 has difficulty printf-ing multiple %llu items and sometimes
even segfaults, so split the counters into individual printfs.
2012-05-28 Changes in burp-1.3.6:
* Store files in a directory structure like that of the original client.
* Fix 'ERROR: Please use absolute include/exclude paths' when setting paths
on the server side.
* Add configure test for uthash.h. If it doesn't exist, use the uthash.h
included with the burp source.
* Make top level excludes not be a fatal error.
* Make syslogging begin sooner.
* Unhide warning messages originally hidden by bacula when having errors
when setting things like file times.
* Fix bug where file times were not getting set on Windows directories.
* Remove openssl "can't open config file" warning when generating
certificates on Windows.
* Set IPTOS_THROUGHPUT bulk packet flag for linux backups. Windows/mingw64
appears not to be able to do this.
2012-04-27 Changes in burp-1.3.4:
* Bug fix for Windows backups where it had stopped using the Windows backup
API in 1.3.2.
* Automatically convert backslashes to forward slashes for includes/excludes
on Windows clients.
* Bug fix: pass the path to the CA conf file whenever running burp_ca (fixes
problems with the test scripts).
* Remove whitespace that was causing the burp_ca '--crl' option not to work.
* Have separate CA directories for the client and server. Make 'make install'
create the directory /etc/burp/CA-client.
* Make compile succeed when there is no libncurses library.
* Add 'client_can_force_backup' option, defaulted to on. Turning it off means
that only timed backups are allowed. Also add similar 'client_can_list',
'client_can_restore' and 'client_can_verify' options.
* Remove getopt from burp_ca, allowing it to work on Macs.
* Make an unknown exclude_fs a non-fatal error.
* Add ability to trigger a backup on the server side by placing a file called
'backup' in the client's storage directory.
* Fix bug where block device nodes were not backed up. Add 'read_blockdev'
and 'read_all_blockdevs' options that work the same as the equivalent
fifo options.
* Add 'notify_success_changes_only' option, which means that success
notifications only get sent if there were new or changed files.
* Added Ruben Kerkhof's fixes to make run_script() work on OSX.
* For each file, store the compression setting in the manifest.
* Stop clients connecting twice when a timed backup is rejected.
2012-03-31 Changes in burp-1.3.2:
* Add options for the client to automatically generate a certificate signing
request, have the server sign and return it, and have the client use the
new certificate. Remove old default SSL certificates because they should
no longer be needed.
See docs/burp_ca.txt for more information.
* Add ability for conf files to point to more conf files to read.
* Fix status server segfault when deleting files from clientconfdir.
* Allow directories in clientconfdir.
* Add the ability for the server to set the client include/excludes.
* Simulate browsing backups with the use of "-a l/L -d path".
* Add ability to set up a restore on the server side.
* Add ability to specify child processes separately to status child process
with new max_status_children option.
* Status monitor - make keypresses more responsive.
* Fix bug where old clients that didn't leave an incexc file on the server
meant that resume would not start.
* Add 'include_ext' option, which excludes all files unless their names end
in the given extension.
* Fall back to using the client or server name if ssl_peer_cn is unset on the
server or client.
* Don't try to chuser/chgrp in the child if the user/group settings are the
same as the parent (fixes bug where setting user/group in the server
wouldn't work, because it would try to chuser/chgrp twice).
* Windows installer: add comment about poll interval '0' means that the
scheduled job isn't installed.
* Windows installer: don't install the scheduled task when doing an upgrade.
* Unlock the client directory after server_script_post has run instead of
before.
* Fix bug where the wrong arg count was being given to the server post
script.
* Make sure status snapshot exits when there are no backup clients.
* Ability to dump logs and paths in backups using '-a S' (useful for making
a gui that browses backup contents).
* Bug fixes to ssl_extra_checks_script.
* Bug fix: initialise network_timeout properly.
* Fix typos in docs/burp_ca.txt.
* Add 'LANG=C' to the timer script, so that timer_arg days are always
expected in English.
* Add config file option to turn syslog logging on/off.
* Bug fix for 'compression = gzip[0-9]'.
* Pass the server version to the client.
2012-02-27 Changes in burp-1.3.1:
* EFS support on Windows.
* Move to using mingw-w64 for both 32bit and 64bit Windows builds.
* Add 'exclude_fs =' option for Linux so that you can skip partitions
types (for example, tmpfs) without generating warnings.
* If recovery method 'resume' is set, but the includes/excludes change,
switch to 'use', then start a new backup.
* In the tests, check to see whether it looks like the server has finished
the backup before moving on, rather than just waiting a set amount of time.
* Add man pages for bedup and burp_ca.
* Remove embedded uthash code. It will need to be installed as a dependency.
For example, in Debian, you might run 'apt-get install uthash-dev'.
* Add Bas van den Dikkenberg's tweaks for getting burp into official Debian
and Ubuntu repositories. Burp is now in debian sid and ubuntu precise.
* Make the server tell the client what extra_comms features it supports, so
that, in future, old servers are more likely to work with new clients.
* Improve 'make clean'.
* Add option to strip off leading path components on restore.
* Fix segfault that was happening on the server when SSL_accept() failed.
* Move burp and bedup to /usr/sbin (you need to check that any cron jobs
are pointing there too).
* Moved list of things to do to https://github.com/grke/burp/issues
2012-01-27 Changes in burp-1.3.0:
* Add a mechanism for automatically upgrading clients.
* Fix bug where attributes on Windows directories were not getting read
properly.
* Fix rounding problem in remaining time estimation in the status monitor.
* Don't backup the whole file if only ctime changed.
* Include the client name in arguments to server scripts.
* Do not log a message in the server SIGCHLD handler, as this appeared to
be causing an occasional lock up on a Ubuntu server.
* Upgrade Windows depkgs to latest versions of openssl.
* Make Windows uninstall work.
* Add 'allow autoupgrade' option to a second screen on the Windows installer.
* Add 'max_storage_subdirs' option, and default it to 30000.
2011-12-30 Changes in burp-1.2.7:
* Add an automated test script.
* Fix bugs with uncompressed encrypted backup/restore.
* Get verify all backups for a client (-a v -b a) to work.
* Return non-zero if there were warnings on verify or restore.
* Add 'min_file_size' option, fix 'max_file_size' option.
* Add generic server-side pre/post scripts that can run on every connection
after authentication and before disconnecting.
* Set environment variables from SSL cert details so that the server-side
scripts can see them.
* Add Jason Haar's server script for doing extra SSL certificate checks.
* Add 'max_hardlinks' option, which limits the number of times a single file
is hardlinked in storage. Default is 10000.
* Add '-i' option: print an index table of symbols that humans may see burp
produce, and exit.
* Let backups carry on when files cannot be opened.
* Spot Windows EFS directories and files and warn about them.
* Add an 'estimate' option (-a e), which does a scan of the file system to
be backed up, and prints counters, without contacting the server.
* Strip out 744 lines of unused Windows code.
* Fix possible segfault when backup directory forward paths don't match.
* Removed working_dir_recovery_method=merge. Use 'resume' instead.
* Add a flexible way of passing new fields from the client to the server so
that clients are less likely to have to upgrade.
2011-11-26 Changes in burp-1.2.5:
* IMPORTANT: Fixed critical path comparison typo bug. If you have been using
1.2.4 either as a server or as a client, you need to upgrade
immediately! Backups made with 1.2.4 should be treated as suspicious.
* Add a 'max_file_size' option.
* Store windows file attributes in a separate field to the standard unix ones.
2011-11-22 Changes in burp-1.2.4:
* Add a file deduplication program, "bedup".
* Add a network_timeout parameter. Default is 7200 seconds (2 hours).
* Add option to send success notifications only if there were warnings.
* Try to create the pidfile directory if it doesn't exist.
* Restore times on Windows files.
* Restore readonly/hidden attributes on Windows.
* Fix bug in 'keep' mechanism where setting 'keep=2' would delete both
backups.
* Only install clientconfdir/testclient with 'make install' if clientconfdir
didn't previously exist.
* Fix possible segfault when resume mode triggers with nothing to resume.
2011-09-29 Changes in burp-1.2.2:
* Multiple retention periods (e.g, keep 1 backup per day for 7 days, 1
backup per week for 4 weeks, 1 backup per 4 weeks for a year). See the
'keep' option in the man page.
* Make sure the client version warning message appears in the backup log.
* Network send rate-limiting feature (both client and server).
* Change pidfile paths to /var/run/burp instead of /var/lock/burp.
* Get pre backup scripts running reliably again. Also, send script messages
on stderr to the server backup log.
* Fix 'Warnings' line on the status monitor.
* Fix resume mode bug to do with potentially partially written entries at
the end of the phase2 file.
2011-09-09 Changes in burp-1.2.0:
* Improvements to the counters and status monitor - remember the phase1
scan counters for later phases to use for things like estimated times.
* Add 'working_dir_recovery_method = resume' option, which continues a
backup from the point it was interrupted.
* Add a useful message about options when run with '-h' or '-?'.
* Get the client to pass its version to the server. The minimum version the
client needs to be is now this release.
* Get the server to warn when the client is on a different version.
* Put the number of warnings in the subject of the notification emails.
* Allow config file location to be changed via configure (Michael Roland's
suggestions).
* Implement main server process config reload functionality on SIGHUP.
* Uncomment the reload lines in the Debian init script.
* Add logrotate file for Debian.
* Add ability to send a regular snapshot of the status summary screen in an
email ("daily backup summary" feature).
* Add simple 'exclude_ext =' feature.
* Add Windows 7 bare metal restore instructions.
2011-07-26 Changes in burp-1.1.70:
* FreeBSD ACL support.
* FreeBSD xattr support.
* Handle Windows junction points.
* Add 'nobackup = [file name]' option. If this file system entry exists, the
directory containing it will not be backed up.
* Set librsync signature block size based on the old file size.
* Small bug fixes to the status monitor.
* Fixed working directory recovery bug where it couldn't find the manifest.gz
file due to it being called manifest.gz.tmp.
* Get rid of the stupidly complicated 'find_files' callback mechanism
inherited from bacula. Just call all the functions directly.
* Fix compiler warnings and '-ldl' linker error on FreeBSD 8.2.
* When down to 'C:' in mkpath() on Windows restore, strip the ':'.
* Run ERR_clear_error() before SSL_read/write.
2011-06-27 Changes in burp-1.1.65:
* Add mechanism for backing up and restoring extra meta data.
* Linux acl support.
* Linux xattr support.
* Add option to set the umask on the server.
* Added option to specify the clientconfdir password in passwd format.
* Allow user and group options to be placed in the server clientconfdir files,
so that different client backups can be owned by different users.
* Add Patrick's burp_ca patches and README.CA.
* Sanitised magic characters by defining them in a new cmd.h file.
* Fixed 'ret OK, but zstream not finished: 0' when refusing to restore over
existing files.
* Fixed bug that made clients disappear from the status monitor.
* Bug fix the client_lockdir option.
* On the server, be more cautious about creating directories that don't exist.
* Remove link kludge in async_read_stat().
2011-06-14 Changes in burp-1.1.57:
* Add options to run as a different user and group.
* Add Patrick Koppen's burp_ca script.
* Get the client restore to use the sbuf functions, remove related kludges.
* Fix possible client segfault when refusing to restore over existing files.
* Make a failure to restore over a busy file not cause the whole restore to
fail.
* Print byte count as well as human readable byte count in the status summary
screen.
* Include backup numbers with the backup list in the status summary.
* Don't close the server read fd when running in non-forking mode.
* Add ssl_key options so that the cert and key can be in separate files.
* Add ssl_key_password, a synonym for ssl_cert_password.
2011-05-13 Changes in burp-1.1.55:
* Make the status monitor use ncurses.
* Fixed two bugs that could drastically slow down the server if a file
disappeared on a client after the initial scan (to get these two bug fixes,
you need to upgrade your clients).
* IPv6 patches.
* Ability to specify the location of the client lockfiles on the server.
* Make the server fork into the background by default. Use '-F' to stay in
the foreground.
* Add option to specify a log file.
2011-04-14 Changes in burp-1.1.51:
* Added a script for backing up zfs snapshots with 'zfs send'.
* Added the ability to set the level of compression.
* Added the ability to turn off compression.
* Added an option to define the poll interval in the Windows installer.
* Added the ability to turn off librsync delta differencing.
* Added the ability to give arguments to backup/restore/pre/post scripts.
* Make configure/make work better on Solaris.
2011-04-02 Changes in burp-1.1.40:
* Added the ability to run client pre/post backup/restore scripts.
* Added the ability to read data from fifos (and restore to them).
* Fixed a bug when restoring the first link in a directory.
* Fixed a bug that prevented giving a backup number when using the verify option.
2011-03-27 Changes in burp-1.1.30:
* First pass at having a live status monitor.
* Fixed a bug that meant you couldn't restore links.
* Fixed a bug when freeing structs at the end of a restore.
2011-03-18 Changes in burp-1.1.22:
* Added scheduling.
* Added email notifications.
* Fixed autoconf. Programs like ccache should now work.
* Strip whitespace from end of conf lines, ignore quotes around conf lines.
* Updated the Windows build tools.
2011-03-10 Changes in burp-1.1.14:
* Added client-side blowfish file encryption. See the man page for details.
* Byte counters also give counts in KB/MB/GB/etc as appropriate.
* Restore directories after their contents so that the access times are
correct.
* Updated the win32 build tools.
2011-03-02 Changes in burp-1.1.5:
* Added a 'verify' command. See the man page for details.
* Improved the include/exclude path functionality.
* Added the ability to define mount points to cross.
* Fixed a crash on 64bit Windows when exiting.
Changes in burp-1.1.0:
* Added openssl.
* Added byte counters and checksums to the backup manifest files, in
anticipation of a 'verify' command.
IMPORTANT IF YOU ARE UPGRADING FROM AN OLDER VERSION OF BURP:
a) Your previous backups will no longer work, due to changes in the
manifest files. You will also need to move old backups aside in order to
continue to make new backups.
b) Your old config files will need some fields to do with SSL added to them.
See the man page and the examples in the 'configs' directory for help.
IMPORTANT FOR MY ENCOURAGEMENT AND THE FUTURE OF BURP:
If you have tried burp, I really want to hear from you to find out what
you like about it, what you don't like, what new features you would like,
how you have been using it, whether it has helped you, or anything that
you would like to tell me. I am currently working in the dark!
Changes in burp-1.0.31:
* Large scale rewrites to the main backup process to make it more efficient
and easier to understand.
* Much tidying up of code and splitting into smaller files.
* Removed complicated/flaky compression code from the network stuff. Network
compression will come free with SSL anyway (when it is implemented).
Currently, whole new files are transmitted compressed, file information
and deltas are not.
Changes in burp-1.0.11:
* Fixed Windows restore crash. Windows restores should now work better.
Changes in burp-1.0.10:
* Fixed three major bugs introduced in burp-1.0.9 to do with client/server
communication when doing deltas.
* Make "make install" and the Windows installers not overwrite an existing
config file.
* Support for backup and restore of fifos and nodes.
* KNOWN ISSUE: There seems to be a problem with restoring multiple files
at once to Windows. I am working on this.
Changes in burp-1.0.9:
* Added counters to summarise the files that were backed up or restored.
* Added the ability to have warnings instead of errors always being fatal.
* Prevent restores overwriting existing files, unless the new '-f' option is
given.
* Notice invalid characters in paths on Windows and replace them with
'_'. This also means that you can now restore to alternative directories
(the colon in the drive name no longer gets in the way).
* Added instructions for building the Windows installer.