static Bool VmBackupNullSnapshotDone(VmBackupState *state, void *clientData) { VmBackup_SetCurrentOp(state, NULL, NULL, __FUNCTION__); return TRUE; }
static Bool VmBackupNullStart(VmBackupState *state, void *clientData) { VmBackup_SetCurrentOp(state, NULL, NULL, __FUNCTION__); return VmBackup_SendEvent(VMBACKUP_EVENT_SNAPSHOT_COMMIT, 0, ""); }
static void VmBackupNullStart(ToolsAppCtx *ctx, void *clientData) { VmBackupState *state = (VmBackupState*) clientData; /* * This is more of a "let's at least do something" than something that * will actually ensure data integrity... */ sync(); VmBackup_SetCurrentOp(state, NULL, NULL, __FUNCTION__); if (!VmBackup_SendEvent(VMBACKUP_EVENT_SNAPSHOT_COMMIT, 0, "")) { g_warning("Failed to send commit event to host"); state->freezeStatus = VMBACKUP_FREEZE_ERROR; } else { state->freezeStatus = VMBACKUP_FREEZE_FINISHED; } }
static Bool VmBackupStartScripts(VmBackupScriptType type) { const char *opName; VmBackupMState nextState; g_debug("*** %s\n", __FUNCTION__); switch (type) { case VMBACKUP_SCRIPT_FREEZE: opName = "VmBackupOnFreeze"; nextState = VMBACKUP_MSTATE_SCRIPT_FREEZE; break; case VMBACKUP_SCRIPT_FREEZE_FAIL: opName = "VmBackupOnFreezeFail"; nextState = VMBACKUP_MSTATE_SCRIPT_ERROR; break; case VMBACKUP_SCRIPT_THAW: opName = "VmBackupOnThaw"; nextState = VMBACKUP_MSTATE_SCRIPT_THAW; break; default: NOT_REACHED(); } if (gBackupState->execScripts && !VmBackup_SetCurrentOp(gBackupState, VmBackup_NewScriptOp(type, gBackupState), NULL, opName)) { VmBackup_SendEvent(VMBACKUP_EVENT_REQUESTOR_ERROR, VMBACKUP_SCRIPT_ERROR, "Error when starting custom quiesce scripts."); return FALSE; } gBackupState->machineState = nextState; return TRUE; }