summaryrefslogtreecommitdiff
path: root/paramiko/win_pageant.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2012-11-01 10:03:46 -0400
committerJason R. Coombs <jaraco@jaraco.com>2012-11-01 10:03:46 -0400
commite0d71b5efb47434ad5957632e8fba0e6fec6389f (patch)
tree8de648897ad0e8adc5496935db6628b7a8a16cc5 /paramiko/win_pageant.py
parent786920a3208fa335f334689d65b7302e9d52a568 (diff)
downloadparamiko-e0d71b5efb47434ad5957632e8fba0e6fec6389f.tar.gz
Remove test for presence of ctypes (assumed present in global imports).
Diffstat (limited to 'paramiko/win_pageant.py')
-rw-r--r--paramiko/win_pageant.py20
1 files changed, 5 insertions, 15 deletions
diff --git a/paramiko/win_pageant.py b/paramiko/win_pageant.py
index d77d58fe..b7a3fcf7 100644
--- a/paramiko/win_pageant.py
+++ b/paramiko/win_pageant.py
@@ -29,20 +29,14 @@ import array
import platform
import ctypes.wintypes
-# if you're on windows, you should have one of these, i guess?
-# ctypes is part of standard library since Python 2.5
+# if pywin32 is available, use it
_has_win32all = False
-_has_ctypes = False
try:
# win32gui is preferred over win32ui to avoid MFC dependencies
import win32gui
_has_win32all = True
except ImportError:
- try:
- import ctypes
- _has_ctypes = True
- except ImportError:
- pass
+ pass
_AGENT_COPYDATA_ID = 0x804e50ba
_AGENT_MAX_MSGLEN = 8192
@@ -58,7 +52,7 @@ def _get_pageant_window_object():
return hwnd
except win32gui.error:
pass
- elif _has_ctypes:
+ else:
# Return 0 if there is no Pageant window.
return ctypes.windll.user32.FindWindowA('Pageant', 'Pageant')
return None
@@ -71,9 +65,7 @@ def can_talk_to_agent():
This checks both if we have the required libraries (win32all or ctypes)
and if there is a Pageant currently running.
"""
- if (_has_win32all or _has_ctypes) and _get_pageant_window_object():
- return True
- return False
+ return bool(_get_pageant_window_object())
ULONG_PTR = ctypes.c_uint64 if platform.architecture()[0] == '64bit' else ctypes.c_uint32
class COPYDATASTRUCT(ctypes.Structure):
@@ -114,10 +106,8 @@ def _query_pageant(msg):
# win32gui.SendMessage should also allow the same pattern as
# ctypes, but let's keep it like this for now...
response = win32gui.SendMessage(hwnd, win32con_WM_COPYDATA, ctypes.sizeof(cds), ctypes.addressof(cds))
- elif _has_ctypes:
- response = ctypes.windll.user32.SendMessageA(hwnd, win32con_WM_COPYDATA, ctypes.sizeof(cds), ctypes.byref(cds))
else:
- response = 0
+ response = ctypes.windll.user32.SendMessageA(hwnd, win32con_WM_COPYDATA, ctypes.sizeof(cds), ctypes.byref(cds))
if response > 0:
datalen = pymap.read(4)