https://github.com/marcobeierer/ftps
Implementation of the FTPS protocol for Golang.
https://github.com/marcobeierer/ftps
ftp ftp-client ftps go golang
Last synced: 6 months ago
JSON representation
Implementation of the FTPS protocol for Golang.
- Host: GitHub
- URL: https://github.com/marcobeierer/ftps
- Owner: marcobeierer
- License: isc
- Created: 2014-07-30T10:47:56.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2019-01-18T20:18:16.000Z (over 7 years ago)
- Last Synced: 2025-10-31T10:52:02.358Z (8 months ago)
- Topics: ftp, ftp-client, ftps, go, golang
- Language: Go
- Homepage: https://webguerilla.net/projects/go/ftps
- Size: 11.7 KB
- Stars: 29
- Watchers: 1
- Forks: 13
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FTPS Implementation for Go
## Information
This implementation does not implement the full FTP/FTPS specification. Only a small subset.
I have not done a security review of the code, yet. Therefore no guarantee is given. It would be nice if somebody could do a security review and report back if the implementation is vulnerable.
## Installation
go get github.com/webguerilla/ftps
## Usage
ftps := new(FTPS)
ftps.TLSConfig.InsecureSkipVerify = true // often necessary in shared hosting environments
ftps.Debug = true
err := ftps.Connect("localhost", 21)
if err != nil {
panic(err)
}
err = ftps.Login("username", "password")
if err != nil {
panic(err)
}
directory, err := ftps.PrintWorkingDirectory()
if err != nil {
panic(err)
}
log.Printf("Current working directory: %s", directory)
err = ftps.Quit()
if err != nil {
panic(err)
}
## Credits
This work was inspired by the work of jlaffaye (https://github.com/jlaffaye/ftp) and smallfish (https://github.com/smallfish/ftp).