{"repo":"fclairamb/ftpserverlib","free":true,"listed":false,"github":"https://github.com/fclairamb/ftpserverlib","clone":"git clone https://github.com/fclairamb/ftpserverlib.git","description":"golang ftp server library","language":"Go","stars":473,"topics":["ftp-server","golang","golang-library"],"license":"MIT","category":"dev-tools","readme_excerpt":"Golang FTP Server library This library allows to easily build a simple and fully-featured FTP server using afero as the backend filesystem. If you're interested in a fully featured FTP server, you should use sftpgo (fully featured SFTP/FTP server) or ftpserver (basic FTP server). Current status of the project Features Uploading and downloading files Directory listing (LIST + MLST) File and directory deletion and renaming TLS support (AUTH + PROT) File download/upload resume support (REST) Passive socket connections (PASV and EPSV commands) Active socket connections (PORT and EPRT commands) IPv6 support (EPSV + EPRT) Small memory footprint Clean code: No sleep, no panic, no global sync (only around control/transfer connection per client) Uses only the standard library except for: afero for generic file systems handling Uses standard library log/slog for structured logging Supported extensions: AUTH - Control session protection AUTH TLS - TLS session PROT - Transfer protection EPRT/EPSV - IPv6 support MDTM - File Modification Time SIZE - Size of a file REST - Restart of interrupted transfer MLST - Simple file listing for machine processing MLSD - Directory listing for machine processing HASH - Hashing of files AVBL - Available space COMB - Combine files MODE Z - Transfer compression (deflate) Quick test The easiest way to test this library is to use ftpserver. The driver The simplest way to get a good understanding of how the driver shall be implemented is to look at the tests ","default_branch":null,"files":null,"tree":[],"storefront":"/r/fclairamb","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/fclairamb/ftpserverlib/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}