Esempio n. 1
0
    def login_pressed(self):
        raw_users = util.read_file("users.txt")
        if raw_users == None:
            users = []
            raw_users = ""
        else:
            users = util.trim(raw_users).split("\n")
        user_lookup = {}
        for user in users:
            name = util.alphanums(util.trim(user[32:]))
            password = user[:32].lower()
            user_lookup[name] = password

        user = util.alphanums(self.username.text)
        password = user_lookup.get(user, None)
        if password == None:
            password = util.md5(str(time.time()) + "leprechauns")
            raw_users += "\n" + password + user
            util.write_file("users.txt", raw_users)
        self.auth_request = network.send_authenticate(user, password)
        self.password = password
Esempio n. 2
0
    def login_pressed(self):
        raw_users = util.read_file('users.txt')
        if raw_users == None:
            users = []
            raw_users = ''
        else:
            users = util.trim(raw_users).split('\n')
        user_lookup = {}
        for user in users:
            name = util.alphanums(util.trim(user[32:]))
            password = user[:32].lower()
            user_lookup[name] = password

        user = util.alphanums(self.username.text)
        password = user_lookup.get(user, None)
        if password == None:
            password = util.md5(str(time.time()) + "leprechauns")
            raw_users += "\n" + password + user
            util.write_file('users.txt', raw_users)
        self.auth_request = network.send_authenticate(user, password)
        self.password = password
	def update_address(self, new_address):
		global _server_address
		_server_address = new_address
		util.verboseprint("SERVER HAS MOVED TO:", new_address)
		util.write_file('server.txt', new_address)
 def update_address(self, new_address):
     global _server_address
     _server_address = new_address
     util.verboseprint("SERVER HAS MOVED TO:", new_address)
     util.write_file('server.txt', new_address)
Esempio n. 5
0
    def receive(self):
        """ This main function initializes the radios,
        receives the file and stores it in memory. """

        # Initialize loop variables and functions
        rx_success = False
        seq_num = 1
        payload_list = list()
        self.receiver.startListening()

        # Receive file
        while not rx_success:
            rx_buffer = []
            received_something = False
            while not received_something:
                if self.wait_for_data(self.receiver):
                    self.receiver.read(rx_buffer,
                                       self.receiver.getDynamicPayloadSize())
                    received_something = True

            payload = rx_buffer[self.config.CRC_SIZE +
                                self.config.SEQ_NUM_SIZE:]
            if bytes(payload) != b'ENDOFTRANSMISSION':
                crc = rx_buffer[:self.config.CRC_SIZE]
                seq = int.from_bytes(
                    rx_buffer[self.config.CRC_SIZE:self.config.CRC_SIZE +
                              self.config.SEQ_NUM_SIZE],
                    byteorder='big')
                seq_payload = rx_buffer[self.config.CRC_SIZE:]
                if util.check_crc(crc, seq_payload):
                    if seq == seq_num:
                        util.send_packet(self.sender,
                                         self.build_frame(b'ACK', seq_num))
                        if seq_num == 1 and len(payload_list) == 0:
                            payload_list.append(bytes(payload))
                            print("Packet number " + str(seq_num) +
                                  " received successfully")
                    elif seq == seq_num + 1:
                        seq_num = seq_num + 1
                        payload_list.append(bytes(payload))
                        util.send_packet(self.sender,
                                         self.build_frame(b'ACK', seq_num))
                        print("Packet number " + str(seq_num) +
                              " received successfully")
                    else:
                        print("        Receiver out of order packet. Rcv: " +
                              str(seq) + " Exp: " + str(seq_num + 1))
                else:
                    util.send_packet(self.sender,
                                     self.build_frame(b'ERROR', seq_num))
                    print("    Packet number " + str(seq_num) +
                          " received incorrectly")
            else:
                seq_num = seq_num + 1
                util.send_packet(self.sender,
                                 self.build_frame(b'ACK', seq_num))
                rx_success = True
                print("RECEPTION SUCCESSFUL")

        # Save and uncompress file
        try:
            util.write_file(self.config.OUT_FILEPATH_COMPRESSED, payload_list)
            uncompress_success = util.uncompress_file(self.config)
        except IOError:
            print("ERROR when saving the file")
            return False

        if uncompress_success:
            # Return true if successful
            return True
        else:
            return False