mirror of
https://github.com/rwinkhart/sshyp.git
synced 2026-09-05 08:37:14 -04:00
Made errors containing entry names reinforce correct syntax, fixed various errors in gen() function
This commit is contained in:
+18
-19
@@ -464,7 +464,7 @@ def no_arg(): # displays a list of entries and gives an option to select one fo
|
|||||||
print("\nfor a list of usable commands, run 'sshyp help'")
|
print("\nfor a list of usable commands, run 'sshyp help'")
|
||||||
_entry_name = entry_name_fetch('entry to read: ')
|
_entry_name = entry_name_fetch('entry to read: ')
|
||||||
if not Path(f"{directory}{_entry_name}.gpg").exists():
|
if not Path(f"{directory}{_entry_name}.gpg").exists():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) does not exist\u001b[0m\n") # TODO display with starting '/' in ALL errors
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) does not exist\u001b[0m\n")
|
||||||
s_exit(2)
|
s_exit(2)
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
_shm_folder, _shm_entry = shm_gen()
|
||||||
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
||||||
@@ -474,7 +474,7 @@ def no_arg(): # displays a list of entries and gives an option to select one fo
|
|||||||
|
|
||||||
def read_shortcut(): # shortcut to quickly read an entry
|
def read_shortcut(): # shortcut to quickly read an entry
|
||||||
if not Path(f"{directory}{arguments[0].replace('/', '', 1)}.gpg").exists():
|
if not Path(f"{directory}{arguments[0].replace('/', '', 1)}.gpg").exists():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({arguments[0].replace('/', '', 1)}) does not exist\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: entry (/{arguments[0].replace('/', '', 1)}) does not exist\u001b[0m\n")
|
||||||
s_exit(2)
|
s_exit(2)
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
_shm_folder, _shm_entry = shm_gen()
|
||||||
determine_decrypt(directory + arguments[0].replace('/', '', 1), _shm_folder, _shm_entry)
|
determine_decrypt(directory + arguments[0].replace('/', '', 1), _shm_folder, _shm_entry)
|
||||||
@@ -600,7 +600,7 @@ def add_entry(): # adds a new entry
|
|||||||
else:
|
else:
|
||||||
_entry_name = entry_name_fetch()
|
_entry_name = entry_name_fetch()
|
||||||
if Path(f"{directory}{_entry_name}.gpg").is_file():
|
if Path(f"{directory}{_entry_name}.gpg").is_file():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) already exists\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) already exists\u001b[0m\n")
|
||||||
s_exit(3)
|
s_exit(3)
|
||||||
if arguments[arg_start_p] in ['note', '-n']: # note entry
|
if arguments[arg_start_p] in ['note', '-n']: # note entry
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
_shm_folder, _shm_entry = shm_gen()
|
||||||
@@ -644,11 +644,11 @@ def rename(): # renames an entry or folder
|
|||||||
else:
|
else:
|
||||||
_entry_name = entry_name_fetch()
|
_entry_name = entry_name_fetch()
|
||||||
if not Path(f"{directory}{_entry_name}.gpg").is_file() and not Path(f"{directory}{_entry_name}").is_dir():
|
if not Path(f"{directory}{_entry_name}.gpg").is_file() and not Path(f"{directory}{_entry_name}").is_dir():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) does not exist\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) does not exist\u001b[0m\n")
|
||||||
s_exit(2)
|
s_exit(2)
|
||||||
_new_name = entry_name_fetch('new name: ')
|
_new_name = entry_name_fetch('new name: ')
|
||||||
if Path(f"{directory}{_new_name}.gpg").is_file() or Path(f"{directory}{_new_name}").is_dir():
|
if Path(f"{directory}{_new_name}.gpg").is_file() or Path(f"{directory}{_new_name}").is_dir():
|
||||||
print(f"\n\u001b[38;5;9merror: ({_new_name}) already exists\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: (/{_new_name}) already exists\u001b[0m\n")
|
||||||
s_exit(3)
|
s_exit(3)
|
||||||
if _entry_name.endswith('/'):
|
if _entry_name.endswith('/'):
|
||||||
if not ssh_error:
|
if not ssh_error:
|
||||||
@@ -675,7 +675,7 @@ def edit(): # edits the contents of an entry
|
|||||||
else:
|
else:
|
||||||
_entry_name = entry_name_fetch()
|
_entry_name = entry_name_fetch()
|
||||||
if not Path(f"{directory}{_entry_name}.gpg").is_file():
|
if not Path(f"{directory}{_entry_name}.gpg").is_file():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) does not exist\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) does not exist\u001b[0m\n")
|
||||||
s_exit(2)
|
s_exit(2)
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
_shm_folder, _shm_entry = shm_gen()
|
||||||
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
||||||
@@ -704,18 +704,23 @@ def gen(): # generates a password for a new or an existing entry
|
|||||||
_entry_name = entry_name_fetch('name of entry: ')
|
_entry_name = entry_name_fetch('name of entry: ')
|
||||||
else:
|
else:
|
||||||
_entry_name = entry_name_fetch()
|
_entry_name = entry_name_fetch()
|
||||||
if (arg_count > 2) and not Path(f"{directory}{_entry_name}.gpg").is_file():
|
_shm_folder, _shm_entry = shm_gen()
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) does not exist\u001b[0m\n")
|
if arg_count > 1 and arguments[arg_start_p] in ['update', '-u']: # gen update
|
||||||
|
if not Path(f"{directory}{_entry_name}.gpg").is_file():
|
||||||
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) does not exist\u001b[0m\n")
|
||||||
s_exit(2)
|
s_exit(2)
|
||||||
if arg_count < 2 or (arg_start == 1 and arg_count < 3):
|
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
||||||
|
_new_lines = optimized_edit(open(f"{tmp_dir}{_shm_folder}/{_shm_entry}", 'r').readlines(), pass_gen(), 0)
|
||||||
|
open(f"{tmp_dir}{_shm_folder}/{_shm_entry}", 'w').writelines(_new_lines)
|
||||||
|
remove(f"{directory}{_entry_name}.gpg")
|
||||||
|
else: # gen
|
||||||
if Path(f"{directory}{_entry_name}.gpg").is_file():
|
if Path(f"{directory}{_entry_name}.gpg").is_file():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) already exists\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) already exists\u001b[0m\n")
|
||||||
s_exit(3)
|
s_exit(3)
|
||||||
_username = str(input('username: '))
|
_username = str(input('username: '))
|
||||||
_password = pass_gen()
|
_password = pass_gen()
|
||||||
_url = str(input('url: '))
|
_url = str(input('url: '))
|
||||||
_add_note = input('add a note to this entry? (y/N) ')
|
_add_note = input('add a note to this entry? (y/N) ')
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
|
||||||
if _add_note.lower() == 'y':
|
if _add_note.lower() == 'y':
|
||||||
run([editor, f"{tmp_dir}{_shm_folder}/{_shm_entry}-n"])
|
run([editor, f"{tmp_dir}{_shm_folder}/{_shm_entry}-n"])
|
||||||
_notes = open(f"{tmp_dir}{_shm_folder}/{_shm_entry}-n", 'r').read()
|
_notes = open(f"{tmp_dir}{_shm_folder}/{_shm_entry}-n", 'r').read()
|
||||||
@@ -723,12 +728,6 @@ def gen(): # generates a password for a new or an existing entry
|
|||||||
_notes = ''
|
_notes = ''
|
||||||
open(f"{tmp_dir}{_shm_folder}/{_shm_entry}", 'w')\
|
open(f"{tmp_dir}{_shm_folder}/{_shm_entry}", 'w')\
|
||||||
.writelines(optimized_edit([_password, _username, _url, _notes], None, -1))
|
.writelines(optimized_edit([_password, _username, _url, _notes], None, -1))
|
||||||
else:
|
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
|
||||||
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
|
||||||
_new_lines = optimized_edit(open(f"{tmp_dir}{_shm_folder}/{_shm_entry}", 'r').readlines(), pass_gen(), 0)
|
|
||||||
open(f"{tmp_dir}{_shm_folder}/{_shm_entry}", 'w').writelines(_new_lines)
|
|
||||||
remove(f"{directory}{_entry_name}.gpg")
|
|
||||||
print('\n\u001b[1mentry preview:\u001b[0m')
|
print('\n\u001b[1mentry preview:\u001b[0m')
|
||||||
entry_reader(f"{tmp_dir}{_shm_folder}/{_shm_entry}")
|
entry_reader(f"{tmp_dir}{_shm_folder}/{_shm_entry}")
|
||||||
encrypt(directory + _entry_name, _shm_folder, _shm_entry, gpg_id)
|
encrypt(directory + _entry_name, _shm_folder, _shm_entry, gpg_id)
|
||||||
@@ -741,7 +740,7 @@ def copy_data(): # copies a specified field of an entry to the clipboard
|
|||||||
else:
|
else:
|
||||||
_entry_name = entry_name_fetch()
|
_entry_name = entry_name_fetch()
|
||||||
if not Path(f"{directory}{_entry_name}.gpg").is_file():
|
if not Path(f"{directory}{_entry_name}.gpg").is_file():
|
||||||
print(f"\n\u001b[38;5;9merror: entry ({_entry_name}) does not exist\u001b[0m\n")
|
print(f"\n\u001b[38;5;9merror: entry (/{_entry_name}) does not exist\u001b[0m\n")
|
||||||
s_exit(2)
|
s_exit(2)
|
||||||
_shm_folder, _shm_entry = shm_gen()
|
_shm_folder, _shm_entry = shm_gen()
|
||||||
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
determine_decrypt(directory + _entry_name, _shm_folder, _shm_entry)
|
||||||
@@ -837,7 +836,7 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
elif (arg_count == 2 and arg_start == 0) or (arg_count == 3 and arg_start == 1):
|
elif (arg_count == 2 and arg_start == 0) or (arg_count == 3 and arg_start == 1):
|
||||||
if arguments[arg_start] == 'copy':
|
if arguments[arg_start] == 'copy':
|
||||||
if arguments[arg_start_p] in ['username', '-u', 'password', '-p', 'url', '-l', 'note', '-n']: # TODO use 'in' syntax more broadly
|
if arguments[arg_start_p] in ['username', '-u', 'password', '-p', 'url', '-l', 'note', '-n']:
|
||||||
try:
|
try:
|
||||||
success_flag = 1
|
success_flag = 1
|
||||||
copy_data()
|
copy_data()
|
||||||
|
|||||||
Reference in New Issue
Block a user