MCPcopy Create free account
hub / github.com/SFML/SFML / makeSftpError

Function makeSftpError

src/SFML/Network/Sftp.cpp:184–238  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

182}
183
184sf::Sftp::Result makeSftpError(LIBSSH2_SFTP* sftp)
185{
186 using Value = sf::Sftp::Result::Value;
187
188 if (!sftp)
189 return sf::Sftp::Result(Value::Error, "General error");
190
191 switch (libssh2_sftp_last_error(sftp))
192 {
193 case LIBSSH2_FX_EOF:
194 return sf::Sftp::Result(Value::EndOfFile, "End of file");
195 case LIBSSH2_FX_NO_SUCH_FILE:
196 return sf::Sftp::Result(Value::NoSuchFile, "No such file");
197 case LIBSSH2_FX_PERMISSION_DENIED:
198 return sf::Sftp::Result(Value::PermissionDenied, "Permission denied");
199 case LIBSSH2_FX_FAILURE:
200 return sf::Sftp::Result(Value::Failure, "Failure");
201 case LIBSSH2_FX_BAD_MESSAGE:
202 return sf::Sftp::Result(Value::BadMessage, "Bad message");
203 case LIBSSH2_FX_NO_CONNECTION:
204 return sf::Sftp::Result(Value::NoConnection, "No connection");
205 case LIBSSH2_FX_CONNECTION_LOST:
206 return sf::Sftp::Result(Value::ConnectionLost, "Connection lost");
207 case LIBSSH2_FX_OP_UNSUPPORTED:
208 return sf::Sftp::Result(Value::OperationUnsupported, "Operation unsupported");
209 case LIBSSH2_FX_INVALID_HANDLE:
210 return sf::Sftp::Result(Value::InvalidHandle, "Invalid handle");
211 case LIBSSH2_FX_NO_SUCH_PATH:
212 return sf::Sftp::Result(Value::NoSuchPath, "No such path");
213 case LIBSSH2_FX_FILE_ALREADY_EXISTS:
214 return sf::Sftp::Result(Value::FileAlreadyExists, "File already exists");
215 case LIBSSH2_FX_WRITE_PROTECT:
216 return sf::Sftp::Result(Value::WriteProtect, "Write protect");
217 case LIBSSH2_FX_NO_MEDIA:
218 return sf::Sftp::Result(Value::NoMedia, "No media");
219 case LIBSSH2_FX_NO_SPACE_ON_FILESYSTEM:
220 return sf::Sftp::Result(Value::NoSpaceOnFileSystem, "No space on filesystem");
221 case LIBSSH2_FX_QUOTA_EXCEEDED:
222 return sf::Sftp::Result(Value::QuotaExceeded, "Quota exceeded");
223 case LIBSSH2_FX_UNKNOWN_PRINCIPAL:
224 return sf::Sftp::Result(Value::UnknownPrincipal, "Unknown principal");
225 case LIBSSH2_FX_LOCK_CONFLICT:
226 return sf::Sftp::Result(Value::LockConflict, "Lock conflict");
227 case LIBSSH2_FX_DIR_NOT_EMPTY:
228 return sf::Sftp::Result(Value::DirectoryNotEmpty, "Directory not empty");
229 case LIBSSH2_FX_NOT_A_DIRECTORY:
230 return sf::Sftp::Result(Value::NotADirectory, "Not a directory");
231 case LIBSSH2_FX_INVALID_FILENAME:
232 return sf::Sftp::Result(Value::InvalidFilename, "Invalid filename");
233 case LIBSSH2_FX_LINK_LOOP:
234 return sf::Sftp::Result(Value::LinkLoop, "Link loop");
235 default:
236 return sf::Sftp::Result(Value::SftpError, "General error");
237 }
238}
239
240sf::Sftp::Result makeError(LIBSSH2_SESSION* session, LIBSSH2_SFTP* sftp = nullptr)
241{

Callers 1

makeErrorFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected