Files transferred over shell protocol: Difference between revisions

Content deleted Content added
Citation bot (talk | contribs)
Add: website, title. Changed bare reference to CS1/2. | Use this bot. Report bugs. | Suggested by Grimes2 | #UCB_webform 406/1117
Tag: nowiki added
 
(One intermediate revision by one other user not shown)
Line 28:
 
== Session initiation ==
The client initiates SSH or RSH connection with <{{code>|echo FISH:;/bin/sh</code>|fish}} as the command executed on remote machine. This should make it possible for the server to distinguish FISH connections from normal RSH or SSH.
 
The first two commands sent to the server are <code>FISH</code> and <code>VER</code> to negotiate FISH protocol, its version and extensions.
{{sxhl|2=fish|<nowiki/>
 
#FISH
echo; start_fish_server; echo '### 200'
Line 37:
#VER 0.0.2 <feature1> <feature2> <...>
echo '### 000'
}}
 
The server may reply to VER command with a lines like
 
VER 0.0.0 <feature2> <...>
### 200
 
which indicates supported version of the FISH protocol and supported extensions.
 
== Implementations ==
* [[Midnight Commander]]<ref>{{cite web | url=https://github.com/MidnightCommander/mc/blob/master/src/vfs/fish/fish.c {{Bare| URLtitle=Mc/Fish.c at master · MidnightCommander/Mc inline|date website=August[[GitHub]] 2024}}</ref>
* [[Far Manager#Linux, MacOS and BSD version|far2l]]<ref>{{cite web | url=https://github.com/elfmz/far2l/issues/1819 | title=Feature: Consider porting FISH(FIle transfer over SHell filesystem) from Midnight Commander · Issue #1819 · elfmz/Far2l | website=[[GitHub]] }}</ref>
* [[Lftp]]<ref>{{cite web | url=https://github.com/lavv17/lftp/blob/master/src/Fish.cc | title=LFTP/SRC/Fish.cc at master · lavv17/LFTP | website=[[GitHub]] }}</ref>