Changesets: bareos
master a2e9cfb4 2016-09-01 19:40 Ported: N/A Details Diff |
Tweaks. | ||
mod - src/lib/parse_conf.h | Diff File | ||
mod - src/lib/res.c | Diff File | ||
master 08bb7f15 2016-09-01 19:40 Ported: N/A Details Diff |
bcommand: Filter resources on list/llist. This patch expands the OUTPUT_FORMATTER with a filtering framework. On instantiate of the class you specify a callback function which does the filtering e.g. returns true or false to indicate that the item should or should not be printed. The following new methods are added to the OUTPUT_FORMATTER: - add_limit_filter_tuple(limit) Sets a new filtering tuple that limits the number of output lines. - add_acl_filter_tuple(column, acltype) Sets a new filtering tuple where column is the column number in the SQL ROW returned and acltype being the ACL type to check against using acl_access_ok(). - add_res_filter_tuple(column, restype) Sets a new filtering tuple where column is the column number in the SQL ROW returned and restype being the resource type to check against using GetResWithName(). - add_enabled_filter_tuple(column, restype) Sets a new filtering tuple where column is the column number in the SQL ROW returned and restype being the resource type to retrieve and check the enabled flag of that resource. - add_disabled_filter_tuple(column, restype) Sets a new filtering tuple where column is the column number in the SQL ROW returned and restype being the resource type to retrieve and check the enabled flag of that resource. - clear_filters() Remove all filters currently set e.g. all tuples are removed. - has_filters() Returns if there are any filters defined. This allows you to shurtcut in the processing loop if no filtering needs to be done. Then there is no need to have the full overhead of calling the filter_data() methods that then finds out there is nothing to do. - has_acl_filters() Returns if there are any ACL filters defined. - filter_data(data) This function invokes the callback filter function with the data pointer you provide. - add_hidden_column(column) Sets the given column to the hidden status and as such it will not be printed in the output. This allows you to add a column that is used for filtering but is not printed and thus invisible for the end-user. - clear_hidden_columns() Remove all hidden columns currently set. - is_hidden_column(column) Returns if the given column is hidden or not. On instantiate of the OUTPUT_FORMATTER we set the so called context to the current UA (UserAgent) for the filter function so that is also passed to the filter callback function. This is analog to the send() method which already existed. As acl_access_ok() needs the UA we need to have it accessable in the filtering function. When you specify current in the cmdline of a list or llist it will now set the needed resource filters which will check if the resource is still in the active config before displaying it. When you specify enabled in the cmdline of a list or llist it will now set the needed resource filters which will check if the resource is enabled or not. When you specify disabled in the cmdline of a list or llist it will now set the needed resource filters which will check if the resource is disabled or not. We now always call get_jobid_from_cmdline() to get the jobid. This way we can check in get_jobid_from_cmdline() if the jobid given is allowed under the current ACL settings for the UA. For this we lookup the job data and the client data and check against the JobAcl and ClientAcl. As part of refactoring this code we created some new and moved some functions to be methods in the UAContext. From now on there is a GetResByName() method that should be used to get the pointer to a resource instead of calling the GetResByName() function directly in src/lib/res.c as this version checks directly if the named console has access to the wanted resource so we no longer have to code a call to acl_access_ok(). All the macros for GetXXXResByName now are also methods of the UAContext and use the new method. We also removed quite some redundant LockRes() and UnlockRes() calls as at the lowest level when calling a GetXXXResByName() a GetResByName() is called and that already does the right locking and unlocking. One of the nicer advantages of the new approach to check for acl_acces_ok() in the resource lookup is that the end-user gets back resource unknown instead of access denied to resource (an audit event is logged however). This is also how things work in most password authentication lookups in most UNIXes these days as such you don't leak information about existing but not reachable resources. From now on messages will only be shown using the messages and .messages functions to consoles with a non restrictive Command ACL setting. This way no information can leak to any named console which doesn't have any access to certain commands. Those named consoles can still do a list log and see the data they are supposed to see under the restrictions of the ACL that apply to those consoles. Fixes 0000628: output of list command not restricted for own jobs/clients on restricted consoles with ACLs |
Affected Issues 0000628 |
|
mod - src/cats/protos.h | Diff File | ||
mod - src/cats/sql.c | Diff File | ||
mod - src/cats/sql_list.c | Diff File | ||
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/migrate.c | Diff File | ||
mod - src/dird/protos.h | Diff File | ||
mod - src/dird/ua.h | Diff File | ||
mod - src/dird/ua_acl.c | Diff File | ||
mod - src/dird/ua_audit.c | Diff File | ||
mod - src/dird/ua_cmds.c | Diff File | ||
mod - src/dird/ua_configure.c | Diff File | ||
mod - src/dird/ua_db.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/ua_update.c | Diff File | ||
mod - src/lib/output_formatter.c | Diff File | ||
mod - src/lib/output_formatter.h | Diff File | ||
mod - src/lib/parse_conf.h | Diff File | ||
mod - src/lib/res.c | Diff File | ||
master 32dc0a51 2016-09-01 19:40 Ported: N/A Details Diff |
bcommand: Add tri-state filter support. This adds so called tri-state support to the filtering which allows to return a tri-state (e.g. show, suppress, unknown) which fits better then a boolean that only can have 2 values. When the filter column is not filled we cannot really check if a resource is enabled/disabled/exists or passes an ACL so we now return OF_FILTER_STATE_UNKNOWN indicating this. We now count all OF_FILTER_STATE_SHOW and OF_FILTER_STATE_UNKNOWN states returned by the different filters set (set in the calling function) when all filters are applied and there are no filters returning an explicit OF_FILTER_STATE_SHOW and we do have one or more OF_FILTER_STATE_UNKNOWN return values we will explicitly suppress this value as we cannot be sure that we should or should not show the data. |
||
mod - src/dird/protos.h | Diff File | ||
mod - src/dird/ua_output.c | Diff File | ||
mod - src/lib/output_formatter.c | Diff File | ||
mod - src/lib/output_formatter.h | Diff File | ||
master 21d49240 2016-09-01 19:40 Ported: N/A Details Diff |
dird: Add warning message that enable/disable is temporary. | ||
mod - src/dird/ua_cmds.c | Diff File | ||
master b35f3717 2016-09-01 19:24 Ported: N/A Details Diff |
Merge branch 'bareos-15.2' into bareos-16.2 | ||
mod - src/cats/bvfs.c | Diff File | ||
mod - src/dird/ua_acl.c | Diff File | ||
mod - src/dird/ua_dotcmds.c | Diff File | ||
bareos-15.2 a7422402 2016-09-01 19:13 Ported: N/A Details Diff |
bcommand: Fix acl regular expression matching. We should check for partial matches and disallow those. For that we need to lose the REG_NOSUB flag and pass a nmatch and pmatch value to regexec() and check the start and end offset and make sure that its the full string that matches. We also check if the string has any hints as to if its a regular expression at all. |
||
mod - src/dird/ua_acl.c | Diff File | ||
bareos-15.2 95e12931 2016-09-01 19:06 Ported: N/A Details Diff |
bcommand: BVFS should check for ACLs. BVFS has pretty bad ideas on security it allows the end user to specify any set of JobIds without checking ACLs next to that is allows you to specify any client without checking access and it also allows filesets to be browsed that may not be part of your ACLs. This patch tries to make things more secure by filtering the JobIds you can supply to the commands and which are returned by making sure that the JobName and ClientName used by the Job are within your ACLs. User input on clients and filesets is also validated against the proper ACLs. |
||
mod - src/dird/ua_dotcmds.c | Diff File | ||
bareos-16.2 0813dae8 2016-08-31 12:48 Ported: N/A Details Diff |
windows installer: added webui The windows installer now also contains the webui. |
||
mod - platforms/win32/winbareos-nsi.spec | Diff File | ||
mod - platforms/win32/winbareos.nsi | Diff File | ||
master a886f6e5 2016-08-31 12:31 Philipp Storz Ported: N/A Details Diff |
Explain where the director address is configured | ||
mod - manuals/en/main/client-initiated-connection.tex | Diff File | ||
bareos-15.2 f0ea06f2 2016-08-31 12:26 Committer: mvwieringen Ported: N/A Details Diff |
bvfs: Do not add an empty path to path table | ||
mod - src/cats/bvfs.c | Diff File | ||
master cebc7bc8 2016-08-30 18:04 Ported: N/A Details Diff |
Merge branch 'bareos-16.2' | ||
mod - src/dird/consolidate.c | Diff File | ||
mod - src/dird/dird.c | Diff File | ||
mod - src/dird/dird_conf.c | Diff File | ||
mod - src/dird/dird_conf.h | Diff File | ||
mod - src/filed/fd_plugins.c | Diff File | ||
mod - src/lib/parse_conf.h | Diff File | ||
mod - src/plugins/filed/python-fd.c | Diff File | ||
bareos-16.2 31b75646 2016-08-30 17:50 Committer: mvwieringen Ported: N/A Details Diff |
Added MaxFullConsolidations directive With AlwaysIncrementalMaxFullAge, it is already possible to minimize the amount of data being copied when consolidations are done. MaxFullConsolidations was introduced to be able to limit the amount of consolidation jobs per run. This makes it possible to better distribute the load with many backups to be consolidated, so that e.g. every day only a maximum of two full consolidations will be run. The jobs that are skipped using this directive will then be run the next call of the consolidate job. |
||
mod - src/dird/consolidate.c | Diff File | ||
mod - src/dird/dird.c | Diff File | ||
mod - src/dird/dird_conf.c | Diff File | ||
mod - src/dird/dird_conf.h | Diff File | ||
mod - src/lib/parse_conf.h | Diff File | ||
master bdcaf5d7 2016-08-29 19:33 Bruno Friedmann Committer: Frank Bergkemper Ported: N/A Details Diff |
First french translation Signed-off-by: Frank Bergkemper <frank.bergkemper@bareos.com> |
||
mod - module/Application/language/fr_FR.po | Diff File | ||
mod - public/js/locale/fr_FR/LC_MESSAGES/fr_FR.po | Diff File | ||
master 2fb23cb3 2016-08-29 13:14 Ported: N/A Details Diff |
Merge branch 'bareos-16.2' | ||
mod - autoconf/configure.in | Diff File | ||
mod - configure | Diff File | ||
mod - debian/bareos-director.dirs | Diff File | ||
mod - debian/bareos-director.install.in | Diff File | ||
mod - debian/bareos-director.postinst.in | Diff File | ||
mod - debian/bareos-filedaemon.install.in | Diff File | ||
mod - debian/bareos-filedaemon.postinst.in | Diff File | ||
mod - debian/bareos-storage-ceph.install.in | Diff File | ||
rm - debian/bareos-storage-ceph.postinst.in | Diff File | ||
mod - debian/bareos-storage-fifo.install.in | Diff File | ||
rm - debian/bareos-storage-fifo.postinst.in | Diff File | ||
mod - debian/bareos-storage-glusterfs.install.in | Diff File | ||
rm - debian/bareos-storage-glusterfs.postinst.in | Diff File | ||
mod - debian/bareos-storage-tape.install.in | Diff File | ||
rm - debian/bareos-storage-tape.postinst.in | Diff File | ||
mod - debian/bareos-storage.install.in | Diff File | ||
mod - debian/bareos-storage.postinst.in | Diff File | ||
mod - debian/bareos-traymonitor.postinst.in | Diff File | ||
mod - platforms/packaging/bareos.spec | Diff File | ||
mod - scripts/bareos-config-lib.sh.in | Diff File | ||
mod - src/console/bconsole.conf.in | Diff File | ||
mod - src/console/console.c | Diff File | ||
mod - src/console/console_conf.c | Diff File | ||
add - src/defaultconfigs/bareos-dir.d/profile/operator.conf | Diff File | ||
mod - src/dird/Makefile.in | Diff File | ||
mod - src/dird/dird.c | Diff File | ||
mod - src/dird/dird_conf.c | Diff File | ||
mod - src/dird/dird_conf.h | Diff File | ||
mod - src/dird/job.c | Diff File | ||
mod - src/dird/ua_cmds.c | Diff File | ||
mod - src/dird/ua_configure.c | Diff File | ||
mod - src/dird/ua_dotcmds.c | Diff File | ||
mod - src/dird/ua_output.c | Diff File | ||
mod - src/dird/ua_status.c | Diff File | ||
mod - src/filed/filed_conf.c | Diff File | ||
mod - src/lib/lex.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/lmdb/lmdb.h | Diff File | ||
mod - src/lmdb/mdb.c | Diff File | ||
mod - src/lmdb/midl.h | Diff File | ||
mod - src/qt-console/bat_conf.cpp | Diff File | ||
mod - src/qt-tray-monitor/tray_conf.cpp | Diff File | ||
mod - src/stored/backends/Makefile.in | Diff File | ||
add - src/stored/backends/gfapi_device.d/bareos-dir.d/storage/Gluster.conf.example | Diff File | ||
add - src/stored/backends/rados_device.d/bareos-dir.d/storage/Rados.conf.example | Diff File | ||
add - src/stored/backends/unix_fifo_device.d/bareos-dir.d/storage/NULL.conf.example | Diff File | ||
add - src/stored/backends/unix_tape_device.d/bareos-dir.d/storage/Tape.conf.example | Diff File | ||
mod - src/stored/backends/unix_tape_device.d/bareos-sd.d/device/tapedrive-0.conf.example | 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/stored.c | Diff File | ||
mod - src/stored/stored_conf.c | Diff File | ||
bareos-16.2 1a8ba8f5 2016-08-29 13:14 Ported: N/A Details Diff |
Merge branch 'bareos-15.2' into bareos-16.2 | ||
mod - src/dird/ua_status.c | Diff File | ||
mod - src/lmdb/lmdb.h | Diff File | ||
mod - src/lmdb/mdb.c | Diff File | ||
mod - src/lmdb/midl.h | Diff File | ||
bareos-16.2 f2cfcd20 2016-08-29 12:41 Ported: N/A Details Diff |
build: Use STORED_RESTYPES define for resource types. | ||
mod - src/stored/backends/Makefile.in | Diff File | ||
bareos-16.2 89cf5035 2016-08-26 19:41 Ported: N/A Details Diff |
Configuration: add example files Add example Director storage resources for extra storage backends. Debian: improved traymonitor configuration packaging. |
||
mod - debian/bareos-director.install.in | Diff File | ||
mod - debian/bareos-filedaemon.install.in | Diff File | ||
mod - debian/bareos-storage-ceph.install.in | Diff File | ||
mod - debian/bareos-storage-fifo.install.in | Diff File | ||
mod - debian/bareos-storage-glusterfs.install.in | Diff File | ||
mod - debian/bareos-storage-tape.install.in | Diff File | ||
mod - debian/bareos-storage.install.in | Diff File | ||
mod - platforms/packaging/bareos.spec | Diff File | ||
mod - src/stored/backends/Makefile.in | Diff File | ||
add - src/stored/backends/gfapi_device.d/bareos-dir.d/storage/Gluster.conf.example | Diff File | ||
add - src/stored/backends/rados_device.d/bareos-dir.d/storage/Rados.conf.example | Diff File | ||
add - src/stored/backends/unix_fifo_device.d/bareos-dir.d/storage/NULL.conf.example | Diff File | ||
add - src/stored/backends/unix_tape_device.d/bareos-dir.d/storage/Tape.conf.example | Diff File | ||
mod - src/stored/backends/unix_tape_device.d/bareos-sd.d/device/tapedrive-0.conf.example | Diff File | ||
bareos-16.2 310991b7 2016-08-26 18:45 Ported: N/A Details Diff |
build: Rebuild configure. | ||
mod - configure | Diff File | ||
bareos-16.2 693d5ce4 2016-08-26 16:57 Ported: N/A Details Diff |
Debian: removed outdated postinst scripts These postinstall scripts tried to set permissions on files that no longer exists. Therefore these scripts get removed. To simplyfy Debian postinst scripts, common operations have been moved into the deploy_config function. |
||
mod - autoconf/configure.in | Diff File | ||
mod - debian/bareos-director.postinst.in | Diff File | ||
mod - debian/bareos-filedaemon.postinst.in | Diff File | ||
rm - debian/bareos-storage-ceph.postinst.in | Diff File | ||
rm - debian/bareos-storage-fifo.postinst.in | Diff File | ||
rm - debian/bareos-storage-glusterfs.postinst.in | Diff File | ||
rm - debian/bareos-storage-tape.postinst.in | Diff File | ||
mod - debian/bareos-storage.postinst.in | Diff File | ||
mod - debian/bareos-traymonitor.postinst.in | Diff File | ||
mod - scripts/bareos-config-lib.sh.in | Diff File | ||
mod - src/console/bconsole.conf.in | Diff File | ||
bareos-16.2 bcbb17f6 2016-08-25 01:20 Ported: N/A Details Diff |
subdirectory configuration scheme: adapt usage text | ||
mod - src/console/console.c | Diff File | ||
mod - src/dird/dird.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/stored.c | Diff File | ||
bareos-16.2 85b63f25 2016-08-22 21:06 Ported: N/A Details Diff |
bcommand: Check arguments to .authorized cmd. | ||
mod - src/dird/ua_dotcmds.c | Diff File | ||
bareos-16.2 b2ed8546 2016-08-22 20:12 Ported: N/A Details Diff |
Fix a problem with exiting on reload The CONFIG::parse_config_file can propagate exit behaviour on errors. It commit fixes a problem that occurs when using multiple configuration files. In this case, the default M_ERROR_TERM have been used in a couple of cases. |
||
mod - src/lib/lex.c | Diff File | ||
mod - src/lib/parse_conf.c | Diff File | ||
mod - src/lib/protos.h | Diff File | ||
master 303ad61a 2016-08-22 18:39 Joerg Steffens Ported: N/A Details Diff |
cleanup | ||
mod - manuals/en/main/bconsole.tex | Diff File | ||
mod - manuals/en/main/configure.tex | Diff File | ||
mod - manuals/en/main/programs.tex | Diff File | ||
bareos-15.2 6aae37e9 2016-08-22 18:12 Committer: mvwieringen Ported: N/A Details Diff |
bcommand: Fix status scheduler This prevents displaying disabled schedules in the preview of the status scheduler command. |
||
mod - src/dird/ua_status.c | Diff File | ||
master ccb42ee6 2016-08-22 15:48 Joerg Steffens Ported: N/A Details Diff |
Cleanup Plugin configuration directives. | ||
mod - manuals/en/main/bareos-fd-resource-client-definitions.tex | Diff File | ||
mod - manuals/en/main/bareos-sd-resource-storage-definitions.tex | Diff File | ||
mod - manuals/en/main/bconsole.tex | Diff File | ||
mod - manuals/en/main/director-resource-director-definitions.tex | Diff File | ||
mod - manuals/en/main/plugins.tex | Diff File |