-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
1377 lines (1271 loc) · 64.9 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
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2017-12-01 Changes in burp-2.1.24:
* Internalise the timer script.
* Protocol2: Log a warning when a block cannot be retrieved during
restore, and attempt to continue.
* Fix for protocol 2 warnings not appearing on server side.
* Fix encryption_password key length issue reintroduced in 2.1.18.
Backups made by 2.1.18 to 2.1.22 using encryption_password should be
considered broken.
* Don't log version warning twice.
* From Sergey Moskovkin:
- Bug fix for rewriting the pidfile after forking - truncate first.
* From Josef:
- Include btrfs in fstype list.
* From josvo:
- Allow 'always' as an option to the timer script.
* From DerGatt:
- Small man page correction.
2017-11-01 Changes in burp-2.1.22:
* On certificate exchange, do not rewrite the client config file if there
are no changes.
* Limit 'set file owner' warnings on restore when not root
* On restore, don't send Windows VSS directory data to non-Windows clients.
* On restore, don't send to split VSS data to non-Windows.
* Fix travis for osx, where brew is now installing librsync 2.0.1.
* Add 'monitor_exe' client option, in order to set where to look for the
burp executable when forking a monitor client. This might be needed on
systems that don't have any sensible way to self-determine a process' own
path, such as openbsd.
* From josvo:
- Use ComputerName from Windows registry as suggested cname.
* From deajan:
- Added /nopowermode option to the Windows installer, with checkbox.
This allows you to run timed backups when the laptop is not plugged in.
- Update README and src/win32/README files.
- Update Windows cross-tools and depkgs README file.
* From trustchk:
- Update README for AIX.
* Upgrade Windows depkgs to librsync-1.0.1.
* Upgrade Windows depkgs to pcre-8.41.
* Upgrade Windows depkgs to zlib-1.2.11.
2017-10-01 Changes in burp-2.1.20:
* On server daemonise(), rewrite the pid/prog to the lockfile
without trying to open it a second time. This should avoid permission
problems after chuser/chgrp.
* Fix for 'success notification on failed backup'.
* Check fileno() for errors in asfd.c.
* List the mtime instead of the more recent of mtime/ctime.
* Fix client_lockdir option.
2017-09-01 Changes in burp-2.1.18:
* From qm2k:
- Fix buffer overrun and slightly refactor xstrsplit in glob_windows.c
- Add Content-Type to notification emails.
- Windows exclude_fs functionality.
* Add Content-Type to summary emails.
* Fix missing newlines on WARNING/MESSAGEs logged by the server.
* Make 'orig_client=<the same client>' work OK.
* Drop privileges after main pidfile creation (instead of before).
* Be slightly more helpful with SSL error messages.
2017-08-10 Changes in burp-2.1.16:
* Fix encryption_password key length issue introduced in 2.1.14.
Backups made by 2.1.14 using encryption_password should be considered
broken.
* Follow AC_INIT defines throughout the codebase, including the Windows
installer.
* Log strerror(errno) when failing to write a lock.
* From deajan:
- Add systemd file for running Burp without root privileges.
2017-08-01 Changes in burp-2.1.14:
* From Marek Szuba:
- Use pkg-config to detect ncurses.
* From deajan:
- Fix burp service file for RHEL / CentOS 7 - should be 'forking'.
* From Xaltonon:
- Add proper key-derivation (and IV) for client encryption.
* Make key derived encryption transparent, and add salt.
* Upgrade Windows depkgs to openssl-1.1.0f.
2017-07-01 Changes in burp-2.1.12:
* From moenoel:
- Fix segfault when sb->link.buf is NULL.
* Respond correctly to bfd->read returning an error - fixes client side
segfault.
* Fix for server side autoupgrade path corruption.
* Add README link to the ansible wiki.
* From ziirish:
- Add the ability to reset strlists through the special ':=' syntax.
- Fix missing globfree.
* Fix a possible segfault in server protocol2 backup phase2.
* Fix missing Windows log timestamps. Fix 'resumed' timestamps.
* Minor typo in man page, for include_fs.
* Make sure iobuf buffer is printable before trying to log it.
Also, print the length.
2017-06-01 Changes in burp-2.1.10:
* Features sponsored by VSHN (https://vshn.ch/):
+ Ability to listen on multiple port/status_port numbers, individually
configurable with additional max_children/max_status_children.
+ Add the ability for the client to connect to different server ports
according to whether it is doing backup/restore/verify/list/delete.
+ Allow restore during a backup.
+ JSON output/input supports multiple actions on the same client.
* Fix for restore interrupt on transfer_gzfile_inl() failing.
* More UTF-8 in paths, from Alexey Kovalenko.
* Add offsets to timestamps.
* Take note of warnings from the status server.
* Log timestamps of resumes in a file called 'resumed' inside the
backup directory that was resumed.
* Write '.created' when client directory is initially created.
* qm2k's patch to limit notify_script to 1000 lines of log.
* Fix two more bugs in relinking deleted hardlink master records.
* Add Dave Ludlow's comments to the Windows2008 bare metal file.
2017-05-01 Changes in burp-2.1.8:
* Fix two bugs in relinking deleted hardlink master records.
* Fix status monitor failing if client password is not set.
* trustchk's AIX: Complete initial support.
* Increase size of d_name on windows.
* chrisv5179's fixes for error handling in burp_ca.
* moenoel's include_fs option.
* moenoel's partial fixes for strip_from_path().
* Fix for problems with truncating incexc file.
2017-04-01 Changes in burp-2.1.6:
* Fix for bug treating too many files as new (a problem since 2.1.2).
* Fix for changed/same counters being reversed in the monitor.
* Set times on symlinks instead of dereferencing them.
* Fix bug with backup_script_reserved_args = 0.
* moenoel's burp_ca fix for SunOS.
* trustchk's addition of ZFS to fstypes so that it can be excluded using
exclude_fs.
2017-03-01 Changes in burp-2.1.4:
* Protocol 1: When a file that is deleted on the client side was one that
others hardlink to, do not treat the new first entry as a new file - link
it in from the previous backup.
* Protocol 2: It is OK if the cfiles directory already exists when trying to
mkdir it.
* Set windows d_name buffer to MAX_PATH.
* Tests for run_action.
2017-02-01 Changes in burp-2.1.2:
* Protocol 2 fixes:
- Client side empty block memory leak
- server side empty blocks lock up
- server side limit number of paths loaded into memory
- metadata protocol2 restore removing security capabilities
* Don't try to set file times on Windows junction points.
* Create 'bsparse' for recreating the sparse index.
* Cleanup code in protocol1/backup_phase2.c.
* Reinhard Biegel's fixes:
- bad open call when ca_conf is not set
- config check logic for ca_burp_ca
2017-01-01 Changes in burp-2.1.0:
* Fix certificate and csr permissions on receive_a_file().
* Fix for metadata restore removing security capabilities.
* Fix for 'burp -a S' not outputting all clients.
* Compile and run utests on Windows.
* Delete unused Windows build code and icons.
* Update manpage for server_script_pre/server_script_post.
* Upgrade Windows dpkgs to openssl-1.1.0c and pcre-8.39.
2017-01-01 Changes in burp-2.0.54:
* Fix certificate and csr permissions on receive_a_file().
* Fix for metadata restore removing security capabilities.
* Fix for 'burp -a S' not outputting all clients.
2016-11-07 Changes in burp-2.0.52:
* Make compilation with openssl-1.1.0 work.
* Fix for client side autoupgrade.
* Rename 'enum page' so that compilation on Solaris 10 works.
2016-11-02 Changes in burp-2.0.50:
* Bug fix for excluding directories directly inside /.
* Fix for dindex regeneration concurrency accidently resulting in
protocol2 data files getting deleted prematurely.
2016-10-01 Changes in burp-2.0.48:
* Fix server-side segfault on re-encoding Windows attributes.
* Stop server child hanging on verify/restore when gzipped file is corrupt.
* If a file is missing on verify/restore, continue to verify/restore more
files.
* Make server initiated restores work in protocol 2.
* Benjamin Sans' fixes for cname_ options:
+ manpage misses some returns
+ use globalcs while authenticating client
+ fix unit test
+ allow to change cname_fqdn and cname_lowercase on already setup servers
* Add better docs for the cname_ options.
* On the client side, make OPT_CNAME_FQDN and OPT_CNAME_LOWERCASE
affect the cname retrieved from the ssl cert, as well as the
cname when the certificate is generated in the first place.
* Fix chuser/chgrp when switching with orig_client.
* Fix server-initiated restores with orig_client.
* Add end-to-end test for a server-initiated restore.
* Avi Rozen's fixes:
+ for possible hardlink truncation on restore.
+ for burpfs support:
- monitor/browse: link field added to file entries
- monitor/browse: use "*" as browse directory in order to dump all files
- fixed handling of NULL browse directory
2016-09-04 Changes in burp-2.0.46:
* Fix server segfault in no-fork mode.
* Counter fixes for protocol1.
* Server to client counters via JSON.
* Replace deprecated readdir_r() with readdir().
* Make asfds count received and sent bytes instead of trying to do
it inside the backup/restore/verify code.
* Don't count metadata in the phase1 estimate counts.
* Add cname_lowercase to force lowercase cname on server-side (from
Benjamin Sans).
* Add cname_fqdn option to allow stripping FQDN (from Benjamin Sans).
* Switch to pure C for non-Windows (from Ruben Kerkhof).
* Make 'burp -a e' work again.
* Remove restore_spool.
* Make 'burp -a s/S' output the 'burp -a m' log lines on error.
* Re-enable chuser_and_or_chgrp code, which got broken during the
automake/autoconf refactoring a few versions ago.
* Remove unused configs/install script.
* Use /proc/%d/exec to figure out the path to run when forking a
monitor 'burp -a m' process.
* Fix for the debian init script so that it understands $BURP_USER
(from Peter Maloney).
2016-07-30 Changes in burp-2.0.44:
* Default to protocol 1.
* Another attempt to remove network timeout from champ chooser main socket.
* Fix building with explicitly added --enable-xattr.
* Enable SE_SECURITY_NAME privilege on Windows. Should fix permission
problems on attempting to back up:
C:\Program Files\WindowsApps
C:\Windows\InfusedApps
2016-06-30 Changes in burp-2.0.42:
* Remove network timeout from champ chooser main socket.
* Tests for monitor cache.
* Deduplicate the current manifest locally in backup_phase2.
* Some protocol 2 counter improvements.
* More coverage for cmd.c.
* Tests for src/server/extra_comms.c
* Tests for src/client/extra_comms.c
* Local time in the top corner of the monitor.
* Fix C++11 -Wliteral-suffix warnings.
* Make sure that places that are checking RS_DEFAULT_STRONG_LEN have
included librsync.h.
* Bug fix for restore_script_pre running instead of restore_script_post.
* Correct mistakes in the manpage about the status monitor.
* Bug fix for status client ncurses with -C showing last backup only.
* Fallback to /usr/sbin/burp for the forked 'burp -a m' process.
* A small tidy up in protocol1 phase4.
* Fix pathcmp on raspberry pis.
* Fix bug in rabin fingerprinting due to signedness on the window.
* Make the server verify checksums during a protocol2 backup.
* Fix bug that let clients overwrite existing protocol2 data files.
* Correct rabin.h include in src/server/restore.c.
* Rabin fingerprinting should be using unsigned char.
* Rabin fingerprinting should reset window after every block.
2016-05-30 Changes in burp-2.0.40:
* Tidy symlink/readlink functions.
* Yopito's patches to help RHEL5 builds.
* Fix 'burp -a S', which has been broken up to this point in burp-2.0.x.
* Add more unit tests.
* Fix for writing statuses down multiple server status child pipes.
* Fix for loading initial running client status server data.
* Fix bugs in sorting paths with characters with ASCII values higher
than 127. Make my_alphasort() use pathcmp(), like burp-1 did.
* Clean up network_timeout, ratelimit, streamtype and fdtype.
* Tidy up setup_signals().
* Make path to CRL configurable.
* Stéphane Berthelot's fix for too many lines for each client in the
status monitor summary.
* Fix segfault when using '-C <client> -a s'.
* Fix compilation without ncurses.
* Upgrade Windows depkgs to openssl-1.0.2h.
* Upgrade Windows depkgs to pcre-8.38.
2016-04-30 Changes in burp-2.0.38:
* Add 'enabled' option (from Benjamin Sans).
* Fix bugs in protocol2 delete_unused_data_files().
* Remove some hardcoded paths in scripts.
* Add ecryptfs to the list of file types that can be excluded (from
scosu).
* Added ubuntu baremetal restore instructions (from Wybren Buijs).
* Use an asfd for stdout in status_client_ncurses.
* Make rubble cleanup with working_dir_recovery_method=delete delete
unused data files.
* Fix bno printf 32bit compile warnings.
* Fix bug in server side restore regex parsing introduced in 2.0.36.
* Don't try to set IPTOS_THROUGHPUT if it is not defined.
* Fix and tidy up include_glob test.
* Fix champ_chooser to try until max_tries instead of 10 seconds (from
Stéphane Berthelot)
* Add glob_after_script_pre option to evaaluate glob after script pre
execution (from Benjamin Sans).
* Adapt rpm spec file for 2.0.36, test on CentOS7 (from Marco Fretz).
* Fix protocol2 backup deletion not obeying multiple 'keep' values.
2016-03-31 Changes in burp-2.0.36:
* Support xattrs and acls in protocol2.
* Fix acl+xattr bug introduced in 2.0.28.
* Fix default acl bug that has existed forever.
* Fix acl memory leak.
* Some tests for status_client_ncurses.c.
* Add server_can_override_includes option.
* Fix Travis Darwin builds.
* More test coverage for champ_chooser.
2016-02-29 Changes in burp-2.0.34:
* Add support for glibc's additional algorithms in crypt(3)-style passwords
("passwd" configuration option).
* Unit tests for check_passwd.
* Bug fix for acls - use acl_free() instead of free_w().
* Make server accept 'restoreend_ok' and 'restoreend ok'.
* Make client send 'restoreend ok', the same as burp 1.4.40.
* Some work on protocol2 xattr support.
* Implement labels being passed via status monitor.
* Use localtime() instead of gmtime() in cntr_print().
* Better locking for burp_ca.
* Make close_zp() not crash on OpenBSD on Z_RET_ERROR.
* Add Travis file.
* Turn on all tests for NetBSD.
* Fix dindex filename in protocol 2 phase 4 regenerate client index.
2016-01-31 Changes in burp-2.0.32:
* Tweak README install instructions.
* Fix ncurses output option.
* Fixes for ncurses support on OpenIndiana.
* Header inclusion order fixes.
* NetBSD be64toh and le64toh cleanup.
* Make xattr code compile on NetBSD.
* Attempt SSL_accept again on SSL_ERROR_WANT_READ.
* Fix 'make distcheck'.
* Add 'make install-config' and 'make install-all' commands.
* Use AC_CHECK_TYPES to check for struct utimbuf.
* Replace flock locking with bash file creation locking.
* Portability fixes in test_main.
* Make xattr.c depend more on detected functionality, less on OS.
* Compiler warning fixes on various platforms.
* Fixes so that burp runs on DragonFlyBSD.
* Fix a protocol2 champsock problem for FreeBSD.
* Use the BSD-style xattr functions on NetBSD.
* FreeBSD now fully added to automatic test system.
* Simplify checks for endian conversion functions.
* Install bedup, bsigs, and vss_strip.
* Don't try to create sockets with mknod.
* Fix xattr test so that ordering doesn't matter.
* Add keepalive flag to sockets.
* Remove child status pipe from the connections that timeout.
* Mark log functions as printf-like, clean up format warnings.
* Allow for setting test verbosity from environment.
* NetBSD fix - getaddrinfo: don't lookup http service.
* Set timezone to UTC before calling mktime, otherwise Solaris uses the
system timezone.
* Use gmtime instead of localtime, to fix test failures on OpenIndiana and
OmniOS.
* Fix AM_PROC_CC_C_O warning with older automake versions.
* Fix base64 decoding test on NetBSD.
* Fix test_fzp for older zlib versions.
* Updated yajl in burp-depgs in order to fix a Windows XP linking bug.
2016-01-03 Changes in burp-2.0.30:
* Ruben Kerkhof has rewritten the automake/configure system.
* Make CMD_INTERRUPT work in protocol 2.
* Tests for restore.
* Tests for backup phase2.
* Tests for champ_server.
* Tests for slist.
* Fix minor memory leaks.
* Bug fix for deleting the current backup.
* Correct documentation about ca_crl_check.
* Fix listing all backups and using '-d'.
* Fix status monitor segfault on exit.
2015-11-30 Changes in burp-2.0.28:
* Use the same maximum blocksize as rsync ((int32_t)1<<17).
* Clean up client side librsync load_signature code.
* Add freebsd to AWS automatic build (actual tests not working yet).
* Parallel test runs.
* Update Debian autoupgrade script.
* A lot more unit test coverage.
* Always flush asfd at the end of tasks.
* Make bad regexes produce error messages.
* Make bad restore regexes produce a message on the client side.
* Bug fix to make bad strlist regexes not match everything.
* Fix memory leaks in xattr.c.
* Fix memory leaks in cntr.c and cstat.c.
* Fix segfaults in cstat.c.
* Get basic diff to work.
* On restore, always open deltas via zlib, so it doesn't matter whether
they have been compressed or not.
* Make it possible to use '-b all' on restore/verify. Use '-b all' in
tests.
* Don't quit the restore if inflating or patching failed - move on to
the next file.
* Fix listing all backups.
* Remove json list option.
* Don't build separate .a files. Just use .o files.
* Fix protocol 1 EFS restore breakage.
* Add some EFS files to the Windows tests.
* Fix winattr values not being preserved on changed files.
* Fix for yajl sprintf_s.
2015-10-31 Changes in burp-2.0.26:
* Paid for by an anonymous user: add a new screen to the Windows installer
for choosing 'include' directories.
* Upgrade Windows depkgs to openssl-1.0.2d.
* Upgrade Windows depkgs to librsync-1.0.0.
* Add internal CRL revocation feature based on a patch from Sebastien
Couppey (as opposed to using the old ssl_extra_checks_script server pre
script).
* Fix protocol2 bug where rblk wasn't initialised.
* Add linux i386 machine to automatic tests.
* Use -Werror when build utests.
* Delete unused protocol2 data files.
* Eliminate compile warnings from the Windows build and add -Werror
to the Windows CFLAGS.
* Change dhfile.pem generation command to use -dsaparam and 2048 bits.
* Fix memory leak in protocol2 restore.
* Fix protocol2 problem where new candidates wouldn't be loaded during
backups.
* Make sure split/strip_vss don't break protocol 2.
* Unit test client/auth.c by overriding asfd function pointers.
* Fix iobuf_free() bug.
* Code coverage report for all files.
* Start unit testing client restore.
* Preparation for fixing restore interrupt for protocol 2
2015-09-30 Changes in burp-2.0.24:
* Another fix for sigchld handling.
* Tests for delete algorithm.
* Tests for bu_get.
* Fix a bug where deleting with multiple keep settings and no hardlinked
archives would result in too many backups getting removed in the oldest
keep range.
* During backup, read compression settings from the attribs buffer sent from
the client rather than relying on the server config being correct.
* Fix a bug where interrupting the server whilst it was deleting old
backups would result in the next backup erroneously being given a backup
number incremented from the timestamp in the 'deleteme' directory.
* Fix the 'manual_delete' option so that it works on backups instead of
just the rubble left behind by a librsync=1 backup. Add the option to the
man page as it was missing.
* Add acl=[0|1] and xattr=[0|1] options so that acls and xattrs can be
turned on and off at runtime.
* Ensure all logw() messages end with a newline.
2015-09-04 Changes in burp-2.0.22:
* Make protocol2 resume work. Add unit tests for resume components.
* Store manifest fingerprints and md5sums in binary instead of strings,
plus related endian fixes.
* Fix '-a l' regex so that it isn't split in two at the right-most
colon.
* Fix possible buffer overrun when encoding attribs.
* Fix protocol 1 phase 2 resume bug introduced in 2.0.20.
* Fix protocol 1 phase 2 bug where librsync was never used.
* Fix possible protocol 2 phase 2 segfaults.
* Make protocol 1 and 2 share the same code for phase 3.
* Set default_md=sha256 in CA.cnf.
* Use 'stat' for checking ssl files instead of 'lstat', and log if
the ssl file was not found.
* Fix path for server initiated backup via timer_script.
* Use getpid() for random delay seed so that I can get rid of OS specific
clock code and '-lrt' link flag.
* Get xattr working on Mac OSX. This should mean that resource forks and
finder info backup/restore is working.
* Fix Windows protocol1 restore segfault when using split_vss.
* Fix directories in Windows protocol1 strip_vss mode.
* Fix from Patrick Van der Veken to correct typo in timer_script that
meant month settings were broken.
* Make listing a non-existent backup give an error.
* Stop using scandir with a comparison function, in order to avoid
problems with compilation on Macs.
* Fix bug where Windows backups with split_vss was saving CMD_METADATA
instead of CMD_VSS.
* Prevent warnings when listing backups that contain metadata.
* Fix for SIGHUP causing server to stop listening.
* Use flock to stop simultaneous runs of burp_ca, hopefully preventing CA
corruption.
* Unit tests for src/client/find.c, enabling the removal of some of the
time consuming end-to-end tests.
* Fix 'nobackup' conf item.
* Don't use absolute path to 'sort' in 'make test'.
* Fix bug where fs_name_max could get set to an incorrect value on the
server side, causing scandir to fail at the end of a backup.
* Fix for a growing list of defunct child processes on busy servers, where
overlapping sigchlds would get conflated into one, and waitpid would only
get run once.
* Set the server address in linux client burp.conf to "::1" if IPv6 is
supported, and "127.0.0.1" otherwise.
* Substitute 127.0.0.1 for the default burp.conf server address if the OS
doesn't have IPv6.
* Fix for server side restore file causing '-a m' to exit.
* Fix large file support for 32 bit machines.
* Let the champ chooser continue if candidate_add_fresh could not read a
new candidate file.
* On the server, log the client address and port for every connection.
* Upgrade Windows depkgs to openssl-1.0.1p.
2015-07-01 Changes in burp-1.4.40:
* Fix '-a l' regex so that it isn't split in two at the right-most colon.
* Set default_md=sha256 in CA.cnf.
* Correct logp format strings in quota.c.
* Upgrade Windows depkgs to openssl-1.0.1o.
2015-05-30 Changes in burp-2.0.20:
* Fix conf bug that was causing the server to segfault when the client
used the -C option. Also add unit test for it.
* Add documentation about retention and keep values.
* Make status monitor print a warning in the JSON response if there was a
problem with the request.
* Add status monitor commands to turn pretty printing on and off.
* Add documentation about adding and removing clients.
* Use librsync hash blake2, if available on both server and client.
* Remove 'working_dir_recovery_method = use'.
* Stop bedup from trying to process protocol 1 directories.
* Fix bedup segfaults.
* Fix bug where setting the same include in both client burp.conf and
server clientconfdir file could result in the item being used twice as
a starting point and causing chaos.
* Add 'include' directories that are not starting points to the
'cross_filesystem' list.
* Add more protocol 1 phase 2 interrupt tests.
* Fix some protocol 1 phase 2 resume bugs.
2015-05-30 Changes in burp-1.4.38:
* Turn SO_REUSEADDR on instead of turning it off.
2015-05-03 Changes in burp-2.0.18
* Fix bug where an error generated by link() was obeyed, but not logged.
* Allow compilation when openssl has no SSL_OP_NO_COMPRESSION option
Log a message if an attempt to use the feature was made.
* Fix problem where a client connecting while a backup was finalising
would cause 'backup failed' emails to be sent.
* Fix two possible segfaults discovered with efence.
* Fix status monitor segfault due to recent conf system changes.
* Use setlinebuf(stdout) with '-a m' so that reading processes get the
output of the logp printfs straight away.
* Add out-of-date report script from Pablo Daniel Estigarribia Davyt.
* 'backup_script_reserved_args=0|1' and 'restore_script_reserved_args='0|1'
client side options.
* Fix protocol2 dpth incrementing bugs.
* Fix Windows VSS output so that it prints the writer names at the start of
backups.
* More unit tests.
* Add some documentation about working_dir_recovery_method.
* Don't open the log when about to delete the working directory.
* Stop server side 'auth ok' message logging a freed string.
* Updates to out_of_date_report_script from Pablo Estigarribia.
2015-05-03 Changes in burp-1.4.36:
* Fix bug where an error generated by link() was obeyed, but not logged.
* Fix possible segfaults in asyncio.c.
* Don't open a log file in a directory that we are about to delete. Fixes
'error in get_lock_and_clean()' that was happening with some network
attached storages.
2015-02-28 Changes in burp-2.0.16:
* Add ability to do 'burp -a l -b c' and list the files in the current
backup.
* Rewrite the conf system. Gives the ability to use 'burp -t' to show the
current conf settings. Add '-c <conf file>' and '-C <client>' to get
client/server conf settings, and clientconfdir settings.
* More unit tests.
* Add 'scan_problem_raises_error' option, which lets you treat phase1 scan
warnings as hard errors.
* Fix bug where 'burp -a S' was limited to 24 lines.
* Make 'burp -a S' not truncate client names.
* Implement glob '. /some/dir/*' conf syntax on non-Windows machines.
* Changes to support librsync-1.0.0.
* When listing a directory, include a '.' entry to indicate the directory
itself.
* When listing a directory, send an error if the directory was not found.
* Fix for client getaddrinfo error message.
* Fix resume bug when a backup is interrupted before phase1 has got under
way.
* Fix resume bug where an interruption in phase3 causes problems.
* Fix compile when there is no ncurses.
2015-02-28 Changes in burp-1.4.34:
* Fix bug where permissions would not be backed up correctly when only
permissions have changed.
* Support librsync-1.0.0.
* Bug fix for client getaddrinfo error message.
* Upgrade Windows depkgs to openssl-1.0.1m.
2015-03-02: Changes in burp-2.0.14:
* Improve utest/Makefile.
* Add unit test for base64.c.
* Make from_base64() ignore invalid characters.
* Make the path to pidfiles in the config files substitutable.
* Fix some phase1 bugs related to min/max_file_size and hard links.
* BSD compilation fixes from Stefan Paletta.
* Make restoring a hard link without restoring the original file work.
* Fix for a protocol 1 bug to do with the first hardlinked entry being
deleted on the client.
* Make verify work for protocol 2.
2015-02-06: Changes in burp-2.0.12:
* Move /etc/burp scripts to /usr/share/burp/scripts.
* Do some sed replacement when installing config files.
* Start to add unit tests with 'check'.
* Don't return code for restore warnings if there was an error.
* RHEL updates from Andrew Niemantsverdriet: Added support for systemd and
cleaned up the spec file according to rpmlint.
* Allow syslog and stdout logging at the same time (was broken in 2.0.10).
* Fix some file descriptors timing out due to the network timeout code, when
they shouldn't be considered for that.
* Use __STDC_FORMAT_MACROS to get rid of printf warnings on Debian 7.6 and
also use them for Windows printf formatting, which simplifies some code.
* Upgrade Windows depkgs to openssl-1.0.1l.
2015-02-05 Changes in burp-1.4.32:
* Allow syslog and stdout logging at the same time (was broken in 1.4.30).
* In the client, don't use the return code for restore warnings if an error
code is already set.
* Upgrade Windows depkgs to openssl-1.0.1l.
2015-01-03 Changes in burp-2.0.10:
* There are many changes since the last burp-2 release, including:
- Massive reworking of the status monitor system and ncurses client.
- Massive reworking of async i/o.
- Forward ports of all 1.4.x patches.
* The main focus was improving the status monitor system in order to better
support projects like burp-ui. There are still missing pieces to it, but
most of the basics are now there.
Be sure to read the UPGRADING file. Protocol 2 is still work in progress,
so do not expect protocol 2 backups to work with future releases.
2015-01-03 Changes in burp-1.4.30:
* Better SSL error logging.
* Replace c_rehash with a line of shell script, from Markus Heberling.
* Use lutimes to set times on symlinks.
2014-12-03 Changes in burp-1.4.28:
* Help Mac compilation by removing calls to basename() in vss_strip.c and
bedup.c.
* Add soft/hard quota feature.
2014-10-28 Changes in burp-1.4.26:
* Bug fix for incorrect handling of '' in check_browsedir().
* Bug fix for made up directory names in check_browsedir() not having the
directory bit set.
* Close unnecessary file descriptors after forking children.
* Check for EAGAIN and EINTR when read on child status pipe fails in main
server process.
* Make status_wfd non-blocking and run a select() on it before the child
tries to write to it.
* Fix a possible segfault when reading from a status client.
* Log a more accurate description of ssl_ciphers.
* Make the Windows client return codes other than 0.
* Set openssl options SSL_OP_NO_SSLv2 and SSL_OP_NO_SSLv3, to avoid the
poodle vulnerability.
* Slightly better logging when SSL fails in src/async:do_write().
* Bug fix for bedup not obeying clientconfdir configs.
2014-09-28 Changes in burp-1.4.24:
* Make vss_strip.c include the configure output, so that vss_strip gets the
large file options.
* Make the server initiated restore not require an 'include' line.
* Add the ability to list backup_stats/restore_stats/verify_stats via the
status port.
* Add 'client_is_windows=0|1' to the stats files.
* Bug fix for resume bug not correctly truncating the phase2/unchanged
manifests.
* Make restore_clients override client_can_restore/list/verify/delete
settings.
2014-08-31 Changes in burp-1.4.22:
* Fix for xattrs with zero length values.
* Fix for restore bug when a file cannot be opened.
* Tweak to compile with burp-2 cross-tools/depkgs.
2014-07-26 Changes in burp-2.0.8:
* There are many changes since the last burp-2 release, including:
- Ability to configure the server listening addresses at run time.
- Run the champion chooser as a separate process.
- Option to remove the need for a client password and cname - use certs
exclusively.
- Warn if files are restored from outside a hardlinked_archive.
- Fix unnecessary duplication and deletion with hardlinked_archive=1.
- Fix backups failing with too long server side paths.
- Add option to configure SSL compression.
- Burp protocol 1 support looks good.
- Many code improvements and bug fixes.
* This release was focused on making the burp protocol 1 support good.
Be sure to read the UPGRADING file. Protocol 2 is still work in progress,
so do not expect protocol 2 backups to work with future releases.
2014-07-26 Changes in burp-1.4.20:
* Fix for backing up fifos with xattrs.
2014-07-06 Changes in burp-1.4.18:
* Fix some Mac compilation warnings.
* Fix a bug where specifying an alternative restore directory with a trailing
slash would not work.
* Set REMOTE_ADDR and REMOTE_PORT environment variables.
* Force the user spell out '-a delete', to avoid confusion with the future
'diff/long diff' options. Prevent old clients from deleting, to prevent
potential accidents.
* Fix a problem where interrupting the client during a list could leave the
server child process hanging indefinitely.
2014-05-31 Changes in burp-1.4.16:
* Bug fix for restoring permissions on empty directories.
* Compile for systems that have no O_NOATIME and fdopendir() - ie, Mac OS X.
* Bug fix - some readlink() returns were getting assigned to an unsigned
variable, not a signed variable.
* Removed references to old '-l' logfile option.
* Added Jarkko Kniivilä's FreeBSD init script.
* Added Jarkko Kniivilä's tweaks to make scripts run more easily on FreeBSD.
* In bedup, detect if a rename failed after unlinking the target file,
print a warning and stop processing.
* Fix a case where an interrupted backup may not have been automatically
recoverable.
* Set IPTOS_THROUGHPUT bit on Windows, so that burp is doing the right thing
even if Windows decides to remove it.
2014-04-29 Changes in burp-1.4.14:
* Add an 'atime' option, which allows the user to choose whether to use
O_NOATIME or not.
* Fix function not returning anything when it should return an int
in list_server.c.
2014-03-29 Changes in burp-2.0.4:
* First release of burp-2. Use with extreme caution.
2014-03-29 Changes in burp-1.4.12:
* Make 'make test' skip tests if no source of randomness seems to exist
for openssl to use.
* Bug fix for restoring correct file times on Windows clients.
* Bug fix for false failure notification - differentiate between
not getting a lock and getting an error when trying to get a lock.
* Turn off excessive logging on some restores.
* Debian packaging changes.
* Rename configure.in to configure.ac to avoid Debian build warnings.
* Make test script check for lock file instead of working/finishing symlinks
when checking whether an operation has finished yet.
* Fix encryption casting problem on 64 bit big endian platforms (eg, s390x,
ppc64, sparc64).
2013-12-01 Changes in burp-1.4.10:
* Bug fix for false failure notification when a client tries to connect again
while a backup is still in progress.
2013-11-27 Changes in burp-1.4.8:
* Be sure to close directory file descriptor if fdopendir() fails.
* Extend the JSON list functionality so that covers all types of listing.
* Allow the backup to carry on if a filename was too long for the server.
* Regenerate server certificates if the CA directory exists and is empty.
* Add machine-readable statistics files for restores and verifies in the
backup directories.
* Bug fix for server not exiting after one connection with '-n'.
* Add 'manual_delete=<directory>' option. This makes the server move
directories to be deleted to the specified directory, with the intention
that they will be deleted manually (perhaps by a cron job) later.
2013-10-30 Changes in burp-1.4.6:
* Add client option '-a T', which checks whether it is yet time for a backup
without actually doing a backup.
2013-10-02 Changes in burp-1.4.4:
* Bug fix for include_glob xmalloc success check on Windows.
* Fix long list and status monitor output when a directory argument is given.
* Fix restore problem with backups containing both compressed and
uncompressed files.
* Bug fix for an interrupted backup causing a resume when a restore_client
connects.
* Bug fix for defaulting 'resume partial' to off.
2013-09-02 Changes in burp-1.4.2
* Add a machine-readable statistics file to each backup directory.
2013-07-29 Changes in burp-1.4.0
* Add Abbas Khan's RHEL spec files and related things.
* Add Benjamin Sans's include_glob feature.
2014-01-27 Changes in burp-1.3.48:
* Bug fix for restoring correct file times on Windows clients.
2013-12-30 Changes in burp-1.3.46:
* Another bug fix for false failure notification - differentiate between
not getting a lock and getting an error when trying to get a lock.
* Turn off excessive logging on some restores.
2013-12-01 Changes in burp-1.3.44:
* Bug fix for false failure notification when a client tries to connect again
while a backup is still in progress.
2013-11-27 Changes in burp-1.3.42:
* In backup phase 4, a 'deleteme' directory may already exist if the server
was previously interrupted whilst deleting it. If so, delete it before
attempting to rename anything to it.
2013-10-30 Changes in burp-1.3.40:
* Make the server request the whole file when ctime changes on Windows,
otherwise changes to metadata when the file content is unchanged will not
be noticed.
* Add 'delete' to the client help output.
* Bug fix for the include_glob code being run on the server side.
* Bug fix for in the include_glob code not initialising the glob_t struct
correctly.
* Get 'include_glob=' in the clientconfdir server side file to work without
also needing an 'include='.
* When backing up, open files and directories with O_NOATIME flag so that the
access time is not changed.
* Bug fix for no failure notification being sent when the backup directory
cannot be created.
2013-10-02 Changes in burp-1.3.38:
* Fix long list and status monitor output when a directory argument is given.
* Fix restore problem with backups containing both compressed and
uncompressed files.
* Bug fix for an interrupted backup causing a resume when a restore_client
connects.
* Bug fix for defaulting 'resume partial' to off.
2013-07-29 Changes in burp-1.3.36:
* Fix truncation of timestamps in the live status monitor.
* Default the 'resume partial' feature to being off, and add an option to
turn it on.
* Upgraded Windows cross tools to:
+ binutils-2.23.1
+ gcc-4.7.3
+ gmp-5.1.2
+ mingw-w64-v2.0.8
+ mpc-1.0.1
+ mpfr-3.1.2
* Upgraded Windows depkgs to:
+ openssl-1.0.1e
+ zlib-1.2.8
+ pcre-8.33
2013-06-29 Changes in burp-1.3.34:
* Contributions from Avi Rozen:
+ Major autoconf cleanup.
+ Initial support for cross-building android targets.
* On the server, indicate where logging is occurring.
* Fix bedup segfault when using -m with no argument.
2013-05-31 Changes in burp-1.3.32:
* Fix status monitor segfault.
* Run timed backups with lower thread priority on Windows.
* Add 'vss_drives' option, which gives the ability to specify which Windows
drives get a VSS snapshot.
2013-04-02 Changes in burp-1.3.30:
* Add a warning when run on Windows without admin privileges.
* Perform fewer lstat()s on systems that support d_type (ie most Linux
systems), in order to speed up certain operations.
* Allow _FORTIFY_SOURCE to work.
* Fix problem with burp_ca.bat and repeated field names in burp.conf.
* Put registry keys back in the Windows installer.
* Fix for SIGHUP reload causing the server to go into non-forking mode.
* Indicate the backups that are deletable.
* Add a client option for deleting deletable backups.
* Add a 'client_can_delete' option on the server.
* Fix for using the wrong lock directory when 'directory' is overridden for
a client.
2013-03-30 Changes in burp-1.3.28:
* Add the ability to resume partially transferred files.
* Make sure 'timer conditions not met' message appears on the client.
* Bug fix for turning off compression before resuming a backup.
2013-03-05 Changes in burp-1.3.26:
* When a read_blockdev option matches a symlink, backup the destination as
a raw block device.
* Avi Rozen's valgrind cleanup. Includes a fix for a bug in restore_client.c
where overwrite_ok checked the wrong stat struct when considering a FIFO.
* Add '-v' option to bedup (output the names of duplicate files).
* Add '-d' option to bedup (delete duplicates instead of hardlinking - not
for use on burp storage directories).
2013-01-29 Changes in burp-1.3.24:
* Bug fix for strip_vss/split_vss truncating backups of changed files on
Windows.
* Bug fix for autoupgrade failing on Windows if autoupgrade_dir has been
modified.
* Bug fix for listing backups created with split_vss=1.
* Bug fix for restoring uncompressed encrypted backups created with
split_vss=1.
* Bug fix for making backups with min_file_size and split_vss=1.
* Bug fix for Debian init do_stop() function from Peter Maloney.
* Bug fix for resuming backups where a file to patch has already been
hard linked into place. Also get the client to report a more helpful
message if any similar problem happens.
* Bug fix for signal handler race conditions.
* Bug fix for the forkchild child not exiting when execv fails.
* Changed the run_script() code to take an array.
* Added server_script_pre_notify and server_script_post_notify options.
* Rework the test script so that it can test Windows clients.
* Attempt a Windows signal handler to try to shut VSS down nicely on certain
signals, such as Ctrl-C.
* Include an example server side offsite rsync backup script. This is not
quite working properly, but it may still be useful.
* Bug fix to stop Windows going to sleep during a backup, from Avi Rozen.
2013-01-02 Changes in burp-1.3.22:
* Contributions from Avi Rozen:
+ Added a '-j' option to format the long file list as JSON. Intended
for use with burpfs (https://github.com/ZungBang/burpfs).
+ Bug fix for list/verify/restore when regex is long and/or contains
a colon.
+ Bug fix for split_vss backups being restored on a linux
restore_client with the -f (force) option. Prevents overwrite of the
destination file with the vss footer.
* Contributions for burp_ca from Patrick Koppen:
+ Bug fix for the size option.
+ Use shell numeric comparison instead of string comparison.
+ Added subjectAltName patch (in case it is needed outside of burp).
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.