I'm implementing a custom sftp server for a project at work that will use an AWS compatible system as the backend. Based on what I am seeing, I'm thinking I should implement the sftp.Handlers interface using the s3.Uploader and s3.Downloader or s3.PutObject and s3.GetObject.
- Get: io.ReaderAt <- ??? <- io.Reader
- Put: io.WriterAt -> ??? -> io.Reader
I'm guessing ??? will be different in both cases but they both seem like they'd be a type of pipe where we hold data until it's available for the other end. Does something like this exist or do I need to implement it myself? Any suggestions on implementing it?