Changesets: bareos
master b1c05f30 2013-12-10 17:00 Ported: N/A Details Diff |
Add dummy default for NDMP port. | ||
mod - src/win32/compat/include/winhost.h | Diff File | ||
master ad43c5db 2013-12-10 16:50 Ported: N/A Details Diff |
Fix windows Makefile for new socket abstraction. | ||
mod - src/win32/lib/Makefile | Diff File | ||
master 10b8c242 2013-12-10 15:37 Ported: N/A Details Diff |
Backout new config engine. | ||
mod - autoconf/config.h.in | Diff File | ||
mod - autoconf/configure.in | Diff File | ||
mod - configure | Diff File | ||
mod - debian/rules | Diff File | ||
mod - src/console/console.c | Diff File | ||
mod - src/console/console_conf.c | Diff File | ||
mod - src/console/console_conf.h | Diff File | ||
mod - src/dird/authenticate.c | Diff File | ||
mod - src/dird/bsr.c | Diff File | ||
mod - src/dird/dbcheck.c | Diff File | ||
mod - src/dird/dird.c | Diff File | ||
mod - src/dird/dird.h | Diff File | ||
mod - src/dird/dird_conf.c | Diff File | ||
mod - src/dird/dird_conf.h | Diff File | ||
mod - src/dird/expand.c | Diff File | ||
mod - src/dird/fd_cmds.c | Diff File | ||
mod - src/dird/inc_conf.c | Diff File | ||
rm - src/dird/inc_conf.h | Diff File | ||
mod - src/dird/job.c | Diff File | ||
mod - src/dird/migrate.c | Diff File | ||
mod - src/dird/ndmp_dma.c | Diff File | ||
mod - src/dird/newvol.c | Diff File | ||
mod - src/dird/run_conf.c | Diff File | ||
mod - src/dird/scheduler.c | Diff File | ||
mod - src/dird/testfind.c | Diff File | ||
mod - src/dird/ua_cmds.c | Diff File | ||
mod - src/dird/ua_dotcmds.c | Diff File | ||
mod - src/dird/ua_label.c | Diff File | ||
mod - src/dird/ua_output.c | Diff File | ||
mod - src/dird/ua_prune.c | Diff File | ||
mod - src/dird/ua_restore.c | Diff File | ||
mod - src/dird/ua_run.c | Diff File | ||
mod - src/dird/ua_select.c | Diff File | ||
mod - src/dird/ua_server.c | Diff File | ||
mod - src/dird/ua_status.c | Diff File | ||
mod - src/dird/verify.c | Diff File | ||
mod - src/filed/authenticate.c | Diff File | ||
mod - src/filed/backup.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/filed.h | Diff File | ||
mod - src/filed/filed_conf.c | Diff File | ||
mod - src/filed/filed_conf.h | Diff File | ||
mod - src/filed/restore.c | Diff File | ||
mod - src/filed/verify.c | Diff File | ||
mod - src/filed/verify_vol.c | Diff File | ||
mod - src/findlib/xattr.c | Diff File | ||
mod - src/include/baconfig.h | Diff File | ||
mod - src/lib/address_conf.c | Diff File | ||
mod - src/lib/address_conf.h | Diff File | ||
mod - src/lib/cram-md5.c | Diff File | ||
mod - src/lib/edit.c | Diff File | ||
rm - src/lib/generic_res.h | Diff File | ||
mod - src/lib/ini.c | Diff File | ||
mod - src/lib/ini.h | Diff File | ||
mod - src/lib/lex.c | Diff File | ||
mod - src/lib/lex.h | Diff File | ||
mod - src/lib/message.c | Diff File | ||
mod - src/lib/parse_bsr.c | Diff File | ||
mod - src/lib/parse_conf.c | Diff File | ||
mod - src/lib/parse_conf.h | Diff File | ||
mod - src/lib/protos.h | Diff File | ||
mod - src/lib/res.c | Diff File | ||
mod - src/lib/runscript.c | Diff File | ||
mod - src/lib/util.c | Diff File | ||
mod - src/plugins/filed/test-plugin-fd.c | Diff File | ||
mod - src/qt-console/bat.h | Diff File | ||
mod - src/qt-console/bat_conf.cpp | Diff File | ||
mod - src/qt-console/bat_conf.h | Diff File | ||
mod - src/qt-console/bcomm/dircomm.cpp | Diff File | ||
mod - src/qt-console/main.cpp | Diff File | ||
mod - src/qt-console/mainwin.cpp | Diff File | ||
mod - src/qt-console/restore/restore.cpp | Diff File | ||
mod - src/qt-tray-monitor/authenticate.cpp | Diff File | ||
mod - src/qt-tray-monitor/monitoritemthread.cpp | Diff File | ||
mod - src/qt-tray-monitor/tray-monitor.cpp | Diff File | ||
mod - src/qt-tray-monitor/tray_conf.cpp | Diff File | ||
mod - src/qt-tray-monitor/tray_conf.h | Diff File | ||
mod - src/stored/acquire.c | Diff File | ||
mod - src/stored/authenticate.c | Diff File | ||
mod - src/stored/autochanger.c | Diff File | ||
mod - src/stored/bcopy.c | Diff File | ||
mod - src/stored/bextract.c | Diff File | ||
mod - src/stored/bls.c | Diff File | ||
mod - src/stored/bscan.c | Diff File | ||
mod - src/stored/btape.c | Diff File | ||
mod - src/stored/butil.c | Diff File | ||
mod - src/stored/dev.h | Diff File | ||
mod - src/stored/dir_cmd.c | Diff File | ||
mod - src/stored/ndmp_tape.c | Diff File | ||
mod - src/stored/reserve.c | Diff File | ||
mod - src/stored/spool.c | Diff File | ||
mod - src/stored/status.c | Diff File | ||
mod - src/stored/stored.c | Diff File | ||
mod - src/stored/stored.h | Diff File | ||
mod - src/stored/stored_conf.c | Diff File | ||
mod - src/stored/stored_conf.h | Diff File | ||
bareos-13.2 7e055c03 2013-12-10 12:43 Ported: N/A Details Diff |
Removed criticised code from annex 1 | ||
mod - src/cats/make_mysql_tables.in | Diff File | ||
mod - src/cats/make_postgresql_tables.in | Diff File | ||
mod - src/cats/make_sqlite3_tables.in | Diff File | ||
mod - src/cats/postgresql.c | Diff File | ||
mod - src/cats/update_postgresql_tables.in | Diff File | ||
bareos-12.4 7aad0941 2013-12-10 12:43 Ported: N/A Details Diff |
Removed criticised code from annex 1 | ||
mod - src/cats/make_mysql_tables.in | Diff File | ||
mod - src/cats/make_postgresql_tables.in | Diff File | ||
mod - src/cats/make_sqlite3_tables.in | Diff File | ||
mod - src/cats/postgresql.c | Diff File | ||
mod - src/cats/update_postgresql_tables.in | Diff File | ||
master 1e784059 2013-12-10 12:43 Ported: N/A Details Diff |
Removed criticised code from annex 1 | ||
mod - src/cats/make_mysql_tables.in | Diff File | ||
mod - src/cats/make_postgresql_tables.in | Diff File | ||
mod - src/cats/make_sqlite3_tables.in | Diff File | ||
mod - src/cats/postgresql.c | Diff File | ||
mod - src/cats/update_postgresql_tables.in | Diff File | ||
master 2ed70a3c 2013-12-09 17:10 Marco van Wieringen Ported: N/A Details Diff |
Teach the qt programs the new socket abstraction. | ||
mod - src/qt-console/bcomm/dircomm.cpp | Diff File | ||
mod - src/qt-tray-monitor/monitoritem.cpp | Diff File | ||
master 950e8ba1 2013-12-09 16:13 Marco van Wieringen Ported: N/A Details Diff |
Implementation of Python Director Plugin Implement a plugin that makes it possible to write Director plugins in Python. Stub plugin function is available that loads a python interpreter per plugin instance. Need to link the plugin events to Python methods and allow the Python code to call the plugin code do read and write plugin variables. Fixes 0000012: Implementation of Python Director Plugin |
||
mod - src/dird/dir_plugins.c | Diff File | ||
mod - src/dird/dir_plugins.h | Diff File | ||
mod - src/plugins/dird/Makefile.in | Diff File | ||
add - src/plugins/dird/bareos-dir.py | Diff File | ||
add - src/plugins/dird/bareos_dir_consts.py | Diff File | ||
mod - src/plugins/dird/python-dir.c | Diff File | ||
add - src/plugins/dird/python-dir.h | Diff File | ||
master ef167c70 2013-12-09 16:13 Marco van Wieringen Ported: N/A Details Diff |
Implementation of Python StorageDaemon Plugin Implement a plugin that makes it possible to write Storage daemon plugins in Python. Stub plugin function is available that loads a python interpreter per plugin instance. Need to link the plugin events to Python methods and allow the Python code to call the plugin code do read and write plugin variables. Fixes 0000011: Implementation of Python StorageDaemon Plugin |
||
mod - src/plugins/stored/Makefile.in | Diff File | ||
add - src/plugins/stored/bareos-sd.py | Diff File | ||
add - src/plugins/stored/bareos_sd_consts.py | Diff File | ||
mod - src/plugins/stored/python-sd.c | Diff File | ||
add - src/plugins/stored/python-sd.h | Diff File | ||
mod - src/stored/sd_plugins.c | Diff File | ||
mod - src/stored/sd_plugins.h | Diff File | ||
master ec78a841 2013-12-09 16:13 Marco van Wieringen Ported: N/A Details Diff |
Implementation of Python FileDaemon Plugin Implement a plugin that makes it possible to write File daemon plugins in Python. Stub plugin function is available that loads a python interpreter per plugin instance. Need to link the plugin events to Python methods and allow the Python code to call the plugin code do read and write plugin variables. Fixes 0000010: Implementation of Python FileDaemon Plugin |
||
mod - src/filed/fd_plugins.c | Diff File | ||
mod - src/plugins/filed/Makefile.in | Diff File | ||
add - src/plugins/filed/bareos-fd.py | Diff File | ||
add - src/plugins/filed/bareos_fd_consts.py | Diff File | ||
mod - src/plugins/filed/python-fd.c | Diff File | ||
add - src/plugins/filed/python-fd.h | Diff File | ||
master 5aed978f 2013-12-09 16:13 Marco van Wieringen Ported: N/A Details Diff |
Allow the conditional enabling of SO_KEEPALIVE on sockets. | ||
mod - src/dird/dird_conf.h | Diff File | ||
mod - src/dird/fd_cmds.c | Diff File | ||
mod - src/dird/ua_server.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/filed_conf.h | Diff File | ||
mod - src/lib/bnet_server_tcp.c | Diff File | ||
mod - src/lib/bsock.h | Diff File | ||
mod - src/lib/bsock_sctp.c | Diff File | ||
mod - src/lib/bsock_tcp.c | Diff File | ||
mod - src/lib/bsock_udt.c | Diff File | ||
mod - src/lib/protos.h | Diff File | ||
mod - src/stored/dir_cmd.c | Diff File | ||
mod - src/stored/stored.c | Diff File | ||
mod - src/stored/stored_conf.h | Diff File | ||
master 0b1e25da 2013-12-09 16:13 Marco van Wieringen Ported: N/A Details Diff |
Promote BSOCK to a proper class implementation. First steps in abstracting network layer. It would be nice to use other communication sockets then only TCP ones as its done now. The whole socket abstraction needs a major overhaul and some of the old bnet functions can be retired now permanently and some functions are better written as methods of the BSOCK class so we can write socket type specific implementations of them. This implements a BSOCK_TCP class which has the now used TCP sockets and a dummy BSOCK_SCTP class which will eventually hold the SCTP sockets and a dummy BSOCK_UDT class which will eventually hold the UDT sockets. |
||
mod - src/console/console.c | Diff File | ||
mod - src/dird/backup.c | Diff File | ||
mod - src/dird/fd_cmds.c | Diff File | ||
mod - src/dird/job.c | Diff File | ||
mod - src/dird/msgchan.c | Diff File | ||
mod - src/dird/restore.c | Diff File | ||
mod - src/dird/sd_cmds.c | Diff File | ||
mod - src/dird/ua_cmds.c | Diff File | ||
mod - src/dird/ua_purge.c | Diff File | ||
mod - src/dird/ua_run.c | Diff File | ||
mod - src/dird/ua_server.c | Diff File | ||
mod - src/dird/verify.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/heartbeat.c | Diff File | ||
mod - src/filed/sd_cmds.c | Diff File | ||
mod - src/lib/Makefile.in | Diff File | ||
mod - src/lib/bnet.c | Diff File | ||
mod - src/lib/bsock.c | Diff File | ||
mod - src/lib/bsock.h | Diff File | ||
add - src/lib/bsock_sctp.c | Diff File | ||
add - src/lib/bsock_sctp.h | Diff File | ||
add - src/lib/bsock_tcp.c | Diff File | ||
add - src/lib/bsock_tcp.h | Diff File | ||
add - src/lib/bsock_udt.c | Diff File | ||
add - src/lib/bsock_udt.h | Diff File | ||
mod - src/lib/jcr.c | Diff File | ||
mod - src/lib/lib.h | Diff File | ||
mod - src/lib/protos.h | Diff File | ||
mod - src/stored/bscan.c | Diff File | ||
mod - src/stored/dir_cmd.c | Diff File | ||
mod - src/stored/job.c | Diff File | ||
mod - src/stored/ndmp_tape.c | Diff File | ||
mod - src/stored/sd_cmds.c | Diff File | ||
mod - src/stored/stored.c | Diff File | ||
master 73417509 2013-12-09 16:13 Marco van Wieringen Ported: N/A Details Diff |
Build and package the windows storage daemon. | ||
mod - platforms/win32/fillup.sed | Diff File | ||
add - platforms/win32/storagedialog.ini | Diff File | ||
add - platforms/win32/tray-monitor-conf-fd-sd.patch | Diff File | ||
mod - platforms/win32/winbareos-nsi.spec | Diff File | ||
mod - platforms/win32/winbareos.nsi | Diff File | ||
mod - platforms/win32/winbareos32.spec | Diff File | ||
mod - platforms/win32/winbareos64.spec | Diff File | ||
mod - src/filed/status.c | Diff File | ||
mod - src/include/version.h | Diff File | ||
mod - src/stored/Makefile.in | Diff File | ||
mod - src/stored/dev.c | Diff File | ||
mod - src/stored/dev.h | Diff File | ||
mod - src/stored/status.c | Diff File | ||
mod - src/stored/stored.h | Diff File | ||
add - src/stored/unix_device.c | Diff File | ||
add - src/stored/unix_device.h | Diff File | ||
mod - src/stored/vtape.c | Diff File | ||
mod - src/stored/vtape.h | Diff File | ||
mod - src/win32/Makefile | Diff File | ||
add - src/win32/compat/include/sys/mtio.h | Diff File | ||
mod - src/win32/filed/Makefile | Diff File | ||
mod - src/win32/filed/filedres.rc.in | Diff File | ||
mod - src/win32/filed/who.h | Diff File | ||
mod - src/win32/plugins/Makefile | Diff File | ||
mod - src/win32/plugins/filed/Makefile | Diff File | ||
add - src/win32/plugins/stored/Makefile | Diff File | ||
add - src/win32/stored/Makefile | Diff File | ||
add - src/win32/stored/storedres.rc.in | Diff File | ||
add - src/win32/stored/who.h | Diff File | ||
add - src/win32/stored/win32_file_device.c | Diff File | ||
add - src/win32/stored/win32_file_device.h | Diff File | ||
add - src/win32/stored/win32_tape_device.c | Diff File | ||
add - src/win32/stored/win32_tape_device.h | Diff File | ||
master 2242e405 2013-12-09 16:12 Marco van Wieringen Ported: N/A Details Diff |
Bring windows support up to Windows 2012 server. This commit bring the windows code to support all new features that have been added to windows up till windows 2012 server. We also reindented a lot of code along the way to be more readable and fixes most comments. The actual added features: - Volume Mountpoints support (VMP). Windows for some version now supports so called Volume MountPoint which allow you to mount a volume somewhere in the filesystem layout analog to what UNIX has been doing since it inception without assigning a drive letter. We need to make sure we also add the VMPs to the VSS snapshot list otherwise the backup will fail. - Use GetFileInformationByHandleEx to get real changetime. As it seems ctime in the stat struct on UNIX means for some time now the last change time of the inode and not the creation time. On Windows we need a special API to get the actual change time named GetFileInformationByHandleEx(). While implementing this new feature we reformated some of the layout and dropped some unused code. - Windows dedup support Windows 2012 has dedup support which needs handling. To get rehydrated data when reading the file you should open the file without the FILE_FLAG_OPEN_REPARSE_POINT flag set. If you want to read the deduped data effeciently you need to write new code which interfaces to a new API which is currently out of scope. The original file on the filesystem is replaced with a so called reparse point so if we open the reparse point instead of where it points to we get data which has a pointer to a map of all the data streams and chunks required to ârehydrateâ the file and not its actual data. We now changed the stat emulation functions to detect the special reparse point with type IO_REPARSE_TAG_DEDUP which indicates a deduped file. When that is set we set a special bit on the file so we know we need to open the file with the O_NOFOLLOW flag which will open the file without the FILE_FLAG_OPEN_REPARSE_POINT flag set. More info at: http://blogs.technet.com/b/filecab/archive/2012/05/21/introduction-to-data-deduplication-in-windows-server-2012.aspx - Store all file attributes Windows has gathered quite some special specific file flags over the years but not all are saved during backup so some are never restored by the restore process. The most important ones are the ARCHIVE flag which is "misused" by some programs for storing some special information. Others that are known not to be stored are the COMPRESSED flag which means that a restored file looses it and will be restored as an uncompressed file. As we are running out of opportunities to store the special flags as some mode in the st_mode member of the stat struct a redesign was needed to store the unique file flag somewhere else. We are reusing the st_rdev field. That is already used for reparse points in older versions but as those are never restored anyway we can reuse them without breaking backwards compatability. - Support for Windows EFS filesystems Windows has for quite some time now support for a so called EFS filesystem. This is an encrypted filesystem, to be able to backup the data and to restore it we need to use a special API. With this API you in essence export the data on backup and import it on restore. This way you never have access to the unencrypted data but just import and export the encrypted data. This is the cleanest way of handling encryption by just seeing the data as some opaque data and not try to do anything special with it. The problem with the restore API is however that it kind of works in a completely different way then a normal read/write API. You call a import function and that call the read callback multiple times until all data is imported/restored. As we don't want to rewrite the whole internal works of the filed for this we now create a seperate thread that runs during the whole restore of a filesystem and behaves as a consumer/producer problem (well known in the pthreads world). In this solution the producer is the filed that produces encrypted data out of the incoming data streams from the storage daemon and the seperate thread consumes that data by returning it as encrypted data in the callback function issues by the special EFS import API. There is some synchronization between the different threads so it knows when one file is done and it should end the import of that file. We also keep some of the buffers lingering around so we don't need to do malloc/free/malloc loops all the time, we cleanup the whole thread and the buffers used at the end of the whole restore process. Fixes 0000228: Some windows file attributes are not handled. Fixes 0000008: Handle Windows Encrypted Files using Win raw encryption Signed-off-by: Marco van Wieringen <marco.van.wieringen@bareos.com> |
||
mod - src/filed/backup.c | Diff File | ||
mod - src/filed/crypto.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/fd_plugins.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/fileset.c | Diff File | ||
mod - src/filed/protos.h | Diff File | ||
mod - src/filed/restore.c | Diff File | ||
mod - src/filed/verify.c | Diff File | ||
mod - src/findlib/attribs.c | Diff File | ||
mod - src/findlib/bfile.c | Diff File | ||
mod - src/findlib/bfile.h | Diff File | ||
mod - src/findlib/create_file.c | Diff File | ||
mod - src/findlib/find.c | Diff File | ||
mod - src/findlib/find.h | Diff File | ||
mod - src/findlib/find_one.c | Diff File | ||
mod - src/findlib/mkpath.c | Diff File | ||
mod - src/findlib/protos.h | Diff File | ||
mod - src/include/baconfig.h | Diff File | ||
mod - src/include/bareos.h | Diff File | ||
mod - src/include/bc_types.h | Diff File | ||
mod - src/include/jcr.h | Diff File | ||
mod - src/lib/Makefile.in | Diff File | ||
add - src/lib/cbuf.c | Diff File | ||
add - src/lib/cbuf.h | Diff File | ||
mod - src/plugins/filed/fd_common.h | Diff File | ||
mod - src/win32/Makefile | Diff File | ||
mod - src/win32/Makefile.inc | Diff File | ||
mod - src/win32/compat/compat.c | Diff File | ||
mod - src/win32/compat/include/compat.h | Diff File | ||
mod - src/win32/compat/include/mingwconfig.h | Diff File | ||
mod - src/win32/compat/print.c | Diff File | ||
mod - src/win32/compat/winapi.c | Diff File | ||
mod - src/win32/console/Makefile | Diff File | ||
mod - src/win32/filed/Makefile | Diff File | ||
mod - src/win32/filed/vss.c | Diff File | ||
mod - src/win32/filed/vss_generic.c | Diff File | ||
mod - src/win32/findlib/Makefile | Diff File | ||
add - src/win32/findlib/win32.c | Diff File | ||
mod - src/win32/include/vss.h | Diff File | ||
mod - src/win32/include/winapi.h | Diff File | ||
mod - src/win32/lib/Makefile | Diff File | ||
mod - src/win32/plugins/filed/Makefile | Diff File | ||
master 9ce1a008 2013-12-09 16:10 Ported: N/A Details Diff |
Teach the qt programs the new socket abstraction. | ||
mod - src/qt-console/bcomm/dircomm.cpp | Diff File | ||
mod - src/qt-tray-monitor/monitoritem.cpp | Diff File | ||
master 7790a32f 2013-12-09 15:13 Ported: N/A Details Diff |
Implementation of Python Director Plugin Implement a plugin that makes it possible to write Director plugins in Python. Stub plugin function is available that loads a python interpreter per plugin instance. Need to link the plugin events to Python methods and allow the Python code to call the plugin code do read and write plugin variables. Fixes 0000012: Implementation of Python Director Plugin |
Affected Issues 0000012 |
|
mod - src/dird/dir_plugins.c | Diff File | ||
mod - src/dird/dir_plugins.h | Diff File | ||
mod - src/plugins/dird/Makefile.in | Diff File | ||
add - src/plugins/dird/bareos-dir.py | Diff File | ||
add - src/plugins/dird/bareos_dir_consts.py | Diff File | ||
mod - src/plugins/dird/python-dir.c | Diff File | ||
add - src/plugins/dird/python-dir.h | Diff File | ||
master 7c18ee65 2013-12-09 15:13 Ported: N/A Details Diff |
Implementation of Python StorageDaemon Plugin Implement a plugin that makes it possible to write Storage daemon plugins in Python. Stub plugin function is available that loads a python interpreter per plugin instance. Need to link the plugin events to Python methods and allow the Python code to call the plugin code do read and write plugin variables. Fixes 0000011: Implementation of Python StorageDaemon Plugin |
Affected Issues 0000011 |
|
mod - src/plugins/stored/Makefile.in | Diff File | ||
add - src/plugins/stored/bareos-sd.py | Diff File | ||
add - src/plugins/stored/bareos_sd_consts.py | Diff File | ||
mod - src/plugins/stored/python-sd.c | Diff File | ||
add - src/plugins/stored/python-sd.h | Diff File | ||
mod - src/stored/sd_plugins.c | Diff File | ||
mod - src/stored/sd_plugins.h | Diff File | ||
master 740de8e2 2013-12-09 15:13 Ported: N/A Details Diff |
Implementation of Python FileDaemon Plugin Implement a plugin that makes it possible to write File daemon plugins in Python. Stub plugin function is available that loads a python interpreter per plugin instance. Need to link the plugin events to Python methods and allow the Python code to call the plugin code do read and write plugin variables. Fixes 0000010: Implementation of Python FileDaemon Plugin |
Affected Issues 0000010 |
|
mod - src/filed/fd_plugins.c | Diff File | ||
mod - src/plugins/filed/Makefile.in | Diff File | ||
add - src/plugins/filed/bareos-fd.py | Diff File | ||
add - src/plugins/filed/bareos_fd_consts.py | Diff File | ||
mod - src/plugins/filed/python-fd.c | Diff File | ||
add - src/plugins/filed/python-fd.h | Diff File | ||
master 64f25767 2013-12-09 15:13 Ported: N/A Details Diff |
Allow the conditional enabling of SO_KEEPALIVE on sockets. | ||
mod - src/dird/dird_conf.c | Diff File | ||
mod - src/dird/dird_conf.h | Diff File | ||
mod - src/dird/fd_cmds.c | Diff File | ||
mod - src/dird/ua_server.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/filed_conf.c | Diff File | ||
mod - src/filed/filed_conf.h | Diff File | ||
mod - src/lib/bnet_server_tcp.c | Diff File | ||
mod - src/lib/bsock.h | Diff File | ||
mod - src/lib/bsock_sctp.c | Diff File | ||
mod - src/lib/bsock_tcp.c | Diff File | ||
mod - src/lib/bsock_udt.c | Diff File | ||
mod - src/lib/protos.h | Diff File | ||
mod - src/stored/dir_cmd.c | Diff File | ||
mod - src/stored/stored.c | Diff File | ||
mod - src/stored/stored_conf.c | Diff File | ||
mod - src/stored/stored_conf.h | Diff File | ||
master 49e41f5a 2013-12-09 15:13 Ported: N/A Details Diff |
Promote BSOCK to a proper class implementation. First steps in abstracting network layer. It would be nice to use other communication sockets then only TCP ones as its done now. The whole socket abstraction needs a major overhaul and some of the old bnet functions can be retired now permanently and some functions are better written as methods of the BSOCK class so we can write socket type specific implementations of them. This implements a BSOCK_TCP class which has the now used TCP sockets and a dummy BSOCK_SCTP class which will eventually hold the SCTP sockets and a dummy BSOCK_UDT class which will eventually hold the UDT sockets. |
Affected Issues 0000171 |
|
mod - src/console/console.c | Diff File | ||
mod - src/dird/backup.c | Diff File | ||
mod - src/dird/fd_cmds.c | Diff File | ||
mod - src/dird/job.c | Diff File | ||
mod - src/dird/msgchan.c | Diff File | ||
mod - src/dird/restore.c | Diff File | ||
mod - src/dird/sd_cmds.c | Diff File | ||
mod - src/dird/ua_cmds.c | Diff File | ||
mod - src/dird/ua_purge.c | Diff File | ||
mod - src/dird/ua_run.c | Diff File | ||
mod - src/dird/ua_server.c | Diff File | ||
mod - src/dird/verify.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/heartbeat.c | Diff File | ||
mod - src/filed/sd_cmds.c | Diff File | ||
mod - src/lib/Makefile.in | Diff File | ||
mod - src/lib/bnet.c | Diff File | ||
mod - src/lib/bsock.c | Diff File | ||
mod - src/lib/bsock.h | Diff File | ||
add - src/lib/bsock_sctp.c | Diff File | ||
add - src/lib/bsock_sctp.h | Diff File | ||
add - src/lib/bsock_tcp.c | Diff File | ||
add - src/lib/bsock_tcp.h | Diff File | ||
add - src/lib/bsock_udt.c | Diff File | ||
add - src/lib/bsock_udt.h | Diff File | ||
mod - src/lib/jcr.c | Diff File | ||
mod - src/lib/lib.h | Diff File | ||
mod - src/lib/protos.h | Diff File | ||
mod - src/stored/bscan.c | Diff File | ||
mod - src/stored/dir_cmd.c | Diff File | ||
mod - src/stored/job.c | Diff File | ||
mod - src/stored/ndmp_tape.c | Diff File | ||
mod - src/stored/sd_cmds.c | Diff File | ||
mod - src/stored/stored.c | Diff File | ||
master ca578b19 2013-12-09 15:13 Ported: N/A Details Diff |
Build and package the windows storage daemon. | ||
mod - platforms/win32/fillup.sed | Diff File | ||
add - platforms/win32/storagedialog.ini | Diff File | ||
add - platforms/win32/tray-monitor-conf-fd-sd.patch | Diff File | ||
mod - platforms/win32/winbareos-nsi.spec | Diff File | ||
mod - platforms/win32/winbareos.nsi | Diff File | ||
mod - platforms/win32/winbareos32.spec | Diff File | ||
mod - platforms/win32/winbareos64.spec | Diff File | ||
mod - src/filed/status.c | Diff File | ||
mod - src/include/version.h | Diff File | ||
mod - src/stored/Makefile.in | Diff File | ||
mod - src/stored/dev.c | Diff File | ||
mod - src/stored/dev.h | Diff File | ||
mod - src/stored/status.c | Diff File | ||
mod - src/stored/stored.h | Diff File | ||
add - src/stored/unix_device.c | Diff File | ||
add - src/stored/unix_device.h | Diff File | ||
mod - src/stored/vtape.c | Diff File | ||
mod - src/stored/vtape.h | Diff File | ||
mod - src/win32/Makefile | Diff File | ||
add - src/win32/compat/include/sys/mtio.h | Diff File | ||
mod - src/win32/filed/Makefile | Diff File | ||
mod - src/win32/filed/filedres.rc.in | Diff File | ||
mod - src/win32/filed/who.h | Diff File | ||
mod - src/win32/plugins/Makefile | Diff File | ||
mod - src/win32/plugins/filed/Makefile | Diff File | ||
add - src/win32/plugins/stored/Makefile | Diff File | ||
add - src/win32/stored/Makefile | Diff File | ||
add - src/win32/stored/storedres.rc.in | Diff File | ||
add - src/win32/stored/who.h | Diff File | ||
add - src/win32/stored/win32_file_device.c | Diff File | ||
add - src/win32/stored/win32_file_device.h | Diff File | ||
add - src/win32/stored/win32_tape_device.c | Diff File | ||
add - src/win32/stored/win32_tape_device.h | Diff File | ||
master fa9aabd5 2013-12-09 15:12 Ported: N/A Details Diff |
Bring windows support up to Windows 2012 server. This commit bring the windows code to support all new features that have been added to windows up till windows 2012 server. We also reindented a lot of code along the way to be more readable and fixes most comments. The actual added features: - Volume Mountpoints support (VMP). Windows for some version now supports so called Volume MountPoint which allow you to mount a volume somewhere in the filesystem layout analog to what UNIX has been doing since it inception without assigning a drive letter. We need to make sure we also add the VMPs to the VSS snapshot list otherwise the backup will fail. - Use GetFileInformationByHandleEx to get real changetime. As it seems ctime in the stat struct on UNIX means for some time now the last change time of the inode and not the creation time. On Windows we need a special API to get the actual change time named GetFileInformationByHandleEx(). While implementing this new feature we reformated some of the layout and dropped some unused code. - Windows dedup support Windows 2012 has dedup support which needs handling. To get rehydrated data when reading the file you should open the file without the FILE_FLAG_OPEN_REPARSE_POINT flag set. If you want to read the deduped data effeciently you need to write new code which interfaces to a new API which is currently out of scope. The original file on the filesystem is replaced with a so called reparse point so if we open the reparse point instead of where it points to we get data which has a pointer to a map of all the data streams and chunks required to ârehydrateâ the file and not its actual data. We now changed the stat emulation functions to detect the special reparse point with type IO_REPARSE_TAG_DEDUP which indicates a deduped file. When that is set we set a special bit on the file so we know we need to open the file with the O_NOFOLLOW flag which will open the file without the FILE_FLAG_OPEN_REPARSE_POINT flag set. More info at: http://blogs.technet.com/b/filecab/archive/2012/05/21/introduction-to-data-deduplication-in-windows-server-2012.aspx - Store all file attributes Windows has gathered quite some special specific file flags over the years but not all are saved during backup so some are never restored by the restore process. The most important ones are the ARCHIVE flag which is "misused" by some programs for storing some special information. Others that are known not to be stored are the COMPRESSED flag which means that a restored file looses it and will be restored as an uncompressed file. As we are running out of opportunities to store the special flags as some mode in the st_mode member of the stat struct a redesign was needed to store the unique file flag somewhere else. We are reusing the st_rdev field. That is already used for reparse points in older versions but as those are never restored anyway we can reuse them without breaking backwards compatability. - Support for Windows EFS filesystems Windows has for quite some time now support for a so called EFS filesystem. This is an encrypted filesystem, to be able to backup the data and to restore it we need to use a special API. With this API you in essence export the data on backup and import it on restore. This way you never have access to the unencrypted data but just import and export the encrypted data. This is the cleanest way of handling encryption by just seeing the data as some opaque data and not try to do anything special with it. The problem with the restore API is however that it kind of works in a completely different way then a normal read/write API. You call a import function and that call the read callback multiple times until all data is imported/restored. As we don't want to rewrite the whole internal works of the filed for this we now create a seperate thread that runs during the whole restore of a filesystem and behaves as a consumer/producer problem (well known in the pthreads world). In this solution the producer is the filed that produces encrypted data out of the incoming data streams from the storage daemon and the seperate thread consumes that data by returning it as encrypted data in the callback function issues by the special EFS import API. There is some synchronization between the different threads so it knows when one file is done and it should end the import of that file. We also keep some of the buffers lingering around so we don't need to do malloc/free/malloc loops all the time, we cleanup the whole thread and the buffers used at the end of the whole restore process. Fixes 0000228: Some windows file attributes are not handled. Fixes 0000008: Handle Windows Encrypted Files using Win raw encryption Signed-off-by: Marco van Wieringen <marco.van.wieringen@bareos.com> |
Affected Issues 0000008, 0000228 |
|
mod - src/filed/backup.c | Diff File | ||
mod - src/filed/crypto.c | Diff File | ||
mod - src/filed/dir_cmd.c | Diff File | ||
mod - src/filed/fd_plugins.c | Diff File | ||
mod - src/filed/filed.c | Diff File | ||
mod - src/filed/fileset.c | Diff File | ||
mod - src/filed/protos.h | Diff File | ||
mod - src/filed/restore.c | Diff File | ||
mod - src/filed/verify.c | Diff File | ||
mod - src/findlib/attribs.c | Diff File | ||
mod - src/findlib/bfile.c | Diff File | ||
mod - src/findlib/bfile.h | Diff File | ||
mod - src/findlib/create_file.c | Diff File | ||
mod - src/findlib/find.c | Diff File | ||
mod - src/findlib/find.h | Diff File | ||
mod - src/findlib/find_one.c | Diff File | ||
mod - src/findlib/mkpath.c | Diff File | ||
mod - src/findlib/protos.h | Diff File | ||
mod - src/include/baconfig.h | Diff File | ||
mod - src/include/bareos.h | Diff File | ||
mod - src/include/bc_types.h | Diff File | ||
mod - src/include/jcr.h | Diff File | ||
mod - src/lib/Makefile.in | Diff File | ||
add - src/lib/cbuf.c | Diff File | ||
add - src/lib/cbuf.h | Diff File | ||
mod - src/plugins/filed/fd_common.h | Diff File | ||
mod - src/win32/Makefile | Diff File | ||
mod - src/win32/Makefile.inc | Diff File | ||
mod - src/win32/compat/compat.c | Diff File | ||
mod - src/win32/compat/include/compat.h | Diff File | ||
mod - src/win32/compat/include/mingwconfig.h | Diff File | ||
mod - src/win32/compat/print.c | Diff File | ||
mod - src/win32/compat/winapi.c | Diff File | ||
mod - src/win32/console/Makefile | Diff File | ||
mod - src/win32/filed/Makefile | Diff File | ||
mod - src/win32/filed/vss.c | Diff File | ||
mod - src/win32/filed/vss_generic.c | Diff File | ||
mod - src/win32/findlib/Makefile | Diff File | ||
add - src/win32/findlib/win32.c | Diff File | ||
mod - src/win32/include/vss.h | Diff File | ||
mod - src/win32/include/winapi.h | Diff File | ||
mod - src/win32/lib/Makefile | Diff File | ||
mod - src/win32/plugins/filed/Makefile | Diff File | ||
bareos-13.2 9b03474f 2013-11-28 21:40 Marco van Wieringen Ported: N/A Details Diff |
Add support for setting allowed cns for passive mode. Fixes 0000257: When using passive mode and TLS using NAT the verify peer mode will fail. |
||
mod - src/filed/authenticate.c | Diff File | ||
mod - src/filed/filed_conf.c | Diff File | ||
mod - src/filed/filed_conf.h | Diff File | ||
master 3bdfdd8f 2013-11-28 21:40 Marco van Wieringen Ported: N/A Details Diff |
Add support for setting allowed cns for passive mode. Fixes 0000257: When using passive mode and TLS using NAT the verify peer mode will fail. |
||
mod - src/filed/authenticate.c | Diff File | ||
mod - src/filed/filed_conf.c | Diff File | ||
mod - src/filed/filed_conf.h | Diff File | ||
bareos-13.2 52acbfbc 2013-11-28 20:40 Ported: N/A Details Diff |
Add support for setting allowed cns for passive mode. Fixes 0000257: When using passive mode and TLS using NAT the verify peer mode will fail. |
Affected Issues 0000257 |
|
mod - src/filed/authenticate.c | Diff File | ||
mod - src/filed/filed_conf.c | Diff File | ||
mod - src/filed/filed_conf.h | Diff File |