Any work around for no SFTP in LC?

Björnke von Gierke bvg at mac.com
Thu Jan 16 10:35:44 EST 2014


I haven't had to do this myself, but as you said it has come up her and there. As far as i know, sftp is easier to achieve then ftps, but there's several ways for both. Of course only as long as you don't ship for mobiles, where you're generally fucked (but hey, at least it's secure to download crapware, so mobiles got that going for them I guess).


1. Use an existing ftp software,and interact with it

This is what most people seem to do, it's done either trough shell, applescript/vba, open process or sockets. Of course you'd need to ship and install the other software for customers. Anyone who did it?

2. Use secure shell (only for sftp, NOT ftps!)

Modern OSes all have ways to open ssh (secure shell) to remote hosts via command line, and there are also third party secure command line tools, just as there are third party ftp tools. The relevance of secure shell is, that sftp is usually run as an extension of ssh (needs ssh 2), where ssh does the secure part, and then there's something similar to a 'normal' ftp session run after a secure shell connection is established. You probably need to pipe a lot, because there's no non-blocking shell() in LC. There's people who know a lot about command lines on the list (not me), so it might even be possible to cheaply commission this.

3. Implement sftp/ftps in LC natively

Using the build in secure socket support it's possible to implement a secure shell client, and then build sftp commands on top of that. Similar, you'd need to use secure socket and then implement standard ftp on top of that for ftps (well there's also the TSL way to negotiate about security after connecting, but i'm not sure if that needs to be on top of a secure socket, or if it's an alternative?). Anyway, that's a lot of work.

4. add ftps/sftp to the engine

currently there are non secure implementations for ftp on iOS as well as Android. They're not part of the libURL stack, but of the engine. Similarly, one could add secured ftp protocols to the engine directly, either by binding a open source library, or by implementing it in c or c++ yourself. There's probably a ton of c++ developers somewhere in the world who would love to do either on commission, but i have no idea how to find even even one.

5. RunRev

Oh right, you can of course wait for RR to finish 'refactoring' the language and other tasks they deemed more important. Up to now that only has taken them years, with no visible progress...

Further reading:
http://en.wikipedia.org/wiki/File_Transfer_Protocol
http://en.wikipedia.org/wiki/Ftps
http://tools.ietf.org/rfc/rfc4217.txt

http://en.wikipedia.org/wiki/Secure_Shell
http://en.wikipedia.org/wiki/SSH_file_transfer_protocol
http://tools.ietf.org/id/draft-ietf-secsh-filexfer-02.txt (according to fileZilla this is the version to use for sftp)

I'm sure some people can pitch in with what kind of workarounds they've used to achieve ftps?


On 16.01.2014, at 15:20, Jim Schaubeck <jimschaubeck at yahoo.com> wrote:

> I need to support SFTP for a project ...

-- 

Use an alternative Dictionary viewer:
http://bjoernke.com/bvgdocu/

Chat with other RunRev developers:
http://bjoernke.com/chatrev/






More information about the use-livecode mailing list