Skip to content
Snippets Groups Projects
ssh.c 97.2 KiB
Newer Older
  • Learn to ignore specific revisions
  •       /*error("Empty quotes");*/
          goto fail;
        }
        *cpp = cp + i + strspn(cp + i, WHITESPACE);
      }
      else {
        /* Read to end of filename */
        end = strpbrk(cp, WHITESPACE);
    
          end = strchr(cp, '\0');
        *cpp = end + strspn(end, WHITESPACE);
    
        memcpy(*path, cp, end - cp);
        (*path)[end - cp] = '\0';
      }
    
    Yang Tse's avatar
    Yang Tse committed
      return CURLE_OK;
    
    }
    
    
    static const char *sftp_libssh2_strerror(unsigned long err)
    {
      switch (err) {
    
        case LIBSSH2_FX_NO_SUCH_FILE:
          return "No such file or directory";
    
        case LIBSSH2_FX_PERMISSION_DENIED:
          return "Permission denied";
    
        case LIBSSH2_FX_FAILURE:
          return "Operation failed";
    
        case LIBSSH2_FX_BAD_MESSAGE:
          return "Bad message from SFTP server";
    
        case LIBSSH2_FX_NO_CONNECTION:
          return "Not connected to SFTP server";
    
        case LIBSSH2_FX_CONNECTION_LOST:
          return "Connection to SFTP server lost";
    
        case LIBSSH2_FX_OP_UNSUPPORTED:
          return "Operation not supported by SFTP server";
    
        case LIBSSH2_FX_INVALID_HANDLE:
          return "Invalid handle";
    
        case LIBSSH2_FX_NO_SUCH_PATH:
          return "No such file or directory";
    
        case LIBSSH2_FX_FILE_ALREADY_EXISTS:
          return "File already exists";
    
        case LIBSSH2_FX_WRITE_PROTECT:
          return "File is write protected";
    
        case LIBSSH2_FX_NO_MEDIA:
          return "No media";
    
        case LIBSSH2_FX_NO_SPACE_ON_FILESYSTEM:
          return "Disk full";
    
        case LIBSSH2_FX_QUOTA_EXCEEDED:
          return "User quota exceeded";
    
        case LIBSSH2_FX_UNKNOWN_PRINCIPLE:
          return "Unknown principle";
    
        case LIBSSH2_FX_LOCK_CONFlICT:
          return "File lock conflict";
    
        case LIBSSH2_FX_DIR_NOT_EMPTY:
          return "Directory not empty";
    
        case LIBSSH2_FX_NOT_A_DIRECTORY:
          return "Not a directory";
    
        case LIBSSH2_FX_INVALID_FILENAME:
          return "Invalid filename";
    
        case LIBSSH2_FX_LINK_LOOP:
          return "Link points to itself";
    
    #endif /* USE_LIBSSH2 */