From f5117a0a23967e1705e49545edef9a1f0ad87dfa Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 22:41:05 +0100 Subject: [PATCH 01/12] Make osx builds use embedded libssh2 --- _setup_libssh2.py | 2 +- ci/osx-wheel.sh | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/_setup_libssh2.py b/_setup_libssh2.py index d706570f..aa407cb5 100644 --- a/_setup_libssh2.py +++ b/_setup_libssh2.py @@ -42,5 +42,5 @@ def build_ssh2(): check_call('cmake --build . --config Release', shell=True, env=os.environ) os.chdir('..') - for src in glob('build_dir/src/libssh2.so*'): + for src in glob('build_dir/src/libssh2.*'): copy2(src, 'ssh2/') diff --git a/ci/osx-wheel.sh b/ci/osx-wheel.sh index 8a963b98..800b490c 100755 --- a/ci/osx-wheel.sh +++ b/ci/osx-wheel.sh @@ -14,10 +14,10 @@ # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -LIBSSH2_DIR="/opt/homebrew/opt/libssh2/lib" +SYSTEM_LIBSSH2_DIR="/opt/homebrew/opt/libssh2/lib" +MY_LIBSSH2_DIR="build_dir/src/" LIBSSH2_INCLUDE_DIR="/opt/homebrew/opt/libssh2/include" -export LDFLAGS="-L${LIBSSH2_DIR}" -export CPPFLAGS="-I${LIBSSH2_INCLUDE_DIR}" +sudo cp -a libssh2/include/* /opt/homebrew/opt/libssh2/include/ pip3 install -U virtualenv python3 -m virtualenv -p "$(which python3)" venv @@ -29,14 +29,17 @@ set -x python -V pip3 install -U setuptools pip pip3 install -U delocate wheel -SYSTEM_LIBSSH2=1 python3 setup.py bdist_wheel -ls -lhtr ${LIBSSH2_DIR} +python3 setup.py bdist_wheel +sudo cp -a ${MY_LIBSSH2_DIR}/libssh2* ${SYSTEM_LIBSSH2_DIR}/ +ls -lhtr ${SYSTEM_LIBSSH2_DIR} + delocate-listdeps dist/*.whl delocate-wheel -v -w wheels dist/*.whl delocate-listdeps wheels/*.whl ls -l wheels/*.whl -rm -f ${LIBSSH2_DIR}/libssh2* +rm -f ${SYSTEM_LIBSSH2_DIR}/libssh2* +rm -f ${MY_LIBSSH2_DIR}/libssh2* pip3 install -v wheels/*.whl pwd; mkdir -p temp; cd temp; pwd python3 -c "from ssh2.session import Session; Session()" && echo "Import successful" From d383cb28139127938c4d729930937905060d9497 Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 22:41:36 +0100 Subject: [PATCH 02/12] Enable osx --- .circleci/config.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 20a045d7..1130e8f8 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -170,10 +170,10 @@ workflows: parameters: xcode_ver: - "14.0.0" - - "15.0.0" - - "16.0.0" - filters: - tags: - only: /.*/ - branches: - ignore: /.*/ + # - "15.0.0" + # - "16.0.0" +# filters: +# tags: +# only: /.*/ +# branches: +# ignore: /.*/ From 3f9e8d156736c90e1c5294a228087d7d48e40d8b Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 22:50:49 +0100 Subject: [PATCH 03/12] Fixup --- ci/osx-wheel.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/osx-wheel.sh b/ci/osx-wheel.sh index 800b490c..46c17e53 100755 --- a/ci/osx-wheel.sh +++ b/ci/osx-wheel.sh @@ -17,6 +17,7 @@ SYSTEM_LIBSSH2_DIR="/opt/homebrew/opt/libssh2/lib" MY_LIBSSH2_DIR="build_dir/src/" LIBSSH2_INCLUDE_DIR="/opt/homebrew/opt/libssh2/include" +export CPPFLAGS="-I${LIBSSH2_INCLUDE_DIR}" sudo cp -a libssh2/include/* /opt/homebrew/opt/libssh2/include/ pip3 install -U virtualenv From a0d0b7ec6929aa47b257c3fd2b0edcf53d52a755 Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 23:13:51 +0100 Subject: [PATCH 04/12] Osx updates --- _setup_libssh2.py | 2 +- ci/osx-wheel.sh | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/_setup_libssh2.py b/_setup_libssh2.py index aa407cb5..7d84e0aa 100644 --- a/_setup_libssh2.py +++ b/_setup_libssh2.py @@ -22,7 +22,7 @@ def build_ssh2(): - if bool(os.environ.get('SYSTEM_LIBSSH', False)): + if bool(os.environ.get('SYSTEM_LIbBSSH2', False)): stderr.write("Using system libssh2..%s" % (os.sep)) return if os.path.exists('/usr/local/opt/openssl'): diff --git a/ci/osx-wheel.sh b/ci/osx-wheel.sh index 46c17e53..2f989cb0 100755 --- a/ci/osx-wheel.sh +++ b/ci/osx-wheel.sh @@ -17,20 +17,23 @@ SYSTEM_LIBSSH2_DIR="/opt/homebrew/opt/libssh2/lib" MY_LIBSSH2_DIR="build_dir/src/" LIBSSH2_INCLUDE_DIR="/opt/homebrew/opt/libssh2/include" +set +x + export CPPFLAGS="-I${LIBSSH2_INCLUDE_DIR}" sudo cp -a libssh2/include/* /opt/homebrew/opt/libssh2/include/ pip3 install -U virtualenv python3 -m virtualenv -p "$(which python3)" venv -set +x source venv/bin/activate -set -x python -V pip3 install -U setuptools pip pip3 install -U delocate wheel +unset SYSTEM_LIBSSH2 + python3 setup.py bdist_wheel + sudo cp -a ${MY_LIBSSH2_DIR}/libssh2* ${SYSTEM_LIBSSH2_DIR}/ ls -lhtr ${SYSTEM_LIBSSH2_DIR} @@ -42,9 +45,11 @@ ls -l wheels/*.whl rm -f ${SYSTEM_LIBSSH2_DIR}/libssh2* rm -f ${MY_LIBSSH2_DIR}/libssh2* pip3 install -v wheels/*.whl + pwd; mkdir -p temp; cd temp; pwd python3 -c "from ssh2.session import Session; Session()" && echo "Import successful" cd ..; pwd -set +x + deactivate + set -x From 3de97a259ee7d9635e79d9e3808445654dd22f07 Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 23:18:00 +0100 Subject: [PATCH 05/12] Osx updates --- ci/osx-wheel.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ci/osx-wheel.sh b/ci/osx-wheel.sh index 2f989cb0..6afd4660 100755 --- a/ci/osx-wheel.sh +++ b/ci/osx-wheel.sh @@ -43,7 +43,9 @@ delocate-listdeps wheels/*.whl ls -l wheels/*.whl rm -f ${SYSTEM_LIBSSH2_DIR}/libssh2* -rm -f ${MY_LIBSSH2_DIR}/libssh2* +rm -f build_dir +ls -lhtr ${SYSTEM_LIBSSH2_DIR} + pip3 install -v wheels/*.whl pwd; mkdir -p temp; cd temp; pwd From 3e5e1cf7f61dda558f4ab5d425303ba3a1fcc223 Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 23:22:46 +0100 Subject: [PATCH 06/12] Osx updates --- ci/osx-wheel.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/osx-wheel.sh b/ci/osx-wheel.sh index 6afd4660..befbc321 100755 --- a/ci/osx-wheel.sh +++ b/ci/osx-wheel.sh @@ -43,7 +43,7 @@ delocate-listdeps wheels/*.whl ls -l wheels/*.whl rm -f ${SYSTEM_LIBSSH2_DIR}/libssh2* -rm -f build_dir +rm -rf build_dir ls -lhtr ${SYSTEM_LIBSSH2_DIR} pip3 install -v wheels/*.whl From 7d08e5aa84a6e0cd12ee89558b47ba45f13feab8 Mon Sep 17 00:00:00 2001 From: Panos Date: Sat, 4 Oct 2025 23:28:31 +0100 Subject: [PATCH 07/12] Osx updates --- .circleci/config.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1130e8f8..20a045d7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -170,10 +170,10 @@ workflows: parameters: xcode_ver: - "14.0.0" - # - "15.0.0" - # - "16.0.0" -# filters: -# tags: -# only: /.*/ -# branches: -# ignore: /.*/ + - "15.0.0" + - "16.0.0" + filters: + tags: + only: /.*/ + branches: + ignore: /.*/ From 1beeb1cd7f396f5de6736e4f104ca8301bef8a91 Mon Sep 17 00:00:00 2001 From: Panos Date: Sun, 5 Oct 2025 10:19:45 +0100 Subject: [PATCH 08/12] Revert "Updated types for osx (#235)" This reverts commit 9371bad293693d314fe8da564ea361b9afd8573d. --- ssh2/c_ssh2.pxd | 5 + ssh2/session.c | 2902 +++++++++++++++++++++-------------------- ssh2/session.pyx | 3 + tests/test_session.py | 8 +- 4 files changed, 1507 insertions(+), 1411 deletions(-) diff --git a/ssh2/c_ssh2.pxd b/ssh2/c_ssh2.pxd index a034b110..238640b9 100644 --- a/ssh2/c_ssh2.pxd +++ b/ssh2/c_ssh2.pxd @@ -54,6 +54,11 @@ cdef extern from "libssh2.h" nogil: # Session flags LIBSSH2_FLAG_SIGPIPE LIBSSH2_FLAG_COMPRESS + # Path flags + LIBSSH2_FLAG_QUOTE_PATHS + # Flags for SK authentication + LIBSSH2_SK_PRESENCE_REQUIRED + LIBSSH2_SK_VERIFICATION_REQUIRED ctypedef struct_stat libssh2_struct_stat diff --git a/ssh2/session.c b/ssh2/session.c index 123e0238..d19f0968 100644 --- a/ssh2/session.c +++ b/ssh2/session.c @@ -1786,7 +1786,7 @@ struct __pyx_obj_4ssh2_7session_FlagType { }; -/* "ssh2/session.pyx":336 +/* "ssh2/session.pyx":339 * :type password: str * """ * def passwd(*args, password=password): # <<<<<<<<<<<<<< @@ -3020,6 +3020,7 @@ static const char __pyx_k_LIBSSH2_METHOD_CRYPT_SC[] = "LIBSSH2_METHOD_CRYPT_SC"; static const char __pyx_k_Session___reduce_cython[] = "Session.__reduce_cython__"; static const char __pyx_k_Session_direct_tcpip_ex[] = "Session.direct_tcpip_ex"; static const char __pyx_k_FlagType___reduce_cython[] = "FlagType.__reduce_cython__"; +static const char __pyx_k_LIBSSH2_FLAG_QUOTE_PATHS[] = "LIBSSH2_FLAG_QUOTE_PATHS"; static const char __pyx_k_LIBSSH2_HOSTKEY_HASH_MD5[] = "LIBSSH2_HOSTKEY_HASH_MD5"; static const char __pyx_k_LIBSSH2_HOSTKEY_TYPE_DSS[] = "LIBSSH2_HOSTKEY_TYPE_DSS"; static const char __pyx_k_LIBSSH2_HOSTKEY_TYPE_RSA[] = "LIBSSH2_HOSTKEY_TYPE_RSA"; @@ -3056,6 +3057,8 @@ static const char __pyx_k_A_81A_XQa_1_B_4_Raajjk_83a_W_Gq[] = "\200A\360\"\000\t static const char __pyx_k_A_6a_K_1_3b_Qa_1_1_1F_6_d_uAQ_1D[] = "\200A\360\026\000\016\017\330\014\027\320\0276\260a\330\020\024\220K\230{\250(\260!\2601\330\010\013\2103\210b\220\001\330\014\023\320\023%\240Q\240a\330\r\020\220\003\2201\330\014\023\2201\330\010\t\330\014\023\2201\220F\230!\2306\240\021\240$\240d\250%\250u\260A\260Q\340\021\022\330\026#\2401\240D\250\013\2601\330\010\017\210q"; static const char __pyx_k_A_HAQ_XQa_1_A_A_KwfHA_83a_W_Gq_A[] = "\200A\360\006\000\t\035\230H\240A\240Q\330\010\035\230X\240Q\240a\330\010\033\2301\330\010\034\230A\330\r\016\330\014\034\320\034<\270A\330\020\024\220K\230w\240f\250H\260A\330\010\013\2108\2203\220a\330\014\023\320\023%\240W\320,G\300q\330\020\024\220A\330\010\017\210y\230\001\230\031\240!"; static const char __pyx_k_Error_retrieving_server_host_key[] = "Error retrieving server host key for session"; +static const char __pyx_k_LIBSSH2_FLAG_SK_PRESENCE_REQUIRE[] = "LIBSSH2_FLAG_SK_PRESENCE_REQUIRED"; +static const char __pyx_k_LIBSSH2_FLAG_SK_VERIFICATION_REQ[] = "LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED"; static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; static const char __pyx_k_Provided_flag_must_be_one_of_LIB[] = "Provided flag must be one of LIBSSH2_FLAG_SIGPIPE or LIBSSH2_FLAG_COMPRESS - got %s"; static const char __pyx_k_Session_userauth_hostbased_fromf[] = "Session.userauth_hostbased_fromfile"; @@ -3185,7 +3188,7 @@ typedef struct { __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; PyObject *__pyx_tuple[5]; PyObject *__pyx_codeobj_tab[47]; - PyObject *__pyx_string_tab[254]; + PyObject *__pyx_string_tab[257]; PyObject *__pyx_int_0; PyObject *__pyx_int_1024; /* #### Code section: module_state_contents ### */ @@ -3233,252 +3236,255 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati #define __pyx_n_u_FlagType___setstate_cython __pyx_string_tab[5] #define __pyx_n_u_KnownHostError __pyx_string_tab[6] #define __pyx_n_u_LIBSSH2_FLAG_COMPRESS __pyx_string_tab[7] -#define __pyx_n_u_LIBSSH2_FLAG_SIGPIPE __pyx_string_tab[8] -#define __pyx_n_u_LIBSSH2_HOSTKEY_HASH_MD5 __pyx_string_tab[9] -#define __pyx_n_u_LIBSSH2_HOSTKEY_HASH_SHA1 __pyx_string_tab[10] -#define __pyx_n_u_LIBSSH2_HOSTKEY_HASH_SHA256 __pyx_string_tab[11] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_DSS __pyx_string_tab[12] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ECDSA_256 __pyx_string_tab[13] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ECDSA_384 __pyx_string_tab[14] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ECDSA_521 __pyx_string_tab[15] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ED25519 __pyx_string_tab[16] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_RSA __pyx_string_tab[17] -#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_UNKNOWN __pyx_string_tab[18] -#define __pyx_n_u_LIBSSH2_METHOD_COMP_CS __pyx_string_tab[19] -#define __pyx_n_u_LIBSSH2_METHOD_COMP_SC __pyx_string_tab[20] -#define __pyx_n_u_LIBSSH2_METHOD_CRYPT_CS __pyx_string_tab[21] -#define __pyx_n_u_LIBSSH2_METHOD_CRYPT_SC __pyx_string_tab[22] -#define __pyx_n_u_LIBSSH2_METHOD_HOSTKEY __pyx_string_tab[23] -#define __pyx_n_u_LIBSSH2_METHOD_KEX __pyx_string_tab[24] -#define __pyx_n_u_LIBSSH2_METHOD_LANG_CS __pyx_string_tab[25] -#define __pyx_n_u_LIBSSH2_METHOD_LANG_SC __pyx_string_tab[26] -#define __pyx_n_u_LIBSSH2_METHOD_MAC_CS __pyx_string_tab[27] -#define __pyx_n_u_LIBSSH2_METHOD_MAC_SC __pyx_string_tab[28] -#define __pyx_n_u_LIBSSH2_SESSION_BLOCK_INBOUND __pyx_string_tab[29] -#define __pyx_n_u_LIBSSH2_SESSION_BLOCK_OUTBOUND __pyx_string_tab[30] -#define __pyx_n_u_MemoryError __pyx_string_tab[31] -#define __pyx_n_u_MethodType __pyx_string_tab[32] -#define __pyx_n_u_MethodType___reduce_cython __pyx_string_tab[33] -#define __pyx_n_u_MethodType___setstate_cython __pyx_string_tab[34] -#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[35] -#define __pyx_kp_u_Provided_flag_must_be_one_of_LIB __pyx_string_tab[36] -#define __pyx_n_u_PublicKeyInitError __pyx_string_tab[37] -#define __pyx_n_u_Session __pyx_string_tab[38] -#define __pyx_n_u_SessionHostKeyError __pyx_string_tab[39] -#define __pyx_n_u_Session___reduce_cython __pyx_string_tab[40] -#define __pyx_n_u_Session___setstate_cython __pyx_string_tab[41] -#define __pyx_n_u_Session_agent_auth __pyx_string_tab[42] -#define __pyx_n_u_Session_agent_init __pyx_string_tab[43] -#define __pyx_n_u_Session_block_directions __pyx_string_tab[44] -#define __pyx_n_u_Session_direct_streamlocal_ex __pyx_string_tab[45] -#define __pyx_n_u_Session_direct_tcpip __pyx_string_tab[46] -#define __pyx_n_u_Session_direct_tcpip_ex __pyx_string_tab[47] -#define __pyx_n_u_Session_disconnect __pyx_string_tab[48] -#define __pyx_n_u_Session_flag __pyx_string_tab[49] -#define __pyx_n_u_Session_forward_listen __pyx_string_tab[50] -#define __pyx_n_u_Session_forward_listen_ex __pyx_string_tab[51] -#define __pyx_n_u_Session_get_blocking __pyx_string_tab[52] -#define __pyx_n_u_Session_get_timeout __pyx_string_tab[53] -#define __pyx_n_u_Session_handshake __pyx_string_tab[54] -#define __pyx_n_u_Session_hostkey __pyx_string_tab[55] -#define __pyx_n_u_Session_hostkey_hash __pyx_string_tab[56] -#define __pyx_n_u_Session_keepalive_config __pyx_string_tab[57] -#define __pyx_n_u_Session_keepalive_send __pyx_string_tab[58] -#define __pyx_n_u_Session_knownhost_init __pyx_string_tab[59] -#define __pyx_n_u_Session_last_errno __pyx_string_tab[60] -#define __pyx_n_u_Session_last_error __pyx_string_tab[61] -#define __pyx_n_u_Session_method_pref __pyx_string_tab[62] -#define __pyx_n_u_Session_methods __pyx_string_tab[63] -#define __pyx_n_u_Session_open_session __pyx_string_tab[64] -#define __pyx_n_u_Session_publickey_init __pyx_string_tab[65] -#define __pyx_n_u_Session_scp_recv2 __pyx_string_tab[66] -#define __pyx_n_u_Session_scp_send64 __pyx_string_tab[67] -#define __pyx_n_u_Session_set_blocking __pyx_string_tab[68] -#define __pyx_n_u_Session_set_last_error __pyx_string_tab[69] -#define __pyx_n_u_Session_set_timeout __pyx_string_tab[70] -#define __pyx_n_u_Session_sftp_init __pyx_string_tab[71] -#define __pyx_n_u_Session_supported_algs __pyx_string_tab[72] -#define __pyx_n_u_Session_userauth_authenticated __pyx_string_tab[73] -#define __pyx_n_u_Session_userauth_hostbased_fromf __pyx_string_tab[74] -#define __pyx_n_u_Session_userauth_keyboardinterac __pyx_string_tab[75] -#define __pyx_n_u_Session_userauth_keyboardinterac_2 __pyx_string_tab[76] -#define __pyx_n_u_Session_userauth_list __pyx_string_tab[77] -#define __pyx_n_u_Session_userauth_password __pyx_string_tab[78] -#define __pyx_n_u_Session_userauth_publickey __pyx_string_tab[79] -#define __pyx_n_u_Session_userauth_publickey_fromf __pyx_string_tab[80] -#define __pyx_n_u_Session_userauth_publickey_fromm __pyx_string_tab[81] -#define __pyx_n_u_TypeError __pyx_string_tab[82] -#define __pyx_n_u_ValueError __pyx_string_tab[83] -#define __pyx_kp_b__2 __pyx_string_tab[84] -#define __pyx_kp_u__2 __pyx_string_tab[85] -#define __pyx_kp_u__3 __pyx_string_tab[86] -#define __pyx_kp_u__4 __pyx_string_tab[87] -#define __pyx_kp_u_add_note __pyx_string_tab[88] -#define __pyx_n_u_agent __pyx_string_tab[89] -#define __pyx_n_u_agent_auth __pyx_string_tab[90] -#define __pyx_n_u_agent_init __pyx_string_tab[91] -#define __pyx_n_u_algs __pyx_string_tab[92] -#define __pyx_n_u_args __pyx_string_tab[93] -#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[94] -#define __pyx_n_u_atime __pyx_string_tab[95] -#define __pyx_n_u_auth __pyx_string_tab[96] -#define __pyx_n_u_auth_2 __pyx_string_tab[97] -#define __pyx_n_u_b_errmsg __pyx_string_tab[98] -#define __pyx_n_u_b_hash __pyx_string_tab[99] -#define __pyx_n_u_b_host __pyx_string_tab[100] -#define __pyx_n_u_b_hostname __pyx_string_tab[101] -#define __pyx_n_u_b_passphrase __pyx_string_tab[102] -#define __pyx_n_u_b_password __pyx_string_tab[103] -#define __pyx_n_u_b_path __pyx_string_tab[104] -#define __pyx_n_u_b_prefs __pyx_string_tab[105] -#define __pyx_n_u_b_privatekey __pyx_string_tab[106] -#define __pyx_n_u_b_publickey __pyx_string_tab[107] -#define __pyx_n_u_b_shost __pyx_string_tab[108] -#define __pyx_n_u_b_socket_path __pyx_string_tab[109] -#define __pyx_n_u_b_username __pyx_string_tab[110] -#define __pyx_n_u_block_directions __pyx_string_tab[111] -#define __pyx_n_u_blocking __pyx_string_tab[112] -#define __pyx_n_u_bound_port __pyx_string_tab[113] -#define __pyx_n_u_c_algs __pyx_string_tab[114] -#define __pyx_n_u_c_prefs __pyx_string_tab[115] -#define __pyx_n_u_c_seconds __pyx_string_tab[116] -#define __pyx_n_u_c_shost __pyx_string_tab[117] -#define __pyx_n_u_c_socket_path __pyx_string_tab[118] -#define __pyx_n_u_callback __pyx_string_tab[119] -#define __pyx_n_u_channel __pyx_string_tab[120] -#define __pyx_n_u_cline_in_traceback __pyx_string_tab[121] -#define __pyx_n_u_direct_streamlocal_ex __pyx_string_tab[122] -#define __pyx_n_u_direct_tcpip __pyx_string_tab[123] -#define __pyx_n_u_direct_tcpip_ex __pyx_string_tab[124] -#define __pyx_kp_u_disable __pyx_string_tab[125] -#define __pyx_n_u_disconnect __pyx_string_tab[126] -#define __pyx_kp_u_enable __pyx_string_tab[127] -#define __pyx_n_u_enabled __pyx_string_tab[128] -#define __pyx_n_u_errcode __pyx_string_tab[129] -#define __pyx_n_u_errmsg __pyx_string_tab[130] -#define __pyx_n_u_errmsg_2 __pyx_string_tab[131] -#define __pyx_n_u_errmsg_len __pyx_string_tab[132] -#define __pyx_n_u_error_msg __pyx_string_tab[133] -#define __pyx_n_u_exceptions __pyx_string_tab[134] -#define __pyx_n_u_fileinfo __pyx_string_tab[135] -#define __pyx_n_u_flag __pyx_string_tab[136] -#define __pyx_n_u_forward_listen __pyx_string_tab[137] -#define __pyx_n_u_forward_listen_ex __pyx_string_tab[138] -#define __pyx_n_u_func __pyx_string_tab[139] -#define __pyx_kp_u_gc __pyx_string_tab[140] -#define __pyx_n_u_get_blocking __pyx_string_tab[141] -#define __pyx_n_u_get_timeout __pyx_string_tab[142] -#define __pyx_n_u_getstate __pyx_string_tab[143] -#define __pyx_n_u_handshake __pyx_string_tab[144] -#define __pyx_n_u_hash __pyx_string_tab[145] -#define __pyx_n_u_hash_type __pyx_string_tab[146] -#define __pyx_n_u_host __pyx_string_tab[147] -#define __pyx_n_u_host_2 __pyx_string_tab[148] -#define __pyx_n_u_hostkey __pyx_string_tab[149] -#define __pyx_n_u_hostkey_hash __pyx_string_tab[150] -#define __pyx_n_u_hostname __pyx_string_tab[151] -#define __pyx_n_u_hostname_2 __pyx_string_tab[152] -#define __pyx_n_u_i __pyx_string_tab[153] -#define __pyx_n_u_identity __pyx_string_tab[154] -#define __pyx_n_u_interval __pyx_string_tab[155] -#define __pyx_n_u_is_coroutine __pyx_string_tab[156] -#define __pyx_kp_u_isenabled __pyx_string_tab[157] -#define __pyx_n_u_keepalive_config __pyx_string_tab[158] -#define __pyx_n_u_keepalive_send __pyx_string_tab[159] -#define __pyx_n_u_key __pyx_string_tab[160] -#define __pyx_n_u_key_2 __pyx_string_tab[161] -#define __pyx_n_u_key_len __pyx_string_tab[162] -#define __pyx_n_u_key_type __pyx_string_tab[163] -#define __pyx_n_u_known_hosts __pyx_string_tab[164] -#define __pyx_n_u_knownhost_init __pyx_string_tab[165] -#define __pyx_n_u_last_errno __pyx_string_tab[166] -#define __pyx_n_u_last_error __pyx_string_tab[167] -#define __pyx_n_u_listener __pyx_string_tab[168] -#define __pyx_n_u_main __pyx_string_tab[169] -#define __pyx_n_u_method_pref __pyx_string_tab[170] -#define __pyx_n_u_method_type __pyx_string_tab[171] -#define __pyx_n_u_methods __pyx_string_tab[172] -#define __pyx_n_u_mode __pyx_string_tab[173] -#define __pyx_n_u_module __pyx_string_tab[174] -#define __pyx_n_u_msg __pyx_string_tab[175] -#define __pyx_n_u_msg_size __pyx_string_tab[176] -#define __pyx_n_u_mtime __pyx_string_tab[177] -#define __pyx_n_u_name __pyx_string_tab[178] -#define __pyx_kp_u_no_default___reduce___due_to_non __pyx_string_tab[179] -#define __pyx_n_u_open_session __pyx_string_tab[180] -#define __pyx_n_u_passphrase __pyx_string_tab[181] -#define __pyx_n_u_passphrase_2 __pyx_string_tab[182] -#define __pyx_n_u_passwd __pyx_string_tab[183] -#define __pyx_n_u_password __pyx_string_tab[184] -#define __pyx_n_u_password_2 __pyx_string_tab[185] -#define __pyx_n_u_path __pyx_string_tab[186] -#define __pyx_n_u_path_2 __pyx_string_tab[187] -#define __pyx_n_u_pkey __pyx_string_tab[188] -#define __pyx_n_u_pop __pyx_string_tab[189] -#define __pyx_n_u_port __pyx_string_tab[190] -#define __pyx_n_u_prefs __pyx_string_tab[191] -#define __pyx_n_u_prev __pyx_string_tab[192] -#define __pyx_n_u_privatekey __pyx_string_tab[193] -#define __pyx_n_u_privatekey_2 __pyx_string_tab[194] -#define __pyx_n_u_privatekeydata_len __pyx_string_tab[195] -#define __pyx_n_u_privatekeyfiledata __pyx_string_tab[196] -#define __pyx_n_u_privatekeyfiledata_2 __pyx_string_tab[197] -#define __pyx_n_u_pubkeydata __pyx_string_tab[198] -#define __pyx_n_u_pubkeydata_2 __pyx_string_tab[199] -#define __pyx_n_u_pubkeydata_len __pyx_string_tab[200] -#define __pyx_n_u_publickey __pyx_string_tab[201] -#define __pyx_n_u_publickey_2 __pyx_string_tab[202] -#define __pyx_n_u_publickey_init __pyx_string_tab[203] -#define __pyx_n_u_publickeyfiledata __pyx_string_tab[204] -#define __pyx_n_u_publickeyfiledata_2 __pyx_string_tab[205] -#define __pyx_n_u_pyx_state __pyx_string_tab[206] -#define __pyx_n_u_qualname __pyx_string_tab[207] -#define __pyx_n_u_queue_maxsize __pyx_string_tab[208] -#define __pyx_n_u_range __pyx_string_tab[209] -#define __pyx_n_u_rc __pyx_string_tab[210] -#define __pyx_n_u_reduce __pyx_string_tab[211] -#define __pyx_n_u_reduce_cython __pyx_string_tab[212] -#define __pyx_n_u_reduce_ex __pyx_string_tab[213] -#define __pyx_n_u_scp_recv2 __pyx_string_tab[214] -#define __pyx_n_u_scp_send64 __pyx_string_tab[215] -#define __pyx_n_u_seconds __pyx_string_tab[216] -#define __pyx_n_u_self __pyx_string_tab[217] -#define __pyx_n_u_set_blocking __pyx_string_tab[218] -#define __pyx_n_u_set_last_error __pyx_string_tab[219] -#define __pyx_n_u_set_name __pyx_string_tab[220] -#define __pyx_n_u_set_timeout __pyx_string_tab[221] -#define __pyx_n_u_setstate __pyx_string_tab[222] -#define __pyx_n_u_setstate_cython __pyx_string_tab[223] -#define __pyx_n_u_sftp __pyx_string_tab[224] -#define __pyx_n_u_sftp_init __pyx_string_tab[225] -#define __pyx_n_u_shost __pyx_string_tab[226] -#define __pyx_n_u_shost_2 __pyx_string_tab[227] -#define __pyx_n_u_size __pyx_string_tab[228] -#define __pyx_n_u_sock __pyx_string_tab[229] -#define __pyx_n_u_sock_2 __pyx_string_tab[230] -#define __pyx_n_u_socket_path __pyx_string_tab[231] -#define __pyx_n_u_sport __pyx_string_tab[232] -#define __pyx_n_u_ssh2_session __pyx_string_tab[233] -#define __pyx_kp_u_ssh2_session_pyx __pyx_string_tab[234] -#define __pyx_kp_u_stringsource __pyx_string_tab[235] -#define __pyx_n_u_supported_algs __pyx_string_tab[236] -#define __pyx_n_u_test __pyx_string_tab[237] -#define __pyx_n_u_timeout __pyx_string_tab[238] -#define __pyx_n_u_userauth_authenticated __pyx_string_tab[239] -#define __pyx_n_u_userauth_hostbased_fromfile __pyx_string_tab[240] -#define __pyx_n_u_userauth_keyboardinteractive __pyx_string_tab[241] -#define __pyx_n_u_userauth_keyboardinteractive_cal __pyx_string_tab[242] -#define __pyx_n_u_userauth_keyboardinteractive_loc __pyx_string_tab[243] -#define __pyx_n_u_userauth_list __pyx_string_tab[244] -#define __pyx_n_u_userauth_password __pyx_string_tab[245] -#define __pyx_n_u_userauth_publickey __pyx_string_tab[246] -#define __pyx_n_u_userauth_publickey_fromfile __pyx_string_tab[247] -#define __pyx_n_u_userauth_publickey_frommemory __pyx_string_tab[248] -#define __pyx_n_u_username __pyx_string_tab[249] -#define __pyx_n_u_username_2 __pyx_string_tab[250] -#define __pyx_n_u_username_len __pyx_string_tab[251] -#define __pyx_n_u_value __pyx_string_tab[252] -#define __pyx_n_u_want_reply __pyx_string_tab[253] +#define __pyx_n_u_LIBSSH2_FLAG_QUOTE_PATHS __pyx_string_tab[8] +#define __pyx_n_u_LIBSSH2_FLAG_SIGPIPE __pyx_string_tab[9] +#define __pyx_n_u_LIBSSH2_FLAG_SK_PRESENCE_REQUIRE __pyx_string_tab[10] +#define __pyx_n_u_LIBSSH2_FLAG_SK_VERIFICATION_REQ __pyx_string_tab[11] +#define __pyx_n_u_LIBSSH2_HOSTKEY_HASH_MD5 __pyx_string_tab[12] +#define __pyx_n_u_LIBSSH2_HOSTKEY_HASH_SHA1 __pyx_string_tab[13] +#define __pyx_n_u_LIBSSH2_HOSTKEY_HASH_SHA256 __pyx_string_tab[14] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_DSS __pyx_string_tab[15] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ECDSA_256 __pyx_string_tab[16] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ECDSA_384 __pyx_string_tab[17] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ECDSA_521 __pyx_string_tab[18] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_ED25519 __pyx_string_tab[19] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_RSA __pyx_string_tab[20] +#define __pyx_n_u_LIBSSH2_HOSTKEY_TYPE_UNKNOWN __pyx_string_tab[21] +#define __pyx_n_u_LIBSSH2_METHOD_COMP_CS __pyx_string_tab[22] +#define __pyx_n_u_LIBSSH2_METHOD_COMP_SC __pyx_string_tab[23] +#define __pyx_n_u_LIBSSH2_METHOD_CRYPT_CS __pyx_string_tab[24] +#define __pyx_n_u_LIBSSH2_METHOD_CRYPT_SC __pyx_string_tab[25] +#define __pyx_n_u_LIBSSH2_METHOD_HOSTKEY __pyx_string_tab[26] +#define __pyx_n_u_LIBSSH2_METHOD_KEX __pyx_string_tab[27] +#define __pyx_n_u_LIBSSH2_METHOD_LANG_CS __pyx_string_tab[28] +#define __pyx_n_u_LIBSSH2_METHOD_LANG_SC __pyx_string_tab[29] +#define __pyx_n_u_LIBSSH2_METHOD_MAC_CS __pyx_string_tab[30] +#define __pyx_n_u_LIBSSH2_METHOD_MAC_SC __pyx_string_tab[31] +#define __pyx_n_u_LIBSSH2_SESSION_BLOCK_INBOUND __pyx_string_tab[32] +#define __pyx_n_u_LIBSSH2_SESSION_BLOCK_OUTBOUND __pyx_string_tab[33] +#define __pyx_n_u_MemoryError __pyx_string_tab[34] +#define __pyx_n_u_MethodType __pyx_string_tab[35] +#define __pyx_n_u_MethodType___reduce_cython __pyx_string_tab[36] +#define __pyx_n_u_MethodType___setstate_cython __pyx_string_tab[37] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[38] +#define __pyx_kp_u_Provided_flag_must_be_one_of_LIB __pyx_string_tab[39] +#define __pyx_n_u_PublicKeyInitError __pyx_string_tab[40] +#define __pyx_n_u_Session __pyx_string_tab[41] +#define __pyx_n_u_SessionHostKeyError __pyx_string_tab[42] +#define __pyx_n_u_Session___reduce_cython __pyx_string_tab[43] +#define __pyx_n_u_Session___setstate_cython __pyx_string_tab[44] +#define __pyx_n_u_Session_agent_auth __pyx_string_tab[45] +#define __pyx_n_u_Session_agent_init __pyx_string_tab[46] +#define __pyx_n_u_Session_block_directions __pyx_string_tab[47] +#define __pyx_n_u_Session_direct_streamlocal_ex __pyx_string_tab[48] +#define __pyx_n_u_Session_direct_tcpip __pyx_string_tab[49] +#define __pyx_n_u_Session_direct_tcpip_ex __pyx_string_tab[50] +#define __pyx_n_u_Session_disconnect __pyx_string_tab[51] +#define __pyx_n_u_Session_flag __pyx_string_tab[52] +#define __pyx_n_u_Session_forward_listen __pyx_string_tab[53] +#define __pyx_n_u_Session_forward_listen_ex __pyx_string_tab[54] +#define __pyx_n_u_Session_get_blocking __pyx_string_tab[55] +#define __pyx_n_u_Session_get_timeout __pyx_string_tab[56] +#define __pyx_n_u_Session_handshake __pyx_string_tab[57] +#define __pyx_n_u_Session_hostkey __pyx_string_tab[58] +#define __pyx_n_u_Session_hostkey_hash __pyx_string_tab[59] +#define __pyx_n_u_Session_keepalive_config __pyx_string_tab[60] +#define __pyx_n_u_Session_keepalive_send __pyx_string_tab[61] +#define __pyx_n_u_Session_knownhost_init __pyx_string_tab[62] +#define __pyx_n_u_Session_last_errno __pyx_string_tab[63] +#define __pyx_n_u_Session_last_error __pyx_string_tab[64] +#define __pyx_n_u_Session_method_pref __pyx_string_tab[65] +#define __pyx_n_u_Session_methods __pyx_string_tab[66] +#define __pyx_n_u_Session_open_session __pyx_string_tab[67] +#define __pyx_n_u_Session_publickey_init __pyx_string_tab[68] +#define __pyx_n_u_Session_scp_recv2 __pyx_string_tab[69] +#define __pyx_n_u_Session_scp_send64 __pyx_string_tab[70] +#define __pyx_n_u_Session_set_blocking __pyx_string_tab[71] +#define __pyx_n_u_Session_set_last_error __pyx_string_tab[72] +#define __pyx_n_u_Session_set_timeout __pyx_string_tab[73] +#define __pyx_n_u_Session_sftp_init __pyx_string_tab[74] +#define __pyx_n_u_Session_supported_algs __pyx_string_tab[75] +#define __pyx_n_u_Session_userauth_authenticated __pyx_string_tab[76] +#define __pyx_n_u_Session_userauth_hostbased_fromf __pyx_string_tab[77] +#define __pyx_n_u_Session_userauth_keyboardinterac __pyx_string_tab[78] +#define __pyx_n_u_Session_userauth_keyboardinterac_2 __pyx_string_tab[79] +#define __pyx_n_u_Session_userauth_list __pyx_string_tab[80] +#define __pyx_n_u_Session_userauth_password __pyx_string_tab[81] +#define __pyx_n_u_Session_userauth_publickey __pyx_string_tab[82] +#define __pyx_n_u_Session_userauth_publickey_fromf __pyx_string_tab[83] +#define __pyx_n_u_Session_userauth_publickey_fromm __pyx_string_tab[84] +#define __pyx_n_u_TypeError __pyx_string_tab[85] +#define __pyx_n_u_ValueError __pyx_string_tab[86] +#define __pyx_kp_b__2 __pyx_string_tab[87] +#define __pyx_kp_u__2 __pyx_string_tab[88] +#define __pyx_kp_u__3 __pyx_string_tab[89] +#define __pyx_kp_u__4 __pyx_string_tab[90] +#define __pyx_kp_u_add_note __pyx_string_tab[91] +#define __pyx_n_u_agent __pyx_string_tab[92] +#define __pyx_n_u_agent_auth __pyx_string_tab[93] +#define __pyx_n_u_agent_init __pyx_string_tab[94] +#define __pyx_n_u_algs __pyx_string_tab[95] +#define __pyx_n_u_args __pyx_string_tab[96] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[97] +#define __pyx_n_u_atime __pyx_string_tab[98] +#define __pyx_n_u_auth __pyx_string_tab[99] +#define __pyx_n_u_auth_2 __pyx_string_tab[100] +#define __pyx_n_u_b_errmsg __pyx_string_tab[101] +#define __pyx_n_u_b_hash __pyx_string_tab[102] +#define __pyx_n_u_b_host __pyx_string_tab[103] +#define __pyx_n_u_b_hostname __pyx_string_tab[104] +#define __pyx_n_u_b_passphrase __pyx_string_tab[105] +#define __pyx_n_u_b_password __pyx_string_tab[106] +#define __pyx_n_u_b_path __pyx_string_tab[107] +#define __pyx_n_u_b_prefs __pyx_string_tab[108] +#define __pyx_n_u_b_privatekey __pyx_string_tab[109] +#define __pyx_n_u_b_publickey __pyx_string_tab[110] +#define __pyx_n_u_b_shost __pyx_string_tab[111] +#define __pyx_n_u_b_socket_path __pyx_string_tab[112] +#define __pyx_n_u_b_username __pyx_string_tab[113] +#define __pyx_n_u_block_directions __pyx_string_tab[114] +#define __pyx_n_u_blocking __pyx_string_tab[115] +#define __pyx_n_u_bound_port __pyx_string_tab[116] +#define __pyx_n_u_c_algs __pyx_string_tab[117] +#define __pyx_n_u_c_prefs __pyx_string_tab[118] +#define __pyx_n_u_c_seconds __pyx_string_tab[119] +#define __pyx_n_u_c_shost __pyx_string_tab[120] +#define __pyx_n_u_c_socket_path __pyx_string_tab[121] +#define __pyx_n_u_callback __pyx_string_tab[122] +#define __pyx_n_u_channel __pyx_string_tab[123] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[124] +#define __pyx_n_u_direct_streamlocal_ex __pyx_string_tab[125] +#define __pyx_n_u_direct_tcpip __pyx_string_tab[126] +#define __pyx_n_u_direct_tcpip_ex __pyx_string_tab[127] +#define __pyx_kp_u_disable __pyx_string_tab[128] +#define __pyx_n_u_disconnect __pyx_string_tab[129] +#define __pyx_kp_u_enable __pyx_string_tab[130] +#define __pyx_n_u_enabled __pyx_string_tab[131] +#define __pyx_n_u_errcode __pyx_string_tab[132] +#define __pyx_n_u_errmsg __pyx_string_tab[133] +#define __pyx_n_u_errmsg_2 __pyx_string_tab[134] +#define __pyx_n_u_errmsg_len __pyx_string_tab[135] +#define __pyx_n_u_error_msg __pyx_string_tab[136] +#define __pyx_n_u_exceptions __pyx_string_tab[137] +#define __pyx_n_u_fileinfo __pyx_string_tab[138] +#define __pyx_n_u_flag __pyx_string_tab[139] +#define __pyx_n_u_forward_listen __pyx_string_tab[140] +#define __pyx_n_u_forward_listen_ex __pyx_string_tab[141] +#define __pyx_n_u_func __pyx_string_tab[142] +#define __pyx_kp_u_gc __pyx_string_tab[143] +#define __pyx_n_u_get_blocking __pyx_string_tab[144] +#define __pyx_n_u_get_timeout __pyx_string_tab[145] +#define __pyx_n_u_getstate __pyx_string_tab[146] +#define __pyx_n_u_handshake __pyx_string_tab[147] +#define __pyx_n_u_hash __pyx_string_tab[148] +#define __pyx_n_u_hash_type __pyx_string_tab[149] +#define __pyx_n_u_host __pyx_string_tab[150] +#define __pyx_n_u_host_2 __pyx_string_tab[151] +#define __pyx_n_u_hostkey __pyx_string_tab[152] +#define __pyx_n_u_hostkey_hash __pyx_string_tab[153] +#define __pyx_n_u_hostname __pyx_string_tab[154] +#define __pyx_n_u_hostname_2 __pyx_string_tab[155] +#define __pyx_n_u_i __pyx_string_tab[156] +#define __pyx_n_u_identity __pyx_string_tab[157] +#define __pyx_n_u_interval __pyx_string_tab[158] +#define __pyx_n_u_is_coroutine __pyx_string_tab[159] +#define __pyx_kp_u_isenabled __pyx_string_tab[160] +#define __pyx_n_u_keepalive_config __pyx_string_tab[161] +#define __pyx_n_u_keepalive_send __pyx_string_tab[162] +#define __pyx_n_u_key __pyx_string_tab[163] +#define __pyx_n_u_key_2 __pyx_string_tab[164] +#define __pyx_n_u_key_len __pyx_string_tab[165] +#define __pyx_n_u_key_type __pyx_string_tab[166] +#define __pyx_n_u_known_hosts __pyx_string_tab[167] +#define __pyx_n_u_knownhost_init __pyx_string_tab[168] +#define __pyx_n_u_last_errno __pyx_string_tab[169] +#define __pyx_n_u_last_error __pyx_string_tab[170] +#define __pyx_n_u_listener __pyx_string_tab[171] +#define __pyx_n_u_main __pyx_string_tab[172] +#define __pyx_n_u_method_pref __pyx_string_tab[173] +#define __pyx_n_u_method_type __pyx_string_tab[174] +#define __pyx_n_u_methods __pyx_string_tab[175] +#define __pyx_n_u_mode __pyx_string_tab[176] +#define __pyx_n_u_module __pyx_string_tab[177] +#define __pyx_n_u_msg __pyx_string_tab[178] +#define __pyx_n_u_msg_size __pyx_string_tab[179] +#define __pyx_n_u_mtime __pyx_string_tab[180] +#define __pyx_n_u_name __pyx_string_tab[181] +#define __pyx_kp_u_no_default___reduce___due_to_non __pyx_string_tab[182] +#define __pyx_n_u_open_session __pyx_string_tab[183] +#define __pyx_n_u_passphrase __pyx_string_tab[184] +#define __pyx_n_u_passphrase_2 __pyx_string_tab[185] +#define __pyx_n_u_passwd __pyx_string_tab[186] +#define __pyx_n_u_password __pyx_string_tab[187] +#define __pyx_n_u_password_2 __pyx_string_tab[188] +#define __pyx_n_u_path __pyx_string_tab[189] +#define __pyx_n_u_path_2 __pyx_string_tab[190] +#define __pyx_n_u_pkey __pyx_string_tab[191] +#define __pyx_n_u_pop __pyx_string_tab[192] +#define __pyx_n_u_port __pyx_string_tab[193] +#define __pyx_n_u_prefs __pyx_string_tab[194] +#define __pyx_n_u_prev __pyx_string_tab[195] +#define __pyx_n_u_privatekey __pyx_string_tab[196] +#define __pyx_n_u_privatekey_2 __pyx_string_tab[197] +#define __pyx_n_u_privatekeydata_len __pyx_string_tab[198] +#define __pyx_n_u_privatekeyfiledata __pyx_string_tab[199] +#define __pyx_n_u_privatekeyfiledata_2 __pyx_string_tab[200] +#define __pyx_n_u_pubkeydata __pyx_string_tab[201] +#define __pyx_n_u_pubkeydata_2 __pyx_string_tab[202] +#define __pyx_n_u_pubkeydata_len __pyx_string_tab[203] +#define __pyx_n_u_publickey __pyx_string_tab[204] +#define __pyx_n_u_publickey_2 __pyx_string_tab[205] +#define __pyx_n_u_publickey_init __pyx_string_tab[206] +#define __pyx_n_u_publickeyfiledata __pyx_string_tab[207] +#define __pyx_n_u_publickeyfiledata_2 __pyx_string_tab[208] +#define __pyx_n_u_pyx_state __pyx_string_tab[209] +#define __pyx_n_u_qualname __pyx_string_tab[210] +#define __pyx_n_u_queue_maxsize __pyx_string_tab[211] +#define __pyx_n_u_range __pyx_string_tab[212] +#define __pyx_n_u_rc __pyx_string_tab[213] +#define __pyx_n_u_reduce __pyx_string_tab[214] +#define __pyx_n_u_reduce_cython __pyx_string_tab[215] +#define __pyx_n_u_reduce_ex __pyx_string_tab[216] +#define __pyx_n_u_scp_recv2 __pyx_string_tab[217] +#define __pyx_n_u_scp_send64 __pyx_string_tab[218] +#define __pyx_n_u_seconds __pyx_string_tab[219] +#define __pyx_n_u_self __pyx_string_tab[220] +#define __pyx_n_u_set_blocking __pyx_string_tab[221] +#define __pyx_n_u_set_last_error __pyx_string_tab[222] +#define __pyx_n_u_set_name __pyx_string_tab[223] +#define __pyx_n_u_set_timeout __pyx_string_tab[224] +#define __pyx_n_u_setstate __pyx_string_tab[225] +#define __pyx_n_u_setstate_cython __pyx_string_tab[226] +#define __pyx_n_u_sftp __pyx_string_tab[227] +#define __pyx_n_u_sftp_init __pyx_string_tab[228] +#define __pyx_n_u_shost __pyx_string_tab[229] +#define __pyx_n_u_shost_2 __pyx_string_tab[230] +#define __pyx_n_u_size __pyx_string_tab[231] +#define __pyx_n_u_sock __pyx_string_tab[232] +#define __pyx_n_u_sock_2 __pyx_string_tab[233] +#define __pyx_n_u_socket_path __pyx_string_tab[234] +#define __pyx_n_u_sport __pyx_string_tab[235] +#define __pyx_n_u_ssh2_session __pyx_string_tab[236] +#define __pyx_kp_u_ssh2_session_pyx __pyx_string_tab[237] +#define __pyx_kp_u_stringsource __pyx_string_tab[238] +#define __pyx_n_u_supported_algs __pyx_string_tab[239] +#define __pyx_n_u_test __pyx_string_tab[240] +#define __pyx_n_u_timeout __pyx_string_tab[241] +#define __pyx_n_u_userauth_authenticated __pyx_string_tab[242] +#define __pyx_n_u_userauth_hostbased_fromfile __pyx_string_tab[243] +#define __pyx_n_u_userauth_keyboardinteractive __pyx_string_tab[244] +#define __pyx_n_u_userauth_keyboardinteractive_cal __pyx_string_tab[245] +#define __pyx_n_u_userauth_keyboardinteractive_loc __pyx_string_tab[246] +#define __pyx_n_u_userauth_list __pyx_string_tab[247] +#define __pyx_n_u_userauth_password __pyx_string_tab[248] +#define __pyx_n_u_userauth_publickey __pyx_string_tab[249] +#define __pyx_n_u_userauth_publickey_fromfile __pyx_string_tab[250] +#define __pyx_n_u_userauth_publickey_frommemory __pyx_string_tab[251] +#define __pyx_n_u_username __pyx_string_tab[252] +#define __pyx_n_u_username_2 __pyx_string_tab[253] +#define __pyx_n_u_username_len __pyx_string_tab[254] +#define __pyx_n_u_value __pyx_string_tab[255] +#define __pyx_n_u_want_reply __pyx_string_tab[256] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { @@ -3520,7 +3526,7 @@ static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_type_4ssh2_7session___pyx_defaults); for (int i=0; i<5; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } for (int i=0; i<47; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<254; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<257; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_0); Py_CLEAR(clear_module_state->__pyx_int_1024); return 0; @@ -3564,7 +3570,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void Py_VISIT(traverse_module_state->__pyx_type_4ssh2_7session___pyx_defaults); for (int i=0; i<5; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } for (int i=0; i<47; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<254; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<257; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_0); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1024); return 0; @@ -4523,7 +4529,7 @@ static PyObject *__pyx_pf_4ssh2_7session_8FlagType_4__setstate_cython__(CYTHON_U return __pyx_r; } -/* "ssh2/session.pyx":85 +/* "ssh2/session.pyx":88 * * * cdef void kbd_callback(const char *name, int name_len, # <<<<<<<<<<<<<< @@ -4564,7 +4570,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("kbd_callback", 0); - /* "ssh2/session.pyx":91 + /* "ssh2/session.pyx":94 * c_ssh2.LIBSSH2_USERAUTH_KBDINT_RESPONSE *responses, * void **abstract) except *: * py_sess = (c_dereference(abstract)) # <<<<<<<<<<<<<< @@ -4577,7 +4583,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ __pyx_v_py_sess = ((struct __pyx_obj_4ssh2_7session_Session *)__pyx_t_2); __pyx_t_2 = 0; - /* "ssh2/session.pyx":92 + /* "ssh2/session.pyx":95 * void **abstract) except *: * py_sess = (c_dereference(abstract)) * if py_sess._kbd_callback is None: # <<<<<<<<<<<<<< @@ -4587,7 +4593,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ __pyx_t_3 = (__pyx_v_py_sess->_kbd_callback == Py_None); if (__pyx_t_3) { - /* "ssh2/session.pyx":93 + /* "ssh2/session.pyx":96 * py_sess = (c_dereference(abstract)) * if py_sess._kbd_callback is None: * return # <<<<<<<<<<<<<< @@ -4596,7 +4602,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ goto __pyx_L0; - /* "ssh2/session.pyx":92 + /* "ssh2/session.pyx":95 * void **abstract) except *: * py_sess = (c_dereference(abstract)) * if py_sess._kbd_callback is None: # <<<<<<<<<<<<<< @@ -4605,19 +4611,19 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ } - /* "ssh2/session.pyx":95 + /* "ssh2/session.pyx":98 * return * * cdef list py_prompts = [] # <<<<<<<<<<<<<< * for i in range(num_prompts): * prompt_len = prompts[i].length */ - __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 95, __pyx_L1_error) + __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_py_prompts = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "ssh2/session.pyx":96 + /* "ssh2/session.pyx":99 * * cdef list py_prompts = [] * for i in range(num_prompts): # <<<<<<<<<<<<<< @@ -4629,7 +4635,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { __pyx_v_i = __pyx_t_6; - /* "ssh2/session.pyx":97 + /* "ssh2/session.pyx":100 * cdef list py_prompts = [] * for i in range(num_prompts): * prompt_len = prompts[i].length # <<<<<<<<<<<<<< @@ -4639,20 +4645,20 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ __pyx_t_7 = (__pyx_v_prompts[__pyx_v_i]).length; __pyx_v_prompt_len = __pyx_t_7; - /* "ssh2/session.pyx":98 + /* "ssh2/session.pyx":101 * for i in range(num_prompts): * prompt_len = prompts[i].length * py_prompts.append(to_str_len(prompts[i].text, prompt_len)) # <<<<<<<<<<<<<< * * cdef list py_responses = py_sess._kbd_callback( */ - __pyx_t_2 = __pyx_f_4ssh2_5utils_to_str_len((__pyx_v_prompts[__pyx_v_i]).text, __pyx_v_prompt_len); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 98, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_5utils_to_str_len((__pyx_v_prompts[__pyx_v_i]).text, __pyx_v_prompt_len); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_py_prompts, __pyx_t_2); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 98, __pyx_L1_error) + __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_py_prompts, __pyx_t_2); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 101, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } - /* "ssh2/session.pyx":100 + /* "ssh2/session.pyx":103 * py_prompts.append(to_str_len(prompts[i].text, prompt_len)) * * cdef list py_responses = py_sess._kbd_callback( # <<<<<<<<<<<<<< @@ -4663,16 +4669,16 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ __Pyx_INCREF(__pyx_v_py_sess->_kbd_callback); __pyx_t_10 = __pyx_v_py_sess->_kbd_callback; - /* "ssh2/session.pyx":101 + /* "ssh2/session.pyx":104 * * cdef list py_responses = py_sess._kbd_callback( * name[:name_len], instruction[:instruction_len], py_prompts) # <<<<<<<<<<<<<< * * cdef bytes response */ - __pyx_t_11 = __Pyx_PyBytes_FromStringAndSize(__pyx_v_name + 0, __pyx_v_name_len - 0); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 101, __pyx_L1_error) + __pyx_t_11 = __Pyx_PyBytes_FromStringAndSize(__pyx_v_name + 0, __pyx_v_name_len - 0); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_12 = __Pyx_PyBytes_FromStringAndSize(__pyx_v_instruction + 0, __pyx_v_instruction_len - 0); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 101, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyBytes_FromStringAndSize(__pyx_v_instruction + 0, __pyx_v_instruction_len - 0); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_13 = 1; #if CYTHON_UNPACK_METHODS @@ -4693,22 +4699,22 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 100, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } - /* "ssh2/session.pyx":100 + /* "ssh2/session.pyx":103 * py_prompts.append(to_str_len(prompts[i].text, prompt_len)) * * cdef list py_responses = py_sess._kbd_callback( # <<<<<<<<<<<<<< * name[:name_len], instruction[:instruction_len], py_prompts) * */ - if (!(likely(PyList_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None) || __Pyx_RaiseUnexpectedTypeError("list", __pyx_t_2))) __PYX_ERR(0, 100, __pyx_L1_error) + if (!(likely(PyList_CheckExact(__pyx_t_2))||((__pyx_t_2) == Py_None) || __Pyx_RaiseUnexpectedTypeError("list", __pyx_t_2))) __PYX_ERR(0, 103, __pyx_L1_error) __pyx_v_py_responses = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "ssh2/session.pyx":104 + /* "ssh2/session.pyx":107 * * cdef bytes response * for i in range(num_prompts): # <<<<<<<<<<<<<< @@ -4720,7 +4726,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { __pyx_v_i = __pyx_t_6; - /* "ssh2/session.pyx":105 + /* "ssh2/session.pyx":108 * cdef bytes response * for i in range(num_prompts): * response = to_bytes(py_responses[i]) # <<<<<<<<<<<<<< @@ -4729,17 +4735,17 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ if (unlikely(__pyx_v_py_responses == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 105, __pyx_L1_error) + __PYX_ERR(0, 108, __pyx_L1_error) } __pyx_t_2 = __Pyx_PyList_GET_ITEM(__pyx_v_py_responses, __pyx_v_i); __Pyx_INCREF(__pyx_t_2); - __pyx_t_10 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 105, __pyx_L1_error) + __pyx_t_10 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_t_2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF_SET(__pyx_v_response, ((PyObject*)__pyx_t_10)); __pyx_t_10 = 0; - /* "ssh2/session.pyx":107 + /* "ssh2/session.pyx":110 * response = to_bytes(py_responses[i]) * * cur_buf_len = len(response) # <<<<<<<<<<<<<< @@ -4748,12 +4754,12 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ if (unlikely(__pyx_v_response == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 107, __pyx_L1_error) + __PYX_ERR(0, 110, __pyx_L1_error) } - __pyx_t_14 = __Pyx_PyBytes_GET_SIZE(__pyx_v_response); if (unlikely(__pyx_t_14 == ((Py_ssize_t)-1))) __PYX_ERR(0, 107, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyBytes_GET_SIZE(__pyx_v_response); if (unlikely(__pyx_t_14 == ((Py_ssize_t)-1))) __PYX_ERR(0, 110, __pyx_L1_error) __pyx_v_cur_buf_len = __pyx_t_14; - /* "ssh2/session.pyx":108 + /* "ssh2/session.pyx":111 * * cur_buf_len = len(response) * cur_buff = calloc(sizeof(char), cur_buf_len) # <<<<<<<<<<<<<< @@ -4762,7 +4768,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ __pyx_v_cur_buff = ((char *)calloc((sizeof(char)), __pyx_v_cur_buf_len)); - /* "ssh2/session.pyx":109 + /* "ssh2/session.pyx":112 * cur_buf_len = len(response) * cur_buff = calloc(sizeof(char), cur_buf_len) * for j in range(cur_buf_len): # <<<<<<<<<<<<<< @@ -4774,7 +4780,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) { __pyx_v_j = __pyx_t_16; - /* "ssh2/session.pyx":110 + /* "ssh2/session.pyx":113 * cur_buff = calloc(sizeof(char), cur_buf_len) * for j in range(cur_buf_len): * cur_buff[j] = response[j] # <<<<<<<<<<<<<< @@ -4783,13 +4789,13 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ if (unlikely(__pyx_v_response == Py_None)) { PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(0, 110, __pyx_L1_error) + __PYX_ERR(0, 113, __pyx_L1_error) } - __pyx_t_17 = __Pyx_PyBytes_GetItemInt(__pyx_v_response, __pyx_v_j, 0); if (unlikely(__pyx_t_17 == ((char)((char)-1)) && PyErr_Occurred())) __PYX_ERR(0, 110, __pyx_L1_error) + __pyx_t_17 = __Pyx_PyBytes_GetItemInt(__pyx_v_response, __pyx_v_j, 0); if (unlikely(__pyx_t_17 == ((char)((char)-1)) && PyErr_Occurred())) __PYX_ERR(0, 113, __pyx_L1_error) (__pyx_v_cur_buff[__pyx_v_j]) = __pyx_t_17; } - /* "ssh2/session.pyx":112 + /* "ssh2/session.pyx":115 * cur_buff[j] = response[j] * * responses[i].text = cur_buff # <<<<<<<<<<<<<< @@ -4798,7 +4804,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ */ (__pyx_v_responses[__pyx_v_i]).text = __pyx_v_cur_buff; - /* "ssh2/session.pyx":113 + /* "ssh2/session.pyx":116 * * responses[i].text = cur_buff * responses[i].length = cur_buf_len # <<<<<<<<<<<<<< @@ -4808,7 +4814,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ (__pyx_v_responses[__pyx_v_i]).length = __pyx_v_cur_buf_len; } - /* "ssh2/session.pyx":85 + /* "ssh2/session.pyx":88 * * * cdef void kbd_callback(const char *name, int name_len, # <<<<<<<<<<<<<< @@ -4833,7 +4839,7 @@ static void __pyx_f_4ssh2_7session_kbd_callback(char const *__pyx_v_name, int __ __Pyx_RefNannyFinishContext(); } -/* "ssh2/session.pyx":120 +/* "ssh2/session.pyx":123 * """LibSSH2 Session class providing session functions""" * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -4875,7 +4881,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__cinit__", 0); - /* "ssh2/session.pyx":121 + /* "ssh2/session.pyx":124 * * def __cinit__(self): * self._session = c_ssh2.libssh2_session_init_ex( # <<<<<<<<<<<<<< @@ -4884,7 +4890,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se */ __pyx_v_self->_session = libssh2_session_init_ex(NULL, NULL, NULL, ((void *)__pyx_v_self)); - /* "ssh2/session.pyx":123 + /* "ssh2/session.pyx":126 * self._session = c_ssh2.libssh2_session_init_ex( * NULL, NULL, NULL, self) * if self._session is NULL: # <<<<<<<<<<<<<< @@ -4894,16 +4900,16 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se __pyx_t_1 = (__pyx_v_self->_session == NULL); if (unlikely(__pyx_t_1)) { - /* "ssh2/session.pyx":124 + /* "ssh2/session.pyx":127 * NULL, NULL, NULL, self) * if self._session is NULL: * raise MemoryError # <<<<<<<<<<<<<< * self._sock = 0 * self.sock = None */ - PyErr_NoMemory(); __PYX_ERR(0, 124, __pyx_L1_error) + PyErr_NoMemory(); __PYX_ERR(0, 127, __pyx_L1_error) - /* "ssh2/session.pyx":123 + /* "ssh2/session.pyx":126 * self._session = c_ssh2.libssh2_session_init_ex( * NULL, NULL, NULL, self) * if self._session is NULL: # <<<<<<<<<<<<<< @@ -4912,7 +4918,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se */ } - /* "ssh2/session.pyx":125 + /* "ssh2/session.pyx":128 * if self._session is NULL: * raise MemoryError * self._sock = 0 # <<<<<<<<<<<<<< @@ -4921,7 +4927,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se */ __pyx_v_self->_sock = 0; - /* "ssh2/session.pyx":126 + /* "ssh2/session.pyx":129 * raise MemoryError * self._sock = 0 * self.sock = None # <<<<<<<<<<<<<< @@ -4934,7 +4940,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se __Pyx_DECREF(__pyx_v_self->sock); __pyx_v_self->sock = Py_None; - /* "ssh2/session.pyx":127 + /* "ssh2/session.pyx":130 * self._sock = 0 * self.sock = None * self._kbd_callback = None # <<<<<<<<<<<<<< @@ -4947,7 +4953,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se __Pyx_DECREF(__pyx_v_self->_kbd_callback); __pyx_v_self->_kbd_callback = Py_None; - /* "ssh2/session.pyx":120 + /* "ssh2/session.pyx":123 * """LibSSH2 Session class providing session functions""" * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -4966,7 +4972,7 @@ static int __pyx_pf_4ssh2_7session_7Session___cinit__(struct __pyx_obj_4ssh2_7se return __pyx_r; } -/* "ssh2/session.pyx":129 +/* "ssh2/session.pyx":132 * self._kbd_callback = None * * def __dealloc__(self): # <<<<<<<<<<<<<< @@ -4990,7 +4996,7 @@ static void __pyx_pw_4ssh2_7session_7Session_3__dealloc__(PyObject *__pyx_v_self static void __pyx_pf_4ssh2_7session_7Session_2__dealloc__(struct __pyx_obj_4ssh2_7session_Session *__pyx_v_self) { int __pyx_t_1; - /* "ssh2/session.pyx":130 + /* "ssh2/session.pyx":133 * * def __dealloc__(self): * if self._session is not NULL: # <<<<<<<<<<<<<< @@ -5000,7 +5006,7 @@ static void __pyx_pf_4ssh2_7session_7Session_2__dealloc__(struct __pyx_obj_4ssh2 __pyx_t_1 = (__pyx_v_self->_session != NULL); if (__pyx_t_1) { - /* "ssh2/session.pyx":131 + /* "ssh2/session.pyx":134 * def __dealloc__(self): * if self._session is not NULL: * c_ssh2.libssh2_session_free(self._session) # <<<<<<<<<<<<<< @@ -5009,7 +5015,7 @@ static void __pyx_pf_4ssh2_7session_7Session_2__dealloc__(struct __pyx_obj_4ssh2 */ (void)(libssh2_session_free(__pyx_v_self->_session)); - /* "ssh2/session.pyx":130 + /* "ssh2/session.pyx":133 * * def __dealloc__(self): * if self._session is not NULL: # <<<<<<<<<<<<<< @@ -5018,7 +5024,7 @@ static void __pyx_pf_4ssh2_7session_7Session_2__dealloc__(struct __pyx_obj_4ssh2 */ } - /* "ssh2/session.pyx":132 + /* "ssh2/session.pyx":135 * if self._session is not NULL: * c_ssh2.libssh2_session_free(self._session) * self._session = NULL # <<<<<<<<<<<<<< @@ -5027,7 +5033,7 @@ static void __pyx_pf_4ssh2_7session_7Session_2__dealloc__(struct __pyx_obj_4ssh2 */ __pyx_v_self->_session = NULL; - /* "ssh2/session.pyx":129 + /* "ssh2/session.pyx":132 * self._kbd_callback = None * * def __dealloc__(self): # <<<<<<<<<<<<<< @@ -5038,7 +5044,7 @@ static void __pyx_pf_4ssh2_7session_7Session_2__dealloc__(struct __pyx_obj_4ssh2 /* function exit code */ } -/* "ssh2/session.pyx":134 +/* "ssh2/session.pyx":137 * self._session = NULL * * def disconnect(self): # <<<<<<<<<<<<<< @@ -5100,7 +5106,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_4disconnect(struct __pyx_obj_4 int __pyx_clineno = 0; __Pyx_RefNannySetupContext("disconnect", 0); - /* "ssh2/session.pyx":136 + /* "ssh2/session.pyx":139 * def disconnect(self): * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -5114,7 +5120,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_4disconnect(struct __pyx_obj_4 __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":137 + /* "ssh2/session.pyx":140 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_disconnect(self._session, b"end") # <<<<<<<<<<<<<< @@ -5124,7 +5130,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_4disconnect(struct __pyx_obj_4 __pyx_v_rc = libssh2_session_disconnect(__pyx_v_self->_session, ((char const *)"end")); } - /* "ssh2/session.pyx":136 + /* "ssh2/session.pyx":139 * def disconnect(self): * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -5141,7 +5147,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_4disconnect(struct __pyx_obj_4 } } - /* "ssh2/session.pyx":138 + /* "ssh2/session.pyx":141 * with nogil: * rc = c_ssh2.libssh2_session_disconnect(self._session, b"end") * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -5149,14 +5155,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_4disconnect(struct __pyx_obj_4 * def handshake(self, sock not None): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 138, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 138, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 141, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":134 + /* "ssh2/session.pyx":137 * self._session = NULL * * def disconnect(self): # <<<<<<<<<<<<<< @@ -5175,7 +5181,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_4disconnect(struct __pyx_obj_4 return __pyx_r; } -/* "ssh2/session.pyx":140 +/* "ssh2/session.pyx":143 * return handle_error_codes(rc) * * def handshake(self, sock not None): # <<<<<<<<<<<<<< @@ -5223,32 +5229,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_sock,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 140, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 143, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 140, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 143, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "handshake", 0) < 0) __PYX_ERR(0, 140, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "handshake", 0) < 0) __PYX_ERR(0, 143, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("handshake", 1, 1, 1, i); __PYX_ERR(0, 140, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("handshake", 1, 1, 1, i); __PYX_ERR(0, 143, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 140, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 143, __pyx_L3_error) } __pyx_v_sock = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("handshake", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 140, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("handshake", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 143, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5260,7 +5266,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_sock) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "sock"); __PYX_ERR(0, 140, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "sock"); __PYX_ERR(0, 143, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_6handshake(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_sock); @@ -5293,17 +5299,17 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s int __pyx_clineno = 0; __Pyx_RefNannySetupContext("handshake", 0); - /* "ssh2/session.pyx":144 + /* "ssh2/session.pyx":147 * * Must be called after Session initialisation.""" * cdef int _sock = PyObject_AsFileDescriptor(sock) # <<<<<<<<<<<<<< * cdef int rc * with nogil: */ - __pyx_t_1 = PyObject_AsFileDescriptor(__pyx_v_sock); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 144, __pyx_L1_error) + __pyx_t_1 = PyObject_AsFileDescriptor(__pyx_v_sock); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 147, __pyx_L1_error) __pyx_v__sock = __pyx_t_1; - /* "ssh2/session.pyx":146 + /* "ssh2/session.pyx":149 * cdef int _sock = PyObject_AsFileDescriptor(sock) * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -5317,7 +5323,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":147 + /* "ssh2/session.pyx":150 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_handshake(self._session, _sock) # <<<<<<<<<<<<<< @@ -5326,7 +5332,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s */ __pyx_v_rc = libssh2_session_handshake(__pyx_v_self->_session, __pyx_v__sock); - /* "ssh2/session.pyx":148 + /* "ssh2/session.pyx":151 * with nogil: * rc = c_ssh2.libssh2_session_handshake(self._session, _sock) * self._sock = _sock # <<<<<<<<<<<<<< @@ -5336,7 +5342,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s __pyx_v_self->_sock = __pyx_v__sock; } - /* "ssh2/session.pyx":146 + /* "ssh2/session.pyx":149 * cdef int _sock = PyObject_AsFileDescriptor(sock) * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -5353,7 +5359,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s } } - /* "ssh2/session.pyx":149 + /* "ssh2/session.pyx":152 * rc = c_ssh2.libssh2_session_handshake(self._session, _sock) * self._sock = _sock * self.sock = sock # <<<<<<<<<<<<<< @@ -5366,7 +5372,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s __Pyx_DECREF(__pyx_v_self->sock); __pyx_v_self->sock = __pyx_v_sock; - /* "ssh2/session.pyx":150 + /* "ssh2/session.pyx":153 * self._sock = _sock * self.sock = sock * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -5374,14 +5380,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s * def set_blocking(self, bint blocking): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 150, __pyx_L1_error) - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 150, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 153, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":140 + /* "ssh2/session.pyx":143 * return handle_error_codes(rc) * * def handshake(self, sock not None): # <<<<<<<<<<<<<< @@ -5400,7 +5406,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_6handshake(struct __pyx_obj_4s return __pyx_r; } -/* "ssh2/session.pyx":152 +/* "ssh2/session.pyx":155 * return handle_error_codes(rc) * * def set_blocking(self, bint blocking): # <<<<<<<<<<<<<< @@ -5448,32 +5454,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_blocking,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 152, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 155, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 152, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 155, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "set_blocking", 0) < 0) __PYX_ERR(0, 152, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "set_blocking", 0) < 0) __PYX_ERR(0, 155, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("set_blocking", 1, 1, 1, i); __PYX_ERR(0, 152, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("set_blocking", 1, 1, 1, i); __PYX_ERR(0, 155, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 152, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 155, __pyx_L3_error) } - __pyx_v_blocking = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_blocking == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 152, __pyx_L3_error) + __pyx_v_blocking = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_blocking == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 155, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("set_blocking", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 152, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("set_blocking", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 155, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5499,7 +5505,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_8set_blocking(struct __pyx_obj __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("set_blocking", 0); - /* "ssh2/session.pyx":158 + /* "ssh2/session.pyx":161 * Session default is blocking unless set otherwise. * :type blocking: bool""" * with nogil: # <<<<<<<<<<<<<< @@ -5513,7 +5519,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_8set_blocking(struct __pyx_obj __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":159 + /* "ssh2/session.pyx":162 * :type blocking: bool""" * with nogil: * c_ssh2.libssh2_session_set_blocking( # <<<<<<<<<<<<<< @@ -5523,7 +5529,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_8set_blocking(struct __pyx_obj libssh2_session_set_blocking(__pyx_v_self->_session, __pyx_v_blocking); } - /* "ssh2/session.pyx":158 + /* "ssh2/session.pyx":161 * Session default is blocking unless set otherwise. * :type blocking: bool""" * with nogil: # <<<<<<<<<<<<<< @@ -5540,7 +5546,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_8set_blocking(struct __pyx_obj } } - /* "ssh2/session.pyx":152 + /* "ssh2/session.pyx":155 * return handle_error_codes(rc) * * def set_blocking(self, bint blocking): # <<<<<<<<<<<<<< @@ -5555,7 +5561,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_8set_blocking(struct __pyx_obj return __pyx_r; } -/* "ssh2/session.pyx":162 +/* "ssh2/session.pyx":165 * self._session, blocking) * * def get_blocking(self): # <<<<<<<<<<<<<< @@ -5617,7 +5623,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_10get_blocking(struct __pyx_ob int __pyx_clineno = 0; __Pyx_RefNannySetupContext("get_blocking", 0); - /* "ssh2/session.pyx":167 + /* "ssh2/session.pyx":170 * :rtype: bool""" * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -5631,7 +5637,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_10get_blocking(struct __pyx_ob __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":168 + /* "ssh2/session.pyx":171 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_get_blocking(self._session) # <<<<<<<<<<<<<< @@ -5641,7 +5647,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_10get_blocking(struct __pyx_ob __pyx_v_rc = libssh2_session_get_blocking(__pyx_v_self->_session); } - /* "ssh2/session.pyx":167 + /* "ssh2/session.pyx":170 * :rtype: bool""" * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -5658,7 +5664,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_10get_blocking(struct __pyx_ob } } - /* "ssh2/session.pyx":169 + /* "ssh2/session.pyx":172 * with nogil: * rc = c_ssh2.libssh2_session_get_blocking(self._session) * return bool(rc) # <<<<<<<<<<<<<< @@ -5666,17 +5672,17 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_10get_blocking(struct __pyx_ob * def set_timeout(self, long timeout): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 169, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 169, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyBool_FromLong((!(!__pyx_t_2))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 169, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyBool_FromLong((!(!__pyx_t_2))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":162 + /* "ssh2/session.pyx":165 * self._session, blocking) * * def get_blocking(self): # <<<<<<<<<<<<<< @@ -5695,7 +5701,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_10get_blocking(struct __pyx_ob return __pyx_r; } -/* "ssh2/session.pyx":171 +/* "ssh2/session.pyx":174 * return bool(rc) * * def set_timeout(self, long timeout): # <<<<<<<<<<<<<< @@ -5743,32 +5749,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_timeout,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 171, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 174, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 171, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 174, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "set_timeout", 0) < 0) __PYX_ERR(0, 171, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "set_timeout", 0) < 0) __PYX_ERR(0, 174, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("set_timeout", 1, 1, 1, i); __PYX_ERR(0, 171, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("set_timeout", 1, 1, 1, i); __PYX_ERR(0, 174, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 171, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 174, __pyx_L3_error) } - __pyx_v_timeout = __Pyx_PyLong_As_long(values[0]); if (unlikely((__pyx_v_timeout == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 171, __pyx_L3_error) + __pyx_v_timeout = __Pyx_PyLong_As_long(values[0]); if (unlikely((__pyx_v_timeout == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 174, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("set_timeout", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 171, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("set_timeout", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 174, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5794,7 +5800,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_12set_timeout(struct __pyx_obj __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("set_timeout", 0); - /* "ssh2/session.pyx":179 + /* "ssh2/session.pyx":182 * time out. * :param timeout: Milliseconds to wait before timeout.""" * with nogil: # <<<<<<<<<<<<<< @@ -5808,7 +5814,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_12set_timeout(struct __pyx_obj __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":180 + /* "ssh2/session.pyx":183 * :param timeout: Milliseconds to wait before timeout.""" * with nogil: * c_ssh2.libssh2_session_set_timeout(self._session, timeout) # <<<<<<<<<<<<<< @@ -5818,7 +5824,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_12set_timeout(struct __pyx_obj libssh2_session_set_timeout(__pyx_v_self->_session, __pyx_v_timeout); } - /* "ssh2/session.pyx":179 + /* "ssh2/session.pyx":182 * time out. * :param timeout: Milliseconds to wait before timeout.""" * with nogil: # <<<<<<<<<<<<<< @@ -5835,7 +5841,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_12set_timeout(struct __pyx_obj } } - /* "ssh2/session.pyx":171 + /* "ssh2/session.pyx":174 * return bool(rc) * * def set_timeout(self, long timeout): # <<<<<<<<<<<<<< @@ -5850,7 +5856,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_12set_timeout(struct __pyx_obj return __pyx_r; } -/* "ssh2/session.pyx":182 +/* "ssh2/session.pyx":185 * c_ssh2.libssh2_session_set_timeout(self._session, timeout) * * def get_timeout(self): # <<<<<<<<<<<<<< @@ -5911,7 +5917,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_14get_timeout(struct __pyx_obj int __pyx_clineno = 0; __Pyx_RefNannySetupContext("get_timeout", 0); - /* "ssh2/session.pyx":185 + /* "ssh2/session.pyx":188 * """Get current session timeout setting""" * cdef long timeout * with nogil: # <<<<<<<<<<<<<< @@ -5925,7 +5931,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_14get_timeout(struct __pyx_obj __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":186 + /* "ssh2/session.pyx":189 * cdef long timeout * with nogil: * timeout = c_ssh2.libssh2_session_get_timeout(self._session) # <<<<<<<<<<<<<< @@ -5935,7 +5941,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_14get_timeout(struct __pyx_obj __pyx_v_timeout = libssh2_session_get_timeout(__pyx_v_self->_session); } - /* "ssh2/session.pyx":185 + /* "ssh2/session.pyx":188 * """Get current session timeout setting""" * cdef long timeout * with nogil: # <<<<<<<<<<<<<< @@ -5952,7 +5958,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_14get_timeout(struct __pyx_obj } } - /* "ssh2/session.pyx":187 + /* "ssh2/session.pyx":190 * with nogil: * timeout = c_ssh2.libssh2_session_get_timeout(self._session) * return timeout # <<<<<<<<<<<<<< @@ -5960,13 +5966,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_14get_timeout(struct __pyx_obj * def userauth_authenticated(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v_timeout); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_long(__pyx_v_timeout); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":182 + /* "ssh2/session.pyx":185 * c_ssh2.libssh2_session_set_timeout(self._session, timeout) * * def get_timeout(self): # <<<<<<<<<<<<<< @@ -5985,7 +5991,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_14get_timeout(struct __pyx_obj return __pyx_r; } -/* "ssh2/session.pyx":189 +/* "ssh2/session.pyx":192 * return timeout * * def userauth_authenticated(self): # <<<<<<<<<<<<<< @@ -6047,7 +6053,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_16userauth_authenticated(struc int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_authenticated", 0); - /* "ssh2/session.pyx":194 + /* "ssh2/session.pyx":197 * :rtype: bool""" * cdef bint rc * with nogil: # <<<<<<<<<<<<<< @@ -6061,7 +6067,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_16userauth_authenticated(struc __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":195 + /* "ssh2/session.pyx":198 * cdef bint rc * with nogil: * rc = c_ssh2.libssh2_userauth_authenticated(self._session) # <<<<<<<<<<<<<< @@ -6071,7 +6077,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_16userauth_authenticated(struc __pyx_v_rc = libssh2_userauth_authenticated(__pyx_v_self->_session); } - /* "ssh2/session.pyx":194 + /* "ssh2/session.pyx":197 * :rtype: bool""" * cdef bint rc * with nogil: # <<<<<<<<<<<<<< @@ -6088,7 +6094,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_16userauth_authenticated(struc } } - /* "ssh2/session.pyx":196 + /* "ssh2/session.pyx":199 * with nogil: * rc = c_ssh2.libssh2_userauth_authenticated(self._session) * return bool(rc) # <<<<<<<<<<<<<< @@ -6097,13 +6103,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_16userauth_authenticated(struc */ __Pyx_XDECREF(__pyx_r); __pyx_t_1 = __pyx_v_rc; - __pyx_t_2 = __Pyx_PyBool_FromLong((!(!__pyx_t_1))); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 196, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBool_FromLong((!(!__pyx_t_1))); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 199, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":189 + /* "ssh2/session.pyx":192 * return timeout * * def userauth_authenticated(self): # <<<<<<<<<<<<<< @@ -6122,7 +6128,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_16userauth_authenticated(struc return __pyx_r; } -/* "ssh2/session.pyx":198 +/* "ssh2/session.pyx":201 * return bool(rc) * * def userauth_list(self, username not None): # <<<<<<<<<<<<<< @@ -6170,32 +6176,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 198, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 201, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 198, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 201, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_list", 0) < 0) __PYX_ERR(0, 198, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_list", 0) < 0) __PYX_ERR(0, 201, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_list", 1, 1, 1, i); __PYX_ERR(0, 198, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_list", 1, 1, 1, i); __PYX_ERR(0, 201, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 198, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 201, __pyx_L3_error) } __pyx_v_username = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_list", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 198, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_list", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 201, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -6207,7 +6213,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 198, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 201, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_18userauth_list(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username); @@ -6245,19 +6251,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_list", 0); - /* "ssh2/session.pyx":202 + /* "ssh2/session.pyx":205 * * :rtype: list""" * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef char *_username = b_username * cdef size_t username_len = len(b_username) */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 202, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":203 + /* "ssh2/session.pyx":206 * :rtype: list""" * cdef bytes b_username = to_bytes(username) * cdef char *_username = b_username # <<<<<<<<<<<<<< @@ -6266,12 +6272,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 203, __pyx_L1_error) + __PYX_ERR(0, 206, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 203, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 206, __pyx_L1_error) __pyx_v__username = __pyx_t_2; - /* "ssh2/session.pyx":204 + /* "ssh2/session.pyx":207 * cdef bytes b_username = to_bytes(username) * cdef char *_username = b_username * cdef size_t username_len = len(b_username) # <<<<<<<<<<<<<< @@ -6280,12 +6286,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 204, __pyx_L1_error) + __PYX_ERR(0, 207, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyBytes_GET_SIZE(__pyx_v_b_username); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 204, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBytes_GET_SIZE(__pyx_v_b_username); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 207, __pyx_L1_error) __pyx_v_username_len = __pyx_t_3; - /* "ssh2/session.pyx":207 + /* "ssh2/session.pyx":210 * cdef char *_auth * cdef str auth * with nogil: # <<<<<<<<<<<<<< @@ -6299,7 +6305,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":208 + /* "ssh2/session.pyx":211 * cdef str auth * with nogil: * _auth = c_ssh2.libssh2_userauth_list( # <<<<<<<<<<<<<< @@ -6309,7 +6315,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o __pyx_v__auth = libssh2_userauth_list(__pyx_v_self->_session, __pyx_v__username, __pyx_v_username_len); } - /* "ssh2/session.pyx":207 + /* "ssh2/session.pyx":210 * cdef char *_auth * cdef str auth * with nogil: # <<<<<<<<<<<<<< @@ -6326,7 +6332,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o } } - /* "ssh2/session.pyx":210 + /* "ssh2/session.pyx":213 * _auth = c_ssh2.libssh2_userauth_list( * self._session, _username, username_len) * if _auth is NULL: # <<<<<<<<<<<<<< @@ -6336,7 +6342,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o __pyx_t_4 = (__pyx_v__auth == NULL); if (__pyx_t_4) { - /* "ssh2/session.pyx":211 + /* "ssh2/session.pyx":214 * self._session, _username, username_len) * if _auth is NULL: * return # <<<<<<<<<<<<<< @@ -6347,7 +6353,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; - /* "ssh2/session.pyx":210 + /* "ssh2/session.pyx":213 * _auth = c_ssh2.libssh2_userauth_list( * self._session, _username, username_len) * if _auth is NULL: # <<<<<<<<<<<<<< @@ -6356,20 +6362,20 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o */ } - /* "ssh2/session.pyx":212 + /* "ssh2/session.pyx":215 * if _auth is NULL: * return * auth = to_str(_auth) # <<<<<<<<<<<<<< * return auth.split(',') * */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_str(__pyx_v__auth); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 212, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_str(__pyx_v__auth); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!(likely(PyUnicode_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_1))) __PYX_ERR(0, 212, __pyx_L1_error) + if (!(likely(PyUnicode_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("str", __pyx_t_1))) __PYX_ERR(0, 215, __pyx_L1_error) __pyx_v_auth = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":213 + /* "ssh2/session.pyx":216 * return * auth = to_str(_auth) * return auth.split(',') # <<<<<<<<<<<<<< @@ -6379,15 +6385,15 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o __Pyx_XDECREF(__pyx_r); if (unlikely(__pyx_v_auth == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%.30s'", "split"); - __PYX_ERR(0, 213, __pyx_L1_error) + __PYX_ERR(0, 216, __pyx_L1_error) } - __pyx_t_1 = PyUnicode_Split(__pyx_v_auth, __Pyx_NoneAsNull(__pyx_mstate_global->__pyx_kp_u_), -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 213, __pyx_L1_error) + __pyx_t_1 = PyUnicode_Split(__pyx_v_auth, __Pyx_NoneAsNull(__pyx_mstate_global->__pyx_kp_u_), -1L); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":198 + /* "ssh2/session.pyx":201 * return bool(rc) * * def userauth_list(self, username not None): # <<<<<<<<<<<<<< @@ -6408,7 +6414,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_18userauth_list(struct __pyx_o return __pyx_r; } -/* "ssh2/session.pyx":215 +/* "ssh2/session.pyx":218 * return auth.split(',') * * def userauth_publickey_fromfile(self, username not None, # <<<<<<<<<<<<<< @@ -6459,33 +6465,33 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_privatekey,&__pyx_mstate_global->__pyx_n_u_passphrase,&__pyx_mstate_global->__pyx_n_u_publickey,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 215, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 218, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 218, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 218, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 218, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 218, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_publickey_fromfile", 0) < 0) __PYX_ERR(0, 215, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_publickey_fromfile", 0) < 0) __PYX_ERR(0, 218, __pyx_L3_error) if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_kp_u__2)); - /* "ssh2/session.pyx":218 + /* "ssh2/session.pyx":221 * privatekey not None, * passphrase='', * publickey=None): # <<<<<<<<<<<<<< @@ -6494,23 +6500,23 @@ PyObject *__pyx_args, PyObject *__pyx_kwds */ if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)Py_None)); for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_publickey_fromfile", 0, 2, 4, i); __PYX_ERR(0, 215, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_publickey_fromfile", 0, 2, 4, i); __PYX_ERR(0, 218, __pyx_L3_error) } } } else { switch (__pyx_nargs) { case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 218, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 218, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 218, __pyx_L3_error) values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 215, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 218, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } @@ -6524,7 +6530,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_publickey_fromfile", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 215, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_publickey_fromfile", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 218, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -6536,14 +6542,14 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 215, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 218, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_privatekey) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "privatekey"); __PYX_ERR(0, 216, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "privatekey"); __PYX_ERR(0, 219, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_privatekey, __pyx_v_passphrase, __pyx_v_publickey); - /* "ssh2/session.pyx":215 + /* "ssh2/session.pyx":218 * return auth.split(',') * * def userauth_publickey_fromfile(self, username not None, # <<<<<<<<<<<<<< @@ -6590,19 +6596,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_publickey_fromfile", 0); - /* "ssh2/session.pyx":223 + /* "ssh2/session.pyx":226 * :rtype: int""" * cdef int rc * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 223, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 226, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":225 + /* "ssh2/session.pyx":228 * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None # <<<<<<<<<<<<<< @@ -6612,20 +6618,20 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( __pyx_t_2 = (__pyx_v_publickey != Py_None); if (__pyx_t_2) { - /* "ssh2/session.pyx":224 + /* "ssh2/session.pyx":227 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ # <<<<<<<<<<<<<< * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) */ - __pyx_t_3 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_publickey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 224, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_publickey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; } else { - /* "ssh2/session.pyx":225 + /* "ssh2/session.pyx":228 * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None # <<<<<<<<<<<<<< @@ -6636,42 +6642,42 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( __pyx_t_1 = Py_None; } - /* "ssh2/session.pyx":224 + /* "ssh2/session.pyx":227 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ # <<<<<<<<<<<<<< * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) */ - if (!(likely(PyBytes_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("bytes", __pyx_t_1))) __PYX_ERR(0, 224, __pyx_L1_error) + if (!(likely(PyBytes_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("bytes", __pyx_t_1))) __PYX_ERR(0, 227, __pyx_L1_error) __pyx_v_b_publickey = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":226 + /* "ssh2/session.pyx":229 * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) # <<<<<<<<<<<<<< * cdef bytes b_passphrase = to_bytes(passphrase) * cdef char *_username = b_username */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_privatekey); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 226, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_privatekey); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_privatekey = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":227 + /* "ssh2/session.pyx":230 * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) * cdef bytes b_passphrase = to_bytes(passphrase) # <<<<<<<<<<<<<< * cdef char *_username = b_username * cdef char *_publickey = NULL */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_passphrase); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 227, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_passphrase); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_passphrase = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":228 + /* "ssh2/session.pyx":231 * cdef bytes b_privatekey = to_bytes(privatekey) * cdef bytes b_passphrase = to_bytes(passphrase) * cdef char *_username = b_username # <<<<<<<<<<<<<< @@ -6680,12 +6686,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 228, __pyx_L1_error) + __PYX_ERR(0, 231, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 228, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 231, __pyx_L1_error) __pyx_v__username = __pyx_t_4; - /* "ssh2/session.pyx":229 + /* "ssh2/session.pyx":232 * cdef bytes b_passphrase = to_bytes(passphrase) * cdef char *_username = b_username * cdef char *_publickey = NULL # <<<<<<<<<<<<<< @@ -6694,7 +6700,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( */ __pyx_v__publickey = NULL; - /* "ssh2/session.pyx":230 + /* "ssh2/session.pyx":233 * cdef char *_username = b_username * cdef char *_publickey = NULL * cdef char *_privatekey = b_privatekey # <<<<<<<<<<<<<< @@ -6703,12 +6709,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( */ if (unlikely(__pyx_v_b_privatekey == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 230, __pyx_L1_error) + __PYX_ERR(0, 233, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_privatekey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 230, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_privatekey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 233, __pyx_L1_error) __pyx_v__privatekey = __pyx_t_4; - /* "ssh2/session.pyx":231 + /* "ssh2/session.pyx":234 * cdef char *_publickey = NULL * cdef char *_privatekey = b_privatekey * cdef char *_passphrase = b_passphrase # <<<<<<<<<<<<<< @@ -6717,12 +6723,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( */ if (unlikely(__pyx_v_b_passphrase == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 231, __pyx_L1_error) + __PYX_ERR(0, 234, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_passphrase); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 231, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_passphrase); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 234, __pyx_L1_error) __pyx_v__passphrase = __pyx_t_4; - /* "ssh2/session.pyx":232 + /* "ssh2/session.pyx":235 * cdef char *_privatekey = b_privatekey * cdef char *_passphrase = b_passphrase * if b_publickey is not None: # <<<<<<<<<<<<<< @@ -6732,7 +6738,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( __pyx_t_2 = (__pyx_v_b_publickey != ((PyObject*)Py_None)); if (__pyx_t_2) { - /* "ssh2/session.pyx":233 + /* "ssh2/session.pyx":236 * cdef char *_passphrase = b_passphrase * if b_publickey is not None: * _publickey = b_publickey # <<<<<<<<<<<<<< @@ -6741,12 +6747,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( */ if (unlikely(__pyx_v_b_publickey == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 233, __pyx_L1_error) + __PYX_ERR(0, 236, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_publickey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 233, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_publickey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 236, __pyx_L1_error) __pyx_v__publickey = __pyx_t_4; - /* "ssh2/session.pyx":232 + /* "ssh2/session.pyx":235 * cdef char *_privatekey = b_privatekey * cdef char *_passphrase = b_passphrase * if b_publickey is not None: # <<<<<<<<<<<<<< @@ -6755,7 +6761,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( */ } - /* "ssh2/session.pyx":234 + /* "ssh2/session.pyx":237 * if b_publickey is not None: * _publickey = b_publickey * with nogil: # <<<<<<<<<<<<<< @@ -6769,7 +6775,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":235 + /* "ssh2/session.pyx":238 * _publickey = b_publickey * with nogil: * rc = c_ssh2.libssh2_userauth_publickey_fromfile( # <<<<<<<<<<<<<< @@ -6779,7 +6785,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( __pyx_v_rc = libssh2_userauth_publickey_fromfile(__pyx_v_self->_session, __pyx_v__username, __pyx_v__publickey, __pyx_v__privatekey, __pyx_v__passphrase); } - /* "ssh2/session.pyx":234 + /* "ssh2/session.pyx":237 * if b_publickey is not None: * _publickey = b_publickey * with nogil: # <<<<<<<<<<<<<< @@ -6796,7 +6802,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( } } - /* "ssh2/session.pyx":237 + /* "ssh2/session.pyx":240 * rc = c_ssh2.libssh2_userauth_publickey_fromfile( * self._session, _username, _publickey, _privatekey, _passphrase) * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -6804,14 +6810,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( * def userauth_publickey(self, username not None, */ __Pyx_XDECREF(__pyx_r); - __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 237, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 237, __pyx_L1_error) + __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 240, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 240, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":215 + /* "ssh2/session.pyx":218 * return auth.split(',') * * def userauth_publickey_fromfile(self, username not None, # <<<<<<<<<<<<<< @@ -6835,7 +6841,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_20userauth_publickey_fromfile( return __pyx_r; } -/* "ssh2/session.pyx":239 +/* "ssh2/session.pyx":242 * return handle_error_codes(rc) * * def userauth_publickey(self, username not None, # <<<<<<<<<<<<<< @@ -6884,39 +6890,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_pubkeydata,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 239, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 242, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 239, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 242, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 239, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 242, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_publickey", 0) < 0) __PYX_ERR(0, 239, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_publickey", 0) < 0) __PYX_ERR(0, 242, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_publickey", 1, 2, 2, i); __PYX_ERR(0, 239, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_publickey", 1, 2, 2, i); __PYX_ERR(0, 242, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 239, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 242, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 239, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 242, __pyx_L3_error) } __pyx_v_username = values[0]; __pyx_v_pubkeydata = ((PyObject*)values[1]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_publickey", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 239, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_publickey", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 242, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -6928,9 +6934,9 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 239, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 242, __pyx_L1_error) } - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pubkeydata), (&PyBytes_Type), 0, "pubkeydata", 1))) __PYX_ERR(0, 240, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pubkeydata), (&PyBytes_Type), 0, "pubkeydata", 1))) __PYX_ERR(0, 243, __pyx_L1_error) __pyx_r = __pyx_pf_4ssh2_7session_7Session_22userauth_publickey(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_pubkeydata); /* function exit code */ @@ -6968,19 +6974,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_publickey", 0); - /* "ssh2/session.pyx":250 + /* "ssh2/session.pyx":253 * :rtype: int""" * cdef int rc * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef char *_username = b_username * cdef unsigned char *_pubkeydata = pubkeydata */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 250, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":251 + /* "ssh2/session.pyx":254 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef char *_username = b_username # <<<<<<<<<<<<<< @@ -6989,32 +6995,32 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 251, __pyx_L1_error) + __PYX_ERR(0, 254, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 251, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 254, __pyx_L1_error) __pyx_v__username = __pyx_t_2; - /* "ssh2/session.pyx":252 + /* "ssh2/session.pyx":255 * cdef bytes b_username = to_bytes(username) * cdef char *_username = b_username * cdef unsigned char *_pubkeydata = pubkeydata # <<<<<<<<<<<<<< * cdef size_t pubkeydata_len = len(pubkeydata) * with nogil: */ - __pyx_t_3 = __Pyx_PyBytes_AsWritableUString(__pyx_v_pubkeydata); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBytes_AsWritableUString(__pyx_v_pubkeydata); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 255, __pyx_L1_error) __pyx_v__pubkeydata = __pyx_t_3; - /* "ssh2/session.pyx":253 + /* "ssh2/session.pyx":256 * cdef char *_username = b_username * cdef unsigned char *_pubkeydata = pubkeydata * cdef size_t pubkeydata_len = len(pubkeydata) # <<<<<<<<<<<<<< * with nogil: * rc = c_ssh2.libssh2_userauth_publickey( */ - __pyx_t_4 = __Pyx_PyBytes_GET_SIZE(__pyx_v_pubkeydata); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 253, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_GET_SIZE(__pyx_v_pubkeydata); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 256, __pyx_L1_error) __pyx_v_pubkeydata_len = __pyx_t_4; - /* "ssh2/session.pyx":254 + /* "ssh2/session.pyx":257 * cdef unsigned char *_pubkeydata = pubkeydata * cdef size_t pubkeydata_len = len(pubkeydata) * with nogil: # <<<<<<<<<<<<<< @@ -7028,7 +7034,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":255 + /* "ssh2/session.pyx":258 * cdef size_t pubkeydata_len = len(pubkeydata) * with nogil: * rc = c_ssh2.libssh2_userauth_publickey( # <<<<<<<<<<<<<< @@ -7038,7 +7044,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ __pyx_v_rc = libssh2_userauth_publickey(__pyx_v_self->_session, __pyx_v__username, __pyx_v__pubkeydata, __pyx_v_pubkeydata_len, NULL, NULL); } - /* "ssh2/session.pyx":254 + /* "ssh2/session.pyx":257 * cdef unsigned char *_pubkeydata = pubkeydata * cdef size_t pubkeydata_len = len(pubkeydata) * with nogil: # <<<<<<<<<<<<<< @@ -7055,7 +7061,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ } } - /* "ssh2/session.pyx":258 + /* "ssh2/session.pyx":261 * self._session, _username, _pubkeydata, * pubkeydata_len, NULL, NULL) * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -7063,14 +7069,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ * def userauth_hostbased_fromfile(self, */ __Pyx_XDECREF(__pyx_r); - __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 258, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 258, __pyx_L1_error) + __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 261, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 261, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":239 + /* "ssh2/session.pyx":242 * return handle_error_codes(rc) * * def userauth_publickey(self, username not None, # <<<<<<<<<<<<<< @@ -7090,7 +7096,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_22userauth_publickey(struct __ return __pyx_r; } -/* "ssh2/session.pyx":260 +/* "ssh2/session.pyx":263 * return handle_error_codes(rc) * * def userauth_hostbased_fromfile(self, # <<<<<<<<<<<<<< @@ -7142,36 +7148,36 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_privatekey,&__pyx_mstate_global->__pyx_n_u_hostname,&__pyx_mstate_global->__pyx_n_u_publickey,&__pyx_mstate_global->__pyx_n_u_passphrase,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 260, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 263, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 5: values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_hostbased_fromfile", 0) < 0) __PYX_ERR(0, 260, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_hostbased_fromfile", 0) < 0) __PYX_ERR(0, 263, __pyx_L3_error) - /* "ssh2/session.pyx":264 + /* "ssh2/session.pyx":267 * privatekey not None, * hostname not None, * publickey=None, # <<<<<<<<<<<<<< @@ -7181,25 +7187,25 @@ PyObject *__pyx_args, PyObject *__pyx_kwds if (!values[3]) values[3] = __Pyx_NewRef(((PyObject *)Py_None)); if (!values[4]) values[4] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_kp_u__2)); for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_hostbased_fromfile", 0, 3, 5, i); __PYX_ERR(0, 260, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_hostbased_fromfile", 0, 3, 5, i); __PYX_ERR(0, 263, __pyx_L3_error) } } } else { switch (__pyx_nargs) { case 5: values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 263, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 263, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 263, __pyx_L3_error) values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 260, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 263, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } @@ -7214,7 +7220,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_hostbased_fromfile", 0, 3, 5, __pyx_nargs); __PYX_ERR(0, 260, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_hostbased_fromfile", 0, 3, 5, __pyx_nargs); __PYX_ERR(0, 263, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -7226,17 +7232,17 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 261, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 264, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_privatekey) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "privatekey"); __PYX_ERR(0, 262, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "privatekey"); __PYX_ERR(0, 265, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_hostname) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "hostname"); __PYX_ERR(0, 263, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "hostname"); __PYX_ERR(0, 266, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_privatekey, __pyx_v_hostname, __pyx_v_publickey, __pyx_v_passphrase); - /* "ssh2/session.pyx":260 + /* "ssh2/session.pyx":263 * return handle_error_codes(rc) * * def userauth_hostbased_fromfile(self, # <<<<<<<<<<<<<< @@ -7285,19 +7291,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_hostbased_fromfile", 0); - /* "ssh2/session.pyx":267 + /* "ssh2/session.pyx":270 * passphrase=''): * cdef int rc * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 267, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":269 + /* "ssh2/session.pyx":272 * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None # <<<<<<<<<<<<<< @@ -7307,20 +7313,20 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( __pyx_t_2 = (__pyx_v_publickey != Py_None); if (__pyx_t_2) { - /* "ssh2/session.pyx":268 + /* "ssh2/session.pyx":271 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ # <<<<<<<<<<<<<< * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) */ - __pyx_t_3 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_publickey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 268, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_publickey); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; } else { - /* "ssh2/session.pyx":269 + /* "ssh2/session.pyx":272 * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None # <<<<<<<<<<<<<< @@ -7331,54 +7337,54 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( __pyx_t_1 = Py_None; } - /* "ssh2/session.pyx":268 + /* "ssh2/session.pyx":271 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef bytes b_publickey = to_bytes(publickey) \ # <<<<<<<<<<<<<< * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) */ - if (!(likely(PyBytes_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("bytes", __pyx_t_1))) __PYX_ERR(0, 268, __pyx_L1_error) + if (!(likely(PyBytes_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("bytes", __pyx_t_1))) __PYX_ERR(0, 271, __pyx_L1_error) __pyx_v_b_publickey = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":270 + /* "ssh2/session.pyx":273 * cdef bytes b_publickey = to_bytes(publickey) \ * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) # <<<<<<<<<<<<<< * cdef bytes b_passphrase = to_bytes(passphrase) * cdef bytes b_hostname = to_bytes(hostname) */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_privatekey); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 270, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_privatekey); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_privatekey = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":271 + /* "ssh2/session.pyx":274 * if publickey is not None else None * cdef bytes b_privatekey = to_bytes(privatekey) * cdef bytes b_passphrase = to_bytes(passphrase) # <<<<<<<<<<<<<< * cdef bytes b_hostname = to_bytes(hostname) * cdef char *_username = b_username */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_passphrase); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 271, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_passphrase); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_passphrase = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":272 + /* "ssh2/session.pyx":275 * cdef bytes b_privatekey = to_bytes(privatekey) * cdef bytes b_passphrase = to_bytes(passphrase) * cdef bytes b_hostname = to_bytes(hostname) # <<<<<<<<<<<<<< * cdef char *_username = b_username * cdef char *_publickey = NULL */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_hostname); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 272, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_hostname); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_hostname = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":273 + /* "ssh2/session.pyx":276 * cdef bytes b_passphrase = to_bytes(passphrase) * cdef bytes b_hostname = to_bytes(hostname) * cdef char *_username = b_username # <<<<<<<<<<<<<< @@ -7387,12 +7393,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 273, __pyx_L1_error) + __PYX_ERR(0, 276, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 273, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 276, __pyx_L1_error) __pyx_v__username = __pyx_t_4; - /* "ssh2/session.pyx":274 + /* "ssh2/session.pyx":277 * cdef bytes b_hostname = to_bytes(hostname) * cdef char *_username = b_username * cdef char *_publickey = NULL # <<<<<<<<<<<<<< @@ -7401,7 +7407,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ __pyx_v__publickey = NULL; - /* "ssh2/session.pyx":275 + /* "ssh2/session.pyx":278 * cdef char *_username = b_username * cdef char *_publickey = NULL * cdef char *_privatekey = b_privatekey # <<<<<<<<<<<<<< @@ -7410,12 +7416,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ if (unlikely(__pyx_v_b_privatekey == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 275, __pyx_L1_error) + __PYX_ERR(0, 278, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_privatekey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 275, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_privatekey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 278, __pyx_L1_error) __pyx_v__privatekey = __pyx_t_4; - /* "ssh2/session.pyx":276 + /* "ssh2/session.pyx":279 * cdef char *_publickey = NULL * cdef char *_privatekey = b_privatekey * cdef char *_passphrase = b_passphrase # <<<<<<<<<<<<<< @@ -7424,12 +7430,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ if (unlikely(__pyx_v_b_passphrase == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 276, __pyx_L1_error) + __PYX_ERR(0, 279, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_passphrase); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 276, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_passphrase); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 279, __pyx_L1_error) __pyx_v__passphrase = __pyx_t_4; - /* "ssh2/session.pyx":277 + /* "ssh2/session.pyx":280 * cdef char *_privatekey = b_privatekey * cdef char *_passphrase = b_passphrase * cdef char *_hostname = b_hostname # <<<<<<<<<<<<<< @@ -7438,12 +7444,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ if (unlikely(__pyx_v_b_hostname == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 277, __pyx_L1_error) + __PYX_ERR(0, 280, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_hostname); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 277, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_hostname); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 280, __pyx_L1_error) __pyx_v__hostname = __pyx_t_4; - /* "ssh2/session.pyx":278 + /* "ssh2/session.pyx":281 * cdef char *_passphrase = b_passphrase * cdef char *_hostname = b_hostname * if b_publickey is not None: # <<<<<<<<<<<<<< @@ -7453,7 +7459,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( __pyx_t_2 = (__pyx_v_b_publickey != ((PyObject*)Py_None)); if (__pyx_t_2) { - /* "ssh2/session.pyx":279 + /* "ssh2/session.pyx":282 * cdef char *_hostname = b_hostname * if b_publickey is not None: * _publickey = b_publickey # <<<<<<<<<<<<<< @@ -7462,12 +7468,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ if (unlikely(__pyx_v_b_publickey == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 279, __pyx_L1_error) + __PYX_ERR(0, 282, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_publickey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 279, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_publickey); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 282, __pyx_L1_error) __pyx_v__publickey = __pyx_t_4; - /* "ssh2/session.pyx":278 + /* "ssh2/session.pyx":281 * cdef char *_passphrase = b_passphrase * cdef char *_hostname = b_hostname * if b_publickey is not None: # <<<<<<<<<<<<<< @@ -7476,7 +7482,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( */ } - /* "ssh2/session.pyx":280 + /* "ssh2/session.pyx":283 * if b_publickey is not None: * _publickey = b_publickey * with nogil: # <<<<<<<<<<<<<< @@ -7490,7 +7496,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":281 + /* "ssh2/session.pyx":284 * _publickey = b_publickey * with nogil: * rc = c_ssh2.libssh2_userauth_hostbased_fromfile( # <<<<<<<<<<<<<< @@ -7500,7 +7506,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( __pyx_v_rc = libssh2_userauth_hostbased_fromfile(__pyx_v_self->_session, __pyx_v__username, __pyx_v__publickey, __pyx_v__privatekey, __pyx_v__passphrase, __pyx_v__hostname); } - /* "ssh2/session.pyx":280 + /* "ssh2/session.pyx":283 * if b_publickey is not None: * _publickey = b_publickey * with nogil: # <<<<<<<<<<<<<< @@ -7517,7 +7523,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( } } - /* "ssh2/session.pyx":284 + /* "ssh2/session.pyx":287 * self._session, _username, _publickey, * _privatekey, _passphrase, _hostname) * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -7525,14 +7531,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( * def userauth_publickey_frommemory( */ __Pyx_XDECREF(__pyx_r); - __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 284, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L1_error) + __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 287, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":260 + /* "ssh2/session.pyx":263 * return handle_error_codes(rc) * * def userauth_hostbased_fromfile(self, # <<<<<<<<<<<<<< @@ -7557,7 +7563,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_24userauth_hostbased_fromfile( return __pyx_r; } -/* "ssh2/session.pyx":286 +/* "ssh2/session.pyx":289 * return handle_error_codes(rc) * * def userauth_publickey_frommemory( # <<<<<<<<<<<<<< @@ -7608,33 +7614,33 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_privatekeyfiledata,&__pyx_mstate_global->__pyx_n_u_passphrase,&__pyx_mstate_global->__pyx_n_u_publickeyfiledata,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 286, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 289, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 289, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 289, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 289, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 289, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_publickey_frommemory", 0) < 0) __PYX_ERR(0, 286, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_publickey_frommemory", 0) < 0) __PYX_ERR(0, 289, __pyx_L3_error) if (!values[2]) values[2] = __Pyx_NewRef(((PyObject *)__pyx_mstate_global->__pyx_kp_u__2)); - /* "ssh2/session.pyx":288 + /* "ssh2/session.pyx":291 * def userauth_publickey_frommemory( * self, username, bytes privatekeyfiledata, * passphrase='', bytes publickeyfiledata=None): # <<<<<<<<<<<<<< @@ -7643,23 +7649,23 @@ PyObject *__pyx_args, PyObject *__pyx_kwds */ if (!values[3]) values[3] = __Pyx_NewRef(((PyObject*)Py_None)); for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_publickey_frommemory", 0, 2, 4, i); __PYX_ERR(0, 286, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_publickey_frommemory", 0, 2, 4, i); __PYX_ERR(0, 289, __pyx_L3_error) } } } else { switch (__pyx_nargs) { case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 289, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 289, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 289, __pyx_L3_error) values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 286, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 289, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } @@ -7673,7 +7679,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_publickey_frommemory", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 286, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_publickey_frommemory", 0, 2, 4, __pyx_nargs); __PYX_ERR(0, 289, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -7684,11 +7690,11 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_privatekeyfiledata), (&PyBytes_Type), 1, "privatekeyfiledata", 1))) __PYX_ERR(0, 287, __pyx_L1_error) - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_publickeyfiledata), (&PyBytes_Type), 1, "publickeyfiledata", 1))) __PYX_ERR(0, 288, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_privatekeyfiledata), (&PyBytes_Type), 1, "privatekeyfiledata", 1))) __PYX_ERR(0, 290, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_publickeyfiledata), (&PyBytes_Type), 1, "publickeyfiledata", 1))) __PYX_ERR(0, 291, __pyx_L1_error) __pyx_r = __pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemory(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_privatekeyfiledata, __pyx_v_passphrase, __pyx_v_publickeyfiledata); - /* "ssh2/session.pyx":286 + /* "ssh2/session.pyx":289 * return handle_error_codes(rc) * * def userauth_publickey_frommemory( # <<<<<<<<<<<<<< @@ -7737,31 +7743,31 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_publickey_frommemory", 0); - /* "ssh2/session.pyx":290 + /* "ssh2/session.pyx":293 * passphrase='', bytes publickeyfiledata=None): * cdef int rc * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef bytes b_passphrase = to_bytes(passphrase) * cdef char *_username = b_username */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 290, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":291 + /* "ssh2/session.pyx":294 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef bytes b_passphrase = to_bytes(passphrase) # <<<<<<<<<<<<<< * cdef char *_username = b_username * cdef char *_passphrase = b_passphrase */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_passphrase); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 291, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_passphrase); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_passphrase = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":292 + /* "ssh2/session.pyx":295 * cdef bytes b_username = to_bytes(username) * cdef bytes b_passphrase = to_bytes(passphrase) * cdef char *_username = b_username # <<<<<<<<<<<<<< @@ -7770,12 +7776,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 292, __pyx_L1_error) + __PYX_ERR(0, 295, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 292, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 295, __pyx_L1_error) __pyx_v__username = __pyx_t_2; - /* "ssh2/session.pyx":293 + /* "ssh2/session.pyx":296 * cdef bytes b_passphrase = to_bytes(passphrase) * cdef char *_username = b_username * cdef char *_passphrase = b_passphrase # <<<<<<<<<<<<<< @@ -7784,12 +7790,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ if (unlikely(__pyx_v_b_passphrase == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 293, __pyx_L1_error) + __PYX_ERR(0, 296, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_passphrase); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 293, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_passphrase); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 296, __pyx_L1_error) __pyx_v__passphrase = __pyx_t_2; - /* "ssh2/session.pyx":294 + /* "ssh2/session.pyx":297 * cdef char *_username = b_username * cdef char *_passphrase = b_passphrase * cdef char *_publickeyfiledata = NULL # <<<<<<<<<<<<<< @@ -7798,7 +7804,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ __pyx_v__publickeyfiledata = NULL; - /* "ssh2/session.pyx":295 + /* "ssh2/session.pyx":298 * cdef char *_passphrase = b_passphrase * cdef char *_publickeyfiledata = NULL * cdef char *_privatekeyfiledata = privatekeyfiledata # <<<<<<<<<<<<<< @@ -7807,12 +7813,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ if (unlikely(__pyx_v_privatekeyfiledata == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 295, __pyx_L1_error) + __PYX_ERR(0, 298, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_privatekeyfiledata); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 295, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_privatekeyfiledata); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 298, __pyx_L1_error) __pyx_v__privatekeyfiledata = __pyx_t_2; - /* "ssh2/session.pyx":297 + /* "ssh2/session.pyx":300 * cdef char *_privatekeyfiledata = privatekeyfiledata * cdef size_t username_len, privatekeydata_len * cdef size_t pubkeydata_len = 0 # <<<<<<<<<<<<<< @@ -7821,7 +7827,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ __pyx_v_pubkeydata_len = 0; - /* "ssh2/session.pyx":299 + /* "ssh2/session.pyx":302 * cdef size_t pubkeydata_len = 0 * username_len, privatekeydata_len = \ * len(b_username), len(privatekeyfiledata) # <<<<<<<<<<<<<< @@ -7830,18 +7836,18 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 299, __pyx_L1_error) + __PYX_ERR(0, 302, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyBytes_GET_SIZE(__pyx_v_b_username); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 299, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBytes_GET_SIZE(__pyx_v_b_username); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 302, __pyx_L1_error) if (unlikely(__pyx_v_privatekeyfiledata == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 299, __pyx_L1_error) + __PYX_ERR(0, 302, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_GET_SIZE(__pyx_v_privatekeyfiledata); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 299, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_GET_SIZE(__pyx_v_privatekeyfiledata); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 302, __pyx_L1_error) __pyx_v_username_len = __pyx_t_3; __pyx_v_privatekeydata_len = __pyx_t_4; - /* "ssh2/session.pyx":300 + /* "ssh2/session.pyx":303 * username_len, privatekeydata_len = \ * len(b_username), len(privatekeyfiledata) * if publickeyfiledata is not None: # <<<<<<<<<<<<<< @@ -7851,7 +7857,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor __pyx_t_5 = (__pyx_v_publickeyfiledata != ((PyObject*)Py_None)); if (__pyx_t_5) { - /* "ssh2/session.pyx":301 + /* "ssh2/session.pyx":304 * len(b_username), len(privatekeyfiledata) * if publickeyfiledata is not None: * _publickeyfiledata = publickeyfiledata # <<<<<<<<<<<<<< @@ -7860,12 +7866,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ if (unlikely(__pyx_v_publickeyfiledata == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 301, __pyx_L1_error) + __PYX_ERR(0, 304, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_publickeyfiledata); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 301, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_publickeyfiledata); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 304, __pyx_L1_error) __pyx_v__publickeyfiledata = __pyx_t_2; - /* "ssh2/session.pyx":302 + /* "ssh2/session.pyx":305 * if publickeyfiledata is not None: * _publickeyfiledata = publickeyfiledata * pubkeydata_len = len(publickeyfiledata) # <<<<<<<<<<<<<< @@ -7874,12 +7880,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ if (unlikely(__pyx_v_publickeyfiledata == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(0, 302, __pyx_L1_error) + __PYX_ERR(0, 305, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_GET_SIZE(__pyx_v_publickeyfiledata); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 302, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_GET_SIZE(__pyx_v_publickeyfiledata); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 305, __pyx_L1_error) __pyx_v_pubkeydata_len = __pyx_t_4; - /* "ssh2/session.pyx":300 + /* "ssh2/session.pyx":303 * username_len, privatekeydata_len = \ * len(b_username), len(privatekeyfiledata) * if publickeyfiledata is not None: # <<<<<<<<<<<<<< @@ -7888,7 +7894,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor */ } - /* "ssh2/session.pyx":303 + /* "ssh2/session.pyx":306 * _publickeyfiledata = publickeyfiledata * pubkeydata_len = len(publickeyfiledata) * with nogil: # <<<<<<<<<<<<<< @@ -7902,7 +7908,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":304 + /* "ssh2/session.pyx":307 * pubkeydata_len = len(publickeyfiledata) * with nogil: * rc = c_ssh2.libssh2_userauth_publickey_frommemory( # <<<<<<<<<<<<<< @@ -7912,7 +7918,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor __pyx_v_rc = libssh2_userauth_publickey_frommemory(__pyx_v_self->_session, __pyx_v__username, __pyx_v_username_len, __pyx_v__publickeyfiledata, __pyx_v_pubkeydata_len, __pyx_v__privatekeyfiledata, __pyx_v_privatekeydata_len, __pyx_v__passphrase); } - /* "ssh2/session.pyx":303 + /* "ssh2/session.pyx":306 * _publickeyfiledata = publickeyfiledata * pubkeydata_len = len(publickeyfiledata) * with nogil: # <<<<<<<<<<<<<< @@ -7929,7 +7935,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor } } - /* "ssh2/session.pyx":308 + /* "ssh2/session.pyx":311 * pubkeydata_len, _privatekeyfiledata, * privatekeydata_len, _passphrase) * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -7937,14 +7943,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor * def userauth_password(self, username not None, password not None): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 308, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 308, __pyx_L1_error) + __pyx_t_6 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 311, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 311, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":286 + /* "ssh2/session.pyx":289 * return handle_error_codes(rc) * * def userauth_publickey_frommemory( # <<<<<<<<<<<<<< @@ -7965,7 +7971,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_26userauth_publickey_frommemor return __pyx_r; } -/* "ssh2/session.pyx":310 +/* "ssh2/session.pyx":313 * return handle_error_codes(rc) * * def userauth_password(self, username not None, password not None): # <<<<<<<<<<<<<< @@ -8014,39 +8020,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_password,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 310, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 313, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 310, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 313, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 310, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 313, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_password", 0) < 0) __PYX_ERR(0, 310, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_password", 0) < 0) __PYX_ERR(0, 313, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_password", 1, 2, 2, i); __PYX_ERR(0, 310, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_password", 1, 2, 2, i); __PYX_ERR(0, 313, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 310, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 313, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 310, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 313, __pyx_L3_error) } __pyx_v_username = values[0]; __pyx_v_password = values[1]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_password", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 310, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_password", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 313, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -8058,10 +8064,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 310, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 313, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_password) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "password"); __PYX_ERR(0, 310, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "password"); __PYX_ERR(0, 313, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_28userauth_password(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_password); @@ -8099,31 +8105,31 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_password", 0); - /* "ssh2/session.pyx":318 + /* "ssh2/session.pyx":321 * :type password: str""" * cdef int rc * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef bytes b_password = to_bytes(password) * cdef const char *_username = b_username */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 318, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":319 + /* "ssh2/session.pyx":322 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef bytes b_password = to_bytes(password) # <<<<<<<<<<<<<< * cdef const char *_username = b_username * cdef const char *_password = b_password */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_password); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 319, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_password); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_password = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":320 + /* "ssh2/session.pyx":323 * cdef bytes b_username = to_bytes(username) * cdef bytes b_password = to_bytes(password) * cdef const char *_username = b_username # <<<<<<<<<<<<<< @@ -8132,12 +8138,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 320, __pyx_L1_error) + __PYX_ERR(0, 323, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 320, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 323, __pyx_L1_error) __pyx_v__username = __pyx_t_2; - /* "ssh2/session.pyx":321 + /* "ssh2/session.pyx":324 * cdef bytes b_password = to_bytes(password) * cdef const char *_username = b_username * cdef const char *_password = b_password # <<<<<<<<<<<<<< @@ -8146,12 +8152,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p */ if (unlikely(__pyx_v_b_password == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 321, __pyx_L1_error) + __PYX_ERR(0, 324, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyBytes_AsString(__pyx_v_b_password); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 321, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBytes_AsString(__pyx_v_b_password); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 324, __pyx_L1_error) __pyx_v__password = __pyx_t_3; - /* "ssh2/session.pyx":322 + /* "ssh2/session.pyx":325 * cdef const char *_username = b_username * cdef const char *_password = b_password * with nogil: # <<<<<<<<<<<<<< @@ -8165,7 +8171,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":323 + /* "ssh2/session.pyx":326 * cdef const char *_password = b_password * with nogil: * rc = c_ssh2.libssh2_userauth_password( # <<<<<<<<<<<<<< @@ -8175,7 +8181,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p __pyx_v_rc = libssh2_userauth_password(__pyx_v_self->_session, __pyx_v__username, __pyx_v__password); } - /* "ssh2/session.pyx":322 + /* "ssh2/session.pyx":325 * cdef const char *_username = b_username * cdef const char *_password = b_password * with nogil: # <<<<<<<<<<<<<< @@ -8192,7 +8198,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p } } - /* "ssh2/session.pyx":325 + /* "ssh2/session.pyx":328 * rc = c_ssh2.libssh2_userauth_password( * self._session, _username, _password) * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -8200,14 +8206,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p * def userauth_keyboardinteractive(self, username not None, */ __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 325, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 325, __pyx_L1_error) + __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 328, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":310 + /* "ssh2/session.pyx":313 * return handle_error_codes(rc) * * def userauth_password(self, username not None, password not None): # <<<<<<<<<<<<<< @@ -8228,7 +8234,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_password(struct __p return __pyx_r; } -/* "ssh2/session.pyx":327 +/* "ssh2/session.pyx":330 * return handle_error_codes(rc) * * def userauth_keyboardinteractive(self, username not None, # <<<<<<<<<<<<<< @@ -8277,39 +8283,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_password,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 327, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 330, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 327, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 330, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 327, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 330, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_keyboardinteractive", 0) < 0) __PYX_ERR(0, 327, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_keyboardinteractive", 0) < 0) __PYX_ERR(0, 330, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive", 1, 2, 2, i); __PYX_ERR(0, 327, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive", 1, 2, 2, i); __PYX_ERR(0, 330, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 327, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 330, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 327, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 330, __pyx_L3_error) } __pyx_v_username = values[0]; __pyx_v_password = values[1]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 327, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 330, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -8321,10 +8327,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 327, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 330, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_password) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "password"); __PYX_ERR(0, 328, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "password"); __PYX_ERR(0, 331, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_30userauth_keyboardinteractive(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_password); @@ -8345,7 +8351,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return __pyx_r; } -/* "ssh2/session.pyx":336 +/* "ssh2/session.pyx":339 * :type password: str * """ * def passwd(*args, password=password): # <<<<<<<<<<<<<< @@ -8363,16 +8369,16 @@ static PyObject *__pyx_pf_4ssh2_7session___defaults__(CYTHON_UNUSED PyObject *__ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__defaults__", 0); __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 336, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 339, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_password, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) < 0) __PYX_ERR(0, 336, __pyx_L1_error) - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 336, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_password, __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self)->arg0) < 0) __PYX_ERR(0, 339, __pyx_L1_error) + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 339, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, Py_None) != (0)) __PYX_ERR(0, 336, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, Py_None) != (0)) __PYX_ERR(0, 339, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1) != (0)) __PYX_ERR(0, 336, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1) != (0)) __PYX_ERR(0, 339, __pyx_L1_error); __pyx_t_1 = 0; __pyx_r = __pyx_t_2; __pyx_t_2 = 0; @@ -8417,13 +8423,13 @@ static PyObject *__pyx_pw_4ssh2_7session_7Session_28userauth_keyboardinteractive PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_password,0}; struct __pyx_defaults *__pyx_dynamic_args = __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_self); const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_VARARGS(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 336, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 339, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { default: case 0: break; } - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, 0, __pyx_kwds_len, "passwd", 0) < 0) __PYX_ERR(0, 336, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, 0, __pyx_kwds_len, "passwd", 0) < 0) __PYX_ERR(0, 339, __pyx_L3_error) if (!values[0]) values[0] = __Pyx_NewRef(__pyx_dynamic_args->arg0); } else if (unlikely(__pyx_nargs < 0)) { goto __pyx_L5_argtuple_error; @@ -8434,7 +8440,7 @@ static PyObject *__pyx_pw_4ssh2_7session_7Session_28userauth_keyboardinteractive } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("passwd", 0, 0, 0, __pyx_nargs); __PYX_ERR(0, 336, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("passwd", 0, 0, 0, __pyx_nargs); __PYX_ERR(0, 339, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -8466,7 +8472,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_keyboardinteractive int __pyx_clineno = 0; __Pyx_RefNannySetupContext("passwd", 0); - /* "ssh2/session.pyx":337 + /* "ssh2/session.pyx":340 * """ * def passwd(*args, password=password): * return [password] # <<<<<<<<<<<<<< @@ -8474,16 +8480,16 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_keyboardinteractive * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 337, __pyx_L1_error) + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 340, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_password); __Pyx_GIVEREF(__pyx_v_password); - if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_password) != (0)) __PYX_ERR(0, 337, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_password) != (0)) __PYX_ERR(0, 340, __pyx_L1_error); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":336 + /* "ssh2/session.pyx":339 * :type password: str * """ * def passwd(*args, password=password): # <<<<<<<<<<<<<< @@ -8502,7 +8508,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_28userauth_keyboardinteractive return __pyx_r; } -/* "ssh2/session.pyx":327 +/* "ssh2/session.pyx":330 * return handle_error_codes(rc) * * def userauth_keyboardinteractive(self, username not None, # <<<<<<<<<<<<<< @@ -8522,16 +8528,16 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_30userauth_keyboardinteractive int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_keyboardinteractive", 0); - /* "ssh2/session.pyx":336 + /* "ssh2/session.pyx":339 * :type password: str * """ * def passwd(*args, password=password): # <<<<<<<<<<<<<< * return [password] * return self.userauth_keyboardinteractive_callback(username, passwd) */ - __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_28userauth_keyboardinteractive_1passwd, 0, __pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive_loc, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 336, __pyx_L1_error) + __pyx_t_1 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_28userauth_keyboardinteractive_1passwd, 0, __pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive_loc, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 339, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (!__Pyx_CyFunction_InitDefaults(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_4ssh2_7session___pyx_defaults)) __PYX_ERR(0, 336, __pyx_L1_error) + if (!__Pyx_CyFunction_InitDefaults(__pyx_t_1, __pyx_mstate_global->__pyx_ptype_4ssh2_7session___pyx_defaults)) __PYX_ERR(0, 339, __pyx_L1_error) __Pyx_INCREF(__pyx_v_password); __Pyx_CyFunction_Defaults(struct __pyx_defaults, __pyx_t_1)->arg0 = __pyx_v_password; __Pyx_GIVEREF(__pyx_v_password); @@ -8539,7 +8545,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_30userauth_keyboardinteractive __pyx_v_passwd = __pyx_t_1; __pyx_t_1 = 0; - /* "ssh2/session.pyx":338 + /* "ssh2/session.pyx":341 * def passwd(*args, password=password): * return [password] * return self.userauth_keyboardinteractive_callback(username, passwd) # <<<<<<<<<<<<<< @@ -8554,14 +8560,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_30userauth_keyboardinteractive PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_v_username, __pyx_v_passwd}; __pyx_t_1 = __Pyx_PyObject_FastCallMethod(__pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive_cal, __pyx_callargs+__pyx_t_3, (3-__pyx_t_3) | (1*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 338, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":327 + /* "ssh2/session.pyx":330 * return handle_error_codes(rc) * * def userauth_keyboardinteractive(self, username not None, # <<<<<<<<<<<<<< @@ -8582,7 +8588,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_30userauth_keyboardinteractive return __pyx_r; } -/* "ssh2/session.pyx":340 +/* "ssh2/session.pyx":343 * return self.userauth_keyboardinteractive_callback(username, passwd) * * def userauth_keyboardinteractive_callback( # <<<<<<<<<<<<<< @@ -8631,39 +8637,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,&__pyx_mstate_global->__pyx_n_u_callback,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 340, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 343, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 340, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 343, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 340, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 343, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_keyboardinteractive_callback", 0) < 0) __PYX_ERR(0, 340, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "userauth_keyboardinteractive_callback", 0) < 0) __PYX_ERR(0, 343, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive_callback", 1, 2, 2, i); __PYX_ERR(0, 340, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive_callback", 1, 2, 2, i); __PYX_ERR(0, 343, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 340, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 343, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 340, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 343, __pyx_L3_error) } __pyx_v_username = values[0]; __pyx_v_callback = values[1]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive_callback", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 340, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("userauth_keyboardinteractive_callback", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 343, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -8675,10 +8681,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 341, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 344, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_callback) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "callback"); __PYX_ERR(0, 341, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "callback"); __PYX_ERR(0, 344, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive_callback(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username, __pyx_v_callback); @@ -8713,19 +8719,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive int __pyx_clineno = 0; __Pyx_RefNannySetupContext("userauth_keyboardinteractive_callback", 0); - /* "ssh2/session.pyx":367 + /* "ssh2/session.pyx":370 * """ * cdef int rc * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef const char *_username = b_username * */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 367, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":368 + /* "ssh2/session.pyx":371 * cdef int rc * cdef bytes b_username = to_bytes(username) * cdef const char *_username = b_username # <<<<<<<<<<<<<< @@ -8734,12 +8740,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 368, __pyx_L1_error) + __PYX_ERR(0, 371, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 368, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 371, __pyx_L1_error) __pyx_v__username = __pyx_t_2; - /* "ssh2/session.pyx":370 + /* "ssh2/session.pyx":373 * cdef const char *_username = b_username * * self._kbd_callback = callback # <<<<<<<<<<<<<< @@ -8752,7 +8758,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive __Pyx_DECREF(__pyx_v_self->_kbd_callback); __pyx_v_self->_kbd_callback = __pyx_v_callback; - /* "ssh2/session.pyx":371 + /* "ssh2/session.pyx":374 * * self._kbd_callback = callback * rc = c_ssh2.libssh2_userauth_keyboard_interactive( # <<<<<<<<<<<<<< @@ -8761,7 +8767,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive */ __pyx_v_rc = libssh2_userauth_keyboard_interactive(__pyx_v_self->_session, __pyx_v__username, (&__pyx_f_4ssh2_7session_kbd_callback)); - /* "ssh2/session.pyx":373 + /* "ssh2/session.pyx":376 * rc = c_ssh2.libssh2_userauth_keyboard_interactive( * self._session, _username, &kbd_callback) * self._kbd_callback = None # <<<<<<<<<<<<<< @@ -8774,7 +8780,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive __Pyx_DECREF(__pyx_v_self->_kbd_callback); __pyx_v_self->_kbd_callback = Py_None; - /* "ssh2/session.pyx":374 + /* "ssh2/session.pyx":377 * self._session, _username, &kbd_callback) * self._kbd_callback = None * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -8782,14 +8788,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive * def agent_init(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 374, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 374, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 377, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":340 + /* "ssh2/session.pyx":343 * return self.userauth_keyboardinteractive_callback(username, passwd) * * def userauth_keyboardinteractive_callback( # <<<<<<<<<<<<<< @@ -8809,7 +8815,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_32userauth_keyboardinteractive return __pyx_r; } -/* "ssh2/session.pyx":376 +/* "ssh2/session.pyx":379 * return handle_error_codes(rc) * * def agent_init(self): # <<<<<<<<<<<<<< @@ -8871,7 +8877,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_34agent_init(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("agent_init", 0); - /* "ssh2/session.pyx":382 + /* "ssh2/session.pyx":385 * """ * cdef c_ssh2.LIBSSH2_AGENT *agent * with nogil: # <<<<<<<<<<<<<< @@ -8885,18 +8891,18 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_34agent_init(struct __pyx_obj_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":383 + /* "ssh2/session.pyx":386 * cdef c_ssh2.LIBSSH2_AGENT *agent * with nogil: * agent = agent_init(self._session) # <<<<<<<<<<<<<< * return PyAgent(agent, self) * */ - __pyx_t_1 = __pyx_f_4ssh2_5agent_agent_init(__pyx_v_self->_session); if (unlikely(__pyx_t_1 == ((LIBSSH2_AGENT *)0))) __PYX_ERR(0, 383, __pyx_L4_error) + __pyx_t_1 = __pyx_f_4ssh2_5agent_agent_init(__pyx_v_self->_session); if (unlikely(__pyx_t_1 == ((LIBSSH2_AGENT *)0))) __PYX_ERR(0, 386, __pyx_L4_error) __pyx_v_agent = __pyx_t_1; } - /* "ssh2/session.pyx":382 + /* "ssh2/session.pyx":385 * """ * cdef c_ssh2.LIBSSH2_AGENT *agent * with nogil: # <<<<<<<<<<<<<< @@ -8918,7 +8924,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_34agent_init(struct __pyx_obj_ } } - /* "ssh2/session.pyx":384 + /* "ssh2/session.pyx":387 * with nogil: * agent = agent_init(self._session) * return PyAgent(agent, self) # <<<<<<<<<<<<<< @@ -8926,13 +8932,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_34agent_init(struct __pyx_obj_ * def agent_auth(self, username not None): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_4ssh2_5agent_PyAgent(__pyx_v_agent, __pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 384, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_5agent_PyAgent(__pyx_v_agent, __pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":376 + /* "ssh2/session.pyx":379 * return handle_error_codes(rc) * * def agent_init(self): # <<<<<<<<<<<<<< @@ -8951,7 +8957,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_34agent_init(struct __pyx_obj_ return __pyx_r; } -/* "ssh2/session.pyx":386 +/* "ssh2/session.pyx":389 * return PyAgent(agent, self) * * def agent_auth(self, username not None): # <<<<<<<<<<<<<< @@ -8999,32 +9005,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_username,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 386, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 389, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 386, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 389, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "agent_auth", 0) < 0) __PYX_ERR(0, 386, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "agent_auth", 0) < 0) __PYX_ERR(0, 389, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("agent_auth", 1, 1, 1, i); __PYX_ERR(0, 386, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("agent_auth", 1, 1, 1, i); __PYX_ERR(0, 389, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 386, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 389, __pyx_L3_error) } __pyx_v_username = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("agent_auth", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 386, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("agent_auth", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 389, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -9036,7 +9042,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_username) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 386, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "username"); __PYX_ERR(0, 389, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_36agent_auth(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_username); @@ -9074,19 +9080,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("agent_auth", 0); - /* "ssh2/session.pyx":412 + /* "ssh2/session.pyx":415 * * :rtype: None""" * cdef bytes b_username = to_bytes(username) # <<<<<<<<<<<<<< * cdef char *_username = b_username * cdef c_ssh2.LIBSSH2_AGENT *agent = NULL */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 412, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_username); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 415, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_username = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":413 + /* "ssh2/session.pyx":416 * :rtype: None""" * cdef bytes b_username = to_bytes(username) * cdef char *_username = b_username # <<<<<<<<<<<<<< @@ -9095,12 +9101,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ */ if (unlikely(__pyx_v_b_username == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 413, __pyx_L1_error) + __PYX_ERR(0, 416, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 413, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_username); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 416, __pyx_L1_error) __pyx_v__username = __pyx_t_2; - /* "ssh2/session.pyx":414 + /* "ssh2/session.pyx":417 * cdef bytes b_username = to_bytes(username) * cdef char *_username = b_username * cdef c_ssh2.LIBSSH2_AGENT *agent = NULL # <<<<<<<<<<<<<< @@ -9109,7 +9115,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ */ __pyx_v_agent = NULL; - /* "ssh2/session.pyx":415 + /* "ssh2/session.pyx":418 * cdef char *_username = b_username * cdef c_ssh2.LIBSSH2_AGENT *agent = NULL * cdef c_ssh2.libssh2_agent_publickey *identity = NULL # <<<<<<<<<<<<<< @@ -9118,7 +9124,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ */ __pyx_v_identity = NULL; - /* "ssh2/session.pyx":416 + /* "ssh2/session.pyx":419 * cdef c_ssh2.LIBSSH2_AGENT *agent = NULL * cdef c_ssh2.libssh2_agent_publickey *identity = NULL * cdef c_ssh2.libssh2_agent_publickey *prev = NULL # <<<<<<<<<<<<<< @@ -9127,17 +9133,17 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ */ __pyx_v_prev = NULL; - /* "ssh2/session.pyx":417 + /* "ssh2/session.pyx":420 * cdef c_ssh2.libssh2_agent_publickey *identity = NULL * cdef c_ssh2.libssh2_agent_publickey *prev = NULL * agent = init_connect_agent(self._session) # <<<<<<<<<<<<<< * with nogil: * agent_auth(_username, agent) */ - __pyx_t_3 = __pyx_f_4ssh2_5agent_init_connect_agent(__pyx_v_self->_session); if (unlikely(__pyx_t_3 == ((LIBSSH2_AGENT *)0))) __PYX_ERR(0, 417, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5agent_init_connect_agent(__pyx_v_self->_session); if (unlikely(__pyx_t_3 == ((LIBSSH2_AGENT *)0))) __PYX_ERR(0, 420, __pyx_L1_error) __pyx_v_agent = __pyx_t_3; - /* "ssh2/session.pyx":418 + /* "ssh2/session.pyx":421 * cdef c_ssh2.libssh2_agent_publickey *prev = NULL * agent = init_connect_agent(self._session) * with nogil: # <<<<<<<<<<<<<< @@ -9151,17 +9157,17 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":419 + /* "ssh2/session.pyx":422 * agent = init_connect_agent(self._session) * with nogil: * agent_auth(_username, agent) # <<<<<<<<<<<<<< * * def open_session(self): */ - __pyx_t_4 = __pyx_f_4ssh2_5agent_agent_auth(__pyx_v__username, __pyx_v_agent); if (unlikely(__pyx_t_4 == ((int)1))) __PYX_ERR(0, 419, __pyx_L4_error) + __pyx_t_4 = __pyx_f_4ssh2_5agent_agent_auth(__pyx_v__username, __pyx_v_agent); if (unlikely(__pyx_t_4 == ((int)1))) __PYX_ERR(0, 422, __pyx_L4_error) } - /* "ssh2/session.pyx":418 + /* "ssh2/session.pyx":421 * cdef c_ssh2.libssh2_agent_publickey *prev = NULL * agent = init_connect_agent(self._session) * with nogil: # <<<<<<<<<<<<<< @@ -9183,7 +9189,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ } } - /* "ssh2/session.pyx":386 + /* "ssh2/session.pyx":389 * return PyAgent(agent, self) * * def agent_auth(self, username not None): # <<<<<<<<<<<<<< @@ -9205,7 +9211,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_36agent_auth(struct __pyx_obj_ return __pyx_r; } -/* "ssh2/session.pyx":421 +/* "ssh2/session.pyx":424 * agent_auth(_username, agent) * * def open_session(self): # <<<<<<<<<<<<<< @@ -9268,7 +9274,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob int __pyx_clineno = 0; __Pyx_RefNannySetupContext("open_session", 0); - /* "ssh2/session.pyx":427 + /* "ssh2/session.pyx":430 * """ * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -9282,7 +9288,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":428 + /* "ssh2/session.pyx":431 * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: * channel = c_ssh2.libssh2_channel_open_session( # <<<<<<<<<<<<<< @@ -9292,7 +9298,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob __pyx_v_channel = libssh2_channel_open_session(__pyx_v_self->_session); } - /* "ssh2/session.pyx":427 + /* "ssh2/session.pyx":430 * """ * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -9309,7 +9315,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob } } - /* "ssh2/session.pyx":430 + /* "ssh2/session.pyx":433 * channel = c_ssh2.libssh2_channel_open_session( * self._session) * if channel is NULL: # <<<<<<<<<<<<<< @@ -9319,7 +9325,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob __pyx_t_1 = (__pyx_v_channel == NULL); if (__pyx_t_1) { - /* "ssh2/session.pyx":431 + /* "ssh2/session.pyx":434 * self._session) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -9328,29 +9334,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":432 + /* "ssh2/session.pyx":435 * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyChannel(channel, self) * */ - __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 431, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 434, __pyx_L1_error) - /* "ssh2/session.pyx":431 + /* "ssh2/session.pyx":434 * self._session) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyChannel(channel, self) */ - __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 431, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":430 + /* "ssh2/session.pyx":433 * channel = c_ssh2.libssh2_channel_open_session( * self._session) * if channel is NULL: # <<<<<<<<<<<<<< @@ -9359,7 +9365,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob */ } - /* "ssh2/session.pyx":433 + /* "ssh2/session.pyx":436 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyChannel(channel, self) # <<<<<<<<<<<<<< @@ -9367,13 +9373,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob * def direct_tcpip_ex(self, host not None, int port, */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 433, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 436, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":421 + /* "ssh2/session.pyx":424 * agent_auth(_username, agent) * * def open_session(self): # <<<<<<<<<<<<<< @@ -9392,7 +9398,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_38open_session(struct __pyx_ob return __pyx_r; } -/* "ssh2/session.pyx":435 +/* "ssh2/session.pyx":438 * return PyChannel(channel, self) * * def direct_tcpip_ex(self, host not None, int port, # <<<<<<<<<<<<<< @@ -9443,53 +9449,53 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_host,&__pyx_mstate_global->__pyx_n_u_port,&__pyx_mstate_global->__pyx_n_u_shost,&__pyx_mstate_global->__pyx_n_u_sport,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 435, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 438, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 438, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 438, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 438, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 438, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "direct_tcpip_ex", 0) < 0) __PYX_ERR(0, 435, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "direct_tcpip_ex", 0) < 0) __PYX_ERR(0, 438, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 4; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("direct_tcpip_ex", 1, 4, 4, i); __PYX_ERR(0, 435, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("direct_tcpip_ex", 1, 4, 4, i); __PYX_ERR(0, 438, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 4)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 438, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 438, __pyx_L3_error) values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 438, __pyx_L3_error) values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 435, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 438, __pyx_L3_error) } __pyx_v_host = values[0]; - __pyx_v_port = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 435, __pyx_L3_error) + __pyx_v_port = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 438, __pyx_L3_error) __pyx_v_shost = values[2]; - __pyx_v_sport = __Pyx_PyLong_As_int(values[3]); if (unlikely((__pyx_v_sport == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 436, __pyx_L3_error) + __pyx_v_sport = __Pyx_PyLong_As_int(values[3]); if (unlikely((__pyx_v_sport == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 439, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("direct_tcpip_ex", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 435, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("direct_tcpip_ex", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 438, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -9501,10 +9507,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_host) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "host"); __PYX_ERR(0, 435, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "host"); __PYX_ERR(0, 438, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_shost) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "shost"); __PYX_ERR(0, 436, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "shost"); __PYX_ERR(0, 439, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_host, __pyx_v_port, __pyx_v_shost, __pyx_v_sport); @@ -9542,31 +9548,31 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx int __pyx_clineno = 0; __Pyx_RefNannySetupContext("direct_tcpip_ex", 0); - /* "ssh2/session.pyx":438 + /* "ssh2/session.pyx":441 * shost not None, int sport): * cdef c_ssh2.LIBSSH2_CHANNEL *channel * cdef bytes b_host = to_bytes(host) # <<<<<<<<<<<<<< * cdef bytes b_shost = to_bytes(shost) * cdef char *_host = b_host */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_host); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 438, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_host); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 441, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_host = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":439 + /* "ssh2/session.pyx":442 * cdef c_ssh2.LIBSSH2_CHANNEL *channel * cdef bytes b_host = to_bytes(host) * cdef bytes b_shost = to_bytes(shost) # <<<<<<<<<<<<<< * cdef char *_host = b_host * cdef char *_shost = b_shost */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_shost); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 439, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_shost); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 442, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_shost = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":440 + /* "ssh2/session.pyx":443 * cdef bytes b_host = to_bytes(host) * cdef bytes b_shost = to_bytes(shost) * cdef char *_host = b_host # <<<<<<<<<<<<<< @@ -9575,12 +9581,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx */ if (unlikely(__pyx_v_b_host == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 440, __pyx_L1_error) + __PYX_ERR(0, 443, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_host); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 440, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_host); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 443, __pyx_L1_error) __pyx_v__host = __pyx_t_2; - /* "ssh2/session.pyx":441 + /* "ssh2/session.pyx":444 * cdef bytes b_shost = to_bytes(shost) * cdef char *_host = b_host * cdef char *_shost = b_shost # <<<<<<<<<<<<<< @@ -9589,12 +9595,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx */ if (unlikely(__pyx_v_b_shost == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 441, __pyx_L1_error) + __PYX_ERR(0, 444, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_shost); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 441, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_shost); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 444, __pyx_L1_error) __pyx_v__shost = __pyx_t_2; - /* "ssh2/session.pyx":442 + /* "ssh2/session.pyx":445 * cdef char *_host = b_host * cdef char *_shost = b_shost * with nogil: # <<<<<<<<<<<<<< @@ -9608,7 +9614,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":443 + /* "ssh2/session.pyx":446 * cdef char *_shost = b_shost * with nogil: * channel = c_ssh2.libssh2_channel_direct_tcpip_ex( # <<<<<<<<<<<<<< @@ -9618,7 +9624,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx __pyx_v_channel = libssh2_channel_direct_tcpip_ex(__pyx_v_self->_session, __pyx_v__host, __pyx_v_port, __pyx_v__shost, __pyx_v_sport); } - /* "ssh2/session.pyx":442 + /* "ssh2/session.pyx":445 * cdef char *_host = b_host * cdef char *_shost = b_shost * with nogil: # <<<<<<<<<<<<<< @@ -9635,7 +9641,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx } } - /* "ssh2/session.pyx":445 + /* "ssh2/session.pyx":448 * channel = c_ssh2.libssh2_channel_direct_tcpip_ex( * self._session, _host, port, _shost, sport) * if channel is NULL: # <<<<<<<<<<<<<< @@ -9645,7 +9651,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx __pyx_t_3 = (__pyx_v_channel == NULL); if (__pyx_t_3) { - /* "ssh2/session.pyx":446 + /* "ssh2/session.pyx":449 * self._session, _host, port, _shost, sport) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -9654,29 +9660,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":447 + /* "ssh2/session.pyx":450 * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyChannel(channel, self) * */ - __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 446, __pyx_L1_error) + __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 449, __pyx_L1_error) - /* "ssh2/session.pyx":446 + /* "ssh2/session.pyx":449 * self._session, _host, port, _shost, sport) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyChannel(channel, self) */ - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 446, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 449, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":445 + /* "ssh2/session.pyx":448 * channel = c_ssh2.libssh2_channel_direct_tcpip_ex( * self._session, _host, port, _shost, sport) * if channel is NULL: # <<<<<<<<<<<<<< @@ -9685,7 +9691,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx */ } - /* "ssh2/session.pyx":448 + /* "ssh2/session.pyx":451 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyChannel(channel, self) # <<<<<<<<<<<<<< @@ -9693,13 +9699,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx * def direct_tcpip(self, host not None, int port): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 448, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":435 + /* "ssh2/session.pyx":438 * return PyChannel(channel, self) * * def direct_tcpip_ex(self, host not None, int port, # <<<<<<<<<<<<<< @@ -9720,7 +9726,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_40direct_tcpip_ex(struct __pyx return __pyx_r; } -/* "ssh2/session.pyx":450 +/* "ssh2/session.pyx":453 * return PyChannel(channel, self) * * def direct_tcpip(self, host not None, int port): # <<<<<<<<<<<<<< @@ -9769,39 +9775,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_host,&__pyx_mstate_global->__pyx_n_u_port,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 450, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 453, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 450, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 453, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 450, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 453, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "direct_tcpip", 0) < 0) __PYX_ERR(0, 450, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "direct_tcpip", 0) < 0) __PYX_ERR(0, 453, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("direct_tcpip", 1, 2, 2, i); __PYX_ERR(0, 450, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("direct_tcpip", 1, 2, 2, i); __PYX_ERR(0, 453, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 450, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 453, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 450, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 453, __pyx_L3_error) } __pyx_v_host = values[0]; - __pyx_v_port = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 450, __pyx_L3_error) + __pyx_v_port = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 453, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("direct_tcpip", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 450, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("direct_tcpip", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 453, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -9813,7 +9819,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_host) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "host"); __PYX_ERR(0, 450, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "host"); __PYX_ERR(0, 453, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_42direct_tcpip(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_host, __pyx_v_port); @@ -9849,19 +9855,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob int __pyx_clineno = 0; __Pyx_RefNannySetupContext("direct_tcpip", 0); - /* "ssh2/session.pyx":457 + /* "ssh2/session.pyx":460 * """ * cdef c_ssh2.LIBSSH2_CHANNEL *channel * cdef bytes b_host = to_bytes(host) # <<<<<<<<<<<<<< * cdef char *_host = b_host * with nogil: */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_host); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 457, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_host); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 460, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_host = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":458 + /* "ssh2/session.pyx":461 * cdef c_ssh2.LIBSSH2_CHANNEL *channel * cdef bytes b_host = to_bytes(host) * cdef char *_host = b_host # <<<<<<<<<<<<<< @@ -9870,12 +9876,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob */ if (unlikely(__pyx_v_b_host == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 458, __pyx_L1_error) + __PYX_ERR(0, 461, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_host); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 458, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_host); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 461, __pyx_L1_error) __pyx_v__host = __pyx_t_2; - /* "ssh2/session.pyx":459 + /* "ssh2/session.pyx":462 * cdef bytes b_host = to_bytes(host) * cdef char *_host = b_host * with nogil: # <<<<<<<<<<<<<< @@ -9889,7 +9895,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":460 + /* "ssh2/session.pyx":463 * cdef char *_host = b_host * with nogil: * channel = c_ssh2.libssh2_channel_direct_tcpip( # <<<<<<<<<<<<<< @@ -9899,7 +9905,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob __pyx_v_channel = libssh2_channel_direct_tcpip(__pyx_v_self->_session, __pyx_v__host, __pyx_v_port); } - /* "ssh2/session.pyx":459 + /* "ssh2/session.pyx":462 * cdef bytes b_host = to_bytes(host) * cdef char *_host = b_host * with nogil: # <<<<<<<<<<<<<< @@ -9916,7 +9922,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob } } - /* "ssh2/session.pyx":462 + /* "ssh2/session.pyx":465 * channel = c_ssh2.libssh2_channel_direct_tcpip( * self._session, _host, port) * if channel is NULL: # <<<<<<<<<<<<<< @@ -9926,7 +9932,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob __pyx_t_3 = (__pyx_v_channel == NULL); if (__pyx_t_3) { - /* "ssh2/session.pyx":463 + /* "ssh2/session.pyx":466 * self._session, _host, port) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -9935,29 +9941,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":464 + /* "ssh2/session.pyx":467 * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyChannel(channel, self) * */ - __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 463, __pyx_L1_error) + __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 466, __pyx_L1_error) - /* "ssh2/session.pyx":463 + /* "ssh2/session.pyx":466 * self._session, _host, port) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyChannel(channel, self) */ - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 463, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 466, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":462 + /* "ssh2/session.pyx":465 * channel = c_ssh2.libssh2_channel_direct_tcpip( * self._session, _host, port) * if channel is NULL: # <<<<<<<<<<<<<< @@ -9966,7 +9972,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob */ } - /* "ssh2/session.pyx":465 + /* "ssh2/session.pyx":468 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyChannel(channel, self) # <<<<<<<<<<<<<< @@ -9974,13 +9980,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob * def direct_streamlocal_ex(self, socket_path not None, shost not None, int sport): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 465, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 468, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":450 + /* "ssh2/session.pyx":453 * return PyChannel(channel, self) * * def direct_tcpip(self, host not None, int port): # <<<<<<<<<<<<<< @@ -10000,7 +10006,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_42direct_tcpip(struct __pyx_ob return __pyx_r; } -/* "ssh2/session.pyx":467 +/* "ssh2/session.pyx":470 * return PyChannel(channel, self) * * def direct_streamlocal_ex(self, socket_path not None, shost not None, int sport): # <<<<<<<<<<<<<< @@ -10050,46 +10056,46 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_socket_path,&__pyx_mstate_global->__pyx_n_u_shost,&__pyx_mstate_global->__pyx_n_u_sport,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 467, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 470, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 467, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 470, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 467, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 470, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 467, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 470, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "direct_streamlocal_ex", 0) < 0) __PYX_ERR(0, 467, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "direct_streamlocal_ex", 0) < 0) __PYX_ERR(0, 470, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 3; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("direct_streamlocal_ex", 1, 3, 3, i); __PYX_ERR(0, 467, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("direct_streamlocal_ex", 1, 3, 3, i); __PYX_ERR(0, 470, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 467, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 470, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 467, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 470, __pyx_L3_error) values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 467, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 470, __pyx_L3_error) } __pyx_v_socket_path = values[0]; __pyx_v_shost = values[1]; - __pyx_v_sport = __Pyx_PyLong_As_int(values[2]); if (unlikely((__pyx_v_sport == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 467, __pyx_L3_error) + __pyx_v_sport = __Pyx_PyLong_As_int(values[2]); if (unlikely((__pyx_v_sport == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 470, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("direct_streamlocal_ex", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 467, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("direct_streamlocal_ex", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 470, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -10101,10 +10107,10 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_socket_path) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "socket_path"); __PYX_ERR(0, 467, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "socket_path"); __PYX_ERR(0, 470, __pyx_L1_error) } if (unlikely(((PyObject *)__pyx_v_shost) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "shost"); __PYX_ERR(0, 467, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "shost"); __PYX_ERR(0, 470, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_socket_path, __pyx_v_shost, __pyx_v_sport); @@ -10143,31 +10149,31 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct int __pyx_clineno = 0; __Pyx_RefNannySetupContext("direct_streamlocal_ex", 0); - /* "ssh2/session.pyx":484 + /* "ssh2/session.pyx":487 * :rtype: `ssh2.channel.Channel` * """ * cdef bytes b_socket_path = to_bytes(socket_path) # <<<<<<<<<<<<<< * cdef bytes b_shost = to_bytes(shost) * cdef const char *c_socket_path = b_socket_path */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_socket_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_socket_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 487, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_socket_path = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":485 + /* "ssh2/session.pyx":488 * """ * cdef bytes b_socket_path = to_bytes(socket_path) * cdef bytes b_shost = to_bytes(shost) # <<<<<<<<<<<<<< * cdef const char *c_socket_path = b_socket_path * cdef const char *c_shost = b_shost */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_shost); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 485, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_shost); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 488, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_shost = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":486 + /* "ssh2/session.pyx":489 * cdef bytes b_socket_path = to_bytes(socket_path) * cdef bytes b_shost = to_bytes(shost) * cdef const char *c_socket_path = b_socket_path # <<<<<<<<<<<<<< @@ -10176,12 +10182,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct */ if (unlikely(__pyx_v_b_socket_path == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 486, __pyx_L1_error) + __PYX_ERR(0, 489, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_socket_path); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 486, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_socket_path); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 489, __pyx_L1_error) __pyx_v_c_socket_path = __pyx_t_2; - /* "ssh2/session.pyx":487 + /* "ssh2/session.pyx":490 * cdef bytes b_shost = to_bytes(shost) * cdef const char *c_socket_path = b_socket_path * cdef const char *c_shost = b_shost # <<<<<<<<<<<<<< @@ -10190,12 +10196,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct */ if (unlikely(__pyx_v_b_shost == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 487, __pyx_L1_error) + __PYX_ERR(0, 490, __pyx_L1_error) } - __pyx_t_3 = __Pyx_PyBytes_AsString(__pyx_v_b_shost); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 487, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyBytes_AsString(__pyx_v_b_shost); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 490, __pyx_L1_error) __pyx_v_c_shost = __pyx_t_3; - /* "ssh2/session.pyx":489 + /* "ssh2/session.pyx":492 * cdef const char *c_shost = b_shost * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -10209,7 +10215,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":490 + /* "ssh2/session.pyx":493 * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: * channel = c_ssh2.libssh2_channel_direct_streamlocal_ex(self._session, c_socket_path, c_shost, sport) # <<<<<<<<<<<<<< @@ -10219,7 +10225,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct __pyx_v_channel = libssh2_channel_direct_streamlocal_ex(__pyx_v_self->_session, __pyx_v_c_socket_path, __pyx_v_c_shost, __pyx_v_sport); } - /* "ssh2/session.pyx":489 + /* "ssh2/session.pyx":492 * cdef const char *c_shost = b_shost * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -10236,7 +10242,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct } } - /* "ssh2/session.pyx":491 + /* "ssh2/session.pyx":494 * with nogil: * channel = c_ssh2.libssh2_channel_direct_streamlocal_ex(self._session, c_socket_path, c_shost, sport) * if channel is NULL: # <<<<<<<<<<<<<< @@ -10246,7 +10252,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct __pyx_t_4 = (__pyx_v_channel == NULL); if (__pyx_t_4) { - /* "ssh2/session.pyx":492 + /* "ssh2/session.pyx":495 * channel = c_ssh2.libssh2_channel_direct_streamlocal_ex(self._session, c_socket_path, c_shost, sport) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -10255,29 +10261,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":493 + /* "ssh2/session.pyx":496 * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyChannel(channel, self) * */ - __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 492, __pyx_L1_error) + __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 495, __pyx_L1_error) - /* "ssh2/session.pyx":492 + /* "ssh2/session.pyx":495 * channel = c_ssh2.libssh2_channel_direct_streamlocal_ex(self._session, c_socket_path, c_shost, sport) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyChannel(channel, self) */ - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 492, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 495, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":491 + /* "ssh2/session.pyx":494 * with nogil: * channel = c_ssh2.libssh2_channel_direct_streamlocal_ex(self._session, c_socket_path, c_shost, sport) * if channel is NULL: # <<<<<<<<<<<<<< @@ -10286,7 +10292,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct */ } - /* "ssh2/session.pyx":494 + /* "ssh2/session.pyx":497 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyChannel(channel, self) # <<<<<<<<<<<<<< @@ -10294,13 +10300,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct * def block_directions(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 494, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 497, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":467 + /* "ssh2/session.pyx":470 * return PyChannel(channel, self) * * def direct_streamlocal_ex(self, socket_path not None, shost not None, int sport): # <<<<<<<<<<<<<< @@ -10321,7 +10327,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_44direct_streamlocal_ex(struct return __pyx_r; } -/* "ssh2/session.pyx":496 +/* "ssh2/session.pyx":499 * return PyChannel(channel, self) * * def block_directions(self): # <<<<<<<<<<<<<< @@ -10382,7 +10388,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_46block_directions(struct __py int __pyx_clineno = 0; __Pyx_RefNannySetupContext("block_directions", 0); - /* "ssh2/session.pyx":518 + /* "ssh2/session.pyx":521 * :rtype: int""" * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -10396,7 +10402,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_46block_directions(struct __py __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":519 + /* "ssh2/session.pyx":522 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_block_directions( # <<<<<<<<<<<<<< @@ -10406,7 +10412,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_46block_directions(struct __py __pyx_v_rc = libssh2_session_block_directions(__pyx_v_self->_session); } - /* "ssh2/session.pyx":518 + /* "ssh2/session.pyx":521 * :rtype: int""" * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -10423,7 +10429,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_46block_directions(struct __py } } - /* "ssh2/session.pyx":521 + /* "ssh2/session.pyx":524 * rc = c_ssh2.libssh2_session_block_directions( * self._session) * return rc # <<<<<<<<<<<<<< @@ -10431,13 +10437,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_46block_directions(struct __py * def flag(self, FlagType flag, enabled=True): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 521, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":496 + /* "ssh2/session.pyx":499 * return PyChannel(channel, self) * * def block_directions(self): # <<<<<<<<<<<<<< @@ -10456,7 +10462,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_46block_directions(struct __py return __pyx_r; } -/* "ssh2/session.pyx":523 +/* "ssh2/session.pyx":526 * return rc * * def flag(self, FlagType flag, enabled=True): # <<<<<<<<<<<<<< @@ -10505,35 +10511,35 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_flag,&__pyx_mstate_global->__pyx_n_u_enabled,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 523, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 526, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 523, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 526, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 523, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 526, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "flag", 0) < 0) __PYX_ERR(0, 523, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "flag", 0) < 0) __PYX_ERR(0, 526, __pyx_L3_error) if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_True)); for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("flag", 0, 1, 2, i); __PYX_ERR(0, 523, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("flag", 0, 1, 2, i); __PYX_ERR(0, 526, __pyx_L3_error) } } } else { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 523, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 526, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 523, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 526, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } @@ -10544,7 +10550,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("flag", 0, 1, 2, __pyx_nargs); __PYX_ERR(0, 523, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("flag", 0, 1, 2, __pyx_nargs); __PYX_ERR(0, 526, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -10555,7 +10561,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_flag), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType, 1, "flag", 0))) __PYX_ERR(0, 523, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_flag), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType, 1, "flag", 0))) __PYX_ERR(0, 526, __pyx_L1_error) __pyx_r = __pyx_pf_4ssh2_7session_7Session_48flag(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_flag, __pyx_v_enabled); /* function exit code */ @@ -10593,17 +10599,17 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("flag", 0); - /* "ssh2/session.pyx":550 + /* "ssh2/session.pyx":553 * """ * cdef int rc * cdef bint value = enabled # <<<<<<<<<<<<<< * if not flag in (LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS): * raise ValueError("Provided flag must be one of LIBSSH2_FLAG_SIGPIPE or LIBSSH2_FLAG_COMPRESS - got %s", */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_enabled); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 550, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_enabled); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 553, __pyx_L1_error) __pyx_v_value = __pyx_t_1; - /* "ssh2/session.pyx":551 + /* "ssh2/session.pyx":554 * cdef int rc * cdef bint value = enabled * if not flag in (LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS): # <<<<<<<<<<<<<< @@ -10612,22 +10618,22 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ */ __Pyx_INCREF((PyObject *)__pyx_v_flag); __pyx_t_2 = __pyx_v_flag; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_SIGPIPE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 551, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_SIGPIPE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_3, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 551, __pyx_L1_error) + __pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_3, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 551, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_5) { } else { __pyx_t_1 = __pyx_t_5; goto __pyx_L4_bool_binop_done; } - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_COMPRESS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 551, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_COMPRESS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 551, __pyx_L1_error) + __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 551, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __pyx_t_5; __pyx_L4_bool_binop_done:; @@ -10635,7 +10641,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ __pyx_t_5 = __pyx_t_1; if (unlikely(__pyx_t_5)) { - /* "ssh2/session.pyx":552 + /* "ssh2/session.pyx":555 * cdef bint value = enabled * if not flag in (LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS): * raise ValueError("Provided flag must be one of LIBSSH2_FLAG_SIGPIPE or LIBSSH2_FLAG_COMPRESS - got %s", # <<<<<<<<<<<<<< @@ -10646,7 +10652,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ __Pyx_INCREF(__pyx_builtin_ValueError); __pyx_t_6 = __pyx_builtin_ValueError; - /* "ssh2/session.pyx":553 + /* "ssh2/session.pyx":556 * if not flag in (LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS): * raise ValueError("Provided flag must be one of LIBSSH2_FLAG_SIGPIPE or LIBSSH2_FLAG_COMPRESS - got %s", * flag) # <<<<<<<<<<<<<< @@ -10659,14 +10665,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+__pyx_t_7, (3-__pyx_t_7) | (__pyx_t_7*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 552, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); } __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(0, 552, __pyx_L1_error) + __PYX_ERR(0, 555, __pyx_L1_error) - /* "ssh2/session.pyx":551 + /* "ssh2/session.pyx":554 * cdef int rc * cdef bint value = enabled * if not flag in (LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS): # <<<<<<<<<<<<<< @@ -10675,7 +10681,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ */ } - /* "ssh2/session.pyx":554 + /* "ssh2/session.pyx":557 * raise ValueError("Provided flag must be one of LIBSSH2_FLAG_SIGPIPE or LIBSSH2_FLAG_COMPRESS - got %s", * flag) * with nogil: # <<<<<<<<<<<<<< @@ -10689,7 +10695,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":555 + /* "ssh2/session.pyx":558 * flag) * with nogil: * rc = c_ssh2.libssh2_session_flag(self._session, flag.value, value) # <<<<<<<<<<<<<< @@ -10699,7 +10705,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ __pyx_v_rc = libssh2_session_flag(__pyx_v_self->_session, __pyx_v_flag->value, __pyx_v_value); } - /* "ssh2/session.pyx":554 + /* "ssh2/session.pyx":557 * raise ValueError("Provided flag must be one of LIBSSH2_FLAG_SIGPIPE or LIBSSH2_FLAG_COMPRESS - got %s", * flag) * with nogil: # <<<<<<<<<<<<<< @@ -10716,16 +10722,16 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ } } - /* "ssh2/session.pyx":556 + /* "ssh2/session.pyx":559 * with nogil: * rc = c_ssh2.libssh2_session_flag(self._session, flag.value, value) * handle_error_codes(rc) # <<<<<<<<<<<<<< * * def forward_listen(self, int port): */ - __pyx_t_8 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 556, __pyx_L1_error) + __pyx_t_8 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_8 == ((int)-1))) __PYX_ERR(0, 559, __pyx_L1_error) - /* "ssh2/session.pyx":523 + /* "ssh2/session.pyx":526 * return rc * * def flag(self, FlagType flag, enabled=True): # <<<<<<<<<<<<<< @@ -10749,7 +10755,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_48flag(struct __pyx_obj_4ssh2_ return __pyx_r; } -/* "ssh2/session.pyx":558 +/* "ssh2/session.pyx":561 * handle_error_codes(rc) * * def forward_listen(self, int port): # <<<<<<<<<<<<<< @@ -10797,32 +10803,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_port,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 558, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 561, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 558, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 561, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "forward_listen", 0) < 0) __PYX_ERR(0, 558, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "forward_listen", 0) < 0) __PYX_ERR(0, 561, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("forward_listen", 1, 1, 1, i); __PYX_ERR(0, 558, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("forward_listen", 1, 1, 1, i); __PYX_ERR(0, 561, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 558, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 561, __pyx_L3_error) } - __pyx_v_port = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 558, __pyx_L3_error) + __pyx_v_port = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 561, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("forward_listen", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 558, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("forward_listen", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 561, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -10855,7 +10861,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("forward_listen", 0); - /* "ssh2/session.pyx":566 + /* "ssh2/session.pyx":569 * :rtype: :py:class:`ssh2.listener.Listener` or None""" * cdef c_ssh2.LIBSSH2_LISTENER *listener * with nogil: # <<<<<<<<<<<<<< @@ -10869,7 +10875,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":567 + /* "ssh2/session.pyx":570 * cdef c_ssh2.LIBSSH2_LISTENER *listener * with nogil: * listener = c_ssh2.libssh2_channel_forward_listen( # <<<<<<<<<<<<<< @@ -10879,7 +10885,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ __pyx_v_listener = libssh2_channel_forward_listen(__pyx_v_self->_session, __pyx_v_port); } - /* "ssh2/session.pyx":566 + /* "ssh2/session.pyx":569 * :rtype: :py:class:`ssh2.listener.Listener` or None""" * cdef c_ssh2.LIBSSH2_LISTENER *listener * with nogil: # <<<<<<<<<<<<<< @@ -10896,7 +10902,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ } } - /* "ssh2/session.pyx":569 + /* "ssh2/session.pyx":572 * listener = c_ssh2.libssh2_channel_forward_listen( * self._session, port) * if listener is NULL: # <<<<<<<<<<<<<< @@ -10906,7 +10912,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ __pyx_t_1 = (__pyx_v_listener == NULL); if (__pyx_t_1) { - /* "ssh2/session.pyx":570 + /* "ssh2/session.pyx":573 * self._session, port) * if listener is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -10915,29 +10921,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":571 + /* "ssh2/session.pyx":574 * if listener is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyListener(listener, self) * */ - __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 570, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 573, __pyx_L1_error) - /* "ssh2/session.pyx":570 + /* "ssh2/session.pyx":573 * self._session, port) * if listener is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyListener(listener, self) */ - __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 570, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":569 + /* "ssh2/session.pyx":572 * listener = c_ssh2.libssh2_channel_forward_listen( * self._session, port) * if listener is NULL: # <<<<<<<<<<<<<< @@ -10946,7 +10952,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ */ } - /* "ssh2/session.pyx":572 + /* "ssh2/session.pyx":575 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyListener(listener, self) # <<<<<<<<<<<<<< @@ -10954,13 +10960,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ * def forward_listen_ex(self, int queue_maxsize, host=None, int port=0): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __pyx_f_4ssh2_8listener_PyListener(__pyx_v_listener, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 572, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_8listener_PyListener(__pyx_v_listener, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":558 + /* "ssh2/session.pyx":561 * handle_error_codes(rc) * * def forward_listen(self, int port): # <<<<<<<<<<<<<< @@ -10979,7 +10985,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_50forward_listen(struct __pyx_ return __pyx_r; } -/* "ssh2/session.pyx":574 +/* "ssh2/session.pyx":577 * return PyListener(listener, self) * * def forward_listen_ex(self, int queue_maxsize, host=None, int port=0): # <<<<<<<<<<<<<< @@ -11029,59 +11035,59 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_queue_maxsize,&__pyx_mstate_global->__pyx_n_u_host,&__pyx_mstate_global->__pyx_n_u_port,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 574, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 577, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 574, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 577, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 574, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 577, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 574, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 577, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "forward_listen_ex", 0) < 0) __PYX_ERR(0, 574, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "forward_listen_ex", 0) < 0) __PYX_ERR(0, 577, __pyx_L3_error) if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_None)); for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("forward_listen_ex", 0, 1, 3, i); __PYX_ERR(0, 574, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("forward_listen_ex", 0, 1, 3, i); __PYX_ERR(0, 577, __pyx_L3_error) } } } else { switch (__pyx_nargs) { case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 574, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 577, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 574, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 577, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 574, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 577, __pyx_L3_error) break; default: goto __pyx_L5_argtuple_error; } if (!values[1]) values[1] = __Pyx_NewRef(((PyObject *)Py_None)); } - __pyx_v_queue_maxsize = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_queue_maxsize == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 574, __pyx_L3_error) + __pyx_v_queue_maxsize = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_queue_maxsize == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 577, __pyx_L3_error) __pyx_v_host = values[1]; if (values[2]) { - __pyx_v_port = __Pyx_PyLong_As_int(values[2]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 574, __pyx_L3_error) + __pyx_v_port = __Pyx_PyLong_As_int(values[2]); if (unlikely((__pyx_v_port == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 577, __pyx_L3_error) } else { __pyx_v_port = ((int)0); } } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("forward_listen_ex", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 574, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("forward_listen_ex", 0, 1, 3, __pyx_nargs); __PYX_ERR(0, 577, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -11120,7 +11126,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p int __pyx_clineno = 0; __Pyx_RefNannySetupContext("forward_listen_ex", 0); - /* "ssh2/session.pyx":597 + /* "ssh2/session.pyx":600 * """ * cdef c_ssh2.LIBSSH2_LISTENER *listener * cdef bytes b_host = None if host is None else to_bytes(host) # <<<<<<<<<<<<<< @@ -11132,16 +11138,16 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p __Pyx_INCREF(Py_None); __pyx_t_1 = Py_None; } else { - __pyx_t_3 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_host); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 597, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_host); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __pyx_t_3; __pyx_t_3 = 0; } - if (!(likely(PyBytes_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("bytes", __pyx_t_1))) __PYX_ERR(0, 597, __pyx_L1_error) + if (!(likely(PyBytes_CheckExact(__pyx_t_1))||((__pyx_t_1) == Py_None) || __Pyx_RaiseUnexpectedTypeError("bytes", __pyx_t_1))) __PYX_ERR(0, 600, __pyx_L1_error) __pyx_v_b_host = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":598 + /* "ssh2/session.pyx":601 * cdef c_ssh2.LIBSSH2_LISTENER *listener * cdef bytes b_host = None if host is None else to_bytes(host) * cdef char *_host = NULL # <<<<<<<<<<<<<< @@ -11150,7 +11156,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p */ __pyx_v__host = NULL; - /* "ssh2/session.pyx":599 + /* "ssh2/session.pyx":602 * cdef bytes b_host = None if host is None else to_bytes(host) * cdef char *_host = NULL * if b_host is not None: # <<<<<<<<<<<<<< @@ -11160,7 +11166,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p __pyx_t_2 = (__pyx_v_b_host != ((PyObject*)Py_None)); if (__pyx_t_2) { - /* "ssh2/session.pyx":600 + /* "ssh2/session.pyx":603 * cdef char *_host = NULL * if b_host is not None: * _host = b_host # <<<<<<<<<<<<<< @@ -11169,12 +11175,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p */ if (unlikely(__pyx_v_b_host == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 600, __pyx_L1_error) + __PYX_ERR(0, 603, __pyx_L1_error) } - __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_host); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 600, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_host); if (unlikely((!__pyx_t_4) && PyErr_Occurred())) __PYX_ERR(0, 603, __pyx_L1_error) __pyx_v__host = __pyx_t_4; - /* "ssh2/session.pyx":599 + /* "ssh2/session.pyx":602 * cdef bytes b_host = None if host is None else to_bytes(host) * cdef char *_host = NULL * if b_host is not None: # <<<<<<<<<<<<<< @@ -11183,7 +11189,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p */ } - /* "ssh2/session.pyx":601 + /* "ssh2/session.pyx":604 * if b_host is not None: * _host = b_host * cdef int bound_port = 0 # <<<<<<<<<<<<<< @@ -11192,7 +11198,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p */ __pyx_v_bound_port = 0; - /* "ssh2/session.pyx":602 + /* "ssh2/session.pyx":605 * _host = b_host * cdef int bound_port = 0 * with nogil: # <<<<<<<<<<<<<< @@ -11206,7 +11212,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":603 + /* "ssh2/session.pyx":606 * cdef int bound_port = 0 * with nogil: * listener = c_ssh2.libssh2_channel_forward_listen_ex( # <<<<<<<<<<<<<< @@ -11216,7 +11222,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p __pyx_v_listener = libssh2_channel_forward_listen_ex(__pyx_v_self->_session, __pyx_v__host, __pyx_v_port, (&__pyx_v_bound_port), __pyx_v_queue_maxsize); } - /* "ssh2/session.pyx":602 + /* "ssh2/session.pyx":605 * _host = b_host * cdef int bound_port = 0 * with nogil: # <<<<<<<<<<<<<< @@ -11233,7 +11239,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p } } - /* "ssh2/session.pyx":605 + /* "ssh2/session.pyx":608 * listener = c_ssh2.libssh2_channel_forward_listen_ex( * self._session, _host, port, &bound_port, queue_maxsize) * if listener is NULL: # <<<<<<<<<<<<<< @@ -11243,7 +11249,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p __pyx_t_2 = (__pyx_v_listener == NULL); if (__pyx_t_2) { - /* "ssh2/session.pyx":606 + /* "ssh2/session.pyx":609 * self._session, _host, port, &bound_port, queue_maxsize) * if listener is NULL: * return (handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -11252,37 +11258,37 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":607 + /* "ssh2/session.pyx":610 * if listener is NULL: * return (handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)), 0) # <<<<<<<<<<<<<< * return (PyListener(listener, self), bound_port) * */ - __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 606, __pyx_L1_error) + __pyx_t_5 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 609, __pyx_L1_error) - /* "ssh2/session.pyx":606 + /* "ssh2/session.pyx":609 * self._session, _host, port, &bound_port, queue_maxsize) * if listener is NULL: * return (handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)), 0) * return (PyListener(listener, self), bound_port) */ - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 606, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 609, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 606, __pyx_L1_error) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 609, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 606, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 609, __pyx_L1_error); __Pyx_INCREF(__pyx_mstate_global->__pyx_int_0); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_int_0); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_mstate_global->__pyx_int_0) != (0)) __PYX_ERR(0, 606, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_mstate_global->__pyx_int_0) != (0)) __PYX_ERR(0, 609, __pyx_L1_error); __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":605 + /* "ssh2/session.pyx":608 * listener = c_ssh2.libssh2_channel_forward_listen_ex( * self._session, _host, port, &bound_port, queue_maxsize) * if listener is NULL: # <<<<<<<<<<<<<< @@ -11291,7 +11297,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p */ } - /* "ssh2/session.pyx":608 + /* "ssh2/session.pyx":611 * return (handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)), 0) * return (PyListener(listener, self), bound_port) # <<<<<<<<<<<<<< @@ -11299,23 +11305,23 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p * def sftp_init(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __pyx_f_4ssh2_8listener_PyListener(__pyx_v_listener, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 608, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_8listener_PyListener(__pyx_v_listener, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_bound_port); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 608, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_bound_port); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 608, __pyx_L1_error) + __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3) != (0)) __PYX_ERR(0, 608, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3) != (0)) __PYX_ERR(0, 611, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_1) != (0)) __PYX_ERR(0, 608, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_1) != (0)) __PYX_ERR(0, 611, __pyx_L1_error); __pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_r = __pyx_t_6; __pyx_t_6 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":574 + /* "ssh2/session.pyx":577 * return PyListener(listener, self) * * def forward_listen_ex(self, int queue_maxsize, host=None, int port=0): # <<<<<<<<<<<<<< @@ -11337,7 +11343,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_52forward_listen_ex(struct __p return __pyx_r; } -/* "ssh2/session.pyx":610 +/* "ssh2/session.pyx":613 * return (PyListener(listener, self), bound_port) * * def sftp_init(self): # <<<<<<<<<<<<<< @@ -11400,7 +11406,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 int __pyx_clineno = 0; __Pyx_RefNannySetupContext("sftp_init", 0); - /* "ssh2/session.pyx":616 + /* "ssh2/session.pyx":619 * """ * cdef c_sftp.LIBSSH2_SFTP *_sftp * with nogil: # <<<<<<<<<<<<<< @@ -11414,7 +11420,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":617 + /* "ssh2/session.pyx":620 * cdef c_sftp.LIBSSH2_SFTP *_sftp * with nogil: * _sftp = c_sftp.libssh2_sftp_init(self._session) # <<<<<<<<<<<<<< @@ -11424,7 +11430,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 __pyx_v__sftp = libssh2_sftp_init(__pyx_v_self->_session); } - /* "ssh2/session.pyx":616 + /* "ssh2/session.pyx":619 * """ * cdef c_sftp.LIBSSH2_SFTP *_sftp * with nogil: # <<<<<<<<<<<<<< @@ -11441,7 +11447,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 } } - /* "ssh2/session.pyx":618 + /* "ssh2/session.pyx":621 * with nogil: * _sftp = c_sftp.libssh2_sftp_init(self._session) * if _sftp is NULL: # <<<<<<<<<<<<<< @@ -11451,7 +11457,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 __pyx_t_1 = (__pyx_v__sftp == NULL); if (__pyx_t_1) { - /* "ssh2/session.pyx":619 + /* "ssh2/session.pyx":622 * _sftp = c_sftp.libssh2_sftp_init(self._session) * if _sftp is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -11460,29 +11466,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":620 + /* "ssh2/session.pyx":623 * if _sftp is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PySFTP(_sftp, self) * */ - __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 619, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 622, __pyx_L1_error) - /* "ssh2/session.pyx":619 + /* "ssh2/session.pyx":622 * _sftp = c_sftp.libssh2_sftp_init(self._session) * if _sftp is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PySFTP(_sftp, self) */ - __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 619, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 622, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":618 + /* "ssh2/session.pyx":621 * with nogil: * _sftp = c_sftp.libssh2_sftp_init(self._session) * if _sftp is NULL: # <<<<<<<<<<<<<< @@ -11491,7 +11497,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 */ } - /* "ssh2/session.pyx":621 + /* "ssh2/session.pyx":624 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PySFTP(_sftp, self) # <<<<<<<<<<<<<< @@ -11499,13 +11505,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 * def last_error(self, size_t msg_size=1024): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __pyx_f_4ssh2_4sftp_PySFTP(__pyx_v__sftp, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 621, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_4sftp_PySFTP(__pyx_v__sftp, __pyx_v_self); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 624, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":610 + /* "ssh2/session.pyx":613 * return (PyListener(listener, self), bound_port) * * def sftp_init(self): # <<<<<<<<<<<<<< @@ -11524,7 +11530,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_54sftp_init(struct __pyx_obj_4 return __pyx_r; } -/* "ssh2/session.pyx":623 +/* "ssh2/session.pyx":626 * return PySFTP(_sftp, self) * * def last_error(self, size_t msg_size=1024): # <<<<<<<<<<<<<< @@ -11572,37 +11578,37 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_msg_size,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 623, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 626, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 623, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 626, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "last_error", 0) < 0) __PYX_ERR(0, 623, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "last_error", 0) < 0) __PYX_ERR(0, 626, __pyx_L3_error) } else { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 623, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 626, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } } if (values[0]) { - __pyx_v_msg_size = __Pyx_PyLong_As_size_t(values[0]); if (unlikely((__pyx_v_msg_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 623, __pyx_L3_error) + __pyx_v_msg_size = __Pyx_PyLong_As_size_t(values[0]); if (unlikely((__pyx_v_msg_size == (size_t)-1) && PyErr_Occurred())) __PYX_ERR(0, 626, __pyx_L3_error) } else { __pyx_v_msg_size = ((size_t)0x400); } } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("last_error", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 623, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("last_error", 0, 0, 1, __pyx_nargs); __PYX_ERR(0, 626, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -11646,7 +11652,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("last_error", 0); - /* "ssh2/session.pyx":630 + /* "ssh2/session.pyx":633 * """ * cdef char *_error_msg * cdef bytes msg = b'' # <<<<<<<<<<<<<< @@ -11656,7 +11662,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_b__2); __pyx_v_msg = __pyx_mstate_global->__pyx_kp_b__2; - /* "ssh2/session.pyx":631 + /* "ssh2/session.pyx":634 * cdef char *_error_msg * cdef bytes msg = b'' * cdef int errmsg_len = 0 # <<<<<<<<<<<<<< @@ -11665,7 +11671,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ */ __pyx_v_errmsg_len = 0; - /* "ssh2/session.pyx":632 + /* "ssh2/session.pyx":635 * cdef bytes msg = b'' * cdef int errmsg_len = 0 * with nogil: # <<<<<<<<<<<<<< @@ -11679,7 +11685,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":633 + /* "ssh2/session.pyx":636 * cdef int errmsg_len = 0 * with nogil: * _error_msg = malloc(sizeof(char) * msg_size) # <<<<<<<<<<<<<< @@ -11688,7 +11694,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ */ __pyx_v__error_msg = ((char *)malloc(((sizeof(char)) * __pyx_v_msg_size))); - /* "ssh2/session.pyx":634 + /* "ssh2/session.pyx":637 * with nogil: * _error_msg = malloc(sizeof(char) * msg_size) * c_ssh2.libssh2_session_last_error( # <<<<<<<<<<<<<< @@ -11698,7 +11704,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ (void)(libssh2_session_last_error(__pyx_v_self->_session, (&__pyx_v__error_msg), (&__pyx_v_errmsg_len), 1)); } - /* "ssh2/session.pyx":632 + /* "ssh2/session.pyx":635 * cdef bytes msg = b'' * cdef int errmsg_len = 0 * with nogil: # <<<<<<<<<<<<<< @@ -11715,7 +11721,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ } } - /* "ssh2/session.pyx":636 + /* "ssh2/session.pyx":639 * c_ssh2.libssh2_session_last_error( * self._session, &_error_msg, &errmsg_len, 1) * try: # <<<<<<<<<<<<<< @@ -11724,7 +11730,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ */ /*try:*/ { - /* "ssh2/session.pyx":637 + /* "ssh2/session.pyx":640 * self._session, &_error_msg, &errmsg_len, 1) * try: * if errmsg_len > 0: # <<<<<<<<<<<<<< @@ -11734,19 +11740,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ __pyx_t_1 = (__pyx_v_errmsg_len > 0); if (__pyx_t_1) { - /* "ssh2/session.pyx":638 + /* "ssh2/session.pyx":641 * try: * if errmsg_len > 0: * msg = _error_msg[:errmsg_len] # <<<<<<<<<<<<<< * return to_str(msg) * finally: */ - __pyx_t_2 = __Pyx_PyBytes_FromStringAndSize(__pyx_v__error_msg + 0, __pyx_v_errmsg_len - 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 638, __pyx_L7_error) + __pyx_t_2 = __Pyx_PyBytes_FromStringAndSize(__pyx_v__error_msg + 0, __pyx_v_errmsg_len - 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 641, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_msg, ((PyObject*)__pyx_t_2)); __pyx_t_2 = 0; - /* "ssh2/session.pyx":637 + /* "ssh2/session.pyx":640 * self._session, &_error_msg, &errmsg_len, 1) * try: * if errmsg_len > 0: # <<<<<<<<<<<<<< @@ -11755,7 +11761,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ */ } - /* "ssh2/session.pyx":639 + /* "ssh2/session.pyx":642 * if errmsg_len > 0: * msg = _error_msg[:errmsg_len] * return to_str(msg) # <<<<<<<<<<<<<< @@ -11763,15 +11769,15 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ * free(_error_msg) */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __Pyx_PyBytes_AsWritableString(__pyx_v_msg); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 639, __pyx_L7_error) - __pyx_t_2 = __pyx_f_4ssh2_5utils_to_str(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 639, __pyx_L7_error) + __pyx_t_3 = __Pyx_PyBytes_AsWritableString(__pyx_v_msg); if (unlikely((!__pyx_t_3) && PyErr_Occurred())) __PYX_ERR(0, 642, __pyx_L7_error) + __pyx_t_2 = __pyx_f_4ssh2_5utils_to_str(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 642, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L6_return; } - /* "ssh2/session.pyx":641 + /* "ssh2/session.pyx":644 * return to_str(msg) * finally: * free(_error_msg) # <<<<<<<<<<<<<< @@ -11819,7 +11825,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ } } - /* "ssh2/session.pyx":623 + /* "ssh2/session.pyx":626 * return PySFTP(_sftp, self) * * def last_error(self, size_t msg_size=1024): # <<<<<<<<<<<<<< @@ -11839,7 +11845,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_56last_error(struct __pyx_obj_ return __pyx_r; } -/* "ssh2/session.pyx":643 +/* "ssh2/session.pyx":646 * free(_error_msg) * * def last_errno(self): # <<<<<<<<<<<<<< @@ -11900,7 +11906,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_58last_errno(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("last_errno", 0); - /* "ssh2/session.pyx":650 + /* "ssh2/session.pyx":653 * """ * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -11914,7 +11920,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_58last_errno(struct __pyx_obj_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":651 + /* "ssh2/session.pyx":654 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -11924,7 +11930,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_58last_errno(struct __pyx_obj_ __pyx_v_rc = libssh2_session_last_errno(__pyx_v_self->_session); } - /* "ssh2/session.pyx":650 + /* "ssh2/session.pyx":653 * """ * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -11941,7 +11947,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_58last_errno(struct __pyx_obj_ } } - /* "ssh2/session.pyx":653 + /* "ssh2/session.pyx":656 * rc = c_ssh2.libssh2_session_last_errno( * self._session) * return rc # <<<<<<<<<<<<<< @@ -11949,13 +11955,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_58last_errno(struct __pyx_obj_ * def set_last_error(self, int errcode, errmsg not None): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 653, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":643 + /* "ssh2/session.pyx":646 * free(_error_msg) * * def last_errno(self): # <<<<<<<<<<<<<< @@ -11974,7 +11980,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_58last_errno(struct __pyx_obj_ return __pyx_r; } -/* "ssh2/session.pyx":655 +/* "ssh2/session.pyx":658 * return rc * * def set_last_error(self, int errcode, errmsg not None): # <<<<<<<<<<<<<< @@ -12023,39 +12029,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_errcode,&__pyx_mstate_global->__pyx_n_u_errmsg,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 655, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 658, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 655, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 658, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 655, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 658, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "set_last_error", 0) < 0) __PYX_ERR(0, 655, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "set_last_error", 0) < 0) __PYX_ERR(0, 658, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("set_last_error", 1, 2, 2, i); __PYX_ERR(0, 655, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("set_last_error", 1, 2, 2, i); __PYX_ERR(0, 658, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 655, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 658, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 655, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 658, __pyx_L3_error) } - __pyx_v_errcode = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_errcode == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 655, __pyx_L3_error) + __pyx_v_errcode = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_errcode == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 658, __pyx_L3_error) __pyx_v_errmsg = values[1]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("set_last_error", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 655, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("set_last_error", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 658, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -12067,7 +12073,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_errmsg) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "errmsg"); __PYX_ERR(0, 655, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "errmsg"); __PYX_ERR(0, 658, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_60set_last_error(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_errcode, __pyx_v_errmsg); @@ -12101,19 +12107,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("set_last_error", 0); - /* "ssh2/session.pyx":656 + /* "ssh2/session.pyx":659 * * def set_last_error(self, int errcode, errmsg not None): * cdef bytes b_errmsg = to_bytes(errmsg) # <<<<<<<<<<<<<< * cdef char *_errmsg = b_errmsg * cdef int rc */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_errmsg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 656, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_errmsg); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_errmsg = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":657 + /* "ssh2/session.pyx":660 * def set_last_error(self, int errcode, errmsg not None): * cdef bytes b_errmsg = to_bytes(errmsg) * cdef char *_errmsg = b_errmsg # <<<<<<<<<<<<<< @@ -12122,12 +12128,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ */ if (unlikely(__pyx_v_b_errmsg == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 657, __pyx_L1_error) + __PYX_ERR(0, 660, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_errmsg); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 657, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_errmsg); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 660, __pyx_L1_error) __pyx_v__errmsg = __pyx_t_2; - /* "ssh2/session.pyx":659 + /* "ssh2/session.pyx":662 * cdef char *_errmsg = b_errmsg * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -12141,7 +12147,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":660 + /* "ssh2/session.pyx":663 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_set_last_error( # <<<<<<<<<<<<<< @@ -12151,7 +12157,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ __pyx_v_rc = libssh2_session_set_last_error(__pyx_v_self->_session, __pyx_v_errcode, __pyx_v__errmsg); } - /* "ssh2/session.pyx":659 + /* "ssh2/session.pyx":662 * cdef char *_errmsg = b_errmsg * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -12168,7 +12174,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ } } - /* "ssh2/session.pyx":662 + /* "ssh2/session.pyx":665 * rc = c_ssh2.libssh2_session_set_last_error( * self._session, errcode, _errmsg) * return rc # <<<<<<<<<<<<<< @@ -12176,13 +12182,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ * def scp_recv2(self, path not None): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 662, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 665, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":655 + /* "ssh2/session.pyx":658 * return rc * * def set_last_error(self, int errcode, errmsg not None): # <<<<<<<<<<<<<< @@ -12202,7 +12208,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_60set_last_error(struct __pyx_ return __pyx_r; } -/* "ssh2/session.pyx":664 +/* "ssh2/session.pyx":667 * return rc * * def scp_recv2(self, path not None): # <<<<<<<<<<<<<< @@ -12250,32 +12256,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_path,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 664, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 667, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 664, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 667, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "scp_recv2", 0) < 0) __PYX_ERR(0, 664, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "scp_recv2", 0) < 0) __PYX_ERR(0, 667, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("scp_recv2", 1, 1, 1, i); __PYX_ERR(0, 664, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("scp_recv2", 1, 1, 1, i); __PYX_ERR(0, 667, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 664, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 667, __pyx_L3_error) } __pyx_v_path = values[0]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("scp_recv2", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 664, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("scp_recv2", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 667, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -12287,7 +12293,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_path) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "path"); __PYX_ERR(0, 664, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "path"); __PYX_ERR(0, 667, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_62scp_recv2(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_path); @@ -12327,7 +12333,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 int __pyx_clineno = 0; __Pyx_RefNannySetupContext("scp_recv2", 0); - /* "ssh2/session.pyx":672 + /* "ssh2/session.pyx":675 * :rtype: tuple(:py:class:`ssh2.channel.Channel`, * :py:class:`ssh2.fileinfo.FileInfo`) or ``None``""" * cdef FileInfo fileinfo = FileInfo() # <<<<<<<<<<<<<< @@ -12343,25 +12349,25 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_4, (1-__pyx_t_4) | (__pyx_t_4*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 672, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 675, __pyx_L1_error) __Pyx_GOTREF((PyObject *)__pyx_t_1); } __pyx_v_fileinfo = ((struct __pyx_obj_4ssh2_8fileinfo_FileInfo *)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":673 + /* "ssh2/session.pyx":676 * :py:class:`ssh2.fileinfo.FileInfo`) or ``None``""" * cdef FileInfo fileinfo = FileInfo() * cdef bytes b_path = to_bytes(path) # <<<<<<<<<<<<<< * cdef char *_path = b_path * cdef c_ssh2.LIBSSH2_CHANNEL *channel */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 673, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_path = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":674 + /* "ssh2/session.pyx":677 * cdef FileInfo fileinfo = FileInfo() * cdef bytes b_path = to_bytes(path) * cdef char *_path = b_path # <<<<<<<<<<<<<< @@ -12370,12 +12376,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 */ if (unlikely(__pyx_v_b_path == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 674, __pyx_L1_error) + __PYX_ERR(0, 677, __pyx_L1_error) } - __pyx_t_5 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_path); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 674, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_path); if (unlikely((!__pyx_t_5) && PyErr_Occurred())) __PYX_ERR(0, 677, __pyx_L1_error) __pyx_v__path = __pyx_t_5; - /* "ssh2/session.pyx":676 + /* "ssh2/session.pyx":679 * cdef char *_path = b_path * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -12389,7 +12395,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":677 + /* "ssh2/session.pyx":680 * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: * channel = c_ssh2.libssh2_scp_recv2( # <<<<<<<<<<<<<< @@ -12399,7 +12405,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 __pyx_v_channel = libssh2_scp_recv2(__pyx_v_self->_session, __pyx_v__path, __pyx_v_fileinfo->_stat); } - /* "ssh2/session.pyx":676 + /* "ssh2/session.pyx":679 * cdef char *_path = b_path * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -12416,7 +12422,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 } } - /* "ssh2/session.pyx":679 + /* "ssh2/session.pyx":682 * channel = c_ssh2.libssh2_scp_recv2( * self._session, _path, fileinfo._stat) * if channel is NULL: # <<<<<<<<<<<<<< @@ -12426,7 +12432,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 __pyx_t_6 = (__pyx_v_channel == NULL); if (__pyx_t_6) { - /* "ssh2/session.pyx":680 + /* "ssh2/session.pyx":683 * self._session, _path, fileinfo._stat) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -12435,29 +12441,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":681 + /* "ssh2/session.pyx":684 * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyChannel(channel, self), fileinfo * */ - __pyx_t_7 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 680, __pyx_L1_error) + __pyx_t_7 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_7 == ((int)-1))) __PYX_ERR(0, 683, __pyx_L1_error) - /* "ssh2/session.pyx":680 + /* "ssh2/session.pyx":683 * self._session, _path, fileinfo._stat) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyChannel(channel, self), fileinfo */ - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 680, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":679 + /* "ssh2/session.pyx":682 * channel = c_ssh2.libssh2_scp_recv2( * self._session, _path, fileinfo._stat) * if channel is NULL: # <<<<<<<<<<<<<< @@ -12466,7 +12472,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 */ } - /* "ssh2/session.pyx":682 + /* "ssh2/session.pyx":685 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyChannel(channel, self), fileinfo # <<<<<<<<<<<<<< @@ -12474,21 +12480,21 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 * def scp_send64(self, path not None, int mode, c_ssh2.libssh2_uint64_t size, */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 682, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 682, __pyx_L1_error) + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 682, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1) != (0)) __PYX_ERR(0, 685, __pyx_L1_error); __Pyx_INCREF((PyObject *)__pyx_v_fileinfo); __Pyx_GIVEREF((PyObject *)__pyx_v_fileinfo); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_v_fileinfo)) != (0)) __PYX_ERR(0, 682, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_v_fileinfo)) != (0)) __PYX_ERR(0, 685, __pyx_L1_error); __pyx_t_1 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":664 + /* "ssh2/session.pyx":667 * return rc * * def scp_recv2(self, path not None): # <<<<<<<<<<<<<< @@ -12511,7 +12517,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_62scp_recv2(struct __pyx_obj_4 return __pyx_r; } -/* "ssh2/session.pyx":684 +/* "ssh2/session.pyx":687 * return PyChannel(channel, self), fileinfo * * def scp_send64(self, path not None, int mode, c_ssh2.libssh2_uint64_t size, # <<<<<<<<<<<<<< @@ -12563,60 +12569,60 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_path,&__pyx_mstate_global->__pyx_n_u_mode,&__pyx_mstate_global->__pyx_n_u_size,&__pyx_mstate_global->__pyx_n_u_mtime,&__pyx_mstate_global->__pyx_n_u_atime,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 684, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 687, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 5: values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 687, __pyx_L3_error) CYTHON_FALLTHROUGH; case 4: values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 687, __pyx_L3_error) CYTHON_FALLTHROUGH; case 3: values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 687, __pyx_L3_error) CYTHON_FALLTHROUGH; case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 687, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 687, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "scp_send64", 0) < 0) __PYX_ERR(0, 684, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "scp_send64", 0) < 0) __PYX_ERR(0, 687, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 5; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("scp_send64", 1, 5, 5, i); __PYX_ERR(0, 684, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("scp_send64", 1, 5, 5, i); __PYX_ERR(0, 687, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 5)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 687, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 687, __pyx_L3_error) values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 687, __pyx_L3_error) values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 687, __pyx_L3_error) values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 684, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 687, __pyx_L3_error) } __pyx_v_path = values[0]; - __pyx_v_mode = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_mode == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 684, __pyx_L3_error) - __pyx_v_size = __Pyx_PyLong_As_libssh2_uint64_t(values[2]); if (unlikely((__pyx_v_size == ((libssh2_uint64_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 684, __pyx_L3_error) - __pyx_v_mtime = __Pyx_PyLong_As_time_t(values[3]); if (unlikely((__pyx_v_mtime == ((time_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 685, __pyx_L3_error) - __pyx_v_atime = __Pyx_PyLong_As_time_t(values[4]); if (unlikely((__pyx_v_atime == ((time_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 685, __pyx_L3_error) + __pyx_v_mode = __Pyx_PyLong_As_int(values[1]); if (unlikely((__pyx_v_mode == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 687, __pyx_L3_error) + __pyx_v_size = __Pyx_PyLong_As_libssh2_uint64_t(values[2]); if (unlikely((__pyx_v_size == ((libssh2_uint64_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 687, __pyx_L3_error) + __pyx_v_mtime = __Pyx_PyLong_As_time_t(values[3]); if (unlikely((__pyx_v_mtime == ((time_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 688, __pyx_L3_error) + __pyx_v_atime = __Pyx_PyLong_As_time_t(values[4]); if (unlikely((__pyx_v_atime == ((time_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 688, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("scp_send64", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 684, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("scp_send64", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 687, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -12628,7 +12634,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return NULL; __pyx_L4_argument_unpacking_done:; if (unlikely(((PyObject *)__pyx_v_path) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "path"); __PYX_ERR(0, 684, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "path"); __PYX_ERR(0, 687, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_64scp_send64(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_path, __pyx_v_mode, __pyx_v_size, __pyx_v_mtime, __pyx_v_atime); @@ -12664,19 +12670,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("scp_send64", 0); - /* "ssh2/session.pyx":696 + /* "ssh2/session.pyx":699 * * :rtype: :py:class:`ssh2.channel.Channel`""" * cdef bytes b_path = to_bytes(path) # <<<<<<<<<<<<<< * cdef char *_path = b_path * cdef c_ssh2.LIBSSH2_CHANNEL *channel */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 696, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_path); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 699, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_path = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":697 + /* "ssh2/session.pyx":700 * :rtype: :py:class:`ssh2.channel.Channel`""" * cdef bytes b_path = to_bytes(path) * cdef char *_path = b_path # <<<<<<<<<<<<<< @@ -12685,12 +12691,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ */ if (unlikely(__pyx_v_b_path == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 697, __pyx_L1_error) + __PYX_ERR(0, 700, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_path); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 697, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsWritableString(__pyx_v_b_path); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 700, __pyx_L1_error) __pyx_v__path = __pyx_t_2; - /* "ssh2/session.pyx":699 + /* "ssh2/session.pyx":702 * cdef char *_path = b_path * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -12704,7 +12710,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":700 + /* "ssh2/session.pyx":703 * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: * channel = c_ssh2.libssh2_scp_send64( # <<<<<<<<<<<<<< @@ -12714,7 +12720,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ __pyx_v_channel = libssh2_scp_send64(__pyx_v_self->_session, __pyx_v__path, __pyx_v_mode, __pyx_v_size, __pyx_v_mtime, __pyx_v_atime); } - /* "ssh2/session.pyx":699 + /* "ssh2/session.pyx":702 * cdef char *_path = b_path * cdef c_ssh2.LIBSSH2_CHANNEL *channel * with nogil: # <<<<<<<<<<<<<< @@ -12731,7 +12737,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ } } - /* "ssh2/session.pyx":702 + /* "ssh2/session.pyx":705 * channel = c_ssh2.libssh2_scp_send64( * self._session, _path, mode, size, mtime, atime) * if channel is NULL: # <<<<<<<<<<<<<< @@ -12741,7 +12747,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ __pyx_t_3 = (__pyx_v_channel == NULL); if (__pyx_t_3) { - /* "ssh2/session.pyx":703 + /* "ssh2/session.pyx":706 * self._session, _path, mode, size, mtime, atime) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< @@ -12750,29 +12756,29 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ */ __Pyx_XDECREF(__pyx_r); - /* "ssh2/session.pyx":704 + /* "ssh2/session.pyx":707 * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) # <<<<<<<<<<<<<< * return PyChannel(channel, self) * */ - __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 703, __pyx_L1_error) + __pyx_t_4 = __pyx_f_4ssh2_5utils_handle_error_codes(libssh2_session_last_errno(__pyx_v_self->_session), 0); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 706, __pyx_L1_error) - /* "ssh2/session.pyx":703 + /* "ssh2/session.pyx":706 * self._session, _path, mode, size, mtime, atime) * if channel is NULL: * return handle_error_codes(c_ssh2.libssh2_session_last_errno( # <<<<<<<<<<<<<< * self._session)) * return PyChannel(channel, self) */ - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 703, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 706, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":702 + /* "ssh2/session.pyx":705 * channel = c_ssh2.libssh2_scp_send64( * self._session, _path, mode, size, mtime, atime) * if channel is NULL: # <<<<<<<<<<<<<< @@ -12781,7 +12787,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ */ } - /* "ssh2/session.pyx":705 + /* "ssh2/session.pyx":708 * return handle_error_codes(c_ssh2.libssh2_session_last_errno( * self._session)) * return PyChannel(channel, self) # <<<<<<<<<<<<<< @@ -12789,13 +12795,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ * def publickey_init(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 705, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_7channel_PyChannel(__pyx_v_channel, __pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 708, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":684 + /* "ssh2/session.pyx":687 * return PyChannel(channel, self), fileinfo * * def scp_send64(self, path not None, int mode, c_ssh2.libssh2_uint64_t size, # <<<<<<<<<<<<<< @@ -12815,7 +12821,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_64scp_send64(struct __pyx_obj_ return __pyx_r; } -/* "ssh2/session.pyx":707 +/* "ssh2/session.pyx":710 * return PyChannel(channel, self) * * def publickey_init(self): # <<<<<<<<<<<<<< @@ -12877,7 +12883,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("publickey_init", 0); - /* "ssh2/session.pyx":711 + /* "ssh2/session.pyx":714 * public keys""" * cdef c_pkey.LIBSSH2_PUBLICKEY *_pkey * with nogil: # <<<<<<<<<<<<<< @@ -12891,7 +12897,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":712 + /* "ssh2/session.pyx":715 * cdef c_pkey.LIBSSH2_PUBLICKEY *_pkey * with nogil: * _pkey = c_pkey.libssh2_publickey_init(self._session) # <<<<<<<<<<<<<< @@ -12901,7 +12907,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ __pyx_v__pkey = libssh2_publickey_init(__pyx_v_self->_session); } - /* "ssh2/session.pyx":711 + /* "ssh2/session.pyx":714 * public keys""" * cdef c_pkey.LIBSSH2_PUBLICKEY *_pkey * with nogil: # <<<<<<<<<<<<<< @@ -12918,7 +12924,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ } } - /* "ssh2/session.pyx":713 + /* "ssh2/session.pyx":716 * with nogil: * _pkey = c_pkey.libssh2_publickey_init(self._session) * if _pkey is NULL: # <<<<<<<<<<<<<< @@ -12928,20 +12934,20 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ __pyx_t_1 = (__pyx_v__pkey == NULL); if (unlikely(__pyx_t_1)) { - /* "ssh2/session.pyx":714 + /* "ssh2/session.pyx":717 * _pkey = c_pkey.libssh2_publickey_init(self._session) * if _pkey is NULL: * raise PublicKeyInitError # <<<<<<<<<<<<<< * return PyPublicKeySystem(_pkey, self) * */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PublicKeyInitError); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 714, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_PublicKeyInitError); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 714, __pyx_L1_error) + __PYX_ERR(0, 717, __pyx_L1_error) - /* "ssh2/session.pyx":713 + /* "ssh2/session.pyx":716 * with nogil: * _pkey = c_pkey.libssh2_publickey_init(self._session) * if _pkey is NULL: # <<<<<<<<<<<<<< @@ -12950,7 +12956,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ */ } - /* "ssh2/session.pyx":715 + /* "ssh2/session.pyx":718 * if _pkey is NULL: * raise PublicKeyInitError * return PyPublicKeySystem(_pkey, self) # <<<<<<<<<<<<<< @@ -12958,13 +12964,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ * def hostkey_hash(self, int hash_type): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_4ssh2_9publickey_PyPublicKeySystem(__pyx_v__pkey, __pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 715, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_9publickey_PyPublicKeySystem(__pyx_v__pkey, __pyx_v_self); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":707 + /* "ssh2/session.pyx":710 * return PyChannel(channel, self) * * def publickey_init(self): # <<<<<<<<<<<<<< @@ -12983,7 +12989,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_66publickey_init(struct __pyx_ return __pyx_r; } -/* "ssh2/session.pyx":717 +/* "ssh2/session.pyx":720 * return PyPublicKeySystem(_pkey, self) * * def hostkey_hash(self, int hash_type): # <<<<<<<<<<<<<< @@ -13031,32 +13037,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_hash_type,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 717, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 720, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 717, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 720, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "hostkey_hash", 0) < 0) __PYX_ERR(0, 717, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "hostkey_hash", 0) < 0) __PYX_ERR(0, 720, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("hostkey_hash", 1, 1, 1, i); __PYX_ERR(0, 717, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("hostkey_hash", 1, 1, 1, i); __PYX_ERR(0, 720, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 717, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 720, __pyx_L3_error) } - __pyx_v_hash_type = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_hash_type == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 717, __pyx_L3_error) + __pyx_v_hash_type = __Pyx_PyLong_As_int(values[0]); if (unlikely((__pyx_v_hash_type == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 720, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("hostkey_hash", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 717, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("hostkey_hash", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 720, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -13089,7 +13095,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob int __pyx_clineno = 0; __Pyx_RefNannySetupContext("hostkey_hash", 0); - /* "ssh2/session.pyx":727 + /* "ssh2/session.pyx":730 * cdef const char *_hash * cdef bytes b_hash * with nogil: # <<<<<<<<<<<<<< @@ -13103,7 +13109,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":728 + /* "ssh2/session.pyx":731 * cdef bytes b_hash * with nogil: * _hash = c_ssh2.libssh2_hostkey_hash(self._session, hash_type) # <<<<<<<<<<<<<< @@ -13113,7 +13119,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob __pyx_v__hash = libssh2_hostkey_hash(__pyx_v_self->_session, __pyx_v_hash_type); } - /* "ssh2/session.pyx":727 + /* "ssh2/session.pyx":730 * cdef const char *_hash * cdef bytes b_hash * with nogil: # <<<<<<<<<<<<<< @@ -13130,7 +13136,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob } } - /* "ssh2/session.pyx":729 + /* "ssh2/session.pyx":732 * with nogil: * _hash = c_ssh2.libssh2_hostkey_hash(self._session, hash_type) * if _hash is NULL: # <<<<<<<<<<<<<< @@ -13140,7 +13146,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob __pyx_t_1 = (__pyx_v__hash == NULL); if (__pyx_t_1) { - /* "ssh2/session.pyx":730 + /* "ssh2/session.pyx":733 * _hash = c_ssh2.libssh2_hostkey_hash(self._session, hash_type) * if _hash is NULL: * return # <<<<<<<<<<<<<< @@ -13151,7 +13157,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; - /* "ssh2/session.pyx":729 + /* "ssh2/session.pyx":732 * with nogil: * _hash = c_ssh2.libssh2_hostkey_hash(self._session, hash_type) * if _hash is NULL: # <<<<<<<<<<<<<< @@ -13160,19 +13166,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob */ } - /* "ssh2/session.pyx":731 + /* "ssh2/session.pyx":734 * if _hash is NULL: * return * b_hash = _hash # <<<<<<<<<<<<<< * return b_hash * */ - __pyx_t_2 = __Pyx_PyBytes_FromString(__pyx_v__hash); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 731, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_FromString(__pyx_v__hash); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 734, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_v_b_hash = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "ssh2/session.pyx":732 + /* "ssh2/session.pyx":735 * return * b_hash = _hash * return b_hash # <<<<<<<<<<<<<< @@ -13184,7 +13190,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob __pyx_r = __pyx_v_b_hash; goto __pyx_L0; - /* "ssh2/session.pyx":717 + /* "ssh2/session.pyx":720 * return PyPublicKeySystem(_pkey, self) * * def hostkey_hash(self, int hash_type): # <<<<<<<<<<<<<< @@ -13204,7 +13210,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_68hostkey_hash(struct __pyx_ob return __pyx_r; } -/* "ssh2/session.pyx":734 +/* "ssh2/session.pyx":737 * return b_hash * * def hostkey(self): # <<<<<<<<<<<<<< @@ -13272,7 +13278,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss int __pyx_clineno = 0; __Pyx_RefNannySetupContext("hostkey", 0); - /* "ssh2/session.pyx":743 + /* "ssh2/session.pyx":746 * * :rtype: tuple(bytes, int)""" * cdef bytes key = b"" # <<<<<<<<<<<<<< @@ -13282,7 +13288,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss __Pyx_INCREF(__pyx_mstate_global->__pyx_kp_b__2); __pyx_v_key = __pyx_mstate_global->__pyx_kp_b__2; - /* "ssh2/session.pyx":745 + /* "ssh2/session.pyx":748 * cdef bytes key = b"" * cdef const char *_key * cdef size_t key_len = 0 # <<<<<<<<<<<<<< @@ -13291,7 +13297,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss */ __pyx_v_key_len = 0; - /* "ssh2/session.pyx":746 + /* "ssh2/session.pyx":749 * cdef const char *_key * cdef size_t key_len = 0 * cdef int key_type = 0 # <<<<<<<<<<<<<< @@ -13300,7 +13306,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss */ __pyx_v_key_type = 0; - /* "ssh2/session.pyx":747 + /* "ssh2/session.pyx":750 * cdef size_t key_len = 0 * cdef int key_type = 0 * with nogil: # <<<<<<<<<<<<<< @@ -13314,7 +13320,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":748 + /* "ssh2/session.pyx":751 * cdef int key_type = 0 * with nogil: * _key = c_ssh2.libssh2_session_hostkey( # <<<<<<<<<<<<<< @@ -13324,7 +13330,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss __pyx_v__key = libssh2_session_hostkey(__pyx_v_self->_session, (&__pyx_v_key_len), (&__pyx_v_key_type)); } - /* "ssh2/session.pyx":747 + /* "ssh2/session.pyx":750 * cdef size_t key_len = 0 * cdef int key_type = 0 * with nogil: # <<<<<<<<<<<<<< @@ -13341,7 +13347,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss } } - /* "ssh2/session.pyx":750 + /* "ssh2/session.pyx":753 * _key = c_ssh2.libssh2_session_hostkey( * self._session, &key_len, &key_type) * if _key is NULL: # <<<<<<<<<<<<<< @@ -13351,7 +13357,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss __pyx_t_1 = (__pyx_v__key == NULL); if (unlikely(__pyx_t_1)) { - /* "ssh2/session.pyx":751 + /* "ssh2/session.pyx":754 * self._session, &key_len, &key_type) * if _key is NULL: * raise SessionHostKeyError( # <<<<<<<<<<<<<< @@ -13359,7 +13365,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss * key = _key[:key_len] */ __pyx_t_3 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_SessionHostKeyError); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 751, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_SessionHostKeyError); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = 1; #if CYTHON_UNPACK_METHODS @@ -13378,14 +13384,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (2-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 751, __pyx_L1_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); } __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 751, __pyx_L1_error) + __PYX_ERR(0, 754, __pyx_L1_error) - /* "ssh2/session.pyx":750 + /* "ssh2/session.pyx":753 * _key = c_ssh2.libssh2_session_hostkey( * self._session, &key_len, &key_type) * if _key is NULL: # <<<<<<<<<<<<<< @@ -13394,19 +13400,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss */ } - /* "ssh2/session.pyx":753 + /* "ssh2/session.pyx":756 * raise SessionHostKeyError( * "Error retrieving server host key for session") * key = _key[:key_len] # <<<<<<<<<<<<<< * return key, key_type * */ - __pyx_t_2 = __Pyx_PyBytes_FromStringAndSize(__pyx_v__key + 0, __pyx_v_key_len - 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 753, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_FromStringAndSize(__pyx_v__key + 0, __pyx_v_key_len - 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF_SET(__pyx_v_key, ((PyObject*)__pyx_t_2)); __pyx_t_2 = 0; - /* "ssh2/session.pyx":754 + /* "ssh2/session.pyx":757 * "Error retrieving server host key for session") * key = _key[:key_len] * return key, key_type # <<<<<<<<<<<<<< @@ -13414,21 +13420,21 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss * def knownhost_init(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_key_type); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 754, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_key_type); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 754, __pyx_L1_error) + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v_key); __Pyx_GIVEREF(__pyx_v_key); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_key) != (0)) __PYX_ERR(0, 754, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_key) != (0)) __PYX_ERR(0, 757, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2) != (0)) __PYX_ERR(0, 754, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2) != (0)) __PYX_ERR(0, 757, __pyx_L1_error); __pyx_t_2 = 0; __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":734 + /* "ssh2/session.pyx":737 * return b_hash * * def hostkey(self): # <<<<<<<<<<<<<< @@ -13450,7 +13456,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_70hostkey(struct __pyx_obj_4ss return __pyx_r; } -/* "ssh2/session.pyx":756 +/* "ssh2/session.pyx":759 * return key, key_type * * def knownhost_init(self): # <<<<<<<<<<<<<< @@ -13512,7 +13518,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("knownhost_init", 0); - /* "ssh2/session.pyx":761 + /* "ssh2/session.pyx":764 * :rtype: :py:class:`ssh2.knownhost.KnownHost`""" * cdef c_ssh2.LIBSSH2_KNOWNHOSTS *known_hosts * with nogil: # <<<<<<<<<<<<<< @@ -13526,7 +13532,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":762 + /* "ssh2/session.pyx":765 * cdef c_ssh2.LIBSSH2_KNOWNHOSTS *known_hosts * with nogil: * known_hosts = c_ssh2.libssh2_knownhost_init( # <<<<<<<<<<<<<< @@ -13536,7 +13542,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ __pyx_v_known_hosts = libssh2_knownhost_init(__pyx_v_self->_session); } - /* "ssh2/session.pyx":761 + /* "ssh2/session.pyx":764 * :rtype: :py:class:`ssh2.knownhost.KnownHost`""" * cdef c_ssh2.LIBSSH2_KNOWNHOSTS *known_hosts * with nogil: # <<<<<<<<<<<<<< @@ -13553,7 +13559,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ } } - /* "ssh2/session.pyx":764 + /* "ssh2/session.pyx":767 * known_hosts = c_ssh2.libssh2_knownhost_init( * self._session) * if known_hosts is NULL: # <<<<<<<<<<<<<< @@ -13563,20 +13569,20 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ __pyx_t_1 = (__pyx_v_known_hosts == NULL); if (unlikely(__pyx_t_1)) { - /* "ssh2/session.pyx":765 + /* "ssh2/session.pyx":768 * self._session) * if known_hosts is NULL: * raise KnownHostError # <<<<<<<<<<<<<< * return PyKnownHost(self, known_hosts) * */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KnownHostError); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 765, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_KnownHostError); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_Raise(__pyx_t_2, 0, 0, 0); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(0, 765, __pyx_L1_error) + __PYX_ERR(0, 768, __pyx_L1_error) - /* "ssh2/session.pyx":764 + /* "ssh2/session.pyx":767 * known_hosts = c_ssh2.libssh2_knownhost_init( * self._session) * if known_hosts is NULL: # <<<<<<<<<<<<<< @@ -13585,7 +13591,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ */ } - /* "ssh2/session.pyx":766 + /* "ssh2/session.pyx":769 * if known_hosts is NULL: * raise KnownHostError * return PyKnownHost(self, known_hosts) # <<<<<<<<<<<<<< @@ -13593,13 +13599,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ * def keepalive_config(self, bint want_reply, unsigned interval): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = ((PyObject *)__pyx_f_4ssh2_9knownhost_PyKnownHost(__pyx_v_self, __pyx_v_known_hosts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 766, __pyx_L1_error) + __pyx_t_2 = ((PyObject *)__pyx_f_4ssh2_9knownhost_PyKnownHost(__pyx_v_self, __pyx_v_known_hosts)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":756 + /* "ssh2/session.pyx":759 * return key, key_type * * def knownhost_init(self): # <<<<<<<<<<<<<< @@ -13618,7 +13624,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_72knownhost_init(struct __pyx_ return __pyx_r; } -/* "ssh2/session.pyx":768 +/* "ssh2/session.pyx":771 * return PyKnownHost(self, known_hosts) * * def keepalive_config(self, bint want_reply, unsigned interval): # <<<<<<<<<<<<<< @@ -13667,39 +13673,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_want_reply,&__pyx_mstate_global->__pyx_n_u_interval,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 768, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 771, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 768, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 771, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 768, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 771, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "keepalive_config", 0) < 0) __PYX_ERR(0, 768, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "keepalive_config", 0) < 0) __PYX_ERR(0, 771, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("keepalive_config", 1, 2, 2, i); __PYX_ERR(0, 768, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("keepalive_config", 1, 2, 2, i); __PYX_ERR(0, 771, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 768, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 771, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 768, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 771, __pyx_L3_error) } - __pyx_v_want_reply = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_want_reply == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 768, __pyx_L3_error) - __pyx_v_interval = __Pyx_PyLong_As_unsigned_int(values[1]); if (unlikely((__pyx_v_interval == (unsigned int)-1) && PyErr_Occurred())) __PYX_ERR(0, 768, __pyx_L3_error) + __pyx_v_want_reply = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_want_reply == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 771, __pyx_L3_error) + __pyx_v_interval = __Pyx_PyLong_As_unsigned_int(values[1]); if (unlikely((__pyx_v_interval == (unsigned int)-1) && PyErr_Occurred())) __PYX_ERR(0, 771, __pyx_L3_error) } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("keepalive_config", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 768, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("keepalive_config", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 771, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -13725,7 +13731,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_74keepalive_config(struct __py __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("keepalive_config", 0); - /* "ssh2/session.pyx":778 + /* "ssh2/session.pyx":781 * keepalives. * :type interval: int""" * with nogil: # <<<<<<<<<<<<<< @@ -13739,7 +13745,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_74keepalive_config(struct __py __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":779 + /* "ssh2/session.pyx":782 * :type interval: int""" * with nogil: * c_ssh2.libssh2_keepalive_config(self._session, want_reply, interval) # <<<<<<<<<<<<<< @@ -13749,7 +13755,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_74keepalive_config(struct __py libssh2_keepalive_config(__pyx_v_self->_session, __pyx_v_want_reply, __pyx_v_interval); } - /* "ssh2/session.pyx":778 + /* "ssh2/session.pyx":781 * keepalives. * :type interval: int""" * with nogil: # <<<<<<<<<<<<<< @@ -13766,7 +13772,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_74keepalive_config(struct __py } } - /* "ssh2/session.pyx":768 + /* "ssh2/session.pyx":771 * return PyKnownHost(self, known_hosts) * * def keepalive_config(self, bint want_reply, unsigned interval): # <<<<<<<<<<<<<< @@ -13781,7 +13787,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_74keepalive_config(struct __py return __pyx_r; } -/* "ssh2/session.pyx":781 +/* "ssh2/session.pyx":784 * c_ssh2.libssh2_keepalive_config(self._session, want_reply, interval) * * def keepalive_send(self): # <<<<<<<<<<<<<< @@ -13845,7 +13851,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("keepalive_send", 0); - /* "ssh2/session.pyx":787 + /* "ssh2/session.pyx":790 * * :rtype: int""" * cdef int seconds = 0 # <<<<<<<<<<<<<< @@ -13854,7 +13860,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ */ __pyx_v_seconds = 0; - /* "ssh2/session.pyx":788 + /* "ssh2/session.pyx":791 * :rtype: int""" * cdef int seconds = 0 * cdef int c_seconds = 0 # <<<<<<<<<<<<<< @@ -13863,7 +13869,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ */ __pyx_v_c_seconds = 0; - /* "ssh2/session.pyx":790 + /* "ssh2/session.pyx":793 * cdef int c_seconds = 0 * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -13877,7 +13883,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":791 + /* "ssh2/session.pyx":794 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_keepalive_send(self._session, &c_seconds) # <<<<<<<<<<<<<< @@ -13887,7 +13893,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ __pyx_v_rc = libssh2_keepalive_send(__pyx_v_self->_session, (&__pyx_v_c_seconds)); } - /* "ssh2/session.pyx":790 + /* "ssh2/session.pyx":793 * cdef int c_seconds = 0 * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -13904,16 +13910,16 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ } } - /* "ssh2/session.pyx":792 + /* "ssh2/session.pyx":795 * with nogil: * rc = c_ssh2.libssh2_keepalive_send(self._session, &c_seconds) * handle_error_codes(rc) # <<<<<<<<<<<<<< * return c_seconds * */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 792, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 795, __pyx_L1_error) - /* "ssh2/session.pyx":793 + /* "ssh2/session.pyx":796 * rc = c_ssh2.libssh2_keepalive_send(self._session, &c_seconds) * handle_error_codes(rc) * return c_seconds # <<<<<<<<<<<<<< @@ -13921,13 +13927,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ * def supported_algs(self, MethodType method_type): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_c_seconds); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 793, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyLong_From_int(__pyx_v_c_seconds); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":781 + /* "ssh2/session.pyx":784 * c_ssh2.libssh2_keepalive_config(self._session, want_reply, interval) * * def keepalive_send(self): # <<<<<<<<<<<<<< @@ -13946,7 +13952,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_76keepalive_send(struct __pyx_ return __pyx_r; } -/* "ssh2/session.pyx":795 +/* "ssh2/session.pyx":798 * return c_seconds * * def supported_algs(self, MethodType method_type): # <<<<<<<<<<<<<< @@ -13994,32 +14000,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_method_type,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 795, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 798, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 795, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 798, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "supported_algs", 0) < 0) __PYX_ERR(0, 795, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "supported_algs", 0) < 0) __PYX_ERR(0, 798, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("supported_algs", 1, 1, 1, i); __PYX_ERR(0, 795, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("supported_algs", 1, 1, 1, i); __PYX_ERR(0, 798, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 795, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 798, __pyx_L3_error) } __pyx_v_method_type = ((struct __pyx_obj_4ssh2_7session_MethodType *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("supported_algs", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 795, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("supported_algs", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 798, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -14030,7 +14036,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_method_type), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_MethodType, 1, "method_type", 0))) __PYX_ERR(0, 795, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_method_type), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_MethodType, 1, "method_type", 0))) __PYX_ERR(0, 798, __pyx_L1_error) __pyx_r = __pyx_pf_4ssh2_7session_7Session_78supported_algs(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_method_type); /* function exit code */ @@ -14075,7 +14081,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ int __pyx_clineno = 0; __Pyx_RefNannySetupContext("supported_algs", 0); - /* "ssh2/session.pyx":806 + /* "ssh2/session.pyx":809 * cdef const char **c_algs * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -14089,7 +14095,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":807 + /* "ssh2/session.pyx":810 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_supported_algs( # <<<<<<<<<<<<<< @@ -14099,7 +14105,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __pyx_v_rc = libssh2_session_supported_algs(__pyx_v_self->_session, __pyx_v_method_type->value, (&__pyx_v_c_algs)); } - /* "ssh2/session.pyx":806 + /* "ssh2/session.pyx":809 * cdef const char **c_algs * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -14116,7 +14122,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ } } - /* "ssh2/session.pyx":809 + /* "ssh2/session.pyx":812 * rc = c_ssh2.libssh2_session_supported_algs( * self._session, method_type.value, &c_algs) * if rc < 0: # <<<<<<<<<<<<<< @@ -14126,7 +14132,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __pyx_t_1 = (__pyx_v_rc < 0); if (__pyx_t_1) { - /* "ssh2/session.pyx":810 + /* "ssh2/session.pyx":813 * self._session, method_type.value, &c_algs) * if rc < 0: * return handle_error_codes(rc) # <<<<<<<<<<<<<< @@ -14134,14 +14140,14 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ * return [] */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 810, __pyx_L1_error) - __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 810, __pyx_L1_error) + __pyx_t_2 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 813, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyLong_From_int(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":809 + /* "ssh2/session.pyx":812 * rc = c_ssh2.libssh2_session_supported_algs( * self._session, method_type.value, &c_algs) * if rc < 0: # <<<<<<<<<<<<<< @@ -14150,7 +14156,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ */ } - /* "ssh2/session.pyx":811 + /* "ssh2/session.pyx":814 * if rc < 0: * return handle_error_codes(rc) * elif rc == 0: # <<<<<<<<<<<<<< @@ -14160,7 +14166,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __pyx_t_1 = (__pyx_v_rc == 0); if (__pyx_t_1) { - /* "ssh2/session.pyx":812 + /* "ssh2/session.pyx":815 * return handle_error_codes(rc) * elif rc == 0: * return [] # <<<<<<<<<<<<<< @@ -14168,13 +14174,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ * algs = [to_str(c_algs[i]) for i in range(rc)] */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 812, __pyx_L1_error) + __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 815, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":811 + /* "ssh2/session.pyx":814 * if rc < 0: * return handle_error_codes(rc) * elif rc == 0: # <<<<<<<<<<<<<< @@ -14183,7 +14189,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ */ } - /* "ssh2/session.pyx":813 + /* "ssh2/session.pyx":816 * elif rc == 0: * return [] * try: # <<<<<<<<<<<<<< @@ -14192,7 +14198,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ */ /*try:*/ { - /* "ssh2/session.pyx":814 + /* "ssh2/session.pyx":817 * return [] * try: * algs = [to_str(c_algs[i]) for i in range(rc)] # <<<<<<<<<<<<<< @@ -14200,15 +14206,15 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ * with nogil: */ { /* enter inner scope */ - __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 814, __pyx_L8_error) + __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 817, __pyx_L8_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __pyx_v_rc; __pyx_t_4 = __pyx_t_2; for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) { __pyx_7genexpr__pyx_v_i = __pyx_t_5; - __pyx_t_6 = __pyx_f_4ssh2_5utils_to_str((__pyx_v_c_algs[__pyx_7genexpr__pyx_v_i])); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 814, __pyx_L8_error) + __pyx_t_6 = __pyx_f_4ssh2_5utils_to_str((__pyx_v_c_algs[__pyx_7genexpr__pyx_v_i])); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 817, __pyx_L8_error) __Pyx_GOTREF(__pyx_t_6); - if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_6))) __PYX_ERR(0, 814, __pyx_L8_error) + if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_6))) __PYX_ERR(0, 817, __pyx_L8_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } } /* exit inner scope */ @@ -14216,7 +14222,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __pyx_t_3 = 0; } - /* "ssh2/session.pyx":816 + /* "ssh2/session.pyx":819 * algs = [to_str(c_algs[i]) for i in range(rc)] * finally: * with nogil: # <<<<<<<<<<<<<< @@ -14232,7 +14238,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":817 + /* "ssh2/session.pyx":820 * finally: * with nogil: * c_ssh2.libssh2_free(self._session, c_algs) # <<<<<<<<<<<<<< @@ -14242,7 +14248,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ libssh2_free(__pyx_v_self->_session, __pyx_v_c_algs); } - /* "ssh2/session.pyx":816 + /* "ssh2/session.pyx":819 * algs = [to_str(c_algs[i]) for i in range(rc)] * finally: * with nogil: # <<<<<<<<<<<<<< @@ -14284,7 +14290,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":817 + /* "ssh2/session.pyx":820 * finally: * with nogil: * c_ssh2.libssh2_free(self._session, c_algs) # <<<<<<<<<<<<<< @@ -14294,7 +14300,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ libssh2_free(__pyx_v_self->_session, __pyx_v_c_algs); } - /* "ssh2/session.pyx":816 + /* "ssh2/session.pyx":819 * algs = [to_str(c_algs[i]) for i in range(rc)] * finally: * with nogil: # <<<<<<<<<<<<<< @@ -14326,7 +14332,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __pyx_L9:; } - /* "ssh2/session.pyx":818 + /* "ssh2/session.pyx":821 * with nogil: * c_ssh2.libssh2_free(self._session, c_algs) * return algs # <<<<<<<<<<<<<< @@ -14338,7 +14344,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ __pyx_r = __pyx_v_algs; goto __pyx_L0; - /* "ssh2/session.pyx":795 + /* "ssh2/session.pyx":798 * return c_seconds * * def supported_algs(self, MethodType method_type): # <<<<<<<<<<<<<< @@ -14359,7 +14365,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_78supported_algs(struct __pyx_ return __pyx_r; } -/* "ssh2/session.pyx":820 +/* "ssh2/session.pyx":823 * return algs * * def methods(self, MethodType method_type): # <<<<<<<<<<<<<< @@ -14407,32 +14413,32 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_method_type,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 820, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 823, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 820, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 823, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "methods", 0) < 0) __PYX_ERR(0, 820, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "methods", 0) < 0) __PYX_ERR(0, 823, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 1; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("methods", 1, 1, 1, i); __PYX_ERR(0, 820, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("methods", 1, 1, 1, i); __PYX_ERR(0, 823, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 820, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 823, __pyx_L3_error) } __pyx_v_method_type = ((struct __pyx_obj_4ssh2_7session_MethodType *)values[0]); } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("methods", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 820, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("methods", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 823, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -14443,7 +14449,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_method_type), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_MethodType, 1, "method_type", 0))) __PYX_ERR(0, 820, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_method_type), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_MethodType, 1, "method_type", 0))) __PYX_ERR(0, 823, __pyx_L1_error) __pyx_r = __pyx_pf_4ssh2_7session_7Session_80methods(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_method_type); /* function exit code */ @@ -14475,18 +14481,18 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss int __pyx_clineno = 0; __Pyx_RefNannySetupContext("methods", 0); - /* "ssh2/session.pyx":828 + /* "ssh2/session.pyx":831 * :rtype: str * """ * if not self.sock: # <<<<<<<<<<<<<< * return * with nogil: */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->sock); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 828, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_self->sock); if (unlikely((__pyx_t_1 < 0))) __PYX_ERR(0, 831, __pyx_L1_error) __pyx_t_2 = (!__pyx_t_1); if (__pyx_t_2) { - /* "ssh2/session.pyx":829 + /* "ssh2/session.pyx":832 * """ * if not self.sock: * return # <<<<<<<<<<<<<< @@ -14497,7 +14503,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; - /* "ssh2/session.pyx":828 + /* "ssh2/session.pyx":831 * :rtype: str * """ * if not self.sock: # <<<<<<<<<<<<<< @@ -14506,7 +14512,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss */ } - /* "ssh2/session.pyx":830 + /* "ssh2/session.pyx":833 * if not self.sock: * return * with nogil: # <<<<<<<<<<<<<< @@ -14520,7 +14526,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":831 + /* "ssh2/session.pyx":834 * return * with nogil: * methods = c_ssh2.libssh2_session_methods( # <<<<<<<<<<<<<< @@ -14530,7 +14536,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss __pyx_v_methods = libssh2_session_methods(__pyx_v_self->_session, __pyx_v_method_type->value); } - /* "ssh2/session.pyx":830 + /* "ssh2/session.pyx":833 * if not self.sock: * return * with nogil: # <<<<<<<<<<<<<< @@ -14547,7 +14553,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss } } - /* "ssh2/session.pyx":833 + /* "ssh2/session.pyx":836 * methods = c_ssh2.libssh2_session_methods( * self._session, method_type.value) * return to_str(methods) # <<<<<<<<<<<<<< @@ -14555,13 +14561,13 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss * def method_pref(self, MethodType method_type, prefs not None): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __pyx_f_4ssh2_5utils_to_str(__pyx_v_methods); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 833, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5utils_to_str(__pyx_v_methods); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 836, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":820 + /* "ssh2/session.pyx":823 * return algs * * def methods(self, MethodType method_type): # <<<<<<<<<<<<<< @@ -14580,7 +14586,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_80methods(struct __pyx_obj_4ss return __pyx_r; } -/* "ssh2/session.pyx":835 +/* "ssh2/session.pyx":838 * return to_str(methods) * * def method_pref(self, MethodType method_type, prefs not None): # <<<<<<<<<<<<<< @@ -14629,39 +14635,39 @@ PyObject *__pyx_args, PyObject *__pyx_kwds { PyObject ** const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_method_type,&__pyx_mstate_global->__pyx_n_u_prefs,0}; const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0; - if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 835, __pyx_L3_error) + if (unlikely(__pyx_kwds_len) < 0) __PYX_ERR(0, 838, __pyx_L3_error) if (__pyx_kwds_len > 0) { switch (__pyx_nargs) { case 2: values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 835, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 838, __pyx_L3_error) CYTHON_FALLTHROUGH; case 1: values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 835, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 838, __pyx_L3_error) CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "method_pref", 0) < 0) __PYX_ERR(0, 835, __pyx_L3_error) + if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len, "method_pref", 0) < 0) __PYX_ERR(0, 838, __pyx_L3_error) for (Py_ssize_t i = __pyx_nargs; i < 2; i++) { - if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("method_pref", 1, 2, 2, i); __PYX_ERR(0, 835, __pyx_L3_error) } + if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid("method_pref", 1, 2, 2, i); __PYX_ERR(0, 838, __pyx_L3_error) } } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; } else { values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 835, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 838, __pyx_L3_error) values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1); - if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 835, __pyx_L3_error) + if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 838, __pyx_L3_error) } __pyx_v_method_type = ((struct __pyx_obj_4ssh2_7session_MethodType *)values[0]); __pyx_v_prefs = values[1]; } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("method_pref", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 835, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("method_pref", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 838, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -14672,9 +14678,9 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_method_type), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_MethodType, 1, "method_type", 0))) __PYX_ERR(0, 835, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_method_type), __pyx_mstate_global->__pyx_ptype_4ssh2_7session_MethodType, 1, "method_type", 0))) __PYX_ERR(0, 838, __pyx_L1_error) if (unlikely(((PyObject *)__pyx_v_prefs) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "prefs"); __PYX_ERR(0, 835, __pyx_L1_error) + PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "prefs"); __PYX_ERR(0, 838, __pyx_L1_error) } __pyx_r = __pyx_pf_4ssh2_7session_7Session_82method_pref(((struct __pyx_obj_4ssh2_7session_Session *)__pyx_v_self), __pyx_v_method_type, __pyx_v_prefs); @@ -14709,19 +14715,19 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_82method_pref(struct __pyx_obj int __pyx_clineno = 0; __Pyx_RefNannySetupContext("method_pref", 0); - /* "ssh2/session.pyx":850 + /* "ssh2/session.pyx":853 * on unsupported method preference * """ * cdef bytes b_prefs = to_bytes(prefs) # <<<<<<<<<<<<<< * cdef const char *c_prefs = b_prefs * cdef int rc */ - __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_prefs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 850, __pyx_L1_error) + __pyx_t_1 = __pyx_f_4ssh2_5utils_to_bytes(__pyx_v_prefs); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_b_prefs = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "ssh2/session.pyx":851 + /* "ssh2/session.pyx":854 * """ * cdef bytes b_prefs = to_bytes(prefs) * cdef const char *c_prefs = b_prefs # <<<<<<<<<<<<<< @@ -14730,12 +14736,12 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_82method_pref(struct __pyx_obj */ if (unlikely(__pyx_v_b_prefs == Py_None)) { PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(0, 851, __pyx_L1_error) + __PYX_ERR(0, 854, __pyx_L1_error) } - __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_prefs); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 851, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyBytes_AsString(__pyx_v_b_prefs); if (unlikely((!__pyx_t_2) && PyErr_Occurred())) __PYX_ERR(0, 854, __pyx_L1_error) __pyx_v_c_prefs = __pyx_t_2; - /* "ssh2/session.pyx":853 + /* "ssh2/session.pyx":856 * cdef const char *c_prefs = b_prefs * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -14749,7 +14755,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_82method_pref(struct __pyx_obj __Pyx_FastGIL_Remember(); /*try:*/ { - /* "ssh2/session.pyx":854 + /* "ssh2/session.pyx":857 * cdef int rc * with nogil: * rc = c_ssh2.libssh2_session_method_pref( # <<<<<<<<<<<<<< @@ -14759,7 +14765,7 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_82method_pref(struct __pyx_obj __pyx_v_rc = libssh2_session_method_pref(__pyx_v_self->_session, __pyx_v_method_type->value, __pyx_v_c_prefs); } - /* "ssh2/session.pyx":853 + /* "ssh2/session.pyx":856 * cdef const char *c_prefs = b_prefs * cdef int rc * with nogil: # <<<<<<<<<<<<<< @@ -14776,27 +14782,27 @@ static PyObject *__pyx_pf_4ssh2_7session_7Session_82method_pref(struct __pyx_obj } } - /* "ssh2/session.pyx":856 + /* "ssh2/session.pyx":859 * rc = c_ssh2.libssh2_session_method_pref( * self._session, method_type.value, c_prefs) * handle_error_codes(rc) # <<<<<<<<<<<<<< * return rc */ - __pyx_t_3 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 856, __pyx_L1_error) + __pyx_t_3 = __pyx_f_4ssh2_5utils_handle_error_codes(__pyx_v_rc, 0); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 859, __pyx_L1_error) - /* "ssh2/session.pyx":857 + /* "ssh2/session.pyx":860 * self._session, method_type.value, c_prefs) * handle_error_codes(rc) * return rc # <<<<<<<<<<<<<< */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 857, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyLong_From_int(__pyx_v_rc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - /* "ssh2/session.pyx":835 + /* "ssh2/session.pyx":838 * return to_str(methods) * * def method_pref(self, MethodType method_type, prefs not None): # <<<<<<<<<<<<<< @@ -15817,23 +15823,23 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_4ssh2_7session_Session = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_4ssh2_7session_Session_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_4ssh2_7session_Session)) __PYX_ERR(0, 116, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_4ssh2_7session_Session_spec, __pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 116, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_4ssh2_7session_Session = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_4ssh2_7session_Session_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_4ssh2_7session_Session)) __PYX_ERR(0, 119, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_4ssh2_7session_Session_spec, __pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 119, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_4ssh2_7session_Session = &__pyx_type_4ssh2_7session_Session; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 116, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 119, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_4ssh2_7session_Session->tp_dictoffset && __pyx_mstate->__pyx_ptype_4ssh2_7session_Session->tp_getattro == PyObject_GenericGetAttr)) { __pyx_mstate->__pyx_ptype_4ssh2_7session_Session->tp_getattro = PyObject_GenericGetAttr; } #endif - if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Session, (PyObject *) __pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 116, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 116, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_Session, (PyObject *) __pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 119, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_4ssh2_7session_Session) < 0) __PYX_ERR(0, 119, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS __pyx_mstate->__pyx_ptype_4ssh2_7session_MethodType = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_4ssh2_7session_MethodType_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_4ssh2_7session_MethodType)) __PYX_ERR(0, 58, __pyx_L1_error) if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_4ssh2_7session_MethodType_spec, __pyx_mstate->__pyx_ptype_4ssh2_7session_MethodType) < 0) __PYX_ERR(0, 58, __pyx_L1_error) @@ -15871,15 +15877,15 @@ static int __Pyx_modinit_type_init_code(__pyx_mstatetype *__pyx_mstate) { if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_FlagType, (PyObject *) __pyx_mstate->__pyx_ptype_4ssh2_7session_FlagType) < 0) __PYX_ERR(0, 76, __pyx_L1_error) if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_4ssh2_7session_FlagType) < 0) __PYX_ERR(0, 76, __pyx_L1_error) #if CYTHON_USE_TYPE_SPECS - __pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_4ssh2_7session___pyx_defaults_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults)) __PYX_ERR(0, 336, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_4ssh2_7session___pyx_defaults_spec, __pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults) < 0) __PYX_ERR(0, 336, __pyx_L1_error) + __pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_4ssh2_7session___pyx_defaults_spec, NULL); if (unlikely(!__pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults)) __PYX_ERR(0, 339, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_4ssh2_7session___pyx_defaults_spec, __pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults) < 0) __PYX_ERR(0, 339, __pyx_L1_error) #else __pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults = &__pyx_type_4ssh2_7session___pyx_defaults; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults) < 0) __PYX_ERR(0, 336, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults) < 0) __PYX_ERR(0, 339, __pyx_L1_error) #endif #if !CYTHON_COMPILING_IN_LIMITED_API if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults->tp_dictoffset && __pyx_mstate->__pyx_ptype_4ssh2_7session___pyx_defaults->tp_getattro == PyObject_GenericGetAttr)) { @@ -16856,7 +16862,7 @@ __Pyx_RefNannySetupContext("PyInit_session", 0); * * LIBSSH2_FLAG_SIGPIPE = FlagType(c_ssh2.LIBSSH2_FLAG_SIGPIPE) # <<<<<<<<<<<<<< * LIBSSH2_FLAG_COMPRESS = FlagType(c_ssh2.LIBSSH2_FLAG_COMPRESS) - * + * LIBSSH2_FLAG_QUOTE_PATHS = FlagType(c_ssh2.LIBSSH2_FLAG_QUOTE_PATHS) */ __pyx_t_4 = NULL; __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); @@ -16880,8 +16886,8 @@ __Pyx_RefNannySetupContext("PyInit_session", 0); * * LIBSSH2_FLAG_SIGPIPE = FlagType(c_ssh2.LIBSSH2_FLAG_SIGPIPE) * LIBSSH2_FLAG_COMPRESS = FlagType(c_ssh2.LIBSSH2_FLAG_COMPRESS) # <<<<<<<<<<<<<< - * - * + * LIBSSH2_FLAG_QUOTE_PATHS = FlagType(c_ssh2.LIBSSH2_FLAG_QUOTE_PATHS) + * LIBSSH2_FLAG_SK_PRESENCE_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_PRESENCE_REQUIRED) */ __pyx_t_5 = NULL; __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); @@ -16901,490 +16907,565 @@ __Pyx_RefNannySetupContext("PyInit_session", 0); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_COMPRESS, ((PyObject *)__pyx_t_3)) < 0) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_DECREF((PyObject *)__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":134 + /* "ssh2/session.pyx":83 + * LIBSSH2_FLAG_SIGPIPE = FlagType(c_ssh2.LIBSSH2_FLAG_SIGPIPE) + * LIBSSH2_FLAG_COMPRESS = FlagType(c_ssh2.LIBSSH2_FLAG_COMPRESS) + * LIBSSH2_FLAG_QUOTE_PATHS = FlagType(c_ssh2.LIBSSH2_FLAG_QUOTE_PATHS) # <<<<<<<<<<<<<< + * LIBSSH2_FLAG_SK_PRESENCE_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_PRESENCE_REQUIRED) + * LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_VERIFICATION_REQUIRED) +*/ + __pyx_t_2 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); + __pyx_t_4 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); + __pyx_t_5 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_FLAG_QUOTE_PATHS); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 83, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_5}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 83, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_QUOTE_PATHS, ((PyObject *)__pyx_t_3)) < 0) __PYX_ERR(0, 83, __pyx_L1_error) + __Pyx_DECREF((PyObject *)__pyx_t_3); __pyx_t_3 = 0; + + /* "ssh2/session.pyx":84 + * LIBSSH2_FLAG_COMPRESS = FlagType(c_ssh2.LIBSSH2_FLAG_COMPRESS) + * LIBSSH2_FLAG_QUOTE_PATHS = FlagType(c_ssh2.LIBSSH2_FLAG_QUOTE_PATHS) + * LIBSSH2_FLAG_SK_PRESENCE_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_PRESENCE_REQUIRED) # <<<<<<<<<<<<<< + * LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_VERIFICATION_REQUIRED) + * +*/ + __pyx_t_4 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); + __pyx_t_5 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); + __pyx_t_2 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_SK_PRESENCE_REQUIRED); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 84, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_6 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_t_2}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 84, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_SK_PRESENCE_REQUIRE, ((PyObject *)__pyx_t_3)) < 0) __PYX_ERR(0, 84, __pyx_L1_error) + __Pyx_DECREF((PyObject *)__pyx_t_3); __pyx_t_3 = 0; + + /* "ssh2/session.pyx":85 + * LIBSSH2_FLAG_QUOTE_PATHS = FlagType(c_ssh2.LIBSSH2_FLAG_QUOTE_PATHS) + * LIBSSH2_FLAG_SK_PRESENCE_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_PRESENCE_REQUIRED) + * LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_VERIFICATION_REQUIRED) # <<<<<<<<<<<<<< + * + * +*/ + __pyx_t_5 = NULL; + __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); + __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_4ssh2_7session_FlagType); + __pyx_t_4 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_SK_VERIFICATION_REQUIRED); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 85, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_6 = 1; + { + PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_4}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_6, (2-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 85, __pyx_L1_error) + __Pyx_GOTREF((PyObject *)__pyx_t_3); + } + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_FLAG_SK_VERIFICATION_REQ, ((PyObject *)__pyx_t_3)) < 0) __PYX_ERR(0, 85, __pyx_L1_error) + __Pyx_DECREF((PyObject *)__pyx_t_3); __pyx_t_3 = 0; + + /* "ssh2/session.pyx":137 * self._session = NULL * * def disconnect(self): # <<<<<<<<<<<<<< * cdef int rc * with nogil: */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_5disconnect, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_disconnect, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 134, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_5disconnect, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_disconnect, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_disconnect, __pyx_t_3) < 0) __PYX_ERR(0, 134, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_disconnect, __pyx_t_3) < 0) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":140 + /* "ssh2/session.pyx":143 * return handle_error_codes(rc) * * def handshake(self, sock not None): # <<<<<<<<<<<<<< * """Perform SSH handshake. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_7handshake, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_handshake, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 140, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_7handshake, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_handshake, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_handshake, __pyx_t_3) < 0) __PYX_ERR(0, 140, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_handshake, __pyx_t_3) < 0) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":152 + /* "ssh2/session.pyx":155 * return handle_error_codes(rc) * * def set_blocking(self, bint blocking): # <<<<<<<<<<<<<< * """Set session blocking mode on/off. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_9set_blocking, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_set_blocking, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 152, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_9set_blocking, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_set_blocking, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_set_blocking, __pyx_t_3) < 0) __PYX_ERR(0, 152, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_set_blocking, __pyx_t_3) < 0) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":162 + /* "ssh2/session.pyx":165 * self._session, blocking) * * def get_blocking(self): # <<<<<<<<<<<<<< * """Get session blocking mode enabled True/False. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_11get_blocking, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_get_blocking, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 162, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_11get_blocking, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_get_blocking, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 165, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_get_blocking, __pyx_t_3) < 0) __PYX_ERR(0, 162, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_get_blocking, __pyx_t_3) < 0) __PYX_ERR(0, 165, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":171 + /* "ssh2/session.pyx":174 * return bool(rc) * * def set_timeout(self, long timeout): # <<<<<<<<<<<<<< * """Set the timeout in milliseconds for how long a blocking * call may wait until the situation is considered an error and */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_13set_timeout, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_set_timeout, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 171, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_13set_timeout, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_set_timeout, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_set_timeout, __pyx_t_3) < 0) __PYX_ERR(0, 171, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_set_timeout, __pyx_t_3) < 0) __PYX_ERR(0, 174, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":182 + /* "ssh2/session.pyx":185 * c_ssh2.libssh2_session_set_timeout(self._session, timeout) * * def get_timeout(self): # <<<<<<<<<<<<<< * """Get current session timeout setting""" * cdef long timeout */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_15get_timeout, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_get_timeout, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 182, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_15get_timeout, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_get_timeout, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_get_timeout, __pyx_t_3) < 0) __PYX_ERR(0, 182, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_get_timeout, __pyx_t_3) < 0) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":189 + /* "ssh2/session.pyx":192 * return timeout * * def userauth_authenticated(self): # <<<<<<<<<<<<<< * """True/False for is user authenticated or not. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_17userauth_authenticated, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_authenticated, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 189, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_17userauth_authenticated, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_authenticated, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_authenticated, __pyx_t_3) < 0) __PYX_ERR(0, 189, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_authenticated, __pyx_t_3) < 0) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":198 + /* "ssh2/session.pyx":201 * return bool(rc) * * def userauth_list(self, username not None): # <<<<<<<<<<<<<< * """Retrieve available authentication methodslist. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_19userauth_list, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_list, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 198, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_19userauth_list, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_list, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_list, __pyx_t_3) < 0) __PYX_ERR(0, 198, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_list, __pyx_t_3) < 0) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":215 + /* "ssh2/session.pyx":218 * return auth.split(',') * * def userauth_publickey_fromfile(self, username not None, # <<<<<<<<<<<<<< * privatekey not None, * passphrase='', */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_21userauth_publickey_fromfile, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_publickey_fromf, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 215, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_21userauth_publickey_fromfile, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_publickey_fromf, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_publickey_fromfile, __pyx_t_3) < 0) __PYX_ERR(0, 215, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_publickey_fromfile, __pyx_t_3) < 0) __PYX_ERR(0, 218, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":239 + /* "ssh2/session.pyx":242 * return handle_error_codes(rc) * * def userauth_publickey(self, username not None, # <<<<<<<<<<<<<< * bytes pubkeydata not None): * """Perform public key authentication with provided public key data */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_23userauth_publickey, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_publickey, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 239, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_23userauth_publickey, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_publickey, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 242, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_publickey, __pyx_t_3) < 0) __PYX_ERR(0, 239, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_publickey, __pyx_t_3) < 0) __PYX_ERR(0, 242, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":260 + /* "ssh2/session.pyx":263 * return handle_error_codes(rc) * * def userauth_hostbased_fromfile(self, # <<<<<<<<<<<<<< * username not None, * privatekey not None, */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_25userauth_hostbased_fromfile, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_hostbased_fromf, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 260, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_25userauth_hostbased_fromfile, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_hostbased_fromf, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[1]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_hostbased_fromfile, __pyx_t_3) < 0) __PYX_ERR(0, 260, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_hostbased_fromfile, __pyx_t_3) < 0) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":286 + /* "ssh2/session.pyx":289 * return handle_error_codes(rc) * * def userauth_publickey_frommemory( # <<<<<<<<<<<<<< * self, username, bytes privatekeyfiledata, * passphrase='', bytes publickeyfiledata=None): */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_27userauth_publickey_frommemory, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_publickey_fromm, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 286, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_27userauth_publickey_frommemory, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_publickey_fromm, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[0]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_publickey_frommemory, __pyx_t_3) < 0) __PYX_ERR(0, 286, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_publickey_frommemory, __pyx_t_3) < 0) __PYX_ERR(0, 289, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":310 + /* "ssh2/session.pyx":313 * return handle_error_codes(rc) * * def userauth_password(self, username not None, password not None): # <<<<<<<<<<<<<< * """Perform password authentication * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_29userauth_password, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_password, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 310, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_29userauth_password, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_password, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_password, __pyx_t_3) < 0) __PYX_ERR(0, 310, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_password, __pyx_t_3) < 0) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":327 + /* "ssh2/session.pyx":330 * return handle_error_codes(rc) * * def userauth_keyboardinteractive(self, username not None, # <<<<<<<<<<<<<< * password not None): * """Perform keyboard-interactive authentication */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_31userauth_keyboardinteractive, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_keyboardinterac, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 327, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_31userauth_keyboardinteractive, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_keyboardinterac, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive, __pyx_t_3) < 0) __PYX_ERR(0, 327, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive, __pyx_t_3) < 0) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":340 + /* "ssh2/session.pyx":343 * return self.userauth_keyboardinteractive_callback(username, passwd) * * def userauth_keyboardinteractive_callback( # <<<<<<<<<<<<<< * self, username not None, callback not None): * """ */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_33userauth_keyboardinteractive_callback, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_keyboardinterac_2, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 340, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_33userauth_keyboardinteractive_callback, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_userauth_keyboardinterac_2, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive_cal, __pyx_t_3) < 0) __PYX_ERR(0, 340, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_userauth_keyboardinteractive_cal, __pyx_t_3) < 0) __PYX_ERR(0, 343, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":376 + /* "ssh2/session.pyx":379 * return handle_error_codes(rc) * * def agent_init(self): # <<<<<<<<<<<<<< * """Initialise SSH agent. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_35agent_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_agent_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 376, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_35agent_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_agent_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 379, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_agent_init, __pyx_t_3) < 0) __PYX_ERR(0, 376, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_agent_init, __pyx_t_3) < 0) __PYX_ERR(0, 379, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":386 + /* "ssh2/session.pyx":389 * return PyAgent(agent, self) * * def agent_auth(self, username not None): # <<<<<<<<<<<<<< * """Convenience function for performing user authentication via SSH Agent. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_37agent_auth, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_agent_auth, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 386, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_37agent_auth, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_agent_auth, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 389, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_agent_auth, __pyx_t_3) < 0) __PYX_ERR(0, 386, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_agent_auth, __pyx_t_3) < 0) __PYX_ERR(0, 389, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":421 + /* "ssh2/session.pyx":424 * agent_auth(_username, agent) * * def open_session(self): # <<<<<<<<<<<<<< * """Open new channel session. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_39open_session, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_open_session, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 421, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_39open_session, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_open_session, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_open_session, __pyx_t_3) < 0) __PYX_ERR(0, 421, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_open_session, __pyx_t_3) < 0) __PYX_ERR(0, 424, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":435 + /* "ssh2/session.pyx":438 * return PyChannel(channel, self) * * def direct_tcpip_ex(self, host not None, int port, # <<<<<<<<<<<<<< * shost not None, int sport): * cdef c_ssh2.LIBSSH2_CHANNEL *channel */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_41direct_tcpip_ex, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_direct_tcpip_ex, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 435, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_41direct_tcpip_ex, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_direct_tcpip_ex, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 438, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_direct_tcpip_ex, __pyx_t_3) < 0) __PYX_ERR(0, 435, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_direct_tcpip_ex, __pyx_t_3) < 0) __PYX_ERR(0, 438, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":450 + /* "ssh2/session.pyx":453 * return PyChannel(channel, self) * * def direct_tcpip(self, host not None, int port): # <<<<<<<<<<<<<< * """Open direct TCP/IP channel to host:port * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_43direct_tcpip, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_direct_tcpip, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 450, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_43direct_tcpip, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_direct_tcpip, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 453, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_direct_tcpip, __pyx_t_3) < 0) __PYX_ERR(0, 450, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_direct_tcpip, __pyx_t_3) < 0) __PYX_ERR(0, 453, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":467 + /* "ssh2/session.pyx":470 * return PyChannel(channel, self) * * def direct_streamlocal_ex(self, socket_path not None, shost not None, int sport): # <<<<<<<<<<<<<< * """ * From libssh2 documentation: */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_45direct_streamlocal_ex, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_direct_streamlocal_ex, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 467, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_45direct_streamlocal_ex, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_direct_streamlocal_ex, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 470, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_direct_streamlocal_ex, __pyx_t_3) < 0) __PYX_ERR(0, 467, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_direct_streamlocal_ex, __pyx_t_3) < 0) __PYX_ERR(0, 470, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":496 + /* "ssh2/session.pyx":499 * return PyChannel(channel, self) * * def block_directions(self): # <<<<<<<<<<<<<< * """Get blocked directions for the current session. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_47block_directions, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_block_directions, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 496, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_47block_directions, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_block_directions, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_block_directions, __pyx_t_3) < 0) __PYX_ERR(0, 496, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_block_directions, __pyx_t_3) < 0) __PYX_ERR(0, 499, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":523 + /* "ssh2/session.pyx":526 * return rc * * def flag(self, FlagType flag, enabled=True): # <<<<<<<<<<<<<< * """ * Enable/Disable flag for session. */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_49flag, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_flag, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 523, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_49flag, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_flag, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[2]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_flag, __pyx_t_3) < 0) __PYX_ERR(0, 523, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_flag, __pyx_t_3) < 0) __PYX_ERR(0, 526, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":558 + /* "ssh2/session.pyx":561 * handle_error_codes(rc) * * def forward_listen(self, int port): # <<<<<<<<<<<<<< * """Create forward listener on port. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_51forward_listen, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_forward_listen, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 558, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_51forward_listen, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_forward_listen, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_forward_listen, __pyx_t_3) < 0) __PYX_ERR(0, 558, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_forward_listen, __pyx_t_3) < 0) __PYX_ERR(0, 561, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":574 + /* "ssh2/session.pyx":577 * return PyListener(listener, self) * * def forward_listen_ex(self, int queue_maxsize, host=None, int port=0): # <<<<<<<<<<<<<< * """ * Instruct the remote SSH server to begin listening for inbound */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_53forward_listen_ex, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_forward_listen_ex, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 574, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_53forward_listen_ex, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_forward_listen_ex, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[3]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_forward_listen_ex, __pyx_t_3) < 0) __PYX_ERR(0, 574, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_forward_listen_ex, __pyx_t_3) < 0) __PYX_ERR(0, 577, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":610 + /* "ssh2/session.pyx":613 * return (PyListener(listener, self), bound_port) * * def sftp_init(self): # <<<<<<<<<<<<<< * """Initialise SFTP channel. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_55sftp_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_sftp_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 610, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_55sftp_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_sftp_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 613, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_sftp_init, __pyx_t_3) < 0) __PYX_ERR(0, 610, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_sftp_init, __pyx_t_3) < 0) __PYX_ERR(0, 613, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":623 + /* "ssh2/session.pyx":626 * return PySFTP(_sftp, self) * * def last_error(self, size_t msg_size=1024): # <<<<<<<<<<<<<< * """Retrieve last error message from libssh2, if any. * Returns empty string on no error message. */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_57last_error, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_last_error, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 623, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_57last_error, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_last_error, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 626, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_mstate_global->__pyx_tuple[4]); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_last_error, __pyx_t_3) < 0) __PYX_ERR(0, 623, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_last_error, __pyx_t_3) < 0) __PYX_ERR(0, 626, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":643 + /* "ssh2/session.pyx":646 * free(_error_msg) * * def last_errno(self): # <<<<<<<<<<<<<< * """Retrieve last error number from libssh2, if any. * Returns 0 on no last error. */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_59last_errno, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_last_errno, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 643, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_59last_errno, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_last_errno, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_last_errno, __pyx_t_3) < 0) __PYX_ERR(0, 643, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_last_errno, __pyx_t_3) < 0) __PYX_ERR(0, 646, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":655 + /* "ssh2/session.pyx":658 * return rc * * def set_last_error(self, int errcode, errmsg not None): # <<<<<<<<<<<<<< * cdef bytes b_errmsg = to_bytes(errmsg) * cdef char *_errmsg = b_errmsg */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_61set_last_error, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_set_last_error, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 655, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_61set_last_error, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_set_last_error, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_set_last_error, __pyx_t_3) < 0) __PYX_ERR(0, 655, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_set_last_error, __pyx_t_3) < 0) __PYX_ERR(0, 658, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":664 + /* "ssh2/session.pyx":667 * return rc * * def scp_recv2(self, path not None): # <<<<<<<<<<<<<< * """Receive file via SCP. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_63scp_recv2, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_scp_recv2, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 664, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_63scp_recv2, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_scp_recv2, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_scp_recv2, __pyx_t_3) < 0) __PYX_ERR(0, 664, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_scp_recv2, __pyx_t_3) < 0) __PYX_ERR(0, 667, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":684 + /* "ssh2/session.pyx":687 * return PyChannel(channel, self), fileinfo * * def scp_send64(self, path not None, int mode, c_ssh2.libssh2_uint64_t size, # <<<<<<<<<<<<<< * time_t mtime, time_t atime): * """Send file via SCP. */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_65scp_send64, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_scp_send64, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 684, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_65scp_send64, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_scp_send64, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_scp_send64, __pyx_t_3) < 0) __PYX_ERR(0, 684, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_scp_send64, __pyx_t_3) < 0) __PYX_ERR(0, 687, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":707 + /* "ssh2/session.pyx":710 * return PyChannel(channel, self) * * def publickey_init(self): # <<<<<<<<<<<<<< * """Initialise public key subsystem for managing remote server * public keys""" */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_67publickey_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_publickey_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 707, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_67publickey_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_publickey_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_publickey_init, __pyx_t_3) < 0) __PYX_ERR(0, 707, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_publickey_init, __pyx_t_3) < 0) __PYX_ERR(0, 710, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":717 + /* "ssh2/session.pyx":720 * return PyPublicKeySystem(_pkey, self) * * def hostkey_hash(self, int hash_type): # <<<<<<<<<<<<<< * """Get computed digest of the remote system's host key. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_69hostkey_hash, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_hostkey_hash, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 717, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_69hostkey_hash, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_hostkey_hash, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_hostkey_hash, __pyx_t_3) < 0) __PYX_ERR(0, 717, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_hostkey_hash, __pyx_t_3) < 0) __PYX_ERR(0, 720, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":734 + /* "ssh2/session.pyx":737 * return b_hash * * def hostkey(self): # <<<<<<<<<<<<<< * """Get server host key for this session. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_71hostkey, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_hostkey, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 734, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_71hostkey, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_hostkey, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 737, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_hostkey, __pyx_t_3) < 0) __PYX_ERR(0, 734, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_hostkey, __pyx_t_3) < 0) __PYX_ERR(0, 737, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":756 + /* "ssh2/session.pyx":759 * return key, key_type * * def knownhost_init(self): # <<<<<<<<<<<<<< * """Initialise a collection of known hosts for this session. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_73knownhost_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_knownhost_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 756, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_73knownhost_init, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_knownhost_init, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_knownhost_init, __pyx_t_3) < 0) __PYX_ERR(0, 756, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_knownhost_init, __pyx_t_3) < 0) __PYX_ERR(0, 759, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":768 + /* "ssh2/session.pyx":771 * return PyKnownHost(self, known_hosts) * * def keepalive_config(self, bint want_reply, unsigned interval): # <<<<<<<<<<<<<< * """ * Configure keep alive settings. */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_75keepalive_config, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_keepalive_config, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 768, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_75keepalive_config, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_keepalive_config, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_keepalive_config, __pyx_t_3) < 0) __PYX_ERR(0, 768, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_keepalive_config, __pyx_t_3) < 0) __PYX_ERR(0, 771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":781 + /* "ssh2/session.pyx":784 * c_ssh2.libssh2_keepalive_config(self._session, want_reply, interval) * * def keepalive_send(self): # <<<<<<<<<<<<<< * """Send keepalive. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_77keepalive_send, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_keepalive_send, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 781, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_77keepalive_send, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_keepalive_send, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_keepalive_send, __pyx_t_3) < 0) __PYX_ERR(0, 781, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_keepalive_send, __pyx_t_3) < 0) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":795 + /* "ssh2/session.pyx":798 * return c_seconds * * def supported_algs(self, MethodType method_type): # <<<<<<<<<<<<<< * """Get supportd algorithms for method type. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_79supported_algs, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_supported_algs, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 795, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_79supported_algs, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_supported_algs, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_supported_algs, __pyx_t_3) < 0) __PYX_ERR(0, 795, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_supported_algs, __pyx_t_3) < 0) __PYX_ERR(0, 798, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":820 + /* "ssh2/session.pyx":823 * return algs * * def methods(self, MethodType method_type): # <<<<<<<<<<<<<< * """Get currently active algorithms for method type. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_81methods, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_methods, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 820, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_81methods, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_methods, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 823, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_methods, __pyx_t_3) < 0) __PYX_ERR(0, 820, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_methods, __pyx_t_3) < 0) __PYX_ERR(0, 823, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "ssh2/session.pyx":835 + /* "ssh2/session.pyx":838 * return to_str(methods) * * def method_pref(self, MethodType method_type, prefs not None): # <<<<<<<<<<<<<< * """Set preference for session method. * */ - __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_83method_pref, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_method_pref, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 835, __pyx_L1_error) + __pyx_t_3 = __Pyx_CyFunction_New(&__pyx_mdef_4ssh2_7session_7Session_83method_pref, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_Session_method_pref, NULL, __pyx_mstate_global->__pyx_n_u_ssh2_session, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44])); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 838, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_method_pref, __pyx_t_3) < 0) __PYX_ERR(0, 835, __pyx_L1_error) + if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_4ssh2_7session_Session, __pyx_mstate_global->__pyx_n_u_method_pref, __pyx_t_3) < 0) __PYX_ERR(0, 838, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; /* "(tree fragment)":1 @@ -17487,7 +17568,10 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_FlagType___setstate_cython, sizeof(__pyx_k_FlagType___setstate_cython), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FlagType___setstate_cython */ {__pyx_k_KnownHostError, sizeof(__pyx_k_KnownHostError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KnownHostError */ {__pyx_k_LIBSSH2_FLAG_COMPRESS, sizeof(__pyx_k_LIBSSH2_FLAG_COMPRESS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_FLAG_COMPRESS */ + {__pyx_k_LIBSSH2_FLAG_QUOTE_PATHS, sizeof(__pyx_k_LIBSSH2_FLAG_QUOTE_PATHS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_FLAG_QUOTE_PATHS */ {__pyx_k_LIBSSH2_FLAG_SIGPIPE, sizeof(__pyx_k_LIBSSH2_FLAG_SIGPIPE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_FLAG_SIGPIPE */ + {__pyx_k_LIBSSH2_FLAG_SK_PRESENCE_REQUIRE, sizeof(__pyx_k_LIBSSH2_FLAG_SK_PRESENCE_REQUIRE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_FLAG_SK_PRESENCE_REQUIRE */ + {__pyx_k_LIBSSH2_FLAG_SK_VERIFICATION_REQ, sizeof(__pyx_k_LIBSSH2_FLAG_SK_VERIFICATION_REQ), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_FLAG_SK_VERIFICATION_REQ */ {__pyx_k_LIBSSH2_HOSTKEY_HASH_MD5, sizeof(__pyx_k_LIBSSH2_HOSTKEY_HASH_MD5), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_HOSTKEY_HASH_MD5 */ {__pyx_k_LIBSSH2_HOSTKEY_HASH_SHA1, sizeof(__pyx_k_LIBSSH2_HOSTKEY_HASH_SHA1), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_HOSTKEY_HASH_SHA1 */ {__pyx_k_LIBSSH2_HOSTKEY_HASH_SHA256, sizeof(__pyx_k_LIBSSH2_HOSTKEY_HASH_SHA256), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_HOSTKEY_HASH_SHA256 */ @@ -17743,9 +17827,9 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry const *t, PyObject **target, c static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(1, 2, __pyx_L1_error) - __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_range); if (!__pyx_builtin_range) __PYX_ERR(0, 96, __pyx_L1_error) - __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(0, 124, __pyx_L1_error) - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 552, __pyx_L1_error) + __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_range); if (!__pyx_builtin_range) __PYX_ERR(0, 99, __pyx_L1_error) + __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(0, 127, __pyx_L1_error) + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_mstate->__pyx_n_u_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 555, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; @@ -17757,58 +17841,58 @@ static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) { CYTHON_UNUSED_VAR(__pyx_mstate); __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "ssh2/session.pyx":215 + /* "ssh2/session.pyx":218 * return auth.split(',') * * def userauth_publickey_fromfile(self, username not None, # <<<<<<<<<<<<<< * privatekey not None, * passphrase='', */ - __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u__2, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 215, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[0] = PyTuple_Pack(2, __pyx_mstate_global->__pyx_kp_u__2, Py_None); if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 218, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]); - /* "ssh2/session.pyx":260 + /* "ssh2/session.pyx":263 * return handle_error_codes(rc) * * def userauth_hostbased_fromfile(self, # <<<<<<<<<<<<<< * username not None, * privatekey not None, */ - __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, Py_None, __pyx_mstate_global->__pyx_kp_u__2); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 260, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[1] = PyTuple_Pack(2, Py_None, __pyx_mstate_global->__pyx_kp_u__2); if (unlikely(!__pyx_mstate_global->__pyx_tuple[1])) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[1]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[1]); - /* "ssh2/session.pyx":523 + /* "ssh2/session.pyx":526 * return rc * * def flag(self, FlagType flag, enabled=True): # <<<<<<<<<<<<<< * """ * Enable/Disable flag for session. */ - __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(1, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 523, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[2] = PyTuple_Pack(1, Py_True); if (unlikely(!__pyx_mstate_global->__pyx_tuple[2])) __PYX_ERR(0, 526, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[2]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[2]); - /* "ssh2/session.pyx":574 + /* "ssh2/session.pyx":577 * return PyListener(listener, self) * * def forward_listen_ex(self, int queue_maxsize, host=None, int port=0): # <<<<<<<<<<<<<< * """ * Instruct the remote SSH server to begin listening for inbound */ - __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, Py_None, __pyx_mstate_global->__pyx_int_0); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 574, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[3] = PyTuple_Pack(2, Py_None, __pyx_mstate_global->__pyx_int_0); if (unlikely(!__pyx_mstate_global->__pyx_tuple[3])) __PYX_ERR(0, 577, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[3]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[3]); - /* "ssh2/session.pyx":623 + /* "ssh2/session.pyx":626 * return PySFTP(_sftp, self) * * def last_error(self, size_t msg_size=1024): # <<<<<<<<<<<<<< * """Retrieve last error message from libssh2, if any. * Returns empty string on no error message. */ - __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_int_1024); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(0, 623, __pyx_L1_error) + __pyx_mstate_global->__pyx_tuple[4] = PyTuple_Pack(1, __pyx_mstate_global->__pyx_int_1024); if (unlikely(!__pyx_mstate_global->__pyx_tuple[4])) __PYX_ERR(0, 626, __pyx_L1_error) __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[4]); __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[4]); __Pyx_RefNannyFinishContext(); @@ -17856,7 +17940,7 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { PyObject* tuple_dedup_map = PyDict_New(); if (unlikely(!tuple_dedup_map)) return -1; { - const __Pyx_PyCode_New_function_description descr = {0, 0, 1, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS), 336, 12}; + const __Pyx_PyCode_New_function_description descr = {0, 0, 1, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS|CO_VARARGS), 339, 12}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_password, __pyx_mstate->__pyx_n_u_args}; __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_passwd, __pyx_k_1_1A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0])) goto bad; } @@ -17881,202 +17965,202 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_stringsource, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_k_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 134, 29}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 137, 29}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_disconnect, __pyx_k_A_2_4, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 140, 55}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 143, 55}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_sock, __pyx_mstate->__pyx_n_u_sock_2, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_handshake, __pyx_k_A_2_1_1_k_HA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 152, 19}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 155, 19}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_blocking}; __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_set_blocking, __pyx_k_A_q_Kq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 162, 28}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 165, 28}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_get_blocking, __pyx_k_A_4AT_t1A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 171, 18}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 174, 18}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_timeout}; __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_set_timeout, __pyx_k_A_at_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 182, 24}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 185, 24}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_timeout}; __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_get_timeout, __pyx_k_A_8_Q_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 189, 28}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 192, 28}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_authenticated, __pyx_k_A_6at1_t1A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 198, 81}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 201, 81}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_username_len, __pyx_mstate->__pyx_n_u_auth, __pyx_mstate->__pyx_n_u_auth_2}; __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_list, __pyx_k_A_q_3aq_0_K_6_A_vQa_t6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 14, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 215, 123}; + const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 14, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 218, 123}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_privatekey, __pyx_mstate->__pyx_n_u_passphrase, __pyx_mstate->__pyx_n_u_publickey, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_b_publickey, __pyx_mstate->__pyx_n_u_b_privatekey, __pyx_mstate->__pyx_n_u_b_passphrase, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_publickey_2, __pyx_mstate->__pyx_n_u_privatekey_2, __pyx_mstate->__pyx_n_u_passphrase_2}; __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_publickey_fromfile, __pyx_k_A_0_1_1_q_wa_1_K_m1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 239, 69}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 242, 69}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_pubkeydata, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_pubkeydata_2, __pyx_mstate->__pyx_n_u_pubkeydata_len}; __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_publickey, __pyx_k_A_q_S_2_K_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 17, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 260, 140}; + const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 17, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 263, 140}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_privatekey, __pyx_mstate->__pyx_n_u_hostname, __pyx_mstate->__pyx_n_u_publickey, __pyx_mstate->__pyx_n_u_passphrase, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_b_publickey, __pyx_mstate->__pyx_n_u_b_privatekey, __pyx_mstate->__pyx_n_u_b_passphrase, __pyx_mstate->__pyx_n_u_b_hostname, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_publickey_2, __pyx_mstate->__pyx_n_u_privatekey_2, __pyx_mstate->__pyx_n_u_passphrase_2, __pyx_mstate->__pyx_n_u_hostname_2}; __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_hostbased_fromfile, __pyx_k_A_0_0_1_1_q_q_wa_1_K, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 15, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 286, 134}; + const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 15, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 289, 134}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_privatekeyfiledata, __pyx_mstate->__pyx_n_u_passphrase, __pyx_mstate->__pyx_n_u_publickeyfiledata, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_b_passphrase, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_passphrase_2, __pyx_mstate->__pyx_n_u_publickeyfiledata_2, __pyx_mstate->__pyx_n_u_privatekeyfiledata_2, __pyx_mstate->__pyx_n_u_username_len, __pyx_mstate->__pyx_n_u_privatekeydata_len, __pyx_mstate->__pyx_n_u_pubkeydata_len}; __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_publickey_frommemory, __pyx_k_A_31_1_q_Q_a_q_S_WA_S_Q_K_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 310, 62}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 313, 62}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_password, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_b_password, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_password_2}; __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_password, __pyx_k_A_Q_Q_1_K, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 327, 21}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 330, 21}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_password, __pyx_mstate->__pyx_n_u_passwd, __pyx_mstate->__pyx_n_u_passwd}; __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_keyboardinteractive, __pyx_k_A_t_9_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 340, 63}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 343, 63}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_callback, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_username_2}; __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_userauth_keyboardinteractive_cal, __pyx_k_A6_Q_Q_9_aq_Q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 376, 29}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 379, 29}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_agent}; __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_agent_init, __pyx_k_A_Jat1_wawa, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 386, 57}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 7, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 389, 57}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_username, __pyx_mstate->__pyx_n_u_b_username, __pyx_mstate->__pyx_n_u_username_2, __pyx_mstate->__pyx_n_u_agent, __pyx_mstate->__pyx_n_u_identity, __pyx_mstate->__pyx_n_u_prev}; __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_agent_auth, __pyx_k_A4_q_1_8_4A_4q_a, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 421, 58}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 424, 58}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_channel}; __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_open_session, __pyx_k_A_9_A_83a_W_Gq_A_y, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 10, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 435, 94}; + const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 10, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 438, 94}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_host, __pyx_mstate->__pyx_n_u_port, __pyx_mstate->__pyx_n_u_shost, __pyx_mstate->__pyx_n_u_sport, __pyx_mstate->__pyx_n_u_channel, __pyx_mstate->__pyx_n_u_b_host, __pyx_mstate->__pyx_n_u_b_shost, __pyx_mstate->__pyx_n_u_host_2, __pyx_mstate->__pyx_n_u_shost_2}; __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_direct_tcpip_ex, __pyx_k_A_HAQ_XQa_1_A_A_KwfHA_83a_W_Gq_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 450, 76}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 453, 76}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_host, __pyx_mstate->__pyx_n_u_port, __pyx_mstate->__pyx_n_u_channel, __pyx_mstate->__pyx_n_u_b_host, __pyx_mstate->__pyx_n_u_host_2}; __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_direct_tcpip, __pyx_k_A_HAQ_1_9_Kwa_83a_W_Gq_A_y, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 9, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 467, 94}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 9, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 470, 94}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_socket_path, __pyx_mstate->__pyx_n_u_shost, __pyx_mstate->__pyx_n_u_sport, __pyx_mstate->__pyx_n_u_b_socket_path, __pyx_mstate->__pyx_n_u_b_shost, __pyx_mstate->__pyx_n_u_c_socket_path, __pyx_mstate->__pyx_n_u_c_shost, __pyx_mstate->__pyx_n_u_channel}; __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_direct_streamlocal_ex, __pyx_k_A_81A_XQa_1_B_4_Raajjk_83a_W_Gq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 496, 25}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 499, 25}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_block_directions, __pyx_k_A_8_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 523, 64}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 526, 64}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_flag, __pyx_mstate->__pyx_n_u_enabled, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_value}; __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_flag, __pyx_k_6_uD_a_AQ_AT_D_1, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 558, 60}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 561, 60}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_port, __pyx_mstate->__pyx_n_u_listener}; __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_forward_listen, __pyx_k_A_A_Kq_9Cq_W_Gq_A_z_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 574, 118}; + const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 8, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 577, 118}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_queue_maxsize, __pyx_mstate->__pyx_n_u_host, __pyx_mstate->__pyx_n_u_port, __pyx_mstate->__pyx_n_u_listener, __pyx_mstate->__pyx_n_u_b_host, __pyx_mstate->__pyx_n_u_host_2, __pyx_mstate->__pyx_n_u_bound_port}; __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_forward_listen_ex, __pyx_k_8_q_HE_Jhaq_1_7_A_a_q_KwfA_9Cq, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 610, 57}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 613, 57}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_sftp}; __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_sftp_init, __pyx_k_A_AT_6_A_W_Gq_A_vQgQ, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 623, 92}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 626, 92}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_msg_size, __pyx_mstate->__pyx_n_u_error_msg, __pyx_mstate->__pyx_n_u_msg, __pyx_mstate->__pyx_n_u_errmsg_len}; __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_last_error, __pyx_k_a_q_Rq_Q_Kq_A_A_j_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 643, 25}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 646, 25}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_last_errno, __pyx_k_A_2_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 655, 41}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 658, 41}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_errcode, __pyx_mstate->__pyx_n_u_errmsg, __pyx_mstate->__pyx_n_u_b_errmsg, __pyx_mstate->__pyx_n_u_errmsg_2, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_set_last_error, __pyx_k_A_haq_Q_6a_Ky_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 664, 87}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 667, 87}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_fileinfo, __pyx_mstate->__pyx_n_u_b_path, __pyx_mstate->__pyx_n_u_path_2, __pyx_mstate->__pyx_n_u_channel}; __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_scp_recv2, __pyx_k_A_HAQ_1_a_Kwha_83a_W_Gq_A_y, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 9, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 684, 82}; + const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 9, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 687, 82}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_path, __pyx_mstate->__pyx_n_u_mode, __pyx_mstate->__pyx_n_u_size, __pyx_mstate->__pyx_n_u_mtime, __pyx_mstate->__pyx_n_u_atime, __pyx_mstate->__pyx_n_u_b_path, __pyx_mstate->__pyx_n_u_path_2, __pyx_mstate->__pyx_n_u_channel}; __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_scp_send64, __pyx_k_A_HAQ_1_q_KwfF_83a_W_Gq_A_y, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 707, 45}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 710, 45}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pkey}; __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_publickey_init, __pyx_k_A_1_a_6_A, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 717, 43}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 720, 43}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_hash_type, __pyx_mstate->__pyx_n_u_hash, __pyx_mstate->__pyx_n_u_b_hash}; __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_hostkey_hash, __pyx_k_A_q_Kq_6_A_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 734, 79}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 5, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 737, 79}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_key, __pyx_mstate->__pyx_n_u_key_2, __pyx_mstate->__pyx_n_u_key_len, __pyx_mstate->__pyx_n_u_key_type}; __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_hostkey, __pyx_k_A_a_A_1_Kq_5_1_Q_d_A_uA, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 756, 45}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 2, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 759, 45}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_known_hosts}; __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_knownhost_init, __pyx_k_A_7q_A_s_6, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 768, 20}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 771, 20}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_want_reply, __pyx_mstate->__pyx_n_u_interval}; __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_keepalive_config, __pyx_k_A_1D_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 781, 45}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 4, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 784, 45}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_seconds, __pyx_mstate->__pyx_n_u_c_seconds, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_keepalive_send, __pyx_k_A_1_Q_at_aq_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 795, 106}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 798, 106}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method_type, __pyx_mstate->__pyx_n_u_c_algs, __pyx_mstate->__pyx_n_u_rc, __pyx_mstate->__pyx_n_u_algs, __pyx_mstate->__pyx_n_u_i}; __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_supported_algs, __pyx_k_A_6a_K_1_3b_Qa_1_1_1F_6_d_uAQ_1D, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 820, 45}; + const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 3, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 823, 45}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method_type, __pyx_mstate->__pyx_n_u_methods}; __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_methods, __pyx_k_A_4t1_4A_K_vQa, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 835, 52}; + const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 6, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 838, 52}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_method_type, __pyx_mstate->__pyx_n_u_prefs, __pyx_mstate->__pyx_n_u_b_prefs, __pyx_mstate->__pyx_n_u_c_prefs, __pyx_mstate->__pyx_n_u_rc}; __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_session_pyx, __pyx_mstate->__pyx_n_u_method_pref, __pyx_k_A_XQa_1_31_K_1_q, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44])) goto bad; } diff --git a/ssh2/session.pyx b/ssh2/session.pyx index e8080a6c..b7e50662 100644 --- a/ssh2/session.pyx +++ b/ssh2/session.pyx @@ -80,6 +80,9 @@ cdef class FlagType: LIBSSH2_FLAG_SIGPIPE = FlagType(c_ssh2.LIBSSH2_FLAG_SIGPIPE) LIBSSH2_FLAG_COMPRESS = FlagType(c_ssh2.LIBSSH2_FLAG_COMPRESS) +LIBSSH2_FLAG_QUOTE_PATHS = FlagType(c_ssh2.LIBSSH2_FLAG_QUOTE_PATHS) +LIBSSH2_FLAG_SK_PRESENCE_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_PRESENCE_REQUIRED) +LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED = FlagType(c_ssh2.LIBSSH2_SK_VERIFICATION_REQUIRED) cdef void kbd_callback(const char *name, int name_len, diff --git a/tests/test_session.py b/tests/test_session.py index 758852ed..3fc7c38b 100644 --- a/tests/test_session.py +++ b/tests/test_session.py @@ -1,4 +1,7 @@ -from ssh2.session import Session, LIBSSH2_METHOD_HOSTKEY, LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS, FlagType +from ssh2.session import (Session, LIBSSH2_METHOD_HOSTKEY, LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS, + LIBSSH2_FLAG_QUOTE_PATHS, LIBSSH2_FLAG_SK_PRESENCE_REQUIRED, + LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED, + ) from .base_test import SSH2TestCase @@ -18,5 +21,6 @@ def test_flags(self): for flag in [LIBSSH2_FLAG_SIGPIPE, LIBSSH2_FLAG_COMPRESS]: session.flag(flag) session.flag(flag, enabled=False) - for bad_flag in (FlagType(99),): + for bad_flag in (LIBSSH2_FLAG_QUOTE_PATHS, LIBSSH2_FLAG_SK_PRESENCE_REQUIRED, + LIBSSH2_FLAG_SK_VERIFICATION_REQUIRED): self.assertRaises(ValueError, session.flag, bad_flag) From b6e8c08a1b2948da5ccf1ce08e039be47df0d18d Mon Sep 17 00:00:00 2001 From: Panos Date: Sun, 5 Oct 2025 10:22:49 +0100 Subject: [PATCH 09/12] Updated build script --- _setup_libssh2.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_setup_libssh2.py b/_setup_libssh2.py index 7d84e0aa..9a1405d4 100644 --- a/_setup_libssh2.py +++ b/_setup_libssh2.py @@ -23,7 +23,7 @@ def build_ssh2(): if bool(os.environ.get('SYSTEM_LIbBSSH2', False)): - stderr.write("Using system libssh2..%s" % (os.sep)) + stderr.write("Using system libssh2..%s" % (os.sep,)) return if os.path.exists('/usr/local/opt/openssl'): os.environ['OPENSSL_ROOT_DIR'] = '/usr/local/opt/openssl' @@ -42,5 +42,5 @@ def build_ssh2(): check_call('cmake --build . --config Release', shell=True, env=os.environ) os.chdir('..') - for src in glob('build_dir/src/libssh2.*'): + for src in glob('build_dir/src/libssh2.{so,dylib}*'): copy2(src, 'ssh2/') From 2eb36f726e8064cb7593b87bd0ca505a8a7e9882 Mon Sep 17 00:00:00 2001 From: Panos Date: Sun, 5 Oct 2025 10:23:03 +0100 Subject: [PATCH 10/12] Revert "OSX error code changes (#232)" This reverts commit 177cac5f5ad8e0e46563c7946d913f2843aebd88. --- ssh2/error_codes.c | 123 +++++++++---- ssh2/error_codes.pxd | 3 + ssh2/error_codes.pyx | 3 + ssh2/exceptions.c | 382 +++++++++++++++++++++++++-------------- ssh2/exceptions.pyx | 12 ++ ssh2/utils.c | 283 +++++++++++++++++++---------- ssh2/utils.pyx | 6 + tests/test_exceptions.py | 8 +- 8 files changed, 544 insertions(+), 276 deletions(-) diff --git a/ssh2/error_codes.c b/ssh2/error_codes.c index 1b34280f..1e16be10 100644 --- a/ssh2/error_codes.c +++ b/ssh2/error_codes.c @@ -1935,12 +1935,15 @@ static const char __pyx_k_LIBSSH2_ERROR_ENCRYPT[] = "LIBSSH2_ERROR_ENCRYPT"; static const char __pyx_k_LIBSSH2_ERROR_RANDGEN[] = "LIBSSH2_ERROR_RANDGEN"; static const char __pyx_k_LIBSSH2_ERROR_TIMEOUT[] = "LIBSSH2_ERROR_TIMEOUT"; static const char __pyx_k_LIBSSH2_ERROR_COMPRESS[] = "LIBSSH2_ERROR_COMPRESS"; +static const char __pyx_k_LIBSSH2_ERROR_HASH_CALC[] = "LIBSSH2_ERROR_HASH_CALC"; +static const char __pyx_k_LIBSSH2_ERROR_HASH_INIT[] = "LIBSSH2_ERROR_HASH_INIT"; static const char __pyx_k_LIBSSH2_ERROR_BAD_SOCKET[] = "LIBSSH2_ERROR_BAD_SOCKET"; static const char __pyx_k_LIBSSH2_ERROR_BANNER_RECV[] = "LIBSSH2_ERROR_BANNER_RECV"; static const char __pyx_k_LIBSSH2_ERROR_BANNER_SEND[] = "LIBSSH2_ERROR_BANNER_SEND"; static const char __pyx_k_LIBSSH2_ERROR_INVALID_MAC[] = "LIBSSH2_ERROR_INVALID_MAC"; static const char __pyx_k_LIBSSH2_ERROR_KEX_FAILURE[] = "LIBSSH2_ERROR_KEX_FAILURE"; static const char __pyx_k_LIBSSH2_ERROR_KNOWN_HOSTS[] = "LIBSSH2_ERROR_KNOWN_HOSTS"; +static const char __pyx_k_LIBSSH2_ERROR_MAC_FAILURE[] = "LIBSSH2_ERROR_MAC_FAILURE"; static const char __pyx_k_LIBSSH2_ERROR_METHOD_NONE[] = "LIBSSH2_ERROR_METHOD_NONE"; static const char __pyx_k_LIBSSH2_ERROR_SOCKET_NONE[] = "LIBSSH2_ERROR_SOCKET_NONE"; static const char __pyx_k_LIBSSH2_ERROR_SOCKET_RECV[] = "LIBSSH2_ERROR_SOCKET_RECV"; @@ -2014,7 +2017,7 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif - PyObject *__pyx_string_tab[61]; + PyObject *__pyx_string_tab[64]; /* #### Code section: module_state_contents ### */ /* CodeObjectCache.module_state_decls */ struct __Pyx_CodeObjectCache __pyx_code_cache; @@ -2069,42 +2072,45 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati #define __pyx_n_u_LIBSSH2_ERROR_EAGAIN __pyx_string_tab[22] #define __pyx_n_u_LIBSSH2_ERROR_ENCRYPT __pyx_string_tab[23] #define __pyx_n_u_LIBSSH2_ERROR_FILE __pyx_string_tab[24] -#define __pyx_n_u_LIBSSH2_ERROR_HOSTKEY_INIT __pyx_string_tab[25] -#define __pyx_n_u_LIBSSH2_ERROR_HOSTKEY_SIGN __pyx_string_tab[26] -#define __pyx_n_u_LIBSSH2_ERROR_INVAL __pyx_string_tab[27] -#define __pyx_n_u_LIBSSH2_ERROR_INVALID_MAC __pyx_string_tab[28] -#define __pyx_n_u_LIBSSH2_ERROR_INVALID_POLL_TYPE __pyx_string_tab[29] -#define __pyx_n_u_LIBSSH2_ERROR_KEX_FAILURE __pyx_string_tab[30] -#define __pyx_n_u_LIBSSH2_ERROR_KEYFILE_AUTH_FAILE __pyx_string_tab[31] -#define __pyx_n_u_LIBSSH2_ERROR_KEY_EXCHANGE_FAILU __pyx_string_tab[32] -#define __pyx_n_u_LIBSSH2_ERROR_KNOWN_HOSTS __pyx_string_tab[33] -#define __pyx_n_u_LIBSSH2_ERROR_METHOD_NONE __pyx_string_tab[34] -#define __pyx_n_u_LIBSSH2_ERROR_METHOD_NOT_SUPPORT __pyx_string_tab[35] -#define __pyx_n_u_LIBSSH2_ERROR_MISSING_USERAUTH_B __pyx_string_tab[36] -#define __pyx_n_u_LIBSSH2_ERROR_NONE __pyx_string_tab[37] -#define __pyx_n_u_LIBSSH2_ERROR_OUT_OF_BOUNDARY __pyx_string_tab[38] -#define __pyx_n_u_LIBSSH2_ERROR_PASSWORD_EXPIRED __pyx_string_tab[39] -#define __pyx_n_u_LIBSSH2_ERROR_PROTO __pyx_string_tab[40] -#define __pyx_n_u_LIBSSH2_ERROR_PUBLICKEY_PROTOCOL __pyx_string_tab[41] -#define __pyx_n_u_LIBSSH2_ERROR_PUBLICKEY_UNRECOGN __pyx_string_tab[42] -#define __pyx_n_u_LIBSSH2_ERROR_PUBLICKEY_UNVERIFI __pyx_string_tab[43] -#define __pyx_n_u_LIBSSH2_ERROR_RANDGEN __pyx_string_tab[44] -#define __pyx_n_u_LIBSSH2_ERROR_REQUEST_DENIED __pyx_string_tab[45] -#define __pyx_n_u_LIBSSH2_ERROR_SCP_PROTOCOL __pyx_string_tab[46] -#define __pyx_n_u_LIBSSH2_ERROR_SFTP_PROTOCOL __pyx_string_tab[47] -#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_DISCONNECT __pyx_string_tab[48] -#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_NONE __pyx_string_tab[49] -#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_RECV __pyx_string_tab[50] -#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_SEND __pyx_string_tab[51] -#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_TIMEOUT __pyx_string_tab[52] -#define __pyx_n_u_LIBSSH2_ERROR_TIMEOUT __pyx_string_tab[53] -#define __pyx_n_u_LIBSSH2_ERROR_ZLIB __pyx_string_tab[54] -#define __pyx_n_u_cline_in_traceback __pyx_string_tab[55] -#define __pyx_n_u_main __pyx_string_tab[56] -#define __pyx_n_u_module __pyx_string_tab[57] -#define __pyx_n_u_name __pyx_string_tab[58] -#define __pyx_n_u_qualname __pyx_string_tab[59] -#define __pyx_n_u_test __pyx_string_tab[60] +#define __pyx_n_u_LIBSSH2_ERROR_HASH_CALC __pyx_string_tab[25] +#define __pyx_n_u_LIBSSH2_ERROR_HASH_INIT __pyx_string_tab[26] +#define __pyx_n_u_LIBSSH2_ERROR_HOSTKEY_INIT __pyx_string_tab[27] +#define __pyx_n_u_LIBSSH2_ERROR_HOSTKEY_SIGN __pyx_string_tab[28] +#define __pyx_n_u_LIBSSH2_ERROR_INVAL __pyx_string_tab[29] +#define __pyx_n_u_LIBSSH2_ERROR_INVALID_MAC __pyx_string_tab[30] +#define __pyx_n_u_LIBSSH2_ERROR_INVALID_POLL_TYPE __pyx_string_tab[31] +#define __pyx_n_u_LIBSSH2_ERROR_KEX_FAILURE __pyx_string_tab[32] +#define __pyx_n_u_LIBSSH2_ERROR_KEYFILE_AUTH_FAILE __pyx_string_tab[33] +#define __pyx_n_u_LIBSSH2_ERROR_KEY_EXCHANGE_FAILU __pyx_string_tab[34] +#define __pyx_n_u_LIBSSH2_ERROR_KNOWN_HOSTS __pyx_string_tab[35] +#define __pyx_n_u_LIBSSH2_ERROR_MAC_FAILURE __pyx_string_tab[36] +#define __pyx_n_u_LIBSSH2_ERROR_METHOD_NONE __pyx_string_tab[37] +#define __pyx_n_u_LIBSSH2_ERROR_METHOD_NOT_SUPPORT __pyx_string_tab[38] +#define __pyx_n_u_LIBSSH2_ERROR_MISSING_USERAUTH_B __pyx_string_tab[39] +#define __pyx_n_u_LIBSSH2_ERROR_NONE __pyx_string_tab[40] +#define __pyx_n_u_LIBSSH2_ERROR_OUT_OF_BOUNDARY __pyx_string_tab[41] +#define __pyx_n_u_LIBSSH2_ERROR_PASSWORD_EXPIRED __pyx_string_tab[42] +#define __pyx_n_u_LIBSSH2_ERROR_PROTO __pyx_string_tab[43] +#define __pyx_n_u_LIBSSH2_ERROR_PUBLICKEY_PROTOCOL __pyx_string_tab[44] +#define __pyx_n_u_LIBSSH2_ERROR_PUBLICKEY_UNRECOGN __pyx_string_tab[45] +#define __pyx_n_u_LIBSSH2_ERROR_PUBLICKEY_UNVERIFI __pyx_string_tab[46] +#define __pyx_n_u_LIBSSH2_ERROR_RANDGEN __pyx_string_tab[47] +#define __pyx_n_u_LIBSSH2_ERROR_REQUEST_DENIED __pyx_string_tab[48] +#define __pyx_n_u_LIBSSH2_ERROR_SCP_PROTOCOL __pyx_string_tab[49] +#define __pyx_n_u_LIBSSH2_ERROR_SFTP_PROTOCOL __pyx_string_tab[50] +#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_DISCONNECT __pyx_string_tab[51] +#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_NONE __pyx_string_tab[52] +#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_RECV __pyx_string_tab[53] +#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_SEND __pyx_string_tab[54] +#define __pyx_n_u_LIBSSH2_ERROR_SOCKET_TIMEOUT __pyx_string_tab[55] +#define __pyx_n_u_LIBSSH2_ERROR_TIMEOUT __pyx_string_tab[56] +#define __pyx_n_u_LIBSSH2_ERROR_ZLIB __pyx_string_tab[57] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[58] +#define __pyx_n_u_main __pyx_string_tab[59] +#define __pyx_n_u_module __pyx_string_tab[60] +#define __pyx_n_u_name __pyx_string_tab[61] +#define __pyx_n_u_qualname __pyx_string_tab[62] +#define __pyx_n_u_test __pyx_string_tab[63] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { @@ -2125,7 +2131,7 @@ static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { #if CYTHON_PEP489_MULTI_PHASE_INIT __Pyx_State_RemoveModule(NULL); #endif - for (int i=0; i<61; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<64; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } return 0; } #endif @@ -2146,7 +2152,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void #ifdef __Pyx_FusedFunction_USED Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif - for (int i=0; i<61; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<64; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } return 0; } #endif @@ -3145,6 +3151,7 @@ __Pyx_RefNannySetupContext("PyInit_error_codes", 0); * LIBSSH2_ERROR_RANDGEN = error_codes._LIBSSH2_ERROR_RANDGEN * LIBSSH2_ERROR_MISSING_USERAUTH_BANNER = error_codes._LIBSSH2_ERROR_MISSING_USERAUTH_BANNER # <<<<<<<<<<<<<< * LIBSSH2_ERROR_ALGO_UNSUPPORTED = error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED + * LIBSSH2_ERROR_MAC_FAILURE = error_codes._LIBSSH2_ERROR_MAC_FAILURE */ __pyx_t_2 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_ERROR_MISSING_USERAUTH_BANNER); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); @@ -3155,12 +3162,47 @@ __Pyx_RefNannySetupContext("PyInit_error_codes", 0); * LIBSSH2_ERROR_RANDGEN = error_codes._LIBSSH2_ERROR_RANDGEN * LIBSSH2_ERROR_MISSING_USERAUTH_BANNER = error_codes._LIBSSH2_ERROR_MISSING_USERAUTH_BANNER * LIBSSH2_ERROR_ALGO_UNSUPPORTED = error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED # <<<<<<<<<<<<<< + * LIBSSH2_ERROR_MAC_FAILURE = error_codes._LIBSSH2_ERROR_MAC_FAILURE + * LIBSSH2_ERROR_HASH_INIT = error_codes._LIBSSH2_ERROR_HASH_INIT */ __pyx_t_2 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_ERROR_ALGO_UNSUPPORTED); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_ERROR_ALGO_UNSUPPORTED, __pyx_t_2) < 0) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "ssh2/error_codes.pyx":87 + * LIBSSH2_ERROR_MISSING_USERAUTH_BANNER = error_codes._LIBSSH2_ERROR_MISSING_USERAUTH_BANNER + * LIBSSH2_ERROR_ALGO_UNSUPPORTED = error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED + * LIBSSH2_ERROR_MAC_FAILURE = error_codes._LIBSSH2_ERROR_MAC_FAILURE # <<<<<<<<<<<<<< + * LIBSSH2_ERROR_HASH_INIT = error_codes._LIBSSH2_ERROR_HASH_INIT + * LIBSSH2_ERROR_HASH_CALC = error_codes._LIBSSH2_ERROR_HASH_CALC +*/ + __pyx_t_2 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_ERROR_MAC_FAILURE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 87, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_ERROR_MAC_FAILURE, __pyx_t_2) < 0) __PYX_ERR(0, 87, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "ssh2/error_codes.pyx":88 + * LIBSSH2_ERROR_ALGO_UNSUPPORTED = error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED + * LIBSSH2_ERROR_MAC_FAILURE = error_codes._LIBSSH2_ERROR_MAC_FAILURE + * LIBSSH2_ERROR_HASH_INIT = error_codes._LIBSSH2_ERROR_HASH_INIT # <<<<<<<<<<<<<< + * LIBSSH2_ERROR_HASH_CALC = error_codes._LIBSSH2_ERROR_HASH_CALC +*/ + __pyx_t_2 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_ERROR_HASH_INIT); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_ERROR_HASH_INIT, __pyx_t_2) < 0) __PYX_ERR(0, 88, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "ssh2/error_codes.pyx":89 + * LIBSSH2_ERROR_MAC_FAILURE = error_codes._LIBSSH2_ERROR_MAC_FAILURE + * LIBSSH2_ERROR_HASH_INIT = error_codes._LIBSSH2_ERROR_HASH_INIT + * LIBSSH2_ERROR_HASH_CALC = error_codes._LIBSSH2_ERROR_HASH_CALC # <<<<<<<<<<<<<< +*/ + __pyx_t_2 = __Pyx_PyLong_From___pyx_anon_enum(LIBSSH2_ERROR_HASH_CALC); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 89, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_LIBSSH2_ERROR_HASH_CALC, __pyx_t_2) < 0) __PYX_ERR(0, 89, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "ssh2/error_codes.pyx":1 * # This file is part of ssh2-python. # <<<<<<<<<<<<<< * # Copyright (C) 2017-2020 Panos Kittenis @@ -3254,6 +3296,8 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_LIBSSH2_ERROR_EAGAIN, sizeof(__pyx_k_LIBSSH2_ERROR_EAGAIN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_EAGAIN */ {__pyx_k_LIBSSH2_ERROR_ENCRYPT, sizeof(__pyx_k_LIBSSH2_ERROR_ENCRYPT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_ENCRYPT */ {__pyx_k_LIBSSH2_ERROR_FILE, sizeof(__pyx_k_LIBSSH2_ERROR_FILE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_FILE */ + {__pyx_k_LIBSSH2_ERROR_HASH_CALC, sizeof(__pyx_k_LIBSSH2_ERROR_HASH_CALC), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_HASH_CALC */ + {__pyx_k_LIBSSH2_ERROR_HASH_INIT, sizeof(__pyx_k_LIBSSH2_ERROR_HASH_INIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_HASH_INIT */ {__pyx_k_LIBSSH2_ERROR_HOSTKEY_INIT, sizeof(__pyx_k_LIBSSH2_ERROR_HOSTKEY_INIT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_HOSTKEY_INIT */ {__pyx_k_LIBSSH2_ERROR_HOSTKEY_SIGN, sizeof(__pyx_k_LIBSSH2_ERROR_HOSTKEY_SIGN), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_HOSTKEY_SIGN */ {__pyx_k_LIBSSH2_ERROR_INVAL, sizeof(__pyx_k_LIBSSH2_ERROR_INVAL), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_INVAL */ @@ -3263,6 +3307,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_LIBSSH2_ERROR_KEYFILE_AUTH_FAILE, sizeof(__pyx_k_LIBSSH2_ERROR_KEYFILE_AUTH_FAILE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_KEYFILE_AUTH_FAILE */ {__pyx_k_LIBSSH2_ERROR_KEY_EXCHANGE_FAILU, sizeof(__pyx_k_LIBSSH2_ERROR_KEY_EXCHANGE_FAILU), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_KEY_EXCHANGE_FAILU */ {__pyx_k_LIBSSH2_ERROR_KNOWN_HOSTS, sizeof(__pyx_k_LIBSSH2_ERROR_KNOWN_HOSTS), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_KNOWN_HOSTS */ + {__pyx_k_LIBSSH2_ERROR_MAC_FAILURE, sizeof(__pyx_k_LIBSSH2_ERROR_MAC_FAILURE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_MAC_FAILURE */ {__pyx_k_LIBSSH2_ERROR_METHOD_NONE, sizeof(__pyx_k_LIBSSH2_ERROR_METHOD_NONE), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_METHOD_NONE */ {__pyx_k_LIBSSH2_ERROR_METHOD_NOT_SUPPORT, sizeof(__pyx_k_LIBSSH2_ERROR_METHOD_NOT_SUPPORT), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_METHOD_NOT_SUPPORT */ {__pyx_k_LIBSSH2_ERROR_MISSING_USERAUTH_B, sizeof(__pyx_k_LIBSSH2_ERROR_MISSING_USERAUTH_B), 0, 1, 1}, /* PyObject cname: __pyx_n_u_LIBSSH2_ERROR_MISSING_USERAUTH_B */ diff --git a/ssh2/error_codes.pxd b/ssh2/error_codes.pxd index 7fdfcef1..2622416d 100644 --- a/ssh2/error_codes.pxd +++ b/ssh2/error_codes.pxd @@ -80,5 +80,8 @@ cdef extern from "libssh2.h" nogil: _LIBSSH2_ERROR_RANDGEN "LIBSSH2_ERROR_RANDGEN" _LIBSSH2_ERROR_MISSING_USERAUTH_BANNER "LIBSSH2_ERROR_MISSING_USERAUTH_BANNER" _LIBSSH2_ERROR_ALGO_UNSUPPORTED "LIBSSH2_ERROR_ALGO_UNSUPPORTED" + _LIBSSH2_ERROR_MAC_FAILURE "LIBSSH2_ERROR_MAC_FAILURE" + _LIBSSH2_ERROR_HASH_INIT "LIBSSH2_ERROR_HASH_INIT" + _LIBSSH2_ERROR_HASH_CALC "LIBSSH2_ERROR_HASH_CALC" _LIBSSH2CHANNEL_EAGAIN "LIBSSH2_ERROR_EAGAIN" diff --git a/ssh2/error_codes.pyx b/ssh2/error_codes.pyx index abf97ae0..139059c4 100644 --- a/ssh2/error_codes.pyx +++ b/ssh2/error_codes.pyx @@ -84,3 +84,6 @@ LIBSSH2_ERROR_KEYFILE_AUTH_FAILED = \ LIBSSH2_ERROR_RANDGEN = error_codes._LIBSSH2_ERROR_RANDGEN LIBSSH2_ERROR_MISSING_USERAUTH_BANNER = error_codes._LIBSSH2_ERROR_MISSING_USERAUTH_BANNER LIBSSH2_ERROR_ALGO_UNSUPPORTED = error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED +LIBSSH2_ERROR_MAC_FAILURE = error_codes._LIBSSH2_ERROR_MAC_FAILURE +LIBSSH2_ERROR_HASH_INIT = error_codes._LIBSSH2_ERROR_HASH_INIT +LIBSSH2_ERROR_HASH_CALC = error_codes._LIBSSH2_ERROR_HASH_CALC diff --git a/ssh2/exceptions.c b/ssh2/exceptions.c index 0fa212be..2c8590d4 100644 --- a/ssh2/exceptions.c +++ b/ssh2/exceptions.c @@ -1971,6 +1971,8 @@ static const char __pyx_k_RandGenError[] = "RandGenError"; static const char __pyx_k_SessionError[] = "SessionError"; static const char __pyx_k_UnknownError[] = "UnknownError"; static const char __pyx_k_CompressError[] = "CompressError"; +static const char __pyx_k_HashCalcError[] = "HashCalcError"; +static const char __pyx_k_HashInitError[] = "HashInitError"; static const char __pyx_k_ProtocolError[] = "ProtocolError"; static const char __pyx_k_SocketTimeout[] = "SocketTimeout"; static const char __pyx_k_BadSocketError[] = "BadSocketError"; @@ -1981,6 +1983,7 @@ static const char __pyx_k_BannerRecvError[] = "BannerRecvError"; static const char __pyx_k_BannerSendError[] = "BannerSendError"; static const char __pyx_k_InvalidMACError[] = "InvalidMACError"; static const char __pyx_k_KexFailureError[] = "KexFailureError"; +static const char __pyx_k_MacFailureError[] = "MacFailureError"; static const char __pyx_k_MethodNoneError[] = "MethodNoneError"; static const char __pyx_k_SFTPHandleError[] = "SFTPHandleError"; static const char __pyx_k_SocketRecvError[] = "SocketRecvError"; @@ -2044,6 +2047,7 @@ static const char __pyx_k_Raised_on_allocation_error[] = "Raised on allocation e static const char __pyx_k_Raised_on_channel_failures[] = "Raised on channel failures"; static const char __pyx_k_KnownHostCheckMisMatchError[] = "KnownHostCheckMisMatchError"; static const char __pyx_k_KnownHostCheckNotFoundError[] = "KnownHostCheckNotFoundError"; +static const char __pyx_k_Raised_on_MAC_failure_error[] = "Raised on MAC failure error"; static const char __pyx_k_Raised_on_decryption_errors[] = "Raised on decryption errors"; static const char __pyx_k_Raised_on_encryption_errors[] = "Raised on encryption errors"; static const char __pyx_k_Raised_on_API_bad_use_errors[] = "Raised on API bad use errors"; @@ -2093,6 +2097,8 @@ static const char __pyx_k_Raised_on_errors_retrieving_know[] = "Raised on errors static const char __pyx_k_Raised_on_errors_signing_host_ke[] = "Raised on errors signing host key"; static const char __pyx_k_Raised_on_errors_writing_line_to[] = "Raised on errors writing line to known hosts file"; static const char __pyx_k_Raised_on_errors_writing_to_know[] = "Raised on errors writing to known hosts file"; +static const char __pyx_k_Raised_on_hash_calculation_error[] = "Raised on hash calculation error"; +static const char __pyx_k_Raised_on_hash_initialisation_er[] = "Raised on hash initialisation error"; static const char __pyx_k_Raised_on_invalid_poll_type_erro[] = "Raised on invalid poll type errors"; static const char __pyx_k_Raised_on_invalid_request_errors[] = "Raised on invalid request errors"; static const char __pyx_k_Raised_on_key_file_authenticatio[] = "Raised on key file authentication error"; @@ -2103,7 +2109,7 @@ static const char __pyx_k_Raised_on_out_of_boundary_errors[] = "Raised on out of static const char __pyx_k_Raised_on_password_expired_error[] = "Raised on password expired errors"; static const char __pyx_k_Raised_on_public_key_protocol_er[] = "Raised on public key protocol errors"; static const char __pyx_k_Raised_on_public_key_verificatio[] = "Raised on public key verification errors"; -static const char __pyx_k_Raised_on_randon_number_generato[] = "Raised on randon number generator error"; +static const char __pyx_k_Raised_on_randon_number_generato[] = "Raised on randon number generator errors"; static const char __pyx_k_Raised_on_session_handshake_erro[] = "Raised on session handshake errors"; static const char __pyx_k_Raised_on_session_startup_errors[] = "Raised on session startup errors"; static const char __pyx_k_Raised_on_socket_disconnection_e[] = "Raised on socket disconnection errors"; @@ -2149,7 +2155,7 @@ typedef struct { #ifdef __Pyx_Coroutine_USED PyTypeObject *__pyx_CoroutineType; #endif - PyObject *__pyx_string_tab[164]; + PyObject *__pyx_string_tab[170]; /* #### Code section: module_state_contents ### */ /* CodeObjectCache.module_state_decls */ struct __Pyx_CodeObjectCache __pyx_code_cache; @@ -2216,133 +2222,139 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati #define __pyx_n_u_DecryptError __pyx_string_tab[34] #define __pyx_n_u_EncryptError __pyx_string_tab[35] #define __pyx_n_u_FileError __pyx_string_tab[36] -#define __pyx_n_u_HostkeyInitError __pyx_string_tab[37] -#define __pyx_n_u_HostkeySignError __pyx_string_tab[38] -#define __pyx_n_u_InvalidMACError __pyx_string_tab[39] -#define __pyx_n_u_InvalidPollTypeError __pyx_string_tab[40] -#define __pyx_n_u_InvalidRequestError __pyx_string_tab[41] -#define __pyx_n_u_KexFailureError __pyx_string_tab[42] -#define __pyx_n_u_KeyExchangeError __pyx_string_tab[43] -#define __pyx_n_u_KeyfileAuthFailedError __pyx_string_tab[44] -#define __pyx_n_u_KnownHostAddError __pyx_string_tab[45] -#define __pyx_n_u_KnownHostCheckError __pyx_string_tab[46] -#define __pyx_n_u_KnownHostCheckFailure __pyx_string_tab[47] -#define __pyx_n_u_KnownHostCheckMisMatchError __pyx_string_tab[48] -#define __pyx_n_u_KnownHostCheckNotFoundError __pyx_string_tab[49] -#define __pyx_n_u_KnownHostDeleteError __pyx_string_tab[50] -#define __pyx_n_u_KnownHostError __pyx_string_tab[51] -#define __pyx_n_u_KnownHostGetError __pyx_string_tab[52] -#define __pyx_n_u_KnownHostReadFileError __pyx_string_tab[53] -#define __pyx_n_u_KnownHostReadLineError __pyx_string_tab[54] -#define __pyx_n_u_KnownHostWriteFileError __pyx_string_tab[55] -#define __pyx_n_u_KnownHostWriteLineError __pyx_string_tab[56] -#define __pyx_n_u_MethodNoneError __pyx_string_tab[57] -#define __pyx_n_u_MethodNotSupported __pyx_string_tab[58] -#define __pyx_n_u_MissingUserAuthBannerError __pyx_string_tab[59] -#define __pyx_n_u_OutOfBoundaryError __pyx_string_tab[60] -#define __pyx_n_u_PasswordExpiredError __pyx_string_tab[61] -#define __pyx_n_u_ProtocolError __pyx_string_tab[62] -#define __pyx_n_u_PublicKeyError __pyx_string_tab[63] -#define __pyx_n_u_PublicKeyInitError __pyx_string_tab[64] -#define __pyx_n_u_PublicKeyProtocolError __pyx_string_tab[65] -#define __pyx_n_u_PublickeyUnverifiedError __pyx_string_tab[66] -#define __pyx_kp_u_Raised_on_API_bad_use_errors __pyx_string_tab[67] -#define __pyx_kp_u_Raised_on_KEX_failure __pyx_string_tab[68] -#define __pyx_kp_u_Raised_on_SCP_protocol_errors __pyx_string_tab[69] -#define __pyx_kp_u_Raised_on_SFTP_handle_errors __pyx_string_tab[70] -#define __pyx_kp_u_Raised_on_SFTP_protocol_errors __pyx_string_tab[71] -#define __pyx_kp_u_Raised_on_SSH_Agent_authenticati __pyx_string_tab[72] -#define __pyx_kp_u_Raised_on_SSH_Agent_connection_e __pyx_string_tab[73] -#define __pyx_kp_u_Raised_on_SSH_Agent_get_identity __pyx_string_tab[74] -#define __pyx_kp_u_Raised_on_SSH_Agent_list_identit __pyx_string_tab[75] -#define __pyx_kp_u_Raised_on_SSH_agent_protocol_err __pyx_string_tab[76] -#define __pyx_kp_u_Raised_on_allocation_error __pyx_string_tab[77] -#define __pyx_kp_u_Raised_on_any_known_host_check_e __pyx_string_tab[78] -#define __pyx_kp_u_Raised_on_authentication_method __pyx_string_tab[79] -#define __pyx_kp_u_Raised_on_buffer_too_small_error __pyx_string_tab[80] -#define __pyx_kp_u_Raised_on_channel_EOF_errors __pyx_string_tab[81] -#define __pyx_kp_u_Raised_on_channel_closed_errors __pyx_string_tab[82] -#define __pyx_kp_u_Raised_on_channel_commands_out_o __pyx_string_tab[83] -#define __pyx_kp_u_Raised_on_channel_failures __pyx_string_tab[84] -#define __pyx_kp_u_Raised_on_channel_max_packet_len __pyx_string_tab[85] -#define __pyx_kp_u_Raised_on_channel_request_denied __pyx_string_tab[86] -#define __pyx_kp_u_Raised_on_channel_window_exceede __pyx_string_tab[87] -#define __pyx_kp_u_Raised_on_channel_window_full_er __pyx_string_tab[88] -#define __pyx_kp_u_Raised_on_compression_errors __pyx_string_tab[89] -#define __pyx_kp_u_Raised_on_decryption_errors __pyx_string_tab[90] -#define __pyx_kp_u_Raised_on_encryption_errors __pyx_string_tab[91] -#define __pyx_kp_u_Raised_on_errors_adding_known_ho __pyx_string_tab[92] -#define __pyx_kp_u_Raised_on_errors_deleting_known __pyx_string_tab[93] -#define __pyx_kp_u_Raised_on_errors_exchanging_keys __pyx_string_tab[94] -#define __pyx_kp_u_Raised_on_errors_getting_server __pyx_string_tab[95] -#define __pyx_kp_u_Raised_on_errors_initialiasing_h __pyx_string_tab[96] -#define __pyx_kp_u_Raised_on_errors_initialising_pu __pyx_string_tab[97] -#define __pyx_kp_u_Raised_on_errors_reading_from_kn __pyx_string_tab[98] -#define __pyx_kp_u_Raised_on_errors_reading_line_fr __pyx_string_tab[99] -#define __pyx_kp_u_Raised_on_errors_receiving_banne __pyx_string_tab[100] -#define __pyx_kp_u_Raised_on_errors_retrieving_know __pyx_string_tab[101] -#define __pyx_kp_u_Raised_on_errors_sending_banner __pyx_string_tab[102] -#define __pyx_kp_u_Raised_on_errors_signing_host_ke __pyx_string_tab[103] -#define __pyx_kp_u_Raised_on_errors_writing_line_to __pyx_string_tab[104] -#define __pyx_kp_u_Raised_on_errors_writing_to_know __pyx_string_tab[105] -#define __pyx_kp_u_Raised_on_file_errors __pyx_string_tab[106] -#define __pyx_kp_u_Raised_on_invalid_MAC __pyx_string_tab[107] -#define __pyx_kp_u_Raised_on_invalid_method_errors __pyx_string_tab[108] -#define __pyx_kp_u_Raised_on_invalid_poll_type_erro __pyx_string_tab[109] -#define __pyx_kp_u_Raised_on_invalid_request_errors __pyx_string_tab[110] -#define __pyx_kp_u_Raised_on_key_file_authenticatio __pyx_string_tab[111] -#define __pyx_kp_u_Raised_on_keys_do_not_match_for __pyx_string_tab[112] -#define __pyx_kp_u_Raised_on_missing_user_authentic __pyx_string_tab[113] -#define __pyx_kp_u_Raised_on_no_match_for_known_hos __pyx_string_tab[114] -#define __pyx_kp_u_Raised_on_non_specific_or_unknow __pyx_string_tab[115] -#define __pyx_kp_u_Raised_on_out_of_boundary_errors __pyx_string_tab[116] -#define __pyx_kp_u_Raised_on_password_expired_error __pyx_string_tab[117] -#define __pyx_kp_u_Raised_on_protocol_errors __pyx_string_tab[118] -#define __pyx_kp_u_Raised_on_public_key_protocol_er __pyx_string_tab[119] -#define __pyx_kp_u_Raised_on_public_key_verificatio __pyx_string_tab[120] -#define __pyx_kp_u_Raised_on_randon_number_generato __pyx_string_tab[121] -#define __pyx_kp_u_Raised_on_request_denied_errors __pyx_string_tab[122] -#define __pyx_kp_u_Raised_on_session_handshake_erro __pyx_string_tab[123] -#define __pyx_kp_u_Raised_on_session_startup_errors __pyx_string_tab[124] -#define __pyx_kp_u_Raised_on_socket_disconnection_e __pyx_string_tab[125] -#define __pyx_kp_u_Raised_on_socket_receive_errors __pyx_string_tab[126] -#define __pyx_kp_u_Raised_on_socket_send_errors __pyx_string_tab[127] -#define __pyx_kp_u_Raised_on_socket_timeouts __pyx_string_tab[128] -#define __pyx_kp_u_Raised_on_something_preventing_k __pyx_string_tab[129] -#define __pyx_kp_u_Raised_on_timeouts __pyx_string_tab[130] -#define __pyx_kp_u_Raised_on_unknown_channel_errors __pyx_string_tab[131] -#define __pyx_kp_u_Raised_on_unsupported_algorithm __pyx_string_tab[132] -#define __pyx_kp_u_Raised_on_use_of_bad_socket_erro __pyx_string_tab[133] -#define __pyx_kp_u_Raised_on_zlib_errors __pyx_string_tab[134] -#define __pyx_n_u_RandGenError __pyx_string_tab[135] -#define __pyx_n_u_RequestDeniedError __pyx_string_tab[136] -#define __pyx_n_u_SCPProtocolError __pyx_string_tab[137] -#define __pyx_n_u_SFTPError __pyx_string_tab[138] -#define __pyx_n_u_SFTPHandleError __pyx_string_tab[139] -#define __pyx_n_u_SFTPProtocolError __pyx_string_tab[140] -#define __pyx_n_u_SSH2Error __pyx_string_tab[141] -#define __pyx_n_u_SessionError __pyx_string_tab[142] -#define __pyx_n_u_SessionHandshakeError __pyx_string_tab[143] -#define __pyx_n_u_SessionHostKeyError __pyx_string_tab[144] -#define __pyx_n_u_SessionStartupError __pyx_string_tab[145] -#define __pyx_n_u_SocketDisconnectError __pyx_string_tab[146] -#define __pyx_n_u_SocketRecvError __pyx_string_tab[147] -#define __pyx_n_u_SocketSendError __pyx_string_tab[148] -#define __pyx_n_u_SocketTimeout __pyx_string_tab[149] -#define __pyx_n_u_Timeout __pyx_string_tab[150] -#define __pyx_n_u_UnknownError __pyx_string_tab[151] -#define __pyx_n_u_ZlibError __pyx_string_tab[152] -#define __pyx_n_u_cline_in_traceback __pyx_string_tab[153] -#define __pyx_n_u_doc __pyx_string_tab[154] -#define __pyx_n_u_main __pyx_string_tab[155] -#define __pyx_n_u_metaclass __pyx_string_tab[156] -#define __pyx_n_u_module __pyx_string_tab[157] -#define __pyx_n_u_mro_entries __pyx_string_tab[158] -#define __pyx_n_u_name __pyx_string_tab[159] -#define __pyx_n_u_prepare __pyx_string_tab[160] -#define __pyx_n_u_qualname __pyx_string_tab[161] -#define __pyx_n_u_ssh2_exceptions __pyx_string_tab[162] -#define __pyx_n_u_test __pyx_string_tab[163] +#define __pyx_n_u_HashCalcError __pyx_string_tab[37] +#define __pyx_n_u_HashInitError __pyx_string_tab[38] +#define __pyx_n_u_HostkeyInitError __pyx_string_tab[39] +#define __pyx_n_u_HostkeySignError __pyx_string_tab[40] +#define __pyx_n_u_InvalidMACError __pyx_string_tab[41] +#define __pyx_n_u_InvalidPollTypeError __pyx_string_tab[42] +#define __pyx_n_u_InvalidRequestError __pyx_string_tab[43] +#define __pyx_n_u_KexFailureError __pyx_string_tab[44] +#define __pyx_n_u_KeyExchangeError __pyx_string_tab[45] +#define __pyx_n_u_KeyfileAuthFailedError __pyx_string_tab[46] +#define __pyx_n_u_KnownHostAddError __pyx_string_tab[47] +#define __pyx_n_u_KnownHostCheckError __pyx_string_tab[48] +#define __pyx_n_u_KnownHostCheckFailure __pyx_string_tab[49] +#define __pyx_n_u_KnownHostCheckMisMatchError __pyx_string_tab[50] +#define __pyx_n_u_KnownHostCheckNotFoundError __pyx_string_tab[51] +#define __pyx_n_u_KnownHostDeleteError __pyx_string_tab[52] +#define __pyx_n_u_KnownHostError __pyx_string_tab[53] +#define __pyx_n_u_KnownHostGetError __pyx_string_tab[54] +#define __pyx_n_u_KnownHostReadFileError __pyx_string_tab[55] +#define __pyx_n_u_KnownHostReadLineError __pyx_string_tab[56] +#define __pyx_n_u_KnownHostWriteFileError __pyx_string_tab[57] +#define __pyx_n_u_KnownHostWriteLineError __pyx_string_tab[58] +#define __pyx_n_u_MacFailureError __pyx_string_tab[59] +#define __pyx_n_u_MethodNoneError __pyx_string_tab[60] +#define __pyx_n_u_MethodNotSupported __pyx_string_tab[61] +#define __pyx_n_u_MissingUserAuthBannerError __pyx_string_tab[62] +#define __pyx_n_u_OutOfBoundaryError __pyx_string_tab[63] +#define __pyx_n_u_PasswordExpiredError __pyx_string_tab[64] +#define __pyx_n_u_ProtocolError __pyx_string_tab[65] +#define __pyx_n_u_PublicKeyError __pyx_string_tab[66] +#define __pyx_n_u_PublicKeyInitError __pyx_string_tab[67] +#define __pyx_n_u_PublicKeyProtocolError __pyx_string_tab[68] +#define __pyx_n_u_PublickeyUnverifiedError __pyx_string_tab[69] +#define __pyx_kp_u_Raised_on_API_bad_use_errors __pyx_string_tab[70] +#define __pyx_kp_u_Raised_on_KEX_failure __pyx_string_tab[71] +#define __pyx_kp_u_Raised_on_MAC_failure_error __pyx_string_tab[72] +#define __pyx_kp_u_Raised_on_SCP_protocol_errors __pyx_string_tab[73] +#define __pyx_kp_u_Raised_on_SFTP_handle_errors __pyx_string_tab[74] +#define __pyx_kp_u_Raised_on_SFTP_protocol_errors __pyx_string_tab[75] +#define __pyx_kp_u_Raised_on_SSH_Agent_authenticati __pyx_string_tab[76] +#define __pyx_kp_u_Raised_on_SSH_Agent_connection_e __pyx_string_tab[77] +#define __pyx_kp_u_Raised_on_SSH_Agent_get_identity __pyx_string_tab[78] +#define __pyx_kp_u_Raised_on_SSH_Agent_list_identit __pyx_string_tab[79] +#define __pyx_kp_u_Raised_on_SSH_agent_protocol_err __pyx_string_tab[80] +#define __pyx_kp_u_Raised_on_allocation_error __pyx_string_tab[81] +#define __pyx_kp_u_Raised_on_any_known_host_check_e __pyx_string_tab[82] +#define __pyx_kp_u_Raised_on_authentication_method __pyx_string_tab[83] +#define __pyx_kp_u_Raised_on_buffer_too_small_error __pyx_string_tab[84] +#define __pyx_kp_u_Raised_on_channel_EOF_errors __pyx_string_tab[85] +#define __pyx_kp_u_Raised_on_channel_closed_errors __pyx_string_tab[86] +#define __pyx_kp_u_Raised_on_channel_commands_out_o __pyx_string_tab[87] +#define __pyx_kp_u_Raised_on_channel_failures __pyx_string_tab[88] +#define __pyx_kp_u_Raised_on_channel_max_packet_len __pyx_string_tab[89] +#define __pyx_kp_u_Raised_on_channel_request_denied __pyx_string_tab[90] +#define __pyx_kp_u_Raised_on_channel_window_exceede __pyx_string_tab[91] +#define __pyx_kp_u_Raised_on_channel_window_full_er __pyx_string_tab[92] +#define __pyx_kp_u_Raised_on_compression_errors __pyx_string_tab[93] +#define __pyx_kp_u_Raised_on_decryption_errors __pyx_string_tab[94] +#define __pyx_kp_u_Raised_on_encryption_errors __pyx_string_tab[95] +#define __pyx_kp_u_Raised_on_errors_adding_known_ho __pyx_string_tab[96] +#define __pyx_kp_u_Raised_on_errors_deleting_known __pyx_string_tab[97] +#define __pyx_kp_u_Raised_on_errors_exchanging_keys __pyx_string_tab[98] +#define __pyx_kp_u_Raised_on_errors_getting_server __pyx_string_tab[99] +#define __pyx_kp_u_Raised_on_errors_initialiasing_h __pyx_string_tab[100] +#define __pyx_kp_u_Raised_on_errors_initialising_pu __pyx_string_tab[101] +#define __pyx_kp_u_Raised_on_errors_reading_from_kn __pyx_string_tab[102] +#define __pyx_kp_u_Raised_on_errors_reading_line_fr __pyx_string_tab[103] +#define __pyx_kp_u_Raised_on_errors_receiving_banne __pyx_string_tab[104] +#define __pyx_kp_u_Raised_on_errors_retrieving_know __pyx_string_tab[105] +#define __pyx_kp_u_Raised_on_errors_sending_banner __pyx_string_tab[106] +#define __pyx_kp_u_Raised_on_errors_signing_host_ke __pyx_string_tab[107] +#define __pyx_kp_u_Raised_on_errors_writing_line_to __pyx_string_tab[108] +#define __pyx_kp_u_Raised_on_errors_writing_to_know __pyx_string_tab[109] +#define __pyx_kp_u_Raised_on_file_errors __pyx_string_tab[110] +#define __pyx_kp_u_Raised_on_hash_calculation_error __pyx_string_tab[111] +#define __pyx_kp_u_Raised_on_hash_initialisation_er __pyx_string_tab[112] +#define __pyx_kp_u_Raised_on_invalid_MAC __pyx_string_tab[113] +#define __pyx_kp_u_Raised_on_invalid_method_errors __pyx_string_tab[114] +#define __pyx_kp_u_Raised_on_invalid_poll_type_erro __pyx_string_tab[115] +#define __pyx_kp_u_Raised_on_invalid_request_errors __pyx_string_tab[116] +#define __pyx_kp_u_Raised_on_key_file_authenticatio __pyx_string_tab[117] +#define __pyx_kp_u_Raised_on_keys_do_not_match_for __pyx_string_tab[118] +#define __pyx_kp_u_Raised_on_missing_user_authentic __pyx_string_tab[119] +#define __pyx_kp_u_Raised_on_no_match_for_known_hos __pyx_string_tab[120] +#define __pyx_kp_u_Raised_on_non_specific_or_unknow __pyx_string_tab[121] +#define __pyx_kp_u_Raised_on_out_of_boundary_errors __pyx_string_tab[122] +#define __pyx_kp_u_Raised_on_password_expired_error __pyx_string_tab[123] +#define __pyx_kp_u_Raised_on_protocol_errors __pyx_string_tab[124] +#define __pyx_kp_u_Raised_on_public_key_protocol_er __pyx_string_tab[125] +#define __pyx_kp_u_Raised_on_public_key_verificatio __pyx_string_tab[126] +#define __pyx_kp_u_Raised_on_randon_number_generato __pyx_string_tab[127] +#define __pyx_kp_u_Raised_on_request_denied_errors __pyx_string_tab[128] +#define __pyx_kp_u_Raised_on_session_handshake_erro __pyx_string_tab[129] +#define __pyx_kp_u_Raised_on_session_startup_errors __pyx_string_tab[130] +#define __pyx_kp_u_Raised_on_socket_disconnection_e __pyx_string_tab[131] +#define __pyx_kp_u_Raised_on_socket_receive_errors __pyx_string_tab[132] +#define __pyx_kp_u_Raised_on_socket_send_errors __pyx_string_tab[133] +#define __pyx_kp_u_Raised_on_socket_timeouts __pyx_string_tab[134] +#define __pyx_kp_u_Raised_on_something_preventing_k __pyx_string_tab[135] +#define __pyx_kp_u_Raised_on_timeouts __pyx_string_tab[136] +#define __pyx_kp_u_Raised_on_unknown_channel_errors __pyx_string_tab[137] +#define __pyx_kp_u_Raised_on_unsupported_algorithm __pyx_string_tab[138] +#define __pyx_kp_u_Raised_on_use_of_bad_socket_erro __pyx_string_tab[139] +#define __pyx_kp_u_Raised_on_zlib_errors __pyx_string_tab[140] +#define __pyx_n_u_RandGenError __pyx_string_tab[141] +#define __pyx_n_u_RequestDeniedError __pyx_string_tab[142] +#define __pyx_n_u_SCPProtocolError __pyx_string_tab[143] +#define __pyx_n_u_SFTPError __pyx_string_tab[144] +#define __pyx_n_u_SFTPHandleError __pyx_string_tab[145] +#define __pyx_n_u_SFTPProtocolError __pyx_string_tab[146] +#define __pyx_n_u_SSH2Error __pyx_string_tab[147] +#define __pyx_n_u_SessionError __pyx_string_tab[148] +#define __pyx_n_u_SessionHandshakeError __pyx_string_tab[149] +#define __pyx_n_u_SessionHostKeyError __pyx_string_tab[150] +#define __pyx_n_u_SessionStartupError __pyx_string_tab[151] +#define __pyx_n_u_SocketDisconnectError __pyx_string_tab[152] +#define __pyx_n_u_SocketRecvError __pyx_string_tab[153] +#define __pyx_n_u_SocketSendError __pyx_string_tab[154] +#define __pyx_n_u_SocketTimeout __pyx_string_tab[155] +#define __pyx_n_u_Timeout __pyx_string_tab[156] +#define __pyx_n_u_UnknownError __pyx_string_tab[157] +#define __pyx_n_u_ZlibError __pyx_string_tab[158] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[159] +#define __pyx_n_u_doc __pyx_string_tab[160] +#define __pyx_n_u_main __pyx_string_tab[161] +#define __pyx_n_u_metaclass __pyx_string_tab[162] +#define __pyx_n_u_module __pyx_string_tab[163] +#define __pyx_n_u_mro_entries __pyx_string_tab[164] +#define __pyx_n_u_name __pyx_string_tab[165] +#define __pyx_n_u_prepare __pyx_string_tab[166] +#define __pyx_n_u_qualname __pyx_string_tab[167] +#define __pyx_n_u_ssh2_exceptions __pyx_string_tab[168] +#define __pyx_n_u_test __pyx_string_tab[169] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { @@ -2363,7 +2375,7 @@ static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { #if CYTHON_PEP489_MULTI_PHASE_INIT __Pyx_State_RemoveModule(NULL); #endif - for (int i=0; i<164; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<170; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } return 0; } #endif @@ -2384,7 +2396,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void #ifdef __Pyx_FusedFunction_USED Py_VISIT(traverse_module_state->__pyx_FusedFunctionType); #endif - for (int i=0; i<164; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<170; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } return 0; } #endif @@ -4918,7 +4930,7 @@ __Pyx_RefNannySetupContext("PyInit_exceptions", 0); * * * class RandGenError(SSH2Error): # <<<<<<<<<<<<<< - * """Raised on randon number generator error""" + * """Raised on randon number generator errors""" * */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SSH2Error); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 306, __pyx_L1_error) @@ -5007,8 +5019,9 @@ __Pyx_RefNannySetupContext("PyInit_exceptions", 0); /* "ssh2/exceptions.pyx":318 * * - * class UnknownError(SSH2Error): # <<<<<<<<<<<<<< - * """Raised on non-specific or unknown errors""" + * class MacFailureError(SSH2Error): # <<<<<<<<<<<<<< + * """Raised on MAC failure error""" + * */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SSH2Error); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); @@ -5019,15 +5032,104 @@ __Pyx_RefNannySetupContext("PyInit_exceptions", 0); __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_Py3MetaclassPrepare(__pyx_t_4, __pyx_t_3, __pyx_mstate_global->__pyx_n_u_UnknownError, __pyx_mstate_global->__pyx_n_u_UnknownError, (PyObject *) NULL, __pyx_mstate_global->__pyx_n_u_ssh2_exceptions, __pyx_mstate_global->__pyx_kp_u_Raised_on_non_specific_or_unknow); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L1_error) + __pyx_t_5 = __Pyx_Py3MetaclassPrepare(__pyx_t_4, __pyx_t_3, __pyx_mstate_global->__pyx_n_u_MacFailureError, __pyx_mstate_global->__pyx_n_u_MacFailureError, (PyObject *) NULL, __pyx_mstate_global->__pyx_n_u_ssh2_exceptions, __pyx_mstate_global->__pyx_kp_u_Raised_on_MAC_failure_error); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_3 != __pyx_t_2) { if (unlikely((PyDict_SetItemString(__pyx_t_5, "__orig_bases__", __pyx_t_2) < 0))) __PYX_ERR(0, 318, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_Py3ClassCreate(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_UnknownError, __pyx_t_3, __pyx_t_5, NULL, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 318, __pyx_L1_error) + __pyx_t_2 = __Pyx_Py3ClassCreate(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_MacFailureError, __pyx_t_3, __pyx_t_5, NULL, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 318, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_MacFailureError, __pyx_t_2) < 0) __PYX_ERR(0, 318, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + /* "ssh2/exceptions.pyx":322 + * + * + * class HashInitError(SSH2Error): # <<<<<<<<<<<<<< + * """Raised on hash initialisation error""" + * +*/ + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SSH2Error); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = PyTuple_Pack(1, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PEP560_update_bases(__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_2 = __Pyx_Py3MetaclassPrepare(__pyx_t_5, __pyx_t_3, __pyx_mstate_global->__pyx_n_u_HashInitError, __pyx_mstate_global->__pyx_n_u_HashInitError, (PyObject *) NULL, __pyx_mstate_global->__pyx_n_u_ssh2_exceptions, __pyx_mstate_global->__pyx_kp_u_Raised_on_hash_initialisation_er); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (__pyx_t_3 != __pyx_t_4) { + if (unlikely((PyDict_SetItemString(__pyx_t_2, "__orig_bases__", __pyx_t_4) < 0))) __PYX_ERR(0, 322, __pyx_L1_error) + } + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_5, __pyx_mstate_global->__pyx_n_u_HashInitError, __pyx_t_3, __pyx_t_2, NULL, 0, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_HashInitError, __pyx_t_4) < 0) __PYX_ERR(0, 322, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + /* "ssh2/exceptions.pyx":326 + * + * + * class HashCalcError(SSH2Error): # <<<<<<<<<<<<<< + * """Raised on hash calculation error""" + * +*/ + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SSH2Error); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = PyTuple_Pack(1, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PEP560_update_bases(__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_4 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_3, __pyx_mstate_global->__pyx_n_u_HashCalcError, __pyx_mstate_global->__pyx_n_u_HashCalcError, (PyObject *) NULL, __pyx_mstate_global->__pyx_n_u_ssh2_exceptions, __pyx_mstate_global->__pyx_kp_u_Raised_on_hash_calculation_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + if (__pyx_t_3 != __pyx_t_5) { + if (unlikely((PyDict_SetItemString(__pyx_t_4, "__orig_bases__", __pyx_t_5) < 0))) __PYX_ERR(0, 326, __pyx_L1_error) + } + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_HashCalcError, __pyx_t_3, __pyx_t_4, NULL, 0, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_HashCalcError, __pyx_t_5) < 0) __PYX_ERR(0, 326, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + /* "ssh2/exceptions.pyx":330 + * + * + * class UnknownError(SSH2Error): # <<<<<<<<<<<<<< + * """Raised on non-specific or unknown errors""" +*/ + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_mstate_global->__pyx_n_u_SSH2Error); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_2 = PyTuple_Pack(1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PEP560_update_bases(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_4 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_Py3MetaclassPrepare(__pyx_t_4, __pyx_t_3, __pyx_mstate_global->__pyx_n_u_UnknownError, __pyx_mstate_global->__pyx_n_u_UnknownError, (PyObject *) NULL, __pyx_mstate_global->__pyx_n_u_ssh2_exceptions, __pyx_mstate_global->__pyx_kp_u_Raised_on_non_specific_or_unknow); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + if (__pyx_t_3 != __pyx_t_2) { + if (unlikely((PyDict_SetItemString(__pyx_t_5, "__orig_bases__", __pyx_t_2) < 0))) __PYX_ERR(0, 330, __pyx_L1_error) + } + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_Py3ClassCreate(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_UnknownError, __pyx_t_3, __pyx_t_5, NULL, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_UnknownError, __pyx_t_2) < 0) __PYX_ERR(0, 318, __pyx_L1_error) + if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_UnknownError, __pyx_t_2) < 0) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -5141,6 +5243,8 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_DecryptError, sizeof(__pyx_k_DecryptError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_DecryptError */ {__pyx_k_EncryptError, sizeof(__pyx_k_EncryptError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_EncryptError */ {__pyx_k_FileError, sizeof(__pyx_k_FileError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FileError */ + {__pyx_k_HashCalcError, sizeof(__pyx_k_HashCalcError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HashCalcError */ + {__pyx_k_HashInitError, sizeof(__pyx_k_HashInitError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HashInitError */ {__pyx_k_HostkeyInitError, sizeof(__pyx_k_HostkeyInitError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HostkeyInitError */ {__pyx_k_HostkeySignError, sizeof(__pyx_k_HostkeySignError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HostkeySignError */ {__pyx_k_InvalidMACError, sizeof(__pyx_k_InvalidMACError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_InvalidMACError */ @@ -5161,6 +5265,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_KnownHostReadLineError, sizeof(__pyx_k_KnownHostReadLineError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KnownHostReadLineError */ {__pyx_k_KnownHostWriteFileError, sizeof(__pyx_k_KnownHostWriteFileError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KnownHostWriteFileError */ {__pyx_k_KnownHostWriteLineError, sizeof(__pyx_k_KnownHostWriteLineError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KnownHostWriteLineError */ + {__pyx_k_MacFailureError, sizeof(__pyx_k_MacFailureError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MacFailureError */ {__pyx_k_MethodNoneError, sizeof(__pyx_k_MethodNoneError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MethodNoneError */ {__pyx_k_MethodNotSupported, sizeof(__pyx_k_MethodNotSupported), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MethodNotSupported */ {__pyx_k_MissingUserAuthBannerError, sizeof(__pyx_k_MissingUserAuthBannerError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MissingUserAuthBannerError */ @@ -5173,6 +5278,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_PublickeyUnverifiedError, sizeof(__pyx_k_PublickeyUnverifiedError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_PublickeyUnverifiedError */ {__pyx_k_Raised_on_API_bad_use_errors, sizeof(__pyx_k_Raised_on_API_bad_use_errors), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_API_bad_use_errors */ {__pyx_k_Raised_on_KEX_failure, sizeof(__pyx_k_Raised_on_KEX_failure), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_KEX_failure */ + {__pyx_k_Raised_on_MAC_failure_error, sizeof(__pyx_k_Raised_on_MAC_failure_error), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_MAC_failure_error */ {__pyx_k_Raised_on_SCP_protocol_errors, sizeof(__pyx_k_Raised_on_SCP_protocol_errors), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_SCP_protocol_errors */ {__pyx_k_Raised_on_SFTP_handle_errors, sizeof(__pyx_k_Raised_on_SFTP_handle_errors), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_SFTP_handle_errors */ {__pyx_k_Raised_on_SFTP_protocol_errors, sizeof(__pyx_k_Raised_on_SFTP_protocol_errors), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_SFTP_protocol_errors */ @@ -5211,6 +5317,8 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_Raised_on_errors_writing_line_to, sizeof(__pyx_k_Raised_on_errors_writing_line_to), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_errors_writing_line_to */ {__pyx_k_Raised_on_errors_writing_to_know, sizeof(__pyx_k_Raised_on_errors_writing_to_know), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_errors_writing_to_know */ {__pyx_k_Raised_on_file_errors, sizeof(__pyx_k_Raised_on_file_errors), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_file_errors */ + {__pyx_k_Raised_on_hash_calculation_error, sizeof(__pyx_k_Raised_on_hash_calculation_error), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_hash_calculation_error */ + {__pyx_k_Raised_on_hash_initialisation_er, sizeof(__pyx_k_Raised_on_hash_initialisation_er), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_hash_initialisation_er */ {__pyx_k_Raised_on_invalid_MAC, sizeof(__pyx_k_Raised_on_invalid_MAC), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_invalid_MAC */ {__pyx_k_Raised_on_invalid_method_errors, sizeof(__pyx_k_Raised_on_invalid_method_errors), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_invalid_method_errors */ {__pyx_k_Raised_on_invalid_poll_type_erro, sizeof(__pyx_k_Raised_on_invalid_poll_type_erro), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Raised_on_invalid_poll_type_erro */ diff --git a/ssh2/exceptions.pyx b/ssh2/exceptions.pyx index 646ae779..40516592 100644 --- a/ssh2/exceptions.pyx +++ b/ssh2/exceptions.pyx @@ -315,5 +315,17 @@ class AlgoUnsupportedError(SSH2Error): """Raised on unsupported algorithm error""" +class MacFailureError(SSH2Error): + """Raised on MAC failure error""" + + +class HashInitError(SSH2Error): + """Raised on hash initialisation error""" + + +class HashCalcError(SSH2Error): + """Raised on hash calculation error""" + + class UnknownError(SSH2Error): """Raised on non-specific or unknown errors""" diff --git a/ssh2/utils.c b/ssh2/utils.c index 9093fbb6..7f3bb590 100644 --- a/ssh2/utils.c +++ b/ssh2/utils.c @@ -2366,6 +2366,8 @@ static const char __pyx_k_RandGenError[] = "RandGenError"; static const char __pyx_k_UnknownError[] = "UnknownError"; static const char __pyx_k_is_coroutine[] = "_is_coroutine"; static const char __pyx_k_CompressError[] = "CompressError"; +static const char __pyx_k_HashCalcError[] = "HashCalcError"; +static const char __pyx_k_HashInitError[] = "HashInitError"; static const char __pyx_k_ProtocolError[] = "ProtocolError"; static const char __pyx_k_SocketTimeout[] = "SocketTimeout"; static const char __pyx_k_BadSocketError[] = "BadSocketError"; @@ -2376,6 +2378,7 @@ static const char __pyx_k_BannerRecvError[] = "BannerRecvError"; static const char __pyx_k_BannerSendError[] = "BannerSendError"; static const char __pyx_k_InvalidMACError[] = "InvalidMACError"; static const char __pyx_k_KexFailureError[] = "KexFailureError"; +static const char __pyx_k_MacFailureError[] = "MacFailureError"; static const char __pyx_k_MethodNoneError[] = "MethodNoneError"; static const char __pyx_k_SocketRecvError[] = "SocketRecvError"; static const char __pyx_k_SocketSendError[] = "SocketSendError"; @@ -2415,7 +2418,7 @@ static const char __pyx_k_PublicKeyProtocolError[] = "PublicKeyProtocolError"; static const char __pyx_k_PublickeyUnverifiedError[] = "PublickeyUnverifiedError"; static const char __pyx_k_MissingUserAuthBannerError[] = "MissingUserAuthBannerError"; static const char __pyx_k_31_2_Q_q_aq_x_DA_q_x_EQ_6_T[] = "\320\0003\2601\360\014\000\005\033\230'\320!2\260!\330\004\007\200{\220#\220Q\330\010\017\210q\330\004\016\210a\210q\330\014\027\220x\320\037D\300A\330\004\017\210q\220\001\330\014\027\220x\320\037E\300Q\330\004\013\2106\220\021\220)\230:\240T\250\021"; -static const char __pyx_k_2_xs_q_q_q_q_j_q_j_q_j_q_j_q_j[] = "\320\0002\260!\360\026\000\005\010\200x\210s\220!\330\010\017\210q\330\t\021\220\036\230q\330\010\017\210q\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036""\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\360\006\000\t\014\2108\2202\220Q\330\014\022\220*\230M\250\021\320*E\300Q\330\010\017\210q"; +static const char __pyx_k_2_xs_q_q_q_q_j_q_j_q_j_q_j_q_j[] = "\320\0002\260!\360\026\000\005\010\200x\210s\220!\330\010\017\210q\330\t\021\220\036\230q\330\010\017\210q\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036""\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\330\t\021\220\036\230q\330\010\016\210j\230\001\360\006\000\t\014\2108\2202\220Q\330\014\022\220*\230M\250\021\320*E\300Q\330\010\017\210q"; static const char __pyx_k_Note_that_Cython_is_deliberately[] = "Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the 'annotation_typing' directive to False."; /* #### Code section: decls ### */ static PyObject *__pyx_pf_4ssh2_5utils_find_eol(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_buf, Py_ssize_t __pyx_v_pos); /* proto */ @@ -2467,7 +2470,7 @@ typedef struct { __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop; PyObject *__pyx_tuple[1]; PyObject *__pyx_codeobj_tab[5]; - PyObject *__pyx_string_tab[97]; + PyObject *__pyx_string_tab[100]; PyObject *__pyx_int_0; PyObject *__pyx_int_1; PyObject *__pyx_int_neg_1; @@ -2533,78 +2536,81 @@ static __pyx_mstatetype * const __pyx_mstate_global = &__pyx_mstate_global_stati #define __pyx_n_u_EncryptError __pyx_string_tab[22] #define __pyx_kp_u_Error_code_s_not_known __pyx_string_tab[23] #define __pyx_n_u_FileError __pyx_string_tab[24] -#define __pyx_n_u_HostkeyInitError __pyx_string_tab[25] -#define __pyx_n_u_HostkeySignError __pyx_string_tab[26] -#define __pyx_n_u_InvalidMACError __pyx_string_tab[27] -#define __pyx_n_u_InvalidPollTypeError __pyx_string_tab[28] -#define __pyx_n_u_InvalidRequestError __pyx_string_tab[29] -#define __pyx_n_u_KexFailureError __pyx_string_tab[30] -#define __pyx_n_u_KeyExchangeError __pyx_string_tab[31] -#define __pyx_n_u_KeyfileAuthFailedError __pyx_string_tab[32] -#define __pyx_n_u_KnownHostError __pyx_string_tab[33] -#define __pyx_n_u_MethodNoneError __pyx_string_tab[34] -#define __pyx_n_u_MethodNotSupported __pyx_string_tab[35] -#define __pyx_n_u_MissingUserAuthBannerError __pyx_string_tab[36] -#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[37] -#define __pyx_n_u_OutOfBoundaryError __pyx_string_tab[38] -#define __pyx_n_u_PasswordExpiredError __pyx_string_tab[39] -#define __pyx_n_u_ProtocolError __pyx_string_tab[40] -#define __pyx_n_u_PublicKeyProtocolError __pyx_string_tab[41] -#define __pyx_n_u_PublickeyUnverifiedError __pyx_string_tab[42] -#define __pyx_n_u_RandGenError __pyx_string_tab[43] -#define __pyx_n_u_RequestDeniedError __pyx_string_tab[44] -#define __pyx_n_u_SCPProtocolError __pyx_string_tab[45] -#define __pyx_n_u_SFTPProtocolError __pyx_string_tab[46] -#define __pyx_n_u_SSH2Error __pyx_string_tab[47] -#define __pyx_n_u_SocketDisconnectError __pyx_string_tab[48] -#define __pyx_n_u_SocketRecvError __pyx_string_tab[49] -#define __pyx_n_u_SocketSendError __pyx_string_tab[50] -#define __pyx_n_u_SocketTimeout __pyx_string_tab[51] -#define __pyx_n_u_Timeout __pyx_string_tab[52] -#define __pyx_n_u_UnknownError __pyx_string_tab[53] -#define __pyx_n_u_ZlibError __pyx_string_tab[54] -#define __pyx_n_u__2 __pyx_string_tab[55] -#define __pyx_kp_u__3 __pyx_string_tab[56] -#define __pyx_kp_u_add_note __pyx_string_tab[57] -#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[58] -#define __pyx_n_u_block_directions __pyx_string_tab[59] -#define __pyx_n_u_buf __pyx_string_tab[60] -#define __pyx_n_u_buf_len __pyx_string_tab[61] -#define __pyx_n_u_c_buf __pyx_string_tab[62] -#define __pyx_n_u_cline_in_traceback __pyx_string_tab[63] -#define __pyx_n_u_cur_buf __pyx_string_tab[64] -#define __pyx_n_u_decode __pyx_string_tab[65] -#define __pyx_n_u_directions __pyx_string_tab[66] -#define __pyx_n_u_encode __pyx_string_tab[67] -#define __pyx_n_u_errcode __pyx_string_tab[68] -#define __pyx_n_u_exceptions __pyx_string_tab[69] -#define __pyx_n_u_find_eol __pyx_string_tab[70] -#define __pyx_n_u_func __pyx_string_tab[71] -#define __pyx_n_u_handle_error_codes __pyx_string_tab[72] -#define __pyx_n_u_index __pyx_string_tab[73] -#define __pyx_n_u_is_coroutine __pyx_string_tab[74] -#define __pyx_n_u_main __pyx_string_tab[75] -#define __pyx_n_u_module __pyx_string_tab[76] -#define __pyx_n_u_name __pyx_string_tab[77] -#define __pyx_n_u_new_pos __pyx_string_tab[78] -#define __pyx_n_u_pop __pyx_string_tab[79] -#define __pyx_n_u_pos __pyx_string_tab[80] -#define __pyx_n_u_qualname __pyx_string_tab[81] -#define __pyx_n_u_readfds __pyx_string_tab[82] -#define __pyx_n_u_required_version __pyx_string_tab[83] -#define __pyx_n_u_select __pyx_string_tab[84] -#define __pyx_n_u_session __pyx_string_tab[85] -#define __pyx_n_u_set_name __pyx_string_tab[86] -#define __pyx_n_u_socket __pyx_string_tab[87] -#define __pyx_n_u_ssh2_exit __pyx_string_tab[88] -#define __pyx_n_u_ssh2_utils __pyx_string_tab[89] -#define __pyx_kp_u_ssh2_utils_pyx __pyx_string_tab[90] -#define __pyx_n_u_test __pyx_string_tab[91] -#define __pyx_n_u_timeout __pyx_string_tab[92] -#define __pyx_kp_u_utf_8 __pyx_string_tab[93] -#define __pyx_n_u_version __pyx_string_tab[94] -#define __pyx_n_u_wait_socket __pyx_string_tab[95] -#define __pyx_n_u_writefds __pyx_string_tab[96] +#define __pyx_n_u_HashCalcError __pyx_string_tab[25] +#define __pyx_n_u_HashInitError __pyx_string_tab[26] +#define __pyx_n_u_HostkeyInitError __pyx_string_tab[27] +#define __pyx_n_u_HostkeySignError __pyx_string_tab[28] +#define __pyx_n_u_InvalidMACError __pyx_string_tab[29] +#define __pyx_n_u_InvalidPollTypeError __pyx_string_tab[30] +#define __pyx_n_u_InvalidRequestError __pyx_string_tab[31] +#define __pyx_n_u_KexFailureError __pyx_string_tab[32] +#define __pyx_n_u_KeyExchangeError __pyx_string_tab[33] +#define __pyx_n_u_KeyfileAuthFailedError __pyx_string_tab[34] +#define __pyx_n_u_KnownHostError __pyx_string_tab[35] +#define __pyx_n_u_MacFailureError __pyx_string_tab[36] +#define __pyx_n_u_MethodNoneError __pyx_string_tab[37] +#define __pyx_n_u_MethodNotSupported __pyx_string_tab[38] +#define __pyx_n_u_MissingUserAuthBannerError __pyx_string_tab[39] +#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[40] +#define __pyx_n_u_OutOfBoundaryError __pyx_string_tab[41] +#define __pyx_n_u_PasswordExpiredError __pyx_string_tab[42] +#define __pyx_n_u_ProtocolError __pyx_string_tab[43] +#define __pyx_n_u_PublicKeyProtocolError __pyx_string_tab[44] +#define __pyx_n_u_PublickeyUnverifiedError __pyx_string_tab[45] +#define __pyx_n_u_RandGenError __pyx_string_tab[46] +#define __pyx_n_u_RequestDeniedError __pyx_string_tab[47] +#define __pyx_n_u_SCPProtocolError __pyx_string_tab[48] +#define __pyx_n_u_SFTPProtocolError __pyx_string_tab[49] +#define __pyx_n_u_SSH2Error __pyx_string_tab[50] +#define __pyx_n_u_SocketDisconnectError __pyx_string_tab[51] +#define __pyx_n_u_SocketRecvError __pyx_string_tab[52] +#define __pyx_n_u_SocketSendError __pyx_string_tab[53] +#define __pyx_n_u_SocketTimeout __pyx_string_tab[54] +#define __pyx_n_u_Timeout __pyx_string_tab[55] +#define __pyx_n_u_UnknownError __pyx_string_tab[56] +#define __pyx_n_u_ZlibError __pyx_string_tab[57] +#define __pyx_n_u__2 __pyx_string_tab[58] +#define __pyx_kp_u__3 __pyx_string_tab[59] +#define __pyx_kp_u_add_note __pyx_string_tab[60] +#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[61] +#define __pyx_n_u_block_directions __pyx_string_tab[62] +#define __pyx_n_u_buf __pyx_string_tab[63] +#define __pyx_n_u_buf_len __pyx_string_tab[64] +#define __pyx_n_u_c_buf __pyx_string_tab[65] +#define __pyx_n_u_cline_in_traceback __pyx_string_tab[66] +#define __pyx_n_u_cur_buf __pyx_string_tab[67] +#define __pyx_n_u_decode __pyx_string_tab[68] +#define __pyx_n_u_directions __pyx_string_tab[69] +#define __pyx_n_u_encode __pyx_string_tab[70] +#define __pyx_n_u_errcode __pyx_string_tab[71] +#define __pyx_n_u_exceptions __pyx_string_tab[72] +#define __pyx_n_u_find_eol __pyx_string_tab[73] +#define __pyx_n_u_func __pyx_string_tab[74] +#define __pyx_n_u_handle_error_codes __pyx_string_tab[75] +#define __pyx_n_u_index __pyx_string_tab[76] +#define __pyx_n_u_is_coroutine __pyx_string_tab[77] +#define __pyx_n_u_main __pyx_string_tab[78] +#define __pyx_n_u_module __pyx_string_tab[79] +#define __pyx_n_u_name __pyx_string_tab[80] +#define __pyx_n_u_new_pos __pyx_string_tab[81] +#define __pyx_n_u_pop __pyx_string_tab[82] +#define __pyx_n_u_pos __pyx_string_tab[83] +#define __pyx_n_u_qualname __pyx_string_tab[84] +#define __pyx_n_u_readfds __pyx_string_tab[85] +#define __pyx_n_u_required_version __pyx_string_tab[86] +#define __pyx_n_u_select __pyx_string_tab[87] +#define __pyx_n_u_session __pyx_string_tab[88] +#define __pyx_n_u_set_name __pyx_string_tab[89] +#define __pyx_n_u_socket __pyx_string_tab[90] +#define __pyx_n_u_ssh2_exit __pyx_string_tab[91] +#define __pyx_n_u_ssh2_utils __pyx_string_tab[92] +#define __pyx_kp_u_ssh2_utils_pyx __pyx_string_tab[93] +#define __pyx_n_u_test __pyx_string_tab[94] +#define __pyx_n_u_timeout __pyx_string_tab[95] +#define __pyx_kp_u_utf_8 __pyx_string_tab[96] +#define __pyx_n_u_version __pyx_string_tab[97] +#define __pyx_n_u_wait_socket __pyx_string_tab[98] +#define __pyx_n_u_writefds __pyx_string_tab[99] /* #### Code section: module_state_clear ### */ #if CYTHON_USE_MODULE_STATE static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { @@ -2630,7 +2636,7 @@ static CYTHON_SMALL_CODE int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_ptype_4ssh2_7session_FlagType); for (int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); } for (int i=0; i<5; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<97; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } + for (int i=0; i<100; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); } Py_CLEAR(clear_module_state->__pyx_int_0); Py_CLEAR(clear_module_state->__pyx_int_1); Py_CLEAR(clear_module_state->__pyx_int_neg_1); @@ -2659,7 +2665,7 @@ static CYTHON_SMALL_CODE int __pyx_m_traverse(PyObject *m, visitproc visit, void Py_VISIT(traverse_module_state->__pyx_ptype_4ssh2_7session_FlagType); for (int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); } for (int i=0; i<5; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); } - for (int i=0; i<97; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } + for (int i=0; i<100; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); } __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_0); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_1); __Pyx_VISIT_CONST(traverse_module_state->__pyx_int_neg_1); @@ -5290,8 +5296,8 @@ static int __pyx_f_4ssh2_5utils_handle_error_codes(int __pyx_v_errcode, CYTHON_U * raise exceptions.MissingUserAuthBannerError * elif errcode == error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED: * raise exceptions.AlgoUnsupportedError # <<<<<<<<<<<<<< - * else: - * # Switch default + * elif errcode == error_codes._LIBSSH2_ERROR_MAC_FAILURE: + * raise exceptions.MacFailureError */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exceptions); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); @@ -5307,12 +5313,90 @@ static int __pyx_f_4ssh2_5utils_handle_error_codes(int __pyx_v_errcode, CYTHON_U * raise exceptions.MissingUserAuthBannerError * elif errcode == error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED: # <<<<<<<<<<<<<< * raise exceptions.AlgoUnsupportedError + * elif errcode == error_codes._LIBSSH2_ERROR_MAC_FAILURE: +*/ + break; + case LIBSSH2_ERROR_MAC_FAILURE: + + /* "ssh2/utils.pyx":232 + * raise exceptions.AlgoUnsupportedError + * elif errcode == error_codes._LIBSSH2_ERROR_MAC_FAILURE: + * raise exceptions.MacFailureError # <<<<<<<<<<<<<< + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_INIT: + * raise exceptions.HashInitError +*/ + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_exceptions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 232, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_MacFailureError); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 232, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_Raise(__pyx_t_2, 0, 0, 0); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __PYX_ERR(0, 232, __pyx_L1_error) + + /* "ssh2/utils.pyx":231 + * elif errcode == error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED: + * raise exceptions.AlgoUnsupportedError + * elif errcode == error_codes._LIBSSH2_ERROR_MAC_FAILURE: # <<<<<<<<<<<<<< + * raise exceptions.MacFailureError + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_INIT: +*/ + break; + case LIBSSH2_ERROR_HASH_INIT: + + /* "ssh2/utils.pyx":234 + * raise exceptions.MacFailureError + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_INIT: + * raise exceptions.HashInitError # <<<<<<<<<<<<<< + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_CALC: + * raise exceptions.HashCalcError +*/ + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_exceptions); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 234, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_mstate_global->__pyx_n_u_HashInitError); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 234, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(0, 234, __pyx_L1_error) + + /* "ssh2/utils.pyx":233 + * elif errcode == error_codes._LIBSSH2_ERROR_MAC_FAILURE: + * raise exceptions.MacFailureError + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_INIT: # <<<<<<<<<<<<<< + * raise exceptions.HashInitError + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_CALC: +*/ + break; + case LIBSSH2_ERROR_HASH_CALC: + + /* "ssh2/utils.pyx":236 + * raise exceptions.HashInitError + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_CALC: + * raise exceptions.HashCalcError # <<<<<<<<<<<<<< + * else: + * # Switch default +*/ + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_exceptions); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 236, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_mstate_global->__pyx_n_u_HashCalcError); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 236, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_Raise(__pyx_t_2, 0, 0, 0); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __PYX_ERR(0, 236, __pyx_L1_error) + + /* "ssh2/utils.pyx":235 + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_INIT: + * raise exceptions.HashInitError + * elif errcode == error_codes._LIBSSH2_ERROR_HASH_CALC: # <<<<<<<<<<<<<< + * raise exceptions.HashCalcError * else: */ break; default: - /* "ssh2/utils.pyx":233 + /* "ssh2/utils.pyx":239 * else: * # Switch default * if errcode < 0: # <<<<<<<<<<<<<< @@ -5322,46 +5406,46 @@ static int __pyx_f_4ssh2_5utils_handle_error_codes(int __pyx_v_errcode, CYTHON_U __pyx_t_3 = (__pyx_v_errcode < 0); if (unlikely(__pyx_t_3)) { - /* "ssh2/utils.pyx":234 + /* "ssh2/utils.pyx":240 * # Switch default * if errcode < 0: * raise exceptions.UnknownError("Error code %s not known", errcode) # <<<<<<<<<<<<<< * return errcode */ - __pyx_t_2 = NULL; - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exceptions); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 234, __pyx_L1_error) + __pyx_t_1 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_exceptions); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 240, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_UnknownError); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 234, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_mstate_global->__pyx_n_u_UnknownError); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 240, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyLong_From_int(__pyx_v_errcode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 234, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyLong_From_int(__pyx_v_errcode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 240, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = 1; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_5); - assert(__pyx_t_2); + __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); + assert(__pyx_t_1); PyObject* __pyx__function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(__pyx__function); __Pyx_DECREF_SET(__pyx_t_5, __pyx__function); __pyx_t_6 = 0; } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_mstate_global->__pyx_kp_u_Error_code_s_not_known, __pyx_t_4}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (3-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_mstate_global->__pyx_kp_u_Error_code_s_not_known, __pyx_t_4}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+__pyx_t_6, (3-__pyx_t_6) | (__pyx_t_6*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET)); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 234, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 240, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); } - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(0, 234, __pyx_L1_error) + __Pyx_Raise(__pyx_t_2, 0, 0, 0); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __PYX_ERR(0, 240, __pyx_L1_error) - /* "ssh2/utils.pyx":233 + /* "ssh2/utils.pyx":239 * else: * # Switch default * if errcode < 0: # <<<<<<<<<<<<<< @@ -5370,7 +5454,7 @@ static int __pyx_f_4ssh2_5utils_handle_error_codes(int __pyx_v_errcode, CYTHON_U */ } - /* "ssh2/utils.pyx":235 + /* "ssh2/utils.pyx":241 * if errcode < 0: * raise exceptions.UnknownError("Error code %s not known", errcode) * return errcode # <<<<<<<<<<<<<< @@ -6135,6 +6219,8 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_EncryptError, sizeof(__pyx_k_EncryptError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_EncryptError */ {__pyx_k_Error_code_s_not_known, sizeof(__pyx_k_Error_code_s_not_known), 0, 1, 0}, /* PyObject cname: __pyx_kp_u_Error_code_s_not_known */ {__pyx_k_FileError, sizeof(__pyx_k_FileError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_FileError */ + {__pyx_k_HashCalcError, sizeof(__pyx_k_HashCalcError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HashCalcError */ + {__pyx_k_HashInitError, sizeof(__pyx_k_HashInitError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HashInitError */ {__pyx_k_HostkeyInitError, sizeof(__pyx_k_HostkeyInitError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HostkeyInitError */ {__pyx_k_HostkeySignError, sizeof(__pyx_k_HostkeySignError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_HostkeySignError */ {__pyx_k_InvalidMACError, sizeof(__pyx_k_InvalidMACError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_InvalidMACError */ @@ -6144,6 +6230,7 @@ static const __Pyx_StringTabEntry __pyx_string_tab[] = { {__pyx_k_KeyExchangeError, sizeof(__pyx_k_KeyExchangeError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KeyExchangeError */ {__pyx_k_KeyfileAuthFailedError, sizeof(__pyx_k_KeyfileAuthFailedError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KeyfileAuthFailedError */ {__pyx_k_KnownHostError, sizeof(__pyx_k_KnownHostError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_KnownHostError */ + {__pyx_k_MacFailureError, sizeof(__pyx_k_MacFailureError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MacFailureError */ {__pyx_k_MethodNoneError, sizeof(__pyx_k_MethodNoneError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MethodNoneError */ {__pyx_k_MethodNotSupported, sizeof(__pyx_k_MethodNotSupported), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MethodNotSupported */ {__pyx_k_MissingUserAuthBannerError, sizeof(__pyx_k_MissingUserAuthBannerError), 0, 1, 1}, /* PyObject cname: __pyx_n_u_MissingUserAuthBannerError */ @@ -6301,7 +6388,7 @@ static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) { __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_utils_pyx, __pyx_mstate->__pyx_n_u_wait_socket, __pyx_k_31_2_Q_q_aq_x_DA_q_x_EQ_6_T, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3])) goto bad; } { - const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 116, 763}; + const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 116, 805}; PyObject* const varnames[] = {__pyx_mstate->__pyx_n_u_errcode}; __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_ssh2_utils_pyx, __pyx_mstate->__pyx_n_u_handle_error_codes, __pyx_k_2_xs_q_q_q_q_j_q_j_q_j_q_j_q_j, tuple_dedup_map); if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4])) goto bad; } diff --git a/ssh2/utils.pyx b/ssh2/utils.pyx index d96accff..8ee40efe 100644 --- a/ssh2/utils.pyx +++ b/ssh2/utils.pyx @@ -228,6 +228,12 @@ cpdef int handle_error_codes(int errcode) except -1: raise exceptions.MissingUserAuthBannerError elif errcode == error_codes._LIBSSH2_ERROR_ALGO_UNSUPPORTED: raise exceptions.AlgoUnsupportedError + elif errcode == error_codes._LIBSSH2_ERROR_MAC_FAILURE: + raise exceptions.MacFailureError + elif errcode == error_codes._LIBSSH2_ERROR_HASH_INIT: + raise exceptions.HashInitError + elif errcode == error_codes._LIBSSH2_ERROR_HASH_CALC: + raise exceptions.HashCalcError else: # Switch default if errcode < 0: diff --git a/tests/test_exceptions.py b/tests/test_exceptions.py index b2c9804b..c2f6c294 100644 --- a/tests/test_exceptions.py +++ b/tests/test_exceptions.py @@ -22,7 +22,8 @@ LIBSSH2_ERROR_AGENT_PROTOCOL, LIBSSH2_ERROR_SOCKET_RECV, \ LIBSSH2_ERROR_SOCKET_SEND, LIBSSH2_ERROR_ENCRYPT, \ LIBSSH2_ERROR_BAD_SOCKET, LIBSSH2_ERROR_KNOWN_HOSTS, \ - LIBSSH2_ERROR_RANDGEN, LIBSSH2_ERROR_MISSING_USERAUTH_BANNER, LIBSSH2_ERROR_ALGO_UNSUPPORTED + LIBSSH2_ERROR_RANDGEN, LIBSSH2_ERROR_MISSING_USERAUTH_BANNER, LIBSSH2_ERROR_ALGO_UNSUPPORTED, \ + LIBSSH2_ERROR_MAC_FAILURE, LIBSSH2_ERROR_HASH_INIT, LIBSSH2_ERROR_HASH_CALC from ssh2.exceptions import SSH2Error, AgentError, AuthenticationError, \ AgentConnectionError, AgentAuthenticationError, AgentListIdentitiesError, \ AgentGetIdentityError, AgentProtocolError, SessionError, \ @@ -40,7 +41,7 @@ BadUseError, CompressError, OutOfBoundaryError, SocketRecvError, \ SocketSendError, EncryptError, BadSocketError, SFTPError, SFTPProtocolError, \ KnownHostError, UnknownError, RandGenError, MissingUserAuthBannerError, \ - AlgoUnsupportedError + AlgoUnsupportedError, MacFailureError, HashInitError, HashCalcError from ssh2.utils import handle_error_codes @@ -70,6 +71,9 @@ def test_general_errors(self): self.assertRaises(RandGenError, handle_error_codes, LIBSSH2_ERROR_RANDGEN) self.assertRaises(MissingUserAuthBannerError, handle_error_codes, LIBSSH2_ERROR_MISSING_USERAUTH_BANNER) self.assertRaises(AlgoUnsupportedError, handle_error_codes, LIBSSH2_ERROR_ALGO_UNSUPPORTED) + self.assertRaises(MacFailureError, handle_error_codes, LIBSSH2_ERROR_MAC_FAILURE) + self.assertRaises(HashInitError, handle_error_codes, LIBSSH2_ERROR_HASH_INIT) + self.assertRaises(HashCalcError, handle_error_codes, LIBSSH2_ERROR_HASH_CALC) def test_channel_errors(self): self.assertRaises(ChannelOutOfOrderError, handle_error_codes, LIBSSH2_ERROR_CHANNEL_OUTOFORDER) From 0f3b352c374fcdc04086054dad641b0513bc8184 Mon Sep 17 00:00:00 2001 From: Panos Date: Sun, 5 Oct 2025 10:27:02 +0100 Subject: [PATCH 11/12] Updated changelog --- Changelog.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Changelog.rst b/Changelog.rst index 79ebe044..eec278af 100644 --- a/Changelog.rst +++ b/Changelog.rst @@ -15,7 +15,7 @@ Changes was called on a `SFTPHandle` or not. * Added `ssh2.channel.Channel.signal` function for sending signals over SSH to an open channel - #221 * Added `ssh2.session.Session.direct_streamlocal_ex` for creating `Channel` objects tunneling a local UNIX socket - via the remote host to a third party. + via the remote host to a third party - #40 * Added new `libssh2` error codes under `ssh2.error_codes`, equivalent Python exceptions under `ssh2.exceptions` and updated error code handling for all functions. * Removed deprecated `libssh2` `ssh2.channel.Channel` functions `receive_window_adjust`, `handle_extended_data` @@ -27,6 +27,7 @@ Packaging ---------- * Removed Windows Python 3.7 wheel builds. +* OSX binary wheels now use embedded `libssh2` rather than brew package. 1.1.2 From 63f2604b01cd6616f93dc9890fb1af846b59fed3 Mon Sep 17 00:00:00 2001 From: Panos Date: Sun, 5 Oct 2025 10:37:23 +0100 Subject: [PATCH 12/12] Fixes --- _setup_libssh2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_setup_libssh2.py b/_setup_libssh2.py index 9a1405d4..81d29445 100644 --- a/_setup_libssh2.py +++ b/_setup_libssh2.py @@ -42,5 +42,5 @@ def build_ssh2(): check_call('cmake --build . --config Release', shell=True, env=os.environ) os.chdir('..') - for src in glob('build_dir/src/libssh2.{so,dylib}*'): + for src in glob('build_dir/src/libssh2.so*'): copy2(src, 'ssh2/')