#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.
*/
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 */
};
bVarAccurate = 9,
bVarFileSeen = 10,
bVarVssObject = 11,
- bVarVssDllHandle = 12
+ bVarVssDllHandle = 12,
+ bVarWorkingDir = 13
} bVariable;
/* Events that are passed to plugin */
bEventVssBackupAddComponents = 14,
bEventVssRestoreLoadComponentMetadata = 15,
bEventVssRestoreSetComponentsSelected = 16,
+ bEventRestoreObject = 17,
} bEventType;
typedef struct s_bEvent {