diff options
author | Alexander Larsson <alexl@src.gnome.org> | 2007-09-13 15:07:20 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2007-09-13 15:07:20 +0000 |
commit | 8859e4dd2eecff1a013620f6e6d9cc1c8723a60e (patch) | |
tree | d5c6b3ae543b0070b43001423252dc16a3ed942c /daemon/sftp.h | |
parent | d563e67a80c5e22a0296cb50001c3b307918e79f (diff) | |
download | gvfs-8859e4dd2eecff1a013620f6e6d9cc1c8723a60e.tar.gz |
Switch sftp declarations to version 3 (draft-2)
Get File type
Original git commit by Alexander Larsson <alexl@redhat.com> at 1189175282 +0200
svn path=/trunk/; revision=908
Diffstat (limited to 'daemon/sftp.h')
-rw-r--r-- | daemon/sftp.h | 164 |
1 files changed, 56 insertions, 108 deletions
diff --git a/daemon/sftp.h b/daemon/sftp.h index a897230b..827ea2df 100644 --- a/daemon/sftp.h +++ b/daemon/sftp.h @@ -1,117 +1,65 @@ /* From draft-ietf-secsh-filexfer-13.txt */ -#define SSH2_FILEXFER_VERSION 6 +/* version */ +#define SSH_FILEXFER_VERSION 3 -#define SSH_FXP_INIT 1 -#define SSH_FXP_VERSION 2 -#define SSH_FXP_OPEN 3 -#define SSH_FXP_CLOSE 4 -#define SSH_FXP_READ 5 -#define SSH_FXP_WRITE 6 -#define SSH_FXP_LSTAT 7 -#define SSH_FXP_FSTAT 8 -#define SSH_FXP_SETSTAT 9 -#define SSH_FXP_FSETSTAT 10 -#define SSH_FXP_OPENDIR 11 -#define SSH_FXP_READDIR 12 -#define SSH_FXP_REMOVE 13 -#define SSH_FXP_MKDIR 14 -#define SSH_FXP_RMDIR 15 -#define SSH_FXP_REALPATH 16 -#define SSH_FXP_STAT 17 -#define SSH_FXP_RENAME 18 -#define SSH_FXP_READLINK 19 -#define SSH_FXP_LINK 21 -#define SSH_FXP_BLOCK 22 -#define SSH_FXP_UNBLOCK 23 +/* client to server */ +#define SSH_FXP_INIT 1 +#define SSH_FXP_OPEN 3 +#define SSH_FXP_CLOSE 4 +#define SSH_FXP_READ 5 +#define SSH_FXP_WRITE 6 +#define SSH_FXP_LSTAT 7 +#define SSH_FXP_STAT_VERSION_0 7 +#define SSH_FXP_FSTAT 8 +#define SSH_FXP_SETSTAT 9 +#define SSH_FXP_FSETSTAT 10 +#define SSH_FXP_OPENDIR 11 +#define SSH_FXP_READDIR 12 +#define SSH_FXP_REMOVE 13 +#define SSH_FXP_MKDIR 14 +#define SSH_FXP_RMDIR 15 +#define SSH_FXP_REALPATH 16 +#define SSH_FXP_STAT 17 +#define SSH_FXP_RENAME 18 +#define SSH_FXP_READLINK 19 +#define SSH_FXP_SYMLINK 20 -#define SSH_FXP_STATUS 101 -#define SSH_FXP_HANDLE 102 -#define SSH_FXP_DATA 103 -#define SSH_FXP_NAME 104 -#define SSH_FXP_ATTRS 105 +/* server to client */ +#define SSH_FXP_VERSION 2 +#define SSH_FXP_STATUS 101 +#define SSH_FXP_HANDLE 102 +#define SSH_FXP_DATA 103 +#define SSH_FXP_NAME 104 +#define SSH_FXP_ATTRS 105 -#define SSH_FXP_EXTENDED 200 -#define SSH_FXP_EXTENDED_REPLY 201 +#define SSH_FXP_EXTENDED 200 +#define SSH_FXP_EXTENDED_REPLY 201 +/* attributes */ +#define SSH_FILEXFER_ATTR_SIZE 0x00000001 +#define SSH_FILEXFER_ATTR_UIDGID 0x00000002 +#define SSH_FILEXFER_ATTR_PERMISSIONS 0x00000004 +#define SSH_FILEXFER_ATTR_ACMODTIME 0x00000008 +#define SSH_FILEXFER_ATTR_EXTENDED 0x80000000 -/* Valid attribute flags */ +/* portable open modes */ +#define SSH_FXF_READ 0x00000001 +#define SSH_FXF_WRITE 0x00000002 +#define SSH_FXF_APPEND 0x00000004 +#define SSH_FXF_CREAT 0x00000008 +#define SSH_FXF_TRUNC 0x00000010 +#define SSH_FXF_EXCL 0x00000020 -#define SSH_FILEXFER_ATTR_SIZE 0x00000001 -#define SSH_FILEXFER_ATTR_UIDGID 0x00000002 /* deprecated in recent versions */ -#define SSH_FILEXFER_ATTR_PERMISSIONS 0x00000004 -#define SSH_FILEXFER_ATTR_ACCESSTIME 0x00000008 -#define SSH_FILEXFER_ATTR_ACMODTIME SSH_FILEXFER_ATTR_ACCESSTIME /* Hmm? these differ in version 3 and 13? */ -#define SSH_FILEXFER_ATTR_CREATETIME 0x00000010 -#define SSH_FILEXFER_ATTR_MODIFYTIME 0x00000020 -#define SSH_FILEXFER_ATTR_ACL 0x00000040 -#define SSH_FILEXFER_ATTR_OWNERGROUP 0x00000080 -#define SSH_FILEXFER_ATTR_SUBSECOND_TIMES 0x00000100 -#define SSH_FILEXFER_ATTR_BITS 0x00000200 -#define SSH_FILEXFER_ATTR_ALLOCATION_SIZE 0x00000400 -#define SSH_FILEXFER_ATTR_TEXT_HINT 0x00000800 -#define SSH_FILEXFER_ATTR_MIME_TYPE 0x00001000 -#define SSH_FILEXFER_ATTR_LINK_COUNT 0x00002000 -#define SSH_FILEXFER_ATTR_UNTRANSLATED_NAME 0x00004000 -#define SSH_FILEXFER_ATTR_CTIME 0x00008000 -#define SSH_FILEXFER_ATTR_EXTENDED 0x80000000 +/* status messages */ +#define SSH_FX_OK 0 +#define SSH_FX_EOF 1 +#define SSH_FX_NO_SUCH_FILE 2 +#define SSH_FX_PERMISSION_DENIED 3 +#define SSH_FX_FAILURE 4 +#define SSH_FX_BAD_MESSAGE 5 +#define SSH_FX_NO_CONNECTION 6 +#define SSH_FX_CONNECTION_LOST 7 +#define SSH_FX_OP_UNSUPPORTED 8 +#define SSH_FX_MAX 8 -/* File types */ - -#define SSH_FILEXFER_TYPE_REGULAR 1 -#define SSH_FILEXFER_TYPE_DIRECTORY 2 -#define SSH_FILEXFER_TYPE_SYMLINK 3 -#define SSH_FILEXFER_TYPE_SPECIAL 4 -#define SSH_FILEXFER_TYPE_UNKNOWN 5 -#define SSH_FILEXFER_TYPE_SOCKET 6 -#define SSH_FILEXFER_TYPE_CHAR_DEVICE 7 -#define SSH_FILEXFER_TYPE_BLOCK_DEVICE 8 -#define SSH_FILEXFER_TYPE_FIFO 9 - -/* Attrib bits */ - -#define SSH_FILEXFER_ATTR_FLAGS_READONLY 0x00000001 -#define SSH_FILEXFER_ATTR_FLAGS_SYSTEM 0x00000002 -#define SSH_FILEXFER_ATTR_FLAGS_HIDDEN 0x00000004 -#define SSH_FILEXFER_ATTR_FLAGS_CASE_INSENSITIVE 0x00000008 -#define SSH_FILEXFER_ATTR_FLAGS_ARCHIVE 0x00000010 -#define SSH_FILEXFER_ATTR_FLAGS_ENCRYPTED 0x00000020 -#define SSH_FILEXFER_ATTR_FLAGS_COMPRESSED 0x00000040 -#define SSH_FILEXFER_ATTR_FLAGS_SPARSE 0x00000080 -#define SSH_FILEXFER_ATTR_FLAGS_APPEND_ONLY 0x00000100 -#define SSH_FILEXFER_ATTR_FLAGS_IMMUTABLE 0x00000200 -#define SSH_FILEXFER_ATTR_FLAGS_SYNC 0x00000400 -#define SSH_FILEXFER_ATTR_FLAGS_TRANSLATION_ERR 0x00000800 - -#define SSH_FX_OK 0 -#define SSH_FX_EOF 1 -#define SSH_FX_NO_SUCH_FILE 2 -#define SSH_FX_PERMISSION_DENIED 3 -#define SSH_FX_FAILURE 4 -#define SSH_FX_BAD_MESSAGE 5 -#define SSH_FX_NO_CONNECTION 6 -#define SSH_FX_CONNECTION_LOST 7 -#define SSH_FX_OP_UNSUPPORTED 8 -#define SSH_FX_INVALID_HANDLE 9 -#define SSH_FX_NO_SUCH_PATH 10 -#define SSH_FX_FILE_ALREADY_EXISTS 11 -#define SSH_FX_WRITE_PROTECT 12 -#define SSH_FX_NO_MEDIA 13 -#define SSH_FX_NO_SPACE_ON_FILESYSTEM 14 -#define SSH_FX_QUOTA_EXCEEDED 15 -#define SSH_FX_UNKNOWN_PRINCIPAL 16 -#define SSH_FX_LOCK_CONFLICT 17 -#define SSH_FX_DIR_NOT_EMPTY 18 -#define SSH_FX_NOT_A_DIRECTORY 19 -#define SSH_FX_INVALID_FILENAME 20 -#define SSH_FX_LINK_LOOP 21 -#define SSH_FX_CANNOT_DELETE 22 -#define SSH_FX_INVALID_PARAMETER 23 -#define SSH_FX_FILE_IS_A_DIRECTORY 24 -#define SSH_FX_BYTE_RANGE_LOCK_CONFLICT 25 -#define SSH_FX_BYTE_RANGE_LOCK_REFUSED 26 -#define SSH_FX_DELETE_PENDING 27 -#define SSH_FX_FILE_CORRUPT 28 -#define SSH_FX_OWNER_INVALID 29 -#define SSH_FX_GROUP_INVALID 30 -#define SSH_FX_NO_MATCHING_BYTE_RANGE_LOCK 31 |