aws / aws/session-manager-plugin
Problem interpreting signals emitted by terminal on BSD systems properly
- Dominant language
- Go
- Stars
- 320
- Forks
- 97
- PR merge metrics
- No merged PRs in 30d
Description
NOTE: This issue's contents and title have been significantly changed as of Jan 15 because of some folks getting to the underlying issue.
The underlying issue is that when using a BSD-based system (like OS-X) this plugin sends some undesirable control signals. This appears to ONLY affect Macs, not Windows or Linux.
@pedros007 Believes this issue is related to [the ControlSignals handled by a ShellSession](https://github.com/aws/session-manager-plugin/blob/c523002ee02c8b68983ad05042ed52c44d867952/src/sessionmanagerplugin/session/shellsession/shellsession.go#L82-L96)
## Reproduce steps which seems to only happen on a MacOS terminal:
* Start a shell session `aws ssm start-session --target i-00112233445566778`
* Once connected, press Ctrl-y
* **Expected behavior**: paste from the kill-ring (which is empty, so nothing should happen)
* **Actual behavior**: The session terminates with the log line
```
Cannot perform start session: read /dev/stdin: resource temporarily unavailable
```
## The kludgy workaround currently is
* Run stty dsusp undef on your host.
* Start a shell session `aws ssm start-session --target i-00112233445566778`
* Press Ctrl-y to paste from the kill ring (which is empty, so nothing happens). This is what every other OS does, and what Linux normally does when you SSH.
For more details about this issue please see some of the comments towards the bottom of the thread/issue.
Contributor guide
Assessment
This issue has not been assessed yet.