-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathHISTORY
410 lines (250 loc) · 12.3 KB
/
HISTORY
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
** Notice: Version 1.0.2 - 1.0.6 and 1.0.9 - 1.1.1 were never released
to the public.
Version 2.1.0-beta4
- -----------------
* Added `filecopy' mode to create local copies of all transfered files.
* Found bug in get_ftppath() that prevented the proxy to get absolute path
names for files.
* Changed file transfer logging for RETR, STOR etc.
* Added -L <facility>[,<logname>] option.
Version 2.0.0-beta8
- -----------------
* Fix in Makefile to create directories
* Fix in Makefile to honour INSTALL_PREFIX
Version 2.0.0-beta7
- -----------------
* Cleanup of debug printous
* New command line switch `-R' for transparent proxiing with transparent
login
Version 2.0.0-beta5
- -----------------
* If `-u' is set in non-server-selection mode then user@hostname
usernames are allowed.
* Transparent session redirection: found bug in configuration file.
Version 2.0.0
- -----------
* New command line switch `-r <accept|redirect|forward|forward-only>'
for transparent proxiing
* Enabled varprefix option again.
* The ENV Prefix changed from PROXY_ to FTP_ if you need the old behaviour
use the -v option.
* Updated the sample files to reflect changes in source.
* Added FEAT to the CCP controlled features.
* Change to dologin to improve debug logging.
* Fix in dofeat to deal with server that are not really RFC2389 aware.
* Moved set_signals() to main.c, signals are now set even before we
enter the acceptloop() to get a proper clean up from daemon mode (e.g.
pidfile).
* Similiar to tcpproxy `-O <statdir>' defines a directory where
ftp.proxy put it's connection status information.
* More insignificant changes to ftp_t.
* Added statfile updates to sfputc().
* New source file procinfo.c (taken from tcpproxy) holds functions
for process status information.
* Use `-P | -PP <pidfile>' to get a pidfile in standalone mode.
* New command line switch `-F <configfile>' prints ftp.proxy's
configuration. The <configfile> is mandantory - if you don't have one
use `/dev/null'.
* Changed interface/port components in ftp_t to peer_t variable `i'.
Version 1.2.4
- --------------------------------
* Fixed typo in operator.ctp
* Added new parameter (-C) to allow the change of the server delimiter.
* Updates on INSTALL documentation.
* Fixed bug in waitpid handling in daemon mode again. #10008
Mentioned by Simon Baatz
* Reworked logging:
- If running in debug mode ftp.proxy will write it's messages
that went formerly to syslog to stderr now.
- When ftp.proxy terminates succesfully or with an error it will
log a status line beginning with either `+OK:' or `-ERR:'
followed by session specific information like FTP client, server
and user
Version 1.2.3 - 30072004asg
- --------------------------------
* Fixed bug in waitpid handling in daemon mode.
* Added optional xferlog logging.
* Added -q option to set the source IP of the outgoing control
connection (which set also the IP for data connections).
Version 1.2.2 - 16122003asg
- --------------------------------
* Fixed a error in ending an connection after receiving "QUIT".
* Added support for configuration files. Two new parameters are
added for this. (-f and -F)
* renamed `dcp' to `ctp' because we thought that `connection translation
programs' gives a better idea of what the really do.
Version 1.2.1 - 19082003asg
- --------------------------------
* Fixed a bug in dologin.
Now the use of ftp.proxy with a fixed server works again.
Version 1.2.0 - 11072003asg
- --------------------------------
* Looking in this file this numbering scheme displeased me.
From now on every beta release get a subnumber and official
releases a major number.
So this new release will start with 1.2.0
Version 1.1.7.pre3 - 09072003asg
- --------------------------------
* Fixed missing line in the do_login function. Could solve unexpected
behaviour of ftp.proxy.
Mentioned by Michael A. Meiszl and Rasca Gmelch.
Version 1.1.7.pre2 - 06042003asg
- --------------------------------
* Another attempt to deal with an old problem: Suppose the client
lists an almost empty directory (or does any other small data
transmission with the remote server) is might happen that the
proxy receives and spools the data before the 150 response is
send to the client. ftp.proxy uses the TCP_NODELAY socket
options since version 1.1.4 but what if the server (or upstream
proxy) causes the problem?
The proxy does now track if the 150 response arrived already and
the data transmission between client and server is delayed until
it has been received.
Version 1.1.7.pre1 - 04042003asg
- --------------------------------
* Introducing `dynamic configuration programs' aka DCP's. In short
a DCP receives username and remote server as supplied by the user
and sends the proxy server the real FTP server the proxy should
connect to with perhaps different username and password.
Everything of this is optional. Furthermore there is yet no
documentation because DCPs are work in progress and even the DCP
scheme is not fixed yet. There is however a sample DCP named
operator.dcp showing how things basically work.
DCP's required changes to the source code. Even if you do not
use DCP's the changes may influence the way ftp.proxy is working.
The DCP's are based on the idea of 'connection translation program'
from Damian Ivereigh and replaces this feature introduced in 1.1.6.beta6
Version 1.1.6.beta8 - 25MAR2003asg
- ----------------------------------
* Changed -D option: the proxy server port number must now be set
with the -D option.
Version 1.1.6.beta7 - 10FEB2003asg
- ----------------------------------
* Added compile-help in src/Makefile for solaris and a putenv
workaround for the missing function.
Hope ftp.proxy will now compile on solaris without errors.
Mentioned by Gregoire Barbier, Lefteris Giakoumatos,
Christophe Giraud-Briquet, Neil McCalden and others.
* Complete rewrite of multiline server response handling.
Handling is now much more RFC conform in this point.
Version 1.1.6.beta6 - 22JAN2003asg
- ----------------------------------
* Added sample script to start ftp.proxy in debug mode.
* Added sample trp script.
* Do not fork ftp.proxy in daemon mode when debug option is set.
* Changed syslog calls to be more ANSI-C conform.
* Source code compatibility: changed the syslog's `%m' to `%s' with
a `strerror(errno)' argument.
* Added support connection translation program (short: trp's), mentioned
by Damian Ivereigh.
* Introduced version variable in Makefile.
* Added new command line option '-u' to allow usernames with a '@'
in it. Mentioned by Paul Dragicevich.
* Changed GPL to current version.
* Changed getc_fd to handle servers that close the data connection.
* Changed proxy response on PASV because mozilla does not like it.
* Added daemon mode. Now you can start ftp.proxy as daemon using '-D'.
This is still experimental do not use this on productive environments.
The feature will be added official in the next release.
Additional parameters are required.
* Applied patch which fixes problems with multi-line server greetings,
as it appears on 'AppleShare IP FTP Server'. Mentioned by Menno Smits.
* Changed default log facility to LOG_DAEMON. On Linux, FreeBSD and NetBSD
it is still LOG_FTP.
* Modified cfputs() to send the line together with the CR/LF in one
packet to make broken firewalls happy.
Version 1.1.5 - 04FEB2002asg
- --------------------------
* Changed 'dologin()' so that ftp.proxy now supports server that do not
want a password after the 'USER' command.
* Added support for the FEAT command.
ftp.proxy only report features to the client that are support by both
the remote ftpserver and the ftp.proxy.
* Disabled the modification in request handling made in 1.1.4 for
non-linux systems.
* Added '-y' to allow any data ports on any remote interfaces. Use this
option the following case:
The proxy connects to an FTP server which runs on a network card
with multiple IP numbers, a data connection is initiated (either
PORT or PASV) and the proxy refuses the connect because the remote
port is not on the interface the proxy uses for the data connection.
This happens if e.g. the remote server runs on eth0:2 but the
server uses eth0 for it's data connection port. This is clearly
the server's fault, but anyway. ftp.redhat.com was reported to
work that way.
Try to avoid using this option, because it can cause security problems.
* Changed log facility to LOG_FTP. (Hope this will work on all systems.)
* ftp.proxy now allows blanks and other special charackters in passwords.
Added new parameter to allow this. (ftp.proxy -B)
Version 1.1.4 - 21JAN2002asg
- --------------------------
* Fixed potential problems after immediate initial unseccsesful up/downloads.
* Fixed error in `cmdtab[]'. ftp.proxy expected parameter for PASV.
* Small modification in request handling to prevent us from the rare case
that the ftp.proxy transfers data to/from the client before the client
has seen the "150 ..." message.
Version 1.1.3 - 06DEC2001asg
- --------------------------
* Fixed missing entry in syslog output. Mentioned by Markus Meitner.
* Changed array name MAXBSIZE to FTPMAXBSIZE to solve conflict when
compiling under NetBSD or SUN Solaris. Mentioned by Denis Ahrens.
* Changed path for `#include <wait.h>' to `<sys/wait.h>' in all sources
to improve compatibility to NetBSD or SUN Solaris.
Mentioned by Denis Ahrens.
* Added support for the XCUP command.
Version 1.1.2 - 13NOV2001asg
- --------------------------
* Added old X-Commands which are reintroduced by Microsoft W2K
FTP-Client (XCWD, XPWD, XMKD, XRMD) see RFC 1123 and RFC 775.
* Added support for the MDTM command to check the modification
time of a file.
* Added new parameter to check Version. (ftp.proxy -V)
* Enhanced server handling:
- Attempt to solve early write events: In some rare cases the FTP
server send data through the data channel before the command response
was received by the proxy. ftp.proxy can detect such events but not
really handle it due to the way it works. An artifical sleep(2)
might work as a work around.
- There is at least one type of firewall around that didn't like
FTP commands split into two TCP packets. They disconnected from
the proxy without any notice. This problem has been fixed now.
- ftp.proxy handles now multiline responses after a data transfer.
* Eliminated compiler warning.
Version 1.0.7 - 11MAY2001asg
- --------------------------
* Several manpage updates.
Version 1.0.6 - 20DEC2000asg
- --------------------------
* Added support for the SIZE command.
Version 1.0.5 - 17DEC2000asg
- --------------------------
* Introduced PASV mode.
* Several minor bug fixes.
Version 1.0.4 - 27JUN2000asg
- --------------------------
* Fixed bug in readline_fd()/getc_fd(): Some FTP servers send two
response lines in a single TCP/IP packet. The second line was
not recognized by ftp.proxy before.
* Added -b switch to allow blanks in filenames (still not allowed
at the beginning or end) on customer request.
Version 1.0.3 - 18MAY2000asg
- --------------------------
* Added -p option to specify the data source port ftp.proxy uses
to connect to the client. It's possible to tell ftp.proxy to
use the FTP standard data port 20 but this requires root perms
for the proxy. Mentioned by Juergen Ilse via Wolfgang Zekoll.
Version 1.0.2 - 23SEP1999wzk
- --------------------------
* Look into sample-ccp for a command control and applied monitoring
example.
* Added `-b' option to allow blanks in FTP command parameters.
* Added the monitor mode. This is experimental.
* Fixed a bug in the command lookup: an unknown command resulted in
a sigsegv.
* The ccp's output goes now to syslog while and it's stderr is sent to
the client.
* Fixed a file descriptor bug inside the acp and ccp handling code.
Version 1.0.1 - 27AUG1999wzk
- --------------------------
* Changed FTP session timeout to 15 minutes.
* Added support for command control programs.