From: Eric Bollengier Date: Tue, 28 Mar 2023 13:09:02 +0000 (+0200) Subject: Check ClientACL in acl_access_jobid_ok() X-Git-Tag: Release-13.0.3~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1cedfd71cf57beaee61e02a3936695222dde36ea;p=thirdparty%2Fbacula.git Check ClientACL in acl_access_jobid_ok() --- diff --git a/bacula/src/dird/ua_output.c b/bacula/src/dird/ua_output.c index 0001eed2f..aeaff3c02 100644 --- a/bacula/src/dird/ua_output.c +++ b/bacula/src/dird/ua_output.c @@ -286,14 +286,21 @@ bool acl_access_jobid_ok(UAContext *ua, const char *jobids) jr.JobId = jid; if (db_get_job_record(ua->jcr, ua->db, &jr)) { + ret = false; for (int i=0; isize(); i++) { if (strcasecmp(jr.Name, (char *)list->get(i)) == 0) { Dmsg3(1400, "ACL found %s in %d %s\n", jr.Name, Job_ACL, (char *)list->get(i)); ret = true; - goto bail_out; + break; } } + if (ret && !acl_access_client_ok(ua, jr.Client, JT_BACKUP)) { + ret = false; + } + } + if (!ret) { + goto bail_out; } }