From 696b6cd966f0016c975899dfadba9fddea0fe55c Mon Sep 17 00:00:00 2001 From: Marco van Wieringen Date: Sat, 10 May 2014 20:45:41 +0200 Subject: [PATCH] Don't show unauthorized schedules/jobs in status scheduler. Fixes #290: Error in bconsole-ACL --- src/dird/ua_status.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/dird/ua_status.c b/src/dird/ua_status.c index 70863ac4327..11c104e4d52 100644 --- a/src/dird/ua_status.c +++ b/src/dird/ua_status.c @@ -640,6 +640,10 @@ static void do_scheduler_status(UAContext *ua) foreach_res(sched, R_SCHEDULE) { int cnt = 0; + if (!acl_access_ok(ua, Schedule_ACL, sched->hdr.name)) { + continue; + } + if (schedulegiven) { if (!bstrcmp(sched->hdr.name, schedulename)) { continue; @@ -655,6 +659,10 @@ static void do_scheduler_status(UAContext *ua) } } else { foreach_res(job, R_JOB) { + if (!acl_access_ok(ua, Job_ACL, job->hdr.name)) { + continue; + } + if (client && job->client != client) { continue; } @@ -709,6 +717,10 @@ static void do_scheduler_status(UAContext *ua) } else { LockRes(); foreach_res(job, R_JOB) { + if (!acl_access_ok(ua, Job_ACL, job->hdr.name)) { + continue; + } + if (job->schedule && job->client == client) { if (!show_scheduled_preview(ua, job->schedule, overview, &max_date_len, tm, time_to_check)) { @@ -727,6 +739,10 @@ static void do_scheduler_status(UAContext *ua) */ LockRes(); foreach_res(sched, R_SCHEDULE) { + if (!acl_access_ok(ua, Schedule_ACL, sched->hdr.name)) { + continue; + } + if (schedulegiven) { if (!bstrcmp(sched->hdr.name, schedulename)) { continue;