-
-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow request_exec with async I/O and more #576
Commits on Feb 6, 2024
-
Add low level call to request_exec and send_eof
To allow asynchronous handling of the execution.
Configuration menu - View commit details
-
Copy full SHA for 7b8ba12 - Browse repository at this point
Copy the full SHA 7b8ba12View commit details -
Add direct call to request_send_signal
OpenSSH now supports receiving signals for a long time. This is useful when you need to communicate with a process via signals.
Configuration menu - View commit details
-
Copy full SHA for dadb7dd - Browse repository at this point
Copy the full SHA dadb7ddView commit details -
Handle EOF in recv_nonblocking
If recv_nonblocking is called and the ssh command ended with EOF and empty output, the following error is produced because nbytes == SSS_EOF == -127: ``` File "src/pylibsshext/channel.pyx", line 112, in pylibsshext.channel.Channel.read_nonblocking SystemError: Negative size passed to PyBytes_FromStringAndSize ``` It is better to handle it gracefully.
Configuration menu - View commit details
-
Copy full SHA for 6d13cfe - Browse repository at this point
Copy the full SHA 6d13cfeView commit details -
When doing asynchronous I/O it is usefull to know when EOF is hit after polling for data.
Configuration menu - View commit details
-
Copy full SHA for 0b1a5ea - Browse repository at this point
Copy the full SHA 0b1a5eaView commit details -
Keep reference of Session in Channel
It may happen that a garbage collector collects Session object befor unclosed Channel. Then Channel's destructor tries to close the channel, libssh session is accessed but it is already freed, thus causing segfault. Keeping reference to the Session object makes sure that Session is collected after Channel.
Configuration menu - View commit details
-
Copy full SHA for b78f404 - Browse repository at this point
Copy the full SHA b78f404View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b9111f - Browse repository at this point
Copy the full SHA 0b9111fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4d1df86 - Browse repository at this point
Copy the full SHA 4d1df86View commit details -
tests: fix random timeout when connecting to ssh
Previous implementation of wait_for_svc_ready_state was not robust enough as it could return even if further ssh connections kept failing.
Configuration menu - View commit details
-
Copy full SHA for 376fc52 - Browse repository at this point
Copy the full SHA 376fc52View commit details