Exemplo n.º 1
0
  def decrypt_all(self, directory=None, index=None, delete_encrypted=False):
    directory, index = self.default_if_necessary(directory, index)

    # TODO: stop depending on some self vars and not others
    # probably separate logic from instance vars with static methods?
    for file in index["files"]:
      decrypt_file(self.key, os.path.join(directory, file["filename_enc"]), out_filename=os.path.join(directory, file["filename"]))
      if delete_encrypted:
        os.remove(os.path.join(directory, file["filename_enc"]))
Exemplo n.º 2
0
    def decrypt_all(self, directory=None, index=None, delete_encrypted=False):
        directory, index = self.default_if_necessary(directory, index)

        # TODO: stop depending on some self vars and not others
        # probably separate logic from instance vars with static methods?
        for file in index["files"]:
            decrypt_file(self.key,
                         os.path.join(directory, file["filename_enc"]),
                         out_filename=os.path.join(directory,
                                                   file["filename"]))
            if delete_encrypted:
                os.remove(os.path.join(directory, file["filename_enc"]))
Exemplo n.º 3
0
    def load_index(self, directory=None):
        if not directory:
            directory = self.current_dir

        # init index if new dir
        if not os.path.isfile(index_path_enc(directory)):
            self.update_index(directory=directory)
            return empty_index(directory)

        # TODO: bypass temp file
        # TODO: use cStringIO to decrypt straight to memory
        decrypt_file(self.key, index_path_enc(directory))
        with open(index_path(directory), 'rb') as file:
            index = json.load(file)
        os.remove(index_path(directory))

        return index
Exemplo n.º 4
0
  def load_index(self, directory=None):
    if not directory:
      directory = self.current_dir

    # init index if new dir
    if not os.path.isfile(index_path_enc(directory)):
      self.update_index(directory=directory)
      return empty_index(directory)

    # TODO: bypass temp file
    # TODO: use cStringIO to decrypt straight to memory
    decrypt_file(self.key, index_path_enc(directory))
    with open(index_path(directory), 'rb') as file:
      index = json.load(file)
    os.remove(index_path(directory))
    
    return index