[Box Backup-commit] COMMIT r1517 - box/chris/win32/releases

boxbackup-dev@fluffy.co.uk boxbackup-dev@fluffy.co.uk
Mon, 16 Apr 2007 18:57:02 +0100


Author: chris
Date: 2007-04-16 18:57:01 +0100 (Mon, 16 Apr 2007)
New Revision: 1517

Added:
   box/chris/win32/releases/boxbackup-chris_general_1516-backup-client-mingw32.zip
Log:
New win32 native build (1516) with the following fixes and new features:

Make bbackupquery return an error code on failure of lcd command.

Make bbackupquery return an error code if get command fails due to the
file already existing.

Fix rare memory leak during an error condition on win32.

Fix emulated chdir to work with relative paths and with bbackupquery's
"sh" command (which doesn't like UNC paths).

Add a warning that comparing locations with a final directory separator
may fail (Stefan Tauner).

Merge back changes from merge tree (cosmetic and unit tests only).

Change named pipe from message to byte mode. Thanks to Charles for pointing
this out.

Treat ERR_PIPE_NOT_CONNECTED during pipe reads as EOF as well.

Initialise logging framework and set our program name in bbstored.

Add a quiet mode to compare command, to make test output easier to read.

Use our new ClientException codes for clock skew and archive problems.

Better handle a case where a force-sync command comes in immediately
after (or during) a sync, i.e. less than MinimumFileAge seconds after
the last one. In this case, just move back the syncPeriodStart by 1 second.

Improve logging of pipe errors by including the error message.

Reinitialise the OVERLAPPED structure each time we start a new overlapped
read (thanks Charles!).

Don't log errors or throw exceptions when we get ERROR_NO_DATA, which just
means that the pipe is being closed. Treat it as a normal remote close
(EOF) instead.

Don't log an error if DisconnectNamedPipe tells us that the remote end
already closed the pipe (ERROR_PIPE_NOT_CONNECTED).

Register our event source with the name passed to us, so that it goes
into the event logs.

Intercept updates merged from chris/merge (not used on win32).

Use common prefix on all test messages to make test output more readable.

Initialise logging framework and set sensible default verbosity levels.

Use logging framework to reduce noise in unit tests.

Remove newlines from syslog() messages (cosmetic).

Trivial code simplification.

Use memmove() for overlapping buffers as pointed out by Charles (thanks!).

Add emulated rename() with path conversion.

Trace reasons for uploading (or not) each file. (from chris/merge)

Add a new notification constant, NotifyEvent_BackupError, for use when
an exception occurs during the backup. (from chris/merge)

Make bbackupd notify sysadmin when an exception occurs during the backup,
using this error code, and the notification string "backup-error".
(from chris/merge)

Test for expected behaviour when modifying untracked and tracked files
without changing their modtime. (from chris/merge)

Test that bbackupd notifies the sysadmin when throwing an exception.
(from chris/merge)

Call OnIdle() when idle on all platforms, not just Win32. (from chris/merge)

Don't close the syslog forcibly, let logging framework do it.

Improve GetErrorMessage() by including the error number/code in the message
(helps debugging on foreign language versions of Windows).

Fix potential access beyond end of array in short filenames.

Use Timers to manage diffs and keepalives. Remove signal handler mess
from BackupClientContext. (from chris/merge)

Add support for ExtendedLogFile directive to write extended (protocol) log
to a file instead of to the console/syslog. (from chris/merge)

Send keepalives while scanning a directory, in case it's a very big or
slow directory. (From chris/merge)

Enable keepalives and diff time limits by default, at 60 and 600 seconds
respectively. (from chris/merge)

Don't delete remote directories just because we can't stat the local one.
(from chris/merge)

Catch failure to read attributes from a location directory and log it
rather than aborting the backup run. (from chris/merge)

Watch out for our leak tracking data being destroyed and don't crash when
subsequent objects are destroyed.

Fix two memory leaks and one buffer overflow in codepage conversion code.

Document that restore -d restores deleted files inside a not-deleted
directory. (from chris/merge)

Log excluded directories still present on the server during compare.
(from chris/merge)

Don't recurse into excluded directories during compare. (from chris/merge)

Avoid infinite loops if we can't bind socket, or something else goes wrong
and throws an exception before the server starts accepting connections.
(from chris/merge)

Log a warning for exclude entries which end in a path separator and
will therefore never match. (from chris/merge)

Use gettimeofday() if we have it, to return system time more accurately
and avoid spinning. (from chris/merge)

Throw Common AccessDenied instead of Common OSFileOpenError when access
to a file is denied, to improve log messages. (from chris/merge)

Fix memory leak. (from chris/merge)

Added detection of reparse points, and treat them like mount points
(don't recurse down into them).


Added: box/chris/win32/releases/boxbackup-chris_general_1516-backup-client-mingw32.zip
===================================================================
(Binary files differ)


Property changes on: box/chris/win32/releases/boxbackup-chris_general_1516-backup-client-mingw32.zip
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream