diff options
author | Olle Lundberg <geek@nerd.sh> | 2014-10-01 13:34:37 +0200 |
---|---|---|
committer | Jeff Forcier <jeff@bitprophet.org> | 2014-10-01 16:52:18 -0700 |
commit | a381b08c1bacb4af4753e99d2a18e0a67e28a9c3 (patch) | |
tree | e09ef66eeb7ea857ed684267112fab52df888e8b | |
parent | 83f54e4f6cfebb0b90e8e2061ef5ccd3000a5bfe (diff) |
Make sure we pass parameters as binary on windows.
This fixes #320 (thanks @adamkerz).
-rw-r--r-- | paramiko/win_pageant.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/paramiko/win_pageant.py b/paramiko/win_pageant.py index 20b1b0b9..4b482bee 100644 --- a/paramiko/win_pageant.py +++ b/paramiko/win_pageant.py @@ -26,6 +26,7 @@ import ctypes.wintypes import platform import struct from paramiko.util import * +from paramiko.py3compat import b try: import _thread as thread # Python 3.x @@ -43,7 +44,7 @@ win32con_WM_COPYDATA = 74 def _get_pageant_window_object(): - return ctypes.windll.user32.FindWindowA('Pageant', 'Pageant') + return ctypes.windll.user32.FindWindowA(b('Pageant'), b('Pageant')) def can_talk_to_agent(): @@ -90,7 +91,7 @@ def _query_pageant(msg): with pymap: pymap.write(msg) # Create an array buffer containing the mapped filename - char_buffer = array.array("c", b(map_name) + zero_byte) + char_buffer = array.array("b", b(map_name) + zero_byte) char_buffer_address, char_buffer_size = char_buffer.buffer_info() # Create a string to use for the SendMessage function call cds = COPYDATASTRUCT(_AGENT_COPYDATA_ID, char_buffer_size, |