Warren
09dfcf1343
Implement Phase 14.3: SFTP packet accumulation (Critical fix)
**Problem Fixed**:
- SFTP packet incomplete errors solved
- Large file transfers now work (>=8KB)
- SSH splits large packets into multiple CHANNEL_DATA
**Implementation**:
- sftp_input_buffer: Vec<u8> accumulation field
- Accumulate CHANNEL_DATA until complete SFTP packet
- Parse length field (4 bytes) to determine packet size
- Process when buffer >= expected_total
- Clear buffer or keep remaining data
**Testing Results** ⭐⭐⭐⭐⭐:
- SFTP 1MB upload: SUCCESS ✅ (MD5: 38fd6536467443dfdc91f89c0fd573d8)
- SCP 1MB transfer: SUCCESS ✅ (MD5: 38fd6536467443dfdc91f89c0fd573d8)
- rsync 1MB transfer: SUCCESS ✅ (53.84MB/s)
- rsync 2MB transfer: FAILED ❌ (rsync protocol issue, separate from accumulation)
**Code Changes**:
- handle_channel_data(): 40 lines modified
- Accumulation logic with buffer management
- Multiple packet handling (remaining data preserved)
**Key Achievement**:
- SFTP/SCP large file support complete
- Only rsync protocol needs Phase 8 implementation
**Progress**: SSH 96% complete, SFTP/SCP subsystems fixed
2026-06-16 12:55:45 +08:00
..
2026-05-17 05:44:32 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-13 14:39:18 +08:00
2026-06-16 09:49:12 +08:00
2026-06-15 13:54:57 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-05-16 20:47:28 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 12:55:45 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 12:55:45 +08:00
2026-06-16 12:49:40 +08:00
2026-06-16 09:49:12 +08:00
2026-06-15 16:56:38 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00
2026-06-16 09:49:12 +08:00