Leading on from the LabSSH Library that I shared a while back, I have also created a LabSFTP LabVIEW library.
From Wikipedia, SFTP can be described as follows:
In computing, the SSH File Transfer Protocol (also Secure File Transfer Protocol, or SFTP) is a network protocol that provides file access, file transfer, and file management over any reliable data stream.
As with LabSSH, LabSFTP uses a custom .net class that incorporates some of the features of the RENCI SSH library.
LabSFTP offers the following features:
- Password authentication to a remote host
- Private/Public key authentication using the openssh key format
- The ability to get a list of files or folders from a specified location on a remote host
- The ability to upload files
- The ability to download files
- A public method to check the connection status
- A public method that will send a stay-awake signal at a specified interval
The video below shows the library being used in an application. The LabVIEW application is communicating with a LinuxLite installation running on a virtual machine.
To get up and running, open the library and start by running the test vi. This will create a connection, get a list of files from a specified location, upload a file and download a file. Make sure that your paths are correct. It has been left to the developer to make sure that files and paths are correct before executing the the specific methods.
As with all my posts, you can download the LabVIEW code below. If you have any feedback, please feel free to contact me on Google+ or send me an email. The LabVIEW application has been tested using LinuxLite and on the latest Raspbian Jessie image running on a Raspberry Pi3.