Remove EOF Check#786
Conversation
68e9eae to
bfa696a
Compare
|
Congratulations! One of the builds has completed. 🍾 You can install the built RPMs by following these steps:
Please note that the RPMs should be used only in a testing environment. |
7527685 to
09857ac
Compare
* Cisco SCP server will close the channel after retreiving a file and calling `ssh_scp_pull_request` will return `-1` and raise an exception aborting `get`
09857ac to
5a409ee
Compare
webknjaz
left a comment
There was a problem hiding this comment.
This would also require a test.
| @@ -0,0 +1,2 @@ | |||
| Remove the SCP EOF message check in the ``get`` method to allow libssh clients | |||
There was a problem hiding this comment.
Instead of using a TODO-list style imperative mood, use the writing style that explains the effect for the end-users compared to the previous release as if this is already included in a release. Sometimes, using the past tense helps.
There was a problem hiding this comment.
Here's where you can see the surrounding writing style to adjust your release note: https://ansible-pylibssh--786.org.readthedocs.build/en/786/changelog/#changelog.
| @@ -0,0 +1,2 @@ | |||
| Remove the SCP EOF message check in the ``get`` method to allow libssh clients | |||
| get files from Cisco SCP servers. -- by :user:`timway`. | |||
There was a problem hiding this comment.
Avoid periods right before the em dash.
| get files from Cisco SCP servers. -- by :user:`timway`. | |
| get files from Cisco SCP servers -- by :user:`timway`. |
|
cc @Jakuje could you check this out? |
|
Given that the CI with OpenSSH is happy about this, I think it is ok. Out of the curiosity, do you have more information what is the libssh returning with the cisco case on the line you removed? From my reading of the code, its something I would expect it should work, but I assume the timing or order of the messages is different from the OpenSSH case. |
|
Thanks @Jakuje and @webknjaz ! I'll work on rewording and linking of the changelog. I also looked at trying to get a test case that closes the channel after the bytes are read out but I haven't landed on something that works. Lastly we could keep the EOF check but gate it behind a check on the channel itself. I can look at that as well. In the linked issue I copied in the |
If this is possible, I think this would be preferred, if it could work. Thank you for digging into this! |
* Ensures this references the right GitHub bits to track down what it was for * Rephrase the changelog message
|
Congratulations! One of the builds has completed. 🍾 You can install the built RPMs by following these steps:
Please note that the RPMs should be used only in a testing environment. |
80e524b to
8051bcd
Compare
|
As commented on https://gitlab.com/libssh/libssh-mirror/-/issues/345, I think this is the best we can do now. We will try to solve this in libssh, but it will take some time and given that this part is mostly sanity check that there are no other pending data, I think it can be safely dropped. Given that we do not have easy way to test it against problematic server, I think we can live without additional tests. |
| Improve compatibility with Cisco SCP servers when fetching files by avoiding a | ||
| race condition on the EOF check -- by :user:`timway`. |
There was a problem hiding this comment.
@Jakuje could you help rephrase this so it'd be mergable? We need something for the end-users to understand how they are going to be affected and when.
There was a problem hiding this comment.
Would something like this work for you?
Removed non-mandatory EOF check after the SCP download procedure, which was causing race conditions with some Cisco devices.
Codecov Report✅ All modified and coverable lines are covered by tests. 🚀 New features to boost your workflow:
|
SUMMARY
ssh_scp_pull_requestwill return-1and raise an exception abortinggetFixes #785
ISSUE TYPE