]> andersk Git - openssh.git/blob - sftp.h
20010112
[openssh.git] / sftp.h
1 /*
2  * Copyright (c) 2001 Markus Friedl.  All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
14  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
15  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
16  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
17  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
18  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
19  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
20  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
22  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23  */
24
25 /*
26  * draft-ietf-secsh-filexfer-00.txt
27  */
28
29 /* version */
30 #define SSH2_FILEXFER_VERSION           2
31
32 /* client to server */
33 #define SSH2_FXP_INIT                   1
34 #define SSH2_FXP_OPEN                   3
35 #define SSH2_FXP_CLOSE                  4
36 #define SSH2_FXP_READ                   5
37 #define SSH2_FXP_WRITE                  6
38 #define SSH2_FXP_LSTAT                  7
39 #define SSH2_FXP_FSTAT                  8
40 #define SSH2_FXP_SETSTAT                9
41 #define SSH2_FXP_FSETSTAT               10
42 #define SSH2_FXP_OPENDIR                11
43 #define SSH2_FXP_READDIR                12
44 #define SSH2_FXP_REMOVE                 13
45 #define SSH2_FXP_MKDIR                  14
46 #define SSH2_FXP_RMDIR                  15
47 #define SSH2_FXP_REALPATH               16
48 #define SSH2_FXP_STAT                   17
49 #define SSH2_FXP_RENAME                 18
50
51 /* server to client */
52 #define SSH2_FXP_VERSION                2
53 #define SSH2_FXP_STATUS                 101
54 #define SSH2_FXP_HANDLE                 102
55 #define SSH2_FXP_DATA                   103
56 #define SSH2_FXP_NAME                   104
57 #define SSH2_FXP_ATTRS                  105
58
59 #define SSH2_FXP_EXTENDED               200
60 #define SSH2_FXP_EXTENDED_REPLY         201
61
62 /* attributes */
63 #define SSH2_FILEXFER_ATTR_SIZE         0x00000001
64 #define SSH2_FILEXFER_ATTR_UIDGID       0x00000002
65 #define SSH2_FILEXFER_ATTR_PERMISSIONS  0x00000004
66 #define SSH2_FILEXFER_ATTR_ACMODTIME    0x00000008
67 #define SSH2_FILEXFER_ATTR_EXTENDED     0x80000000
68
69 /* portable open modes */
70 #define SSH2_FXF_READ                   0x00000001
71 #define SSH2_FXF_WRITE                  0x00000002
72 #define SSH2_FXF_APPEND                 0x00000004
73 #define SSH2_FXF_CREAT                  0x00000008
74 #define SSH2_FXF_TRUNC                  0x00000010
75 #define SSH2_FXF_EXCL                   0x00000020
76
77 /* status messages */
78 #define SSH2_FX_OK                      0
79 #define SSH2_FX_EOF                     1
80 #define SSH2_FX_NO_SUCH_FILE            2
81 #define SSH2_FX_PERMISSION_DENIED       3
82 #define SSH2_FX_FAILURE                 4
83 #define SSH2_FX_BAD_MESSAGE             5
84 #define SSH2_FX_NO_CONNECTION           6
85 #define SSH2_FX_CONNECTION_LOST         7
86 #define SSH2_FX_OP_UNSUPPORTED          8
This page took 0.650521 seconds and 5 git commands to generate.