Sophie

Sophie

distrib > Mageia > 1 > i586 > media > core-updates-src > by-pkgid > d7ee511874c36c6f8822afb16939afcd > files > 7

bacula-5.0.3-2.1.mga1.src.rpm

diff -Naurp bacula-5.0.3/src/dird/dird_conf.c bacula-5.0.3.oden/src/dird/dird_conf.c
--- bacula-5.0.3/src/dird/dird_conf.c	2010-08-05 16:29:51.000000000 +0200
+++ bacula-5.0.3.oden/src/dird/dird_conf.c	2012-10-09 15:03:46.203626632 +0200
@@ -552,6 +552,7 @@ void dump_resource(int type, RES *reshdr
    bool recurse = true;
    char ed1[100], ed2[100], ed3[100];
    DEVICE *dev;
+   UAContext *ua = (UAContext *)sock;
 
    if (res == NULL) {
       sendit(sock, _("No %s resource defined\n"), res_to_str(type));
@@ -597,6 +598,9 @@ void dump_resource(int type, RES *reshdr
       break;
 
    case R_CLIENT:
+      if (!acl_access_ok(ua, Client_ACL, res->res_client.hdr.name)) {
+         break;
+      }
       sendit(sock, _("Client: name=%s address=%s FDport=%d MaxJobs=%u\n"),
          res->res_client.hdr.name, res->res_client.address, res->res_client.FDport,
          res->res_client.MaxConcurrentJobs);
@@ -624,6 +628,9 @@ void dump_resource(int type, RES *reshdr
       break;
 
    case R_STORAGE:
+      if (!acl_access_ok(ua, Storage_ACL, res->res_store.hdr.name)) {
+         break;
+      }
       sendit(sock, _("Storage: name=%s address=%s SDport=%d MaxJobs=%u\n"
 "      DeviceName=%s MediaType=%s StorageId=%s\n"),
          res->res_store.hdr.name, res->res_store.address, res->res_store.SDport,
@@ -634,6 +641,9 @@ void dump_resource(int type, RES *reshdr
       break;
 
    case R_CATALOG:
+      if (!acl_access_ok(ua, Catalog_ACL, res->res_cat.hdr.name)) {
+         break;
+      }
       sendit(sock, _("Catalog: name=%s address=%s DBport=%d db_name=%s\n"
 "      db_driver=%s db_user=%s MutliDBConn=%d\n"),
          res->res_cat.hdr.name, NPRT(res->res_cat.db_address),
@@ -644,6 +654,9 @@ void dump_resource(int type, RES *reshdr
 
    case R_JOB:
    case R_JOBDEFS:
+      if (!acl_access_ok(ua, Job_ACL, res->res_job.hdr.name)) {
+         break;
+      }
       sendit(sock, _("%s: name=%s JobType=%d level=%s Priority=%d Enabled=%d\n"),
          type == R_JOB ? _("Job") : _("JobDefs"),
          res->res_job.hdr.name, res->res_job.JobType,
@@ -762,6 +775,9 @@ void dump_resource(int type, RES *reshdr
    case R_FILESET:
    {
       int i, j, k;
+      if (!acl_access_ok(ua, FileSet_ACL, res->res_fs.hdr.name)) {
+         break;
+      }
       sendit(sock, _("FileSet: name=%s\n"), res->res_fs.hdr.name);
       for (i=0; i<res->res_fs.num_includes; i++) {
          INCEXE *incexe = res->res_fs.include_items[i];
@@ -849,6 +865,9 @@ void dump_resource(int type, RES *reshdr
    }
 
    case R_SCHEDULE:
+      if (!acl_access_ok(ua, Schedule_ACL, res->res_sch.hdr.name)) {
+         break;
+      }
       if (res->res_sch.run) {
          int i;
          RUN *run = res->res_sch.run;
@@ -937,6 +956,9 @@ next_run:
       break;
 
    case R_POOL:
+      if (!acl_access_ok(ua, Pool_ACL, res->res_pool.hdr.name)) {
+         break;
+      }
       sendit(sock, _("Pool: name=%s PoolType=%s\n"), res->res_pool.hdr.name,
               res->res_pool.pool_type);
       sendit(sock, _("      use_cat=%d use_once=%d cat_files=%d\n"),
diff -Naurp bacula-5.0.3/src/tools/Makefile.in bacula-5.0.3.oden/src/tools/Makefile.in
--- bacula-5.0.3/src/tools/Makefile.in	2012-10-09 15:04:25.990628856 +0200
+++ bacula-5.0.3.oden/src/tools/Makefile.in	2012-10-09 15:03:24.508625509 +0200
@@ -27,12 +27,12 @@ dummy:
 
 GETTEXT_LIBS = @LIBINTL@
 
-FINDOBJS = testfind.o ../dird/dird_conf.o ../dird/inc_conf.o ../dird/run_conf.o
+FINDOBJS = testfind.o ../dird/dird_conf.o ../dird/inc_conf.o ../dird/ua_acl.o ../dird/run_conf.o
 
 # these are the objects that are changed by the .configure process
 EXTRAOBJS = @OBJLIST@
 
-DIRCONFOBJS = ../dird/dird_conf.o ../dird/run_conf.o ../dird/inc_conf.o
+DIRCONFOBJS = ../dird/dird_conf.o ../dird/ua_acl.o ../dird/run_conf.o ../dird/inc_conf.o
 
 NODIRTOOLS = bsmtp
 DIRTOOLS = bsmtp dbcheck drivetype fstype testfind testls bregex bwild bbatch bregtest bvfs_test ing_test
@@ -77,6 +77,9 @@ drivetype: Makefile drivetype.o ../lib/l
 dird_conf.o: ../dird/dird_conf.c
 	$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
 
+ua_acl.o: ../dird/ua_acl.c
+	$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+
 run_conf.o: ../dird/run_conf.c
 	$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<