예제 #1
0
파일: pymp.py 프로젝트: jdolan/pymp
def main():

	if not os.access(HOME, os.F_OK | os.W_OK):
		os.mkdir(HOME)  #create prefs directory

	if not remote.remote(sys.argv):
		Pymp(sys.argv[1:])  #create new Pymp
예제 #2
0
class Remote(Images.Standard):
    """ This IO Source provides for remote access """
    mandatory_parameters = ['host', 'device']

    def form(self, query, result):
        ## Fill the query with some defaults:
        query.default('port', '3533')

        result.textfield("Host", 'host')
        result.textfield("Port", 'port')
        result.textfield("Raw Device", 'device')

        query['host']

        self.calculate_partition_offset(query, result)

    def create(self, name, case, query):
        import remote
        offset = self.calculate_offset_suffix(query.get('offset', '0'))

        io = remote.remote(host=query['host'],
                           port=int(query.get('port', 3533)),
                           device=query['device'],
                           offset=offset)

        return io
예제 #3
0
파일: kietol.py 프로젝트: sepen/kietol
def main():
	
	if not os.access(HOME, os.F_OK | os.W_OK):
		os.mkdir(HOME)  #create prefs directory
		
	if not remote.remote(sys.argv):
		Kietol(sys.argv[1:])  #create new Kietol
예제 #4
0
    def create(self, name, case, query):
        import remote
        offset = self.calculate_offset_suffix(query.get('offset','0'))
        
        io = remote.remote(host = query['host'],
                           port = int(query.get('port', 3533)),
                           device = query['device'],
                           offset = offset)

        return io
예제 #5
0
    def test02RemoteIOSource(self):
        """ Test the remote iosource implementation """
        io1 = iosubsys.iosource([['subsys','advanced'],
                                 ['filename','%s/pyflag_stdimage_0.4.dd' % config.UPLOADDIR]])
        
        ## get the remote fd:
        import remote

        r = remote.remote("127.0.0.1", config.UPLOADDIR + self.test_file)

        ## Test the remote source
        IO.test_read_random(io1,r, io1.size, 1000000, 100)
예제 #6
0
 def check_iserverprocess(self):
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command(
         ''' ps -auxf | grep -v 'grep' | grep 'MSTRSvr' ''')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.iserverprocess_log(line)
     if 'MSTRSvr' in check_result[0]:
         self.update_item('iserver-process', 'match')
     else:
         self.update_item('iserver-process', 'notmatch')
예제 #7
0
    def test02RemoteIOSource(self):
        """ Test the remote iosource implementation """
        io1 = iosubsys.iosource(
            [['subsys', 'advanced'],
             ['filename',
              '%s/pyflag_stdimage_0.4.dd' % config.UPLOADDIR]])

        ## get the remote fd:
        import remote

        r = remote.remote("127.0.0.1", config.UPLOADDIR + self.test_file)

        ## Test the remote source
        IO.test_read_random(io1, r, io1.size, 1000000, 100)
예제 #8
0
 def check_iserverfreespace(self):
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command(' df -k ')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.disk_log(line)
         if 'iserver-install' in line:
             array = str(' '.join(line.split())).split(' ')
             if int(array[3]) / 1024 > 500:
                 self.update_item('iserver-install', 'match')
             else:
                 self.update_item('iserver-install', 'notmatch')
예제 #9
0
 def check_iserverfreememory(self):
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command(' free ')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.memory_log(line)
         if 'Mem' in line:
             array = str(' '.join(line.split())).split(' ')
             if (float(array[3]) + float(array[5])) / float(array[1]) < 0.9:
                 self.update_item('freememory', 'match')
             else:
                 self.update_item('freememory', 'notmatch')
예제 #10
0
 def check_semaphores(self):
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command(' cat /proc/sys/kernel/sem ')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.semaphores_log(line)
     array = str(check_result[0]).strip().split('\t')
     if int(array[0]) >= 250 and int(array[1]) >= 32000 and int(
             array[2]) >= 32 and int(array[3]) >= 4096:
         self.update_item('semaphores', 'match')
     else:
         self.update_item('semaphores', 'notmatch')
예제 #11
0
 def check_filehandlers(self):
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command(' ulimit -a ')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.filehandler_log(line)
         if 'open files' in line:
             array = str(' '.join(line.split())).split(' ')
             filehandlers = int(array[3])
             if filehandlers > int(self.exp['filehandler']):
                 self.update_item('filehandler', 'match')
             else:
                 self.update_item('filehandler', 'notmatch')
예제 #12
0
 def check(self):
     self.sqlhelper.exe_update_sql('''  update FetchResult set ui_status =  
     'running' where item_type = 'port' and task_id={0}'''.format(self.task_id))
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command('netstat -anl')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.port_log(line)
     for item in self.ports:
         if self.service_contain(check_result, item):
             self.update_item(item, 'match')
         else:
             self.update_item(item, 'notmatch')
예제 #13
0
 def check(self):
     self.sqlhelper.exe_update_sql('''  update FetchResult set ui_status =  
     'running' where item_type = 'reg' and task_id={0}'''.format(self.task_id))
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command('cat /iserver-install/BIN/Linux/MSIReg.reg ')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.reg_log(line)
     for item in self.regs:
         if self.regs_contain(check_result, item):
             self.update_item(item[0], 'match')
         else:
             self.update_item(item[0], 'notmatch')
예제 #14
0
 def check(self):
     self.sqlhelper.exe_update_sql('''  update FetchResult set ui_status =  
     'running' where item_type = 'library' and task_id={0}'''.format(
         self.task_id))
     r = remote.remote()
     r.connect()
     stdout, stderr = r.run_command('sudo yum list installed ')
     check_result = stdout.readlines()
     r.close()
     for line in check_result:
         logger.lib_log(line)
     for item in self.libs:
         if self.libs_contain(check_result, item):
             self.update_item(item, 'match')
         else:
             self.update_item(item, 'notmatch')
예제 #15
0
파일: process.py 프로젝트: dk47os3r/broapt
def process(entry):  # pylint: disable=inconsistent-return-statements
    print(f'+ Processing {entry.path!r}')

    mime_type = None
    for name in API_DICT.keys():
        if fnmatch.fnmatch(entry.mime.name, name):
            mime_type = name
            break

    if mime_type is not None:
        mime = entry.mime.name
        api = API_DICT[mime_type]
        cwd = make_cwd(api, entry=entry)
    else:
        mime = 'example'
        api = API_DICT['example']
        cwd = make_cwd(api, example=True)

    if api.remote:
        if remote(entry, mime, api):
            return issue(mime)
        return print_file(entry.path, DUMP)

    # set up environ
    env = make_env(api)
    env['BROAPT_PATH'] = entry.path
    env['BROAPT_MIME'] = entry.mime.name

    # run install commands
    if not api.inited.value:
        with api.locked:
            if init(api, cwd, env, mime, entry.uuid):
                return issue(mime)

    # run scripts commands
    scripts_log = 1
    for command in api.scripts:
        log = f'{entry.uuid}-scripts.{scripts_log}'
        if run(command, cwd, env, mime, file=log):
            return issue(mime)
        scripts_log += 1

    # run report command
    log = f'{entry.uuid}-report.1'
    if run(api.report, cwd, env, mime, file=log):
        return issue(mime)
    print_file(entry.path, file=DUMP)
예제 #16
0
 def __init__(self):
     self.api=api.API(self)
     self.remote=remote.remote(self)
예제 #17
0
 def setUp(self):
     self.con = remote.remote(host="localhost", user='', pswd='')
data = []
'''read data from txt'''
fileName = 'user_key_word'
# temp = importData(fileName)
f = open('data_' + fileName, 'r')
temp = cPickle.loads(''.join(f.readlines()))
f.close()
NORM = int(math.ceil(float(len(temp))/size))
if rank != 0:
    if rank < size - 1:
        data = dict(temp.items()[(rank-1)*NORM:rank*NORM])
    if rank == size - 1:
        data = dict(temp.items()[(rank-1)*NORM:])

'''initialize sites''' 
REMOTE = remote(data, {})
del temp, data
SUP = 0.2/NORM   # threshold of support
CONF = 0.7	 # threshold of confidence
'''rank 0: root need no initializaion'''
    
'''main'''
breakFlag = 0
GLOBAL_LARGE = []
while 1:
    '''remmote site'''
    Transaction = []
    if rank != 0:
        '''receive global_large from home site'''
        if k > 1 and breakFlag == 0:
            temp = comm.recv(source = 0, tag = 3*(k-1))
size = 200

k = 1
"""read data from txt"""
fileName = "user_key_word"
# temp = importData(fileName)
f = open("data_" + fileName, "r")
temp = cPickle.loads("".join(f.readlines()))
f.close()
NORM = int(math.ceil(float(len(temp)) / size))
"""initialize sites"""
REMOTE = {}  # dict of remote sites
for rank in range(size):
    if rank < size - 1:
        data = dict(temp.items()[rank * NORM : (rank + 1) * NORM])
        REMOTE[rank] = remote(data, {})
    if rank == size - 1:
        data = dict(temp.items()[rank * NORM :])
        REMOTE[rank] = remote(data, {})

SUP = 0.2 / NORM  # threshold of support
CONF = 0.7
breakFlag = [0] * size
"""main"""
while 1:
    """remmote site"""
    Transaction = [[]] * size
    print "step ", k
    """initialize"""
    for rank in range(size):
        if breakFlag[rank] == 0:
예제 #20
0
 def setUp(self):
     self.con = remote.remote(host="localhost", user='', pswd='')