]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
Update list medata usage message
authorEric Bollengier <eric@baculasystems.com>
Mon, 29 Nov 2021 10:05:48 +0000 (11:05 +0100)
committerEric Bollengier <eric@baculasystems.com>
Thu, 14 Sep 2023 11:56:56 +0000 (13:56 +0200)
bacula/src/cats/cats.c
bacula/src/dird/ua_cmds.c
bacula/src/dird/ua_output.c

index 8cef8a602b3baaa1b4b5c8afd59b9f23e0d4fb46..5bacb6c5e8c611d0def10ef2dcee4077cac3bd68 100644 (file)
@@ -676,6 +676,25 @@ void META_DBR::get_all_keys(POOLMEM **where)
    }
 }
 
+bool META_DBR::check()
+{
+   if (!Type[0]) {
+      bsnprintf(errmsg, sizeof(errmsg), _("Type is not set"));
+      return false;
+   }
+
+   if (!Owner[0]) {
+      bsnprintf(errmsg, sizeof(errmsg), _("Owner is not set"));
+      return false;
+   }
+
+   if (!Tenant[0]) {
+      bsnprintf(errmsg, sizeof(errmsg), _("Tenant not set"));
+      return false;
+   }
+   return true;
+}
+
 void META_DBR::create_db_filter(JCR *jcr, BDB *db, POOLMEM **where)
 {
    const char *prefix;
index a2f6f7382277a3d42d36615881d475d411ed29bb..83fdf7ef86f0644208fbec0e3feddad83ac1ec36 100644 (file)
@@ -138,8 +138,9 @@ static struct cmdstruct commands[] = {                                      /* C
        "\tevents [type=<str> | limit=<int> | order=<asc|desc> | days=<int> | start=<time-specification> | end=<time-specification> |\n"
        "\t\t source=<str> | code=<str> | type=<str> ]\n"
        "\tobjects [jobid=<jobid> client=<cli> type=<str> | category=<str> | status=<S> | limit=<int> | order=<asc|desc> ]\n"
-       "\tmetadata type=<email|attachment> [jobid=<nn> client=<cc> order=<Asc|desc> limit=<nn> orderby=<time> offset=<nn>]\n"
-       "\t   [from=<str> to=<str> cc=<str> tags=<str> subject=<str> bodypreview=<str> all=<str>\n"
+       "\tmetadata type=<email|attachment> tenant=<str> owner=<str>\n"
+       "\t    [jobid=<jobids> client=<cc> order=<Asc|desc> limit=<nn> orderby=<time> offset=<nn>]\n"
+       "\t    [from=<str> to=<str> cc=<str> tags=<str> subject=<str> bodypreview=<str> all=<str>\n"
        "\t    minsize=<int> maxsize=<int> importance=<str> isread=<0|1> isdraft=<0|1> categories=<str>\n"
        "\t    conversationid=<str> hasattachment=<0|1> starttime=<time> endtime=<time>\n"
        "\t    emailid=<str>]\n"
@@ -152,13 +153,13 @@ static struct cmdstruct commands[] = {                                      /* C
        "\tfilemedia jobid=<nn> fileindex=<mm> | clients\n"
        "\tevents [type=<str> | limit=<int> | order=<asc|desc> | days=<int> | start=<time-specification> | end=<time-specification> ]\n"
        "\tobject [jobid=<jobid> client=<cli> type=<name> category=<str> order=<asc/desc> limit=<n>\n"
-       "\tmetadata type=<email|attachment> [jobid=<nn> client=<cc> order=<Asc|desc> limit=<nn> orderby=<time>\n"
-       "\t                                  minsize=<nn> maxsize=<nn> offset=<nn>]\n"
-       "\t   [ from=<str> to=<str> cc=<str> tags=<str> subject=<str> bodypreview=<str> all=<str>\n"
+       "\tmetadata type=<email|attachment> tenant=<str> owner=<str> \n"
+       "\t    [jobid=<jobids> client=<cc> order=<Asc|desc> limit=<nn> orderby=<time> offset=<nn>]\n"
+       "\t    [ from=<str> to=<str> cc=<str> tags=<str> subject=<str> bodypreview=<str> all=<str>\n"
        "\t    importance=<str> isread=<0|1> isdraft=<0|1> categories=<str>\n"
        "\t    conversationid=<str> hasattachment=<0|1> starttime=<time> endtime=<time>\n"
        "\t    emailid=<str> ]\n"
-       "\t   [ name=<str> emailid=<str> ]\n"
+       "\t    [ name=<str> emailid=<str> ]\n"
       ), false},
 
  { NT_("messages"),   messagescmd,   _("Display pending messages"),   NT_(""),    false},
index f7ce5a70a17ff97f44ca3fec988f06ea5f47358e..ac7830cb8874b79454a210ed337eb0cd643f9661 100644 (file)
@@ -336,7 +336,8 @@ bail_out:
  *  list objects [type=objecttype job_id=id clientname=n,status=S] - list plugin objects
  *  list pluginrestoreconf jobid=x,y,z [id=k]
  *  list filemedia jobid=x fileindex=z
- *  list metadata type=[email|attachment] from=<str> to=<str> cc=<str> tags=<str> 
+ *  list metadata type=[email|attachment] owner=xxx tenant=xxx jobid=<x,w,z> from=<str>
+ *             to=<str> cc=<str> tags=<str> 
  *             subject=<str> bodypreview=<str> all=<str> minsize=<int> maxsize=<int> 
  *             importance=<str> isread=<0|1> isdraft=<0|1>
  *             categories=<str> conversationid=<str> hasattachment=<0|1>
@@ -1027,8 +1028,8 @@ static int do_list_cmd(UAContext *ua, const char *cmd, e_list_type llist)
                meta_r.order = bstrcasecmp(ua->argv[j], "DESC");
             }
          }
-         if (*meta_r.Type == 0) {
-            ua->error_msg(_("Invalid type argument\n"));
+         if (!meta_r.check()) {
+            ua->error_msg(_("Invalid parameters. %s\n"), meta_r.errmsg);
             return 1;
          }
          db_list_metadata_records(ua->jcr, ua->db, &meta_r, prtit, ua, llist);