def start(self): """ All program flow is handled here """ # usage, init, checks Usage.banner() args = ArgsParser.parseArgs() self.opts = vars(args) Check.checkArgc() Check.checkArgs(['-n', '-m']) Check.checkActions(self.opts['action']) Check.checkReportFormat(self.opts['format']) # ini config Wrapper.msg("Reading configuration file " + "'" + self.opts['config'] + "'") self.ini = IniConfig(self.opts['config']) self.ini.readConfig() Check.checkIniFile(self.ini.config) # additional options from config file self.getOptions() ### nessus actions ### # nessus report if self.opts['action'] in ACTIONS: self.processReports(self.opts['action']) # send reports if self.opts['mail']: if self.opts['action'] in ACTIONS: self.sendReports(self.opts['action']) return