- Pascal 94.5%
- Assembly 4.1%
- HTML 0.5%
- Shell 0.4%
- C 0.2%
- Other 0.1%
SFTP/SCP tabs left open for a long time stopped working and never reconnected. Root causes: - TScpSend.Connect overrides Connect and never ran TFTPSendEx.Connect, the only place SO_KEEPALIVE was applied, so SSH sockets had no keep-alive at all and idle links got dropped (NAT/firewall timeout). - TScpSend.NetworkError required CanRead(0) AND last_errno<>0, so a server-closed idle session (readable socket, errno still 0) was reported healthy and never triggered a reconnect. - On a detected error it only re-logged-in on the dead session object. Changes: - Factor keep-alive into TFTPSendEx.ApplyKeepAlive and apply it to both the FTP control socket and the SSH socket. On Unix also tune TCP_KEEPIDLE/INTVL/CNT (30/10/3) so idle connections are probed within ~1 min: keeps NAT mappings open and detects dead peers quickly. - TScpSend.NetworkError now treats either condition (errno set or unexpected readable socket) as a dead link. - On a dead link FtpConnect discards the stale connection and reconnects fresh, reusing the cached password or prompting again when none is cached. A plain refresh then reconnects and re-lists the current folder. Quick connections (no stored entry) report unable to reconnect. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .github | ||
| components | ||
| default | ||
| doc | ||
| doublecmd.app/Contents | ||
| highlighters | ||
| install | ||
| language | ||
| libraries/src | ||
| pixmaps | ||
| plugins | ||
| scripts | ||
| sdk | ||
| src | ||
| tools | ||
| units | ||
| .gitattributes | ||
| .gitignore | ||
| build.bat | ||
| build.sh | ||
| clean.bat | ||
| clean.sh | ||
| doublecmd.help | ||
| doublecmd.lpg | ||
| doublecmd.png | ||
| doublecmd.sh | ||
| fpmake.pp | ||
| LICENSE.md | ||
| pinyin.tbl | ||
| README.md | ||
Double Commander is a free cross-platform open source file manager with two panels side by side (or one above the other). It is inspired by Total Commander and features some innovative new ideas.
Double Commander can be run on several platforms and operating systems. It supports 32-bit and 64-bit processors. See Supported platforms for a complete list.
See Double Commander in action in the Screenshot Gallery.
Where to start
Download
Go to the Double Commander download page to download the latest release.
You can check the latest version on the Versions page.
See if Double Commander is supported for your platform on the Supported platforms page.
Develop
For more information on the development of Double Commander, see the Development page.
Discuss
Go to our forum for discussions. There are English and Russian sections.
If you want to stay up-to-date with the project, you can check out the available news feeds.