passphrase = sys.argv[4] else: # optional passphrase not specified. lets read it from console interactively passphrase = getpass.getpass("Type in...\n") path_temp_used = os.path.join(path_temp_base, os.path.basename(__file__) + "_temp_DELETE_ME_NOW") path_utils.scratchfolder(path_temp_used) ext_list_aux = [] ext_list_aux.append(extension) filelist = fsquery.makecontentlist(path_files, True, True, False, True, False, ext_list_aux) report = [] for f in filelist: if not decrypt.symmetric_decrypt(f, os.path.join(path_temp_used, os.path.basename(f) + ".tmp"), passphrase): report.append(f + " FAILED") print("\nWill print the report...:") for r in report: print(r) if len(report) == 0: print("All passed!") else: print("\nThere were %s errors." % len(report)) try: shutil.rmtree(path_temp_used) except: print("\nWARNING: Failed deleting %s! You should do it now manually." % path_temp_used)
encpassfile = sys.argv[1] # tests permissions of encpassfile p = os.stat(encpassfile) if p.st_mode & stat.S_IRWXG: print("WARNING: This file has group permissions!") if p.st_mode & stat.S_IRWXO: print("WARNING: This file has permissions for others!") if not os.path.exists(encpassfile): print("%s does not exist. Aborting." % encpassfile) sys.exit(1) random_fn = check_output(["randomfilenamegen.sh"]) passphrase = getpass.getpass("Type in...\n") if not decrypt.symmetric_decrypt(encpassfile, random_fn, passphrase): print("Failed decrypting file.") path_utils.deletefile_ignoreerrors(random_fn) sys.exit(1) try: call(["copypass.py", random_fn]) path_utils.deletefile_ignoreerrors(random_fn) except: print("Unable to send password to clipboard.") path_utils.deletefile_ignoreerrors(random_fn) sys.exit(1)