def restore(self, restore_map): for key in restore_map['creds']: self.creds[tuple(key.split('/'))] = restore_map['creds'][key] for val in restore_map['creds_keys']: self.creds_keys.append(tuple(val.split('/'))) for key in restore_map['domain_info']: self.domain_info[tuple( key.split('/'))] = restore_map['domain_info'][key] class RestoreJob(): def __init__(self, shell): self.shell = shell def display(self): self.shell.print_plain(self.results) def status_string(self): if self.completed == 4: return "Completed" else: return "Failed" for job in restore_map['jobs']: rs_job = RestoreJob(self) for k, v in job.items(): setattr(rs_job, k, v) self.jobs[rs_job.key] = rs_job class RestoreStager(): def __init__(self, payload): self.payload = payload class RestorePayload(): def __init__(self): self.id = '-1' class RestoreSession(): def __init__(self, shell): self.shell = shell def set_reconnect(self): pass def kill(self): self.killed = True self.shell.print_good("Zombie %d: Killed!" % self.id) rs_stager = RestoreStager(RestorePayload()) for session in restore_map['sessions']: rs_session = RestoreSession(self) for k, v in session.items(): setattr(rs_session, k, v) rs_session.stager = rs_stager self.sessions[rs_session.key] = rs_session
def restore(self, restore_map): for key in restore_map['creds']: self.creds[tuple(key.split('/'))] = restore_map['creds'][key] for val in restore_map['creds_keys']: self.creds_keys.append(tuple(val.split('/'))) for key in restore_map['domain_info']: self.domain_info[tuple( key.split('/'))] = restore_map['domain_info'][key] class RestoreJob(): def __init__(self, shell): self.shell = shell def display(self): self.shell.print_plain(self.results) def status_string(self): if self.completed == 4: return "Complete" else: return "Failed" for job in restore_map['jobs']: fs_job = RestoreJob(self) for k, v in job.items(): setattr(fs_job, k, v) self.jobs.append(fs_job) class RestoreStager(): def __init__(self): pass class RestoreSession(): def __init__(self): pass def set_reconnect(self): pass fs = RestoreStager() fs.sessions = [] fs.payload_id = '-1' for session in restore_map['sessions']: fs_session = RestoreSession() for k, v in session.items(): setattr(fs_session, k, v) fs_session.stager = fs fs.sessions.append(fs_session) self.stagers.append(fs)