summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPoleguy <github@poleguy.com>2020-01-15 10:46:28 -0600
committerJeff Forcier <jeff@bitprophet.org>2022-05-20 15:03:41 -0400
commit587db0f2075bc9b4342ca6524831e85ccf7f72dd (patch)
tree31810031f36236b3db38d9969fb139efe7bfa4d2
parent114578a21d89454d67fd3bee8ea87420c4b25808 (diff)
downloadparamiko-587db0f2075bc9b4342ca6524831e85ccf7f72dd.tar.gz
fix for list index out of range
to recreate bug: pip install vorta rm ~/.ssh/.known_hosts.lock touch ~/.ssh/.known_hosts.lock vorta -f Traceback (most recent call last): File "/opt/anaconda/anaconda3/bin/vorta", line 10, in <module> sys.exit(main()) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/__main__.py", line 40, in main app = VortaApp(sys.argv, single_app=True) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/application.py", line 59, in __init__ self.open_main_window_action() File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/application.py", line 80, in open_main_window_action self.main_window = MainWindow(self) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/views/main_window.py", line 37, in __init__ self.repoTab = RepoTab(self.repoTabSlot) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/views/repo_tab.py", line 55, in __init__ self.init_ssh() File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/views/repo_tab.py", line 88, in init_ssh keys = get_private_keys() File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/vorta/utils.py", line 74, in get_private_keys parsed_key = key_format.from_private_key_file(key_file) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/paramiko/pkey.py", line 235, in from_private_key_file key = cls(filename=filename, password=password) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/paramiko/rsakey.py", line 55, in __init__ self._from_private_key_file(filename, password) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/paramiko/rsakey.py", line 175, in _from_private_key_file data = self._read_private_key_file("RSA", filename, password) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/paramiko/pkey.py", line 308, in _read_private_key_file data = self._read_private_key(tag, f, password) File "/opt/anaconda/anaconda3/lib/python3.6/site-packages/paramiko/pkey.py", line 320, in _read_private_key m = self.BEGIN_TAG.match(lines[start]) IndexError: list index out of range Segmentation fault (core dumped)
-rw-r--r--paramiko/pkey.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/paramiko/pkey.py b/paramiko/pkey.py
index f494c80e..9f9cc543 100644
--- a/paramiko/pkey.py
+++ b/paramiko/pkey.py
@@ -324,7 +324,9 @@ class PKey(object):
def _read_private_key(self, tag, f, password=None):
lines = f.readlines()
-
+ if not lines:
+ raise SSHException("no lines in {} private key file".format(tag))
+
# find the BEGIN tag
start = 0
m = self.BEGIN_TAG.match(lines[start])