| Summary: | ssh-agent -k doesn't check $SHELL environment variable | ||
|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Damian Menscher <menscher+bug> |
| Component: | ssh-agent | Assignee: | OpenSSH Bugzilla mailing list <openssh-bugs> |
| Status: | CLOSED FIXED | ||
| Severity: | minor | CC: | menscher+bug |
| Priority: | P3 | ||
| Version: | -current | ||
| Hardware: | All | ||
| OS: | All | ||
thanks, patch applied Mass change of RESOLVED bugs to CLOSED |
Line 882 of ssh-agent.c reads: if (ac == 0 && !c_flag && !k_flag && !s_flag && !d_flag) { stuff to set c_flag=1 iff $SHELL=*csh } This means that someone running ssh-agent -k will have k_flag set and therefore won't get the auto-shell determination, therefore leaving them with bash-style commands. I'm guessing the debug flag shouldn't be here either, so the correct line would read: if (ac == 0 && !c_flag && !s_flag) { This was originally found to be broken on IRIX 6.5.15m, but looking at the source made it obvious it was cross-platform.