|
1 /* FTP.H |
|
2 * |
|
3 * Portions Copyright (c) 1993-1999 Nokia Corporation and/or its subsidiary(-ies). |
|
4 * All rights reserved. |
|
5 */ |
|
6 |
|
7 /** @file |
|
8 @publishedAll |
|
9 @released |
|
10 */ |
|
11 |
|
12 /* |
|
13 * Copyright (c) 1983, 1989, 1993 |
|
14 * The Regents of the University of California. All rights reserved. |
|
15 * |
|
16 * Redistribution and use in source and binary forms, with or without |
|
17 * modification, are permitted provided that the following conditions |
|
18 * are met: |
|
19 * 1. Redistributions of source code must retain the above copyright |
|
20 * notice, this list of conditions and the following disclaimer. |
|
21 * 2. Redistributions in binary form must reproduce the above copyright |
|
22 * notice, this list of conditions and the following disclaimer in the |
|
23 * documentation and/or other materials provided with the distribution. |
|
24 * 3. All advertising materials mentioning features or use of this software |
|
25 * must display the following acknowledgement: |
|
26 * This product includes software developed by the University of |
|
27 * California, Berkeley and its contributors. |
|
28 * 4. Neither the name of the University nor the names of its contributors |
|
29 * may be used to endorse or promote products derived from this software |
|
30 * without specific prior written permission. |
|
31 * |
|
32 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
|
33 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
|
34 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
|
35 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
|
36 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
|
37 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
|
38 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
|
39 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
|
40 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
|
41 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
|
42 * SUCH DAMAGE. |
|
43 * |
|
44 * @(#)ftp.h 8.1 (Berkeley) 6/2/93 |
|
45 */ |
|
46 |
|
47 #ifndef _ARPA_FTP_H_ |
|
48 #define _ARPA_FTP_H_ |
|
49 |
|
50 /* Definitions for FTP; see RFC-765. */ |
|
51 |
|
52 /** |
|
53 Reply codes. |
|
54 */ |
|
55 |
|
56 /** positive preliminary |
|
57 */ |
|
58 #define PRELIM 1 |
|
59 |
|
60 /** positive completion |
|
61 */ |
|
62 #define COMPLETE 2 |
|
63 |
|
64 /** positive intermediate |
|
65 */ |
|
66 #define CONTINUE 3 |
|
67 |
|
68 /** transient negative completion |
|
69 */ |
|
70 #define TRANSIENT 4 |
|
71 |
|
72 /** permanent negative completion |
|
73 */ |
|
74 #define ERROR 5 |
|
75 |
|
76 /** |
|
77 Type codes |
|
78 */ |
|
79 |
|
80 #define TYPE_A 1 /* ASCII */ |
|
81 #define TYPE_E 2 /* EBCDIC */ |
|
82 #define TYPE_I 3 /* image */ |
|
83 #define TYPE_L 4 /* local byte size */ |
|
84 #ifdef FTP_NAMES |
|
85 char *typenames[] = {"0", "ASCII", "EBCDIC", "Image", "Local" }; |
|
86 #endif |
|
87 |
|
88 /** |
|
89 Form codes |
|
90 */ |
|
91 #define FORM_N 1 /* non-print */ |
|
92 #define FORM_T 2 /* telnet format effectors */ |
|
93 #define FORM_C 3 /* carriage control (ASA) */ |
|
94 #ifdef FTP_NAMES |
|
95 char *formnames[] = {"0", "Nonprint", "Telnet", "Carriage-control" }; |
|
96 #endif |
|
97 |
|
98 /** |
|
99 Structure codes |
|
100 */ |
|
101 #define STRU_F 1 /* file (no record structure) */ |
|
102 #define STRU_R 2 /* record structure */ |
|
103 #define STRU_P 3 /* page structure */ |
|
104 #ifdef FTP_NAMES |
|
105 char *strunames[] = {"0", "File", "Record", "Page" }; |
|
106 #endif |
|
107 |
|
108 /** |
|
109 Mode types |
|
110 */ |
|
111 #define MODE_S 1 /* stream */ |
|
112 #define MODE_B 2 /* block */ |
|
113 #define MODE_C 3 /* compressed */ |
|
114 #ifdef FTP_NAMES |
|
115 char *modenames[] = {"0", "Stream", "Block", "Compressed" }; |
|
116 #endif |
|
117 |
|
118 /** |
|
119 Record Tokens |
|
120 */ |
|
121 #define REC_ESC '\377' /* Record-mode Escape */ |
|
122 #define REC_EOR '\001' /* Record-mode End-of-Record */ |
|
123 #define REC_EOF '\002' /* Record-mode End-of-File */ |
|
124 |
|
125 /** |
|
126 Block Header |
|
127 */ |
|
128 #define BLK_EOR 0x80 /* Block is End-of-Record */ |
|
129 #define BLK_EOF 0x40 /* Block is End-of-File */ |
|
130 #define BLK_ERRORS 0x20 /* Block is suspected of containing errors */ |
|
131 #define BLK_RESTART 0x10 /* Block is Restart Marker */ |
|
132 |
|
133 #define BLK_BYTECOUNT 2 /* Bytes in this block */ |
|
134 |
|
135 #endif /* !_FTP_H_ */ |