package sftp // Error types that match the SFTP's SSH_FXP_STATUS codes. Gives you more // direct control of the errors being sent vs. letting the library work them // out from the standard os/io errors. type fxerr uint32 const ( ErrSshFxOk = fxerr(ssh_FX_OK) ErrSshFxEof = fxerr(ssh_FX_EOF) ErrSshFxNoSuchFile = fxerr(ssh_FX_NO_SUCH_FILE) ErrSshFxPermissionDenied = fxerr(ssh_FX_PERMISSION_DENIED) ErrSshFxFailure = fxerr(ssh_FX_FAILURE) ErrSshFxBadMessage = fxerr(ssh_FX_BAD_MESSAGE) ErrSshFxNoConnection = fxerr(ssh_FX_NO_CONNECTION) ErrSshFxConnectionLost = fxerr(ssh_FX_CONNECTION_LOST) ErrSshFxOpUnsupported = fxerr(ssh_FX_OP_UNSUPPORTED) ) func (e fxerr) Error() string { switch e { case ErrSshFxOk: return "OK" case ErrSshFxEof: return "EOF" case ErrSshFxNoSuchFile: return "No Such File" case ErrSshFxPermissionDenied: return "Permission Denied" case ErrSshFxBadMessage: return "Bad Message" case ErrSshFxNoConnection: return "No Connection" case ErrSshFxConnectionLost: return "Connection Lost" case ErrSshFxOpUnsupported: return "Operation Unsupported" default: return "Failure" } }