| Summary: | possible problem with non-printing characters during scp copy | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Bill Parker <dogbert> | ||||||
| Component: | scp | Assignee: | OpenSSH Bugzilla mailing list <openssh-bugs> | ||||||
| Status: | CLOSED FIXED | ||||||||
| Severity: | normal | CC: | dtucker, zdenek | ||||||
| Priority: | P2 | ||||||||
| Version: | 3.6.1p2 | ||||||||
| Hardware: | ix86 | ||||||||
| OS: | Linux | ||||||||
| Bug Depends on: | |||||||||
| Bug Blocks: | 1289 | ||||||||
| Attachments: |
|
||||||||
|
Description
Bill Parker
2004-07-04 14:18:16 AEST
Created attachment 680 [details]
Encode newlines in filename for scp transfer
It looks like the sending scp bails on the file because the name contains a
newline (inside the protocol the file details are sent as "Cmodes size name\n"
so there's no way to encode a literal newline into a filename). When the
sending scp bails, the receiving scp gets out of sync and drops the connection.
We could do something like the attached which encodes them as printable chars.
The file will transfer but the name will be wrong.
On the other hand, the scp protocol is obsolete and has unfixable limitations,
it might not be worth fiddling with it any more.
If anyone wants to play with this, try:
mkdir /tmp/tmp1
perl -e 'open(a, ">/tmp/tmp1/t\n\r\n.HTM")';
scp -r /tmp/tmp1 localhost:/tmp/tmp2
*** Bug 1302 has been marked as a duplicate of this bug. *** Created attachment 1306 [details]
Update patch to current, remove debugging.
Thanks for the report, patch id #1306 will be in the 4.7 release. Close resolved bugs after release. |