def main(): while True: try: try: client, address = s.accept() address = '@' + address[0] user = client.recv(32) if user in ALLOWED_USER: client.send('ok') # send confirmation to client login_name = client.recv(64) client.send('ok') listSession = client.recv(8) else: client.send('Error: User ' + user + ' is not allowed to delete session.') client.close() #write_log(FILE_OUT, user+address, 'Access', 'Not allowed to delete session.') #send_mail(SEND_TO, user+address, 'Access', 'Not allowed to delete session.') send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, {'send_to': ['*****@*****.**']}, user + address, 'Access', 'Not allowed to delete session.') continue except Exception, failure: write_log(FILE_OUT, 'Socket ', 'system', 'Error: ', str(failure)) #send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, {'send_to': ['*****@*****.**']}, # 'Error', 'system', str(failure)) continue login_name = correction(login_name) if login_name == 'QUIT': client.send('Error: Connection lost.') client.close() s.close() break if login_test(login_name): result = execute(login_name, listSession) #write_log(FILE_OUT, user+address, login_name, result.rstrip()) #send_mail(SEND_TO, user+address, login_name, result.rstrip()) client.send(result.rstrip()) client.close() send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, {'send_to': ['*****@*****.**']}, user + address, login_name, result.rstrip()) else: #write_log(FILE_OUT, user+address, login_name, 'Syntax error.') #send_mail(SEND_TO, user+address, login_name, 'Syntax error.') client.send('Error: ' + login_name + ' Syntax error.') client.close() send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, {'send_to': ['*****@*****.**']}, user + address, login_name, 'Syntax error.') except Exception, failure: write_log(FILE_OUT, user+address, login_name, 'Error: ', str(failure))
def main(ALLOWED_USER, SEND_TO): # For testing for user in ALLOWED_USER: try: file_path = '/export/home/'+user+'/dinput.txt' login_name_list = open_file(file_path) if login_name_list is not None: # If open_file can open file for login_name in login_name_list: login_name = correction(login_name) if login_test(login_name): result = execute(login_name) write_log(FILE_OUT, user, login_name, result.rstrip()) send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, SEND_TO, user, login_name, result.rstrip()) else: write_log(FILE_OUT, user, login_name, 'Possible syntax or semantic error.') send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, SEND_TO, user, login_name, 'Possible syntax or semantic error.') open(file_path, 'wb').close() except Exception, failure: write_log(FILE_OUT, user, 'system', 'Error: ', str(failure)) send_mail(SMTP_IP, SMTP_PORT, SEND_FROM, {'send_to': ['*****@*****.**']}, user, 'system', str(failure))
4.2 Server -> Client == 'Error: Incorrect login.':str otherwise('' or ' ') 4.2.1 Session close 5. Server <- Client == listSession:str 'del' or 'list' for different command 6.1 Server -> Client == 'Error: Connection lost' if 'QUIT' received 6.2 Server -> Client == result:str correct result 6.3 Server -> Client == 'Error: 'login_name+' Syntax error.':str ''' try: ALLOWED_USER = fetcher('users')['users'] SEND_TO = fetcher('send_to') SEND_FROM = fetcher('send_from') SMTP_IP = fetcher('smtp_ip') SMTP_PORT = fetcher('smtp_port') except Exception, failure: write_log(FILE_OUT, 'Error: ', 'system', 'Error: ', str(failure)) s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) host = '127.0.0.1' port = 3333 def main(): while True: try: try: client, address = s.accept() address = '@' + address[0] user = client.recv(32) if user in ALLOWED_USER: