some of the server implementations appear to be buggy and/or not totally spec compliant. SFTP is a “subsystem” mechanism of SSH, slightly vaguely defined at the connection protocol RFC-4254 layer of the SSH arch. first you have to open a session, then you can start a shell, execution of some command, or a “predefined subsystem” on the server. SFTP is one of the latter. it turns out there are actually a whole bunch of different SFTP versions, not one of which appears to have made it to an official RFC number from IETF, all remain personal or official drafts.