]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/filed/fd_plugins.h
Add bVarWorkingDir to filed plugins
[bacula/bacula] / bacula / src / filed / fd_plugins.h
index 92235c868bce88413f41c0d71539f019bc7df8b0..cbfe199e8019c33c35e21942ca46620f24a17c5e 100644 (file)
 #include "../win32/filed/vss.h"
 #endif
 
+/*
+ * This packet is used for the restore objects
+ *  It is passed to the plugin when restoring
+ *  the object.
+ */
+struct restore_object_pkt {
+   int32_t pkt_size;                  /* size of this packet */
+   char *object_name;                 /* Object name */
+   char *object;                      /* restore object data to save */
+   int32_t object_type;               /* FT_xx for this file */             
+   int32_t object_len;                /* restore object length */
+   int32_t object_index;              /* restore object index */
+   int32_t stream;                    /* attribute stream id */
+   uint32_t JobId;                    /* JobId object came from */
+   int32_t pkt_end;                   /* end packet sentinel */
+};
+
 /*
  * This packet is used for file save info transfer.
 */
@@ -82,7 +99,10 @@ struct save_pkt {
    uint32_t flags;                    /* Bacula internal flags */
    bool portable;                     /* set if data format is portable */
    char *cmd;                         /* command */
+   char *object_name;                 /* Object name to create */
    char *object;                      /* restore object data to save */
+   int32_t object_len;                /* restore object length */
+   int32_t index;                     /* restore object index */
    int32_t pkt_end;                   /* end packet sentinel */
 };
 
@@ -152,7 +172,8 @@ typedef enum {
   bVarAccurate  = 9,
   bVarFileSeen  = 10,
   bVarVssObject = 11,
-  bVarVssDllHandle = 12
+  bVarVssDllHandle = 12,
+  bVarWorkingDir = 13
 } bVariable;
 
 /* Events that are passed to plugin */
@@ -173,6 +194,7 @@ typedef enum {
   bEventVssBackupAddComponents          = 14,
   bEventVssRestoreLoadComponentMetadata = 15,
   bEventVssRestoreSetComponentsSelected = 16,
+  bEventRestoreObject                   = 17,
 } bEventType;
 
 typedef struct s_bEvent {