xref: /freebsd/crypto/heimdal/appl/ftp/ChangeLog (revision 7fdf597e96a02165cfe22ff357b857d5fa15ed8a)
12008-05-29  Love Hörnquist Åstrand  <lha@kth.se>
2
3	* ftp/ftp.c: use the correct length to munmap and use msync.
4
52008-05-28  Love Hörnquist Åstrand  <lha@kth.se>
6
7	* ftp/ftp.c: Rewrite sliding window code so it doesn't have a
8	integer overrun.
9
10	* ftp/ftp.c: Try sliding mmap window over memory file (10MB
11	window), works better with larger files (ie doesn't fail).
12
132008-04-10  Love Hörnquist Åstrand  <lha@it.su.se>
14
15	* ftpd/logwtmp.c: Use asl for logging ftpd wtmp messages.
16
172007-07-12  Love Hörnquist Åstrand  <lha@it.su.se>
18
19	* ftp/gssapi.c: Fix pointer vs strict alias rules.
20
212007-06-20  Love Hörnquist Åstrand  <lha@it.su.se>
22
23	* ftp/security.c: if no mech have no session, its ok, just don't
24	call it.
25
26	* ftp/security.h: provide prototype for sec_userok().
27
28	* move ksetpag after initgroups to make it work on Linux when its
29	without syscall hooks to change sys_setgroups preserve the
30	pag. From Alexsander Boström.
31
322007-06-09  Love Hörnquist Åstrand  <lha@it.su.se>
33
34	* ftpd/Makefile.am: don't clean yacc/lex files in CLEANFILES,
35	maintainers clean will do that for us.
36
372006-10-07  Love Hörnquist Åstrand  <lha@it.su.se>
38
39	* ftpd/Makefile.am: Add man_MANS to EXTRA_DIST
40
41	* ftp/Makefile.am: Add man_MANS to EXTRA_DIST
42
432006-08-08  Love Hörnquist Åstrand  <lha@it.su.se>
44
45	* ftpd/ftpd.c: Add comment by seteuid call isn't not needed.
46
47	* ftpd/ftpd.c: Check return values from seteuid, prompted by MIT
48	advisory.  Thanks to Tom Yu at MIT, and Michael Calmer and Marcus
49	Meissner at SUSE.  Either of CVE-2006-3083 or CVE-2006-3084.
50
512006-06-27  Love Hörnquist Åstrand  <lha@it.su.se>
52
53	* ftpd/gss_userok.c (gss_userok): create a local krb5_context and
54	use that instead of the libgssapi context (that might not exist).
55
562006-05-05  Love Hörnquist Åstrand  <lha@it.su.se>
57
58	* Rename u_intXX_t to uintXX_t
59
602006-03-23  Love Hörnquist Åstrand  <lha@it.su.se>
61
62	* ftp/ftp.1: Add undocument flags and spelling, from Ted Percival
63	<Ted.Percival@quest.com>
64
652006-02-27  Johan Danielsson  <joda@pdc.kth.se>
66
67	* ftpd/ftpd.8: fix grammar in --no-insecure-oob option (partly
68	from Thomas Klausner)
69
702006-01-24  Love Hörnquist Åstrand  <lha@it.su.se>
71
72	* ftp/ftp.c: Indent.
73
742006-01-12  Johan Danielsson  <joda@pdc.kth.se>
75
76	* ftpd/ftpd.c (pass): remove unused variable in the !OTP case
77
782005-10-22  Love Hörnquist Åstrand  <lha@it.su.se>
79
80	* ftpd/ls.c: Check return value from asprintf instead of string !=
81	NULL since it undefined behavior on Linux. From Björn Sandell
82
83	* ftpd/gss_userok.c: Check return value from asprintf instead of
84	string != NULL since it undefined behavior on Linux. From Björn
85	Sandell
86
87	* ftpd/ftpd.c: Check return value from asprintf instead of string
88	!= NULL since it undefined behavior on Linux. From Björn Sandell
89
90	* ftp/gssapi.c: Check return value from asprintf instead of string
91	!= NULL since it undefined behavior on Linux. From Björn Sandell
92
932005-10-12  Johan Danielsson  <joda@pdc.kth.se>
94
95	* ftp/ftp.1: document -x
96
97	* ftp/security.h: implement cprotect (from MIT)
98
99	* ftp/security.c: add -x (encrypt) option; implement cprotect
100	(from MIT); make sure we CCC if switching to clear-text command
101	channel
102
103	* ftp/cmdtab.c: implement cprotect (from MIT)
104
105	* ftp/ruserpass.c: if doing command line encryption (-x), ignore
106	prot commands in .netrc
107
108	* ftp/ftp_var.h: add -x (encrypt) option
109
110	* ftp/globals.c: add -x (encrypt) option
111
112	* ftp/main.c: add -x (encrypt) option
113
1142005-07-19  Love Hörnquist Åstrand  <lha@it.su.se>
115
116	* ftpd/ftpcmd.y: Fix shadow warning.
117
118	* ftp/security.c: Fix shadow warning.
119	* ftp/security.c: Fix shadow warnings.
120
121	* ftp/ruserpass.c: Fix shadow warnings.
122
123	* ftp/ftp.c: Fix shadow warnings.
124
125	* ftp/cmds.c: fix shadow warnings
126
127	* Add Kerberos 5 klist, old patch from Tomas Nyström (remove krb4
128	support). Support klist in client for kerberos 5 clase.
129	Clean up delegation of gss tokens and do afslog.
130
1312005-07-13  Love Hörnquist Åstrand  <lha@it.su.se>
132
133	* ftp/gssapi.c (gss_adat): avoid leaking memory
134	(gss_auth): always try next kname if there is one, independant of
135	min_stat
136
137	* ftp/gssapi.c: avoid const warning, use sin4 instead of sin to
138	avoid shadow warning, free target_name
139
1402005-07-09  Love Hörnquist Åstrand  <lha@it.su.se>
141
142	* ftp/security.c: keep track of if CCC was passed
143
144	* ftpd/extern.h: variable to keep track of if CCC was passed
145
146	* ftpd/ftpcmd.y: sprinkel check_secure, check if CCC was passed in
147	check_secure
148
1492005-06-02  Love Hörnquist Åstrand  <lha@it.su.se>
150
151	* ftpd/ftpd.c (filename_check): change signednes of p to avoid
152	warning, move typecasts
153
1542005-05-29  Love Hörnquist Åstrand  <lha@it.su.se>
155
156	* ftpd/ftpd.c: avoid 'unused variable' warnings
157
1582005-05-10  David Love  <fx@gnu.org>
159
160	* ftpd/pathnames.h: #ifdef protect _PATH_ISSUE
161
1622005-04-25  Love Hörnquist Åstrand  <lha@it.su.se>
163
164	* ftp/domacro.c: handle string trunctions
165
1662005-04-24  Love Hörnquist Åstrand  <lha@it.su.se>
167
168	* ftp/security.c: use strlcat
169
170	* ftp/domacro.c: use strlcpy
171
1722005-04-20  Love Hörnquist Åstrand  <lha@it.su.se>
173
174	* ftp/security.c: cast size_t to unsigned long
175
1762005-04-18  Love Hörnquist Åstrand  <lha@it.su.se>
177
178	* ftpd/ftpd.c (statcmd): cast argument to isdigit to unsigned char
179
180	* ftp/cmds.c (mget): cast char to unsigned char to make sure its
181	not negative when passing it to tolower
182
1832005-04-07  Love Hörnquist Åstrand  <lha@it.su.se>
184
185	* ftp/ftp.c: fix 3 'var' might be used uninitialized warnings
186
1872005-04-04 Love Hörnquist Åstrand  <lha@it.su.se>
188
189	* ftp/cmds.c: MacOS is also a unix that doesn't define
190	__unix__/unix While here, rewrite this part of the function to not
191	modify that string, but rather take a copy of it and them modify
192	is, all this just to pacify gcc
193
1942005-01-09 Love Hörnquist Åstrand  <lha@it.su.se>
195
196	* ftp/domacro.c: cast argument to is* to unsigned char
197
198	* ftp/ftp.c: cast argument to tolower to unsigned char
199
2002004-08-20 Love Hörnquist Åstrand  <lha@it.su.se>
201
202	* ftp/ftp.c: send ABOR protect with security layer if its there
203
204	* ftpd/{ftpd_locl.h, extern.h, ftpcmd.y, ftpd.8, ftpd.c}:
205	Remove all traces of setjmp/longjmp.
206	Handle those command that is needed in oobhandler,
207	those are ABOR, STAT, ENC, CONF, MIC.
208	add options to turn off insecure OOB handling and document the option
209
210	Changes inspired by openbsd and netbsd changes but quite diffrent is
211	most places since the code no longer look and is structured the same
212	way.
213
2142004-08-16  Johan Danielsson  <joda@pdc.kth.se>
215
216	* ftp/main.c: reverse help strings for --no-gss-bindings and
217	--no-gss-delegate
218
2192004-06-20  Love Hörnquist Åstrand  <lha@it.su.se>
220
221	* ftpd/ftpcmd.y: make cbuf 64k to handle lager tickets From:
222	MAAAAA MOOOR <huaraz@btinternet.com>
223
2242004-03-14  Love Hörnquist Åstrand  <lha@it.su.se>
225
226	* ftpd/ftpd.c (main): setpag if there is krb4 OR krb5 support
227
2282003-12-19  Love Hörnquist Åstrand  <lha@it.su.se>
229
230	* ftp/security.h: add ftp_do_gss_delegate
231
232	* ftp/main.c (getargs): negative flag for delegating gss creds
233
234	* ftp/gssapi.c (ftp_do_gss_delegate): delegate creds (default on)
235
2362003-09-03  Love Hörnquist Åstrand  <lha@it.su.se>
237
238	* ftp/ftp.c: s/des_read_pw_string/UI_UTIL_read_pw_string/
239
240	* ftp/cmds.c: s/des_read_pw_string/UI_UTIL_read_pw_string/
241
2422003-07-19  Love Hörnquist Åstrand  <lha@it.su.se>
243
244	* ftp/security.h: add ftp_do_gss_bindings
245
246	* ftp/ftp.1: fix mdoc bug
247
248	* ftp/ftp.1: document --no-gss-bindings
249
250	* ftp/gssapi.c: Optionally support gss bindings, client does it by
251	default, server not.  This is to make it work for clients behind
252	NAT.
253
254	* ftp/main.c (args): add gss-bindings
255	(main): set ftp_do_gss_bindings to 1 to make client use them
256
257	* ftpd/ftpd.c (args): add gss-bindings
258
259	* ftpd/ftpd.8: document --gss-bindings
260
2612003-06-13  Johan Danielsson  <joda@pdc.kth.se>
262
263	* ftp/gssapi.c (gss_adat): fix name allocation bug
264
2652003-05-21  Love Hörnquist Åstrand  <lha@it.su.se>
266
267	* ftpd/gss_userok.c (gss_userok): release delegated cred handle
268
269	* ftp/gssapi.c (gss_adat): remove poking inside the delegated
270	handle, also fixes problem where to much memory was allocated
271
272	* ftpd/gss_userok.c (gss_userok): remove poking inside the
273	delegated handle
274
2752003-05-14  Love Hörnquist Åstrand  <lha@it.su.se>
276
277	* ftpd/ftpcmd.y: support afslog <cell> and afslog when compiled
278	with krb5
279
2802003-05-07  Love Hörnquist Åstrand  <lha@it.su.se>
281
282	* ftp/cmdtab.c: include afslog in both the krb4 and krb5 case
283
284	* ftp/kauth.c: include afslog in both the krb4 and krb5 case
285
286	* ftp/Makefile.am: always include auth.c
287
2882003-05-07  Love Hörnquist Åstrand  <lha@it.su.se>
289
290	* ftpd/Makefile.am: always include auth.c
291
292	* ftpd/kauth.c: do afslog in the krb5 case too
293
2942003-04-22  Love Hörnquist Åstrand  <lha@it.su.se>
295
296	* ftp/ftp.1: replace > with \*[Gt]
297
2982003-04-16  Love Hörnquist Åstrand  <lha@it.su.se>
299
300	* ftpd/ftpd.c: make sure argument to is* functions are unsigned
301
3022003-04-06  Love Hörnquist Åstrand  <lha@it.su.se>
303
304	* ftpd/ftpd.8: s/kerberos/Kerberos/
305
3062003-03-23  Assar Westerlund  <assar@kth.se>
307
308	* ftpd/pathnames.h (_PATH_FTPUSERS): conditionalize
309
3102003-03-18  Love Hörnquist Åstrand  <lha@it.su.se>
311
312	* ftpd/ftpd.c (krb5_verify): always do krb5_afslog, remove setpag
313	(its done in main)
314
315	* ftpd/gss_userok.c: drop setpag
316
317	* ftpd/ftpd.c (main): set afs PAG
318
319	* ftpd/gss_userok.c: always try krb5_afslog, and while here do a
320	setpag too
321
322	* ftpd/ftpd_locl.h: always include kafs
323
3242003-03-16  Love Hörnquist Åstrand  <lha@it.su.se>
325
326	* ftp/gssapi.c (gss_adat): now that gss_export_name exports a
327	principal, bandaid with gss_display_name, and check that oid is
328	GSS_KRB5_NT_PRINCIPAL_NAME, also free memory
329
3302003-02-25  Love Hörnquist Åstrand  <lha@it.su.se>
331
332	* ftp/gssapi.c (gss_auth): print out the name we authenticated too
333
3342003-02-25  Love Hörnquist Åstrand  <lha@it.su.se>
335
336	* ftpd/ls.c: use readlink with bufsize - 1, From NetBSD
337
338	* ftp/ftp.1: s/utilizes/uses/ from NetBSD
339
340	* ftpd/ftpd.8: s/utilize/use/ from NetBSD
341
3422003-02-10  Assar Westerlund  <assar@kth.se>
343
344	* ftpd/ftpd.c (accept_with_timeout): use socklen_t
345
3462002-10-29  Johan Danielsson  <joda@pdc.kth.se>
347
348	* ftp/main.c: reinstate -n flag (from Torbjörn Granlund)
349
3502002-10-16  Johan Danielsson  <joda@pdc.kth.se>
351
352	* ftp/ftp.c: fix parsing of epsv ports (from Love)
353
3542002-09-05  Johan Danielsson  <joda@pdc.kth.se>
355
356	* ftp/security.c (sec_vfprintf): free encoded data
357
358	* ftp/gssapi.c (gss_decode): release buffer
359
360	* ftp/ftp.c (active_mode): no need to allocate buffer for EPRT
361
3622002-08-28  Johan Danielsson  <joda@pdc.kth.se>
363
364	* ftp/ftp.c (command): clean up va_{start,end}ing (from NetBSD)
365
3662002-08-23  Assar Westerlund  <assar@kth.se>
367
368	* ftp/main.c: start using getarg
369
3702002-08-22  Johan Danielsson  <joda@pdc.kth.se>
371
372	* ftpd/ls.c: uxp/v lacks _S_IFMT, but has S_IFMT
373
3742002-08-20  Johan Danielsson  <joda@pdc.kth.se>
375
376	* ftp/gssapi.c: remove unused variable
377
3782002-04-24  Johan Danielsson  <joda@pdc.kth.se>
379
380	* ftp/ftp.c: fix buffer overrun when receiving long replies
381
3822002-04-02  Johan Danielsson  <joda@pdc.kth.se>
383
384	* ftpd/popen.c: make sure gl_pathc != 0 before referencing
385	gl_pathv
386
3872002-03-15  Johan Danielsson  <joda@pdc.kth.se>
388
389	* ftp/gssapi.c (gss_adat): if accept_sec_context fails, syslog a
390	reason and give a temporary error message
391
3922002-02-28  Johan Danielsson  <joda@pdc.kth.se>
393
394	* ftpd/ftpd.c: if builtin_ls failes, return error
395
396	* ftpd/ls.c (builtin_ls): return status; also don't print fatal
397	error messages to the output stream, instead use syslog
398
3992001-09-14  Johan Danielsson  <joda@pdc.kth.se>
400
401	* ftpd/ls.c: make sure we don't include . in recursive listings
402
4032001-09-13  Johan Danielsson  <joda@pdc.kth.se>
404
405	* ftpd/ftpd.c (dataconn): don't wait forever on accept
406
4072001-09-04  Assar Westerlund  <assar@sics.se>
408
409	* ftp/gssapi.c (gss_adat): leak less memory and check return value
410	from asprintf
411
4122001-08-28  Jacques Vidrine <n@nectar.com>
413
414	* ftpd/ftpd.c, ftpd/ftpd.8: On systems with IP_PORTRANGE, have
415	  ftpd use `high-numbered' ports by default.  Add a -U option
416	  to get the old behavior.
417
4182001-08-28  Johan Danielsson  <joda@pdc.kth.se>
419
420	* ftp/gssapi.c: try using "host" if there's no "ftp" principal
421
4222001-08-26  Johan Danielsson  <joda@pdc.kth.se>
423
424	* ftpd/ls.c: implement -R
425
4262001-08-08  Assar Westerlund  <assar@sics.se>
427
428	* ftpd/ls.c: make -a and -A do the same as in ls(1)
429
4302001-08-05  Assar Westerlund  <assar@sics.se>
431
432	* ftpd/ftpcmd.y: add some (unsigned char) casts to is*
433	* ftp/cmds.c: add some (unsigned char) casts to is*
434	* ftpd/gss_userok.c (gss_userok): make argument to printf type
435	correct
436
4372001-08-05  Assar Westerlund  <assar@sics.se>
438
439	* ftp/cmds.c (setpeer): __NetBSD__ is also a unix-like OS
440
4412001-06-19  Assar Westerlund  <assar@sics.se>
442
443	* ftpd/popen.c, ftpd/ftpd.c: try to handle GLOB_MAXPATH (FreeBSD)
444
4452001-04-19  Johan Danielsson  <joda@pdc.kth.se>
446
447	* ftpd/ftpd.c (do_store): call closefunc before claiming that
448	everything went ok, if the close fails the file might not have
449	been stored properly
450
4512001-03-26  Assar Westerlund  <assar@sics.se>
452
453	* ftpd/ftpd.c, ftpd/popen.c: always use GLOB_LIMIT
454	* ftpd/popen.c (ftpd_popen): use GLOB_LIMIT if defined
455	* ftpd/ftpd.c (send_file_list): use GLOB_LIMIT if defined
456
4572001-02-15  Assar Westerlund  <assar@sics.se>
458
459	* ftp/cmds.c (setpeer): handle both service names and port numbers
460	for the second optional argument.  also make parsing more robust
461
4622001-02-07  Assar Westerlund  <assar@sics.se>
463
464	* ftp/security.c (sec_end): only clean app_data if there is any
465	(*): do realloc consistently
466
4672001-02-05  Assar Westerlund  <assar@sics.se>
468
469	* ftpd/popen.c (ftpd_popen): avoid overwriting the bounds of argv
470	and gargv
471
4722001-01-30  Assar Westerlund  <assar@sics.se>
473
474	* ftpd/gss_userok.c: use gss_krb5_copy_ccache
475
4762001-01-29  Assar Westerlund  <assar@sics.se>
477
478	* ftpd/Makefile.am: move up LIB_otp so we do not end up picking
479 	one from /usr/athena
480
4812001-01-25  Johan Danielsson  <joda@pdc.kth.se>
482
483	* ftpd/ls.c: fix bug in previous; make it easier to build test
484	version
485
4862001-01-19  Johan Danielsson  <joda@pdc.kth.se>
487
488	* ftpd/ls.c (lstat_file): handle case where file lives in `/'
489
4902001-01-18  Johan Danielsson  <joda@pdc.kth.se>
491
492	* ftpd/ftpd.c (pasv): close already open passive port
493
4942000-12-14  Johan Danielsson  <joda@pdc.kth.se>
495
496	* ftpd/ls.c: reverse time and size sort order (pointed out by
497	tege)
498
4992000-12-11  Johan Danielsson  <joda@pdc.kth.se>
500
501	* ftpd/ftpd.c: make it possible to set list of good filename
502	characters from command line
503
5042000-12-10  Johan Danielsson  <joda@pdc.kth.se>
505
506	* ftpd/ftpd.c: some spec-violating mirror software assumes that
507	you can do things like `LIST -CF'; don't pass `--' to ls so this
508	actually works
509
510	* ftpd/ls.c: implement -1CFx flags
511
5122000-12-08  Assar Westerlund  <assar@sics.se>
513
514	* ftpd/gss_userok.c (gss_userok): handle getpwnam failing
515	* ftp/gssapi.c (gss_auth): be more explicit in error message
516
5172000-11-29  Johan Danielsson  <joda@pdc.kth.se>
518
519	* ftpd/ftpd.8: close list
520
5212000-11-15  Assar Westerlund  <assar@sics.se>
522
523	* ftp/main.c: add `-l' for no line-editing
524	* ftp/globals.c (readline): add
525	* ftp/ftp_var.h (lineedit): add variable indicated if we should
526	use readline
527
5282000-11-09  Johan Danielsson  <joda@pdc.kth.se>
529
530	* ftp/security.c (sec_read): fix bug in previous (from Jacques A.
531	Vidrine <n@nectar.com>)
532
5332000-11-05  Johan Danielsson  <joda@pdc.kth.se>
534
535	* ftpd/ftpcmd.y: only allow pasv if logged in
536
5372000-10-23  Johan Danielsson  <joda@pdc.kth.se>
538
539	* ftpd/ftpd.c: change bad filename message slightly
540
541	* common/buffer.c: HAVE_ST_BLKSIZE -> HAVE_STRUCT_STAT_ST_BLKSIZE
542
5432000-10-08  Assar Westerlund  <assar@sics.se>
544
545	* ftp/ftp.c (*): check that fds are not too large to select on
546	* ftp/main.c (cmdscanner): print a newline upon EOF
547
5482000-09-19  Assar Westerlund  <assar@sics.se>
549
550	* ftp/security.h: add some attributes to prototypes of sec*
551	* ftp/extern.h (command): add attributes
552
5532000-08-31  Johan Danielsson  <joda@pdc.kth.se>
554
555	* ftpd/ftpd.c: change redundant password message to something
556	people can understand
557
5582000-07-27  Assar Westerlund  <assar@sics.se>
559
560	* ftpd/gss_userok.c (gss_userok): only do AFS iff KRB4
561	* ftpd/ftpd.c (krb5_verify): only do AFS stuff if KRB4
562
5632000-07-07  Assar Westerlund  <assar@sics.se>
564
565	* ftpd/ftpd.c: do not call setproctitle with a variable as the
566	format string
567
5682000-07-01  Assar Westerlund  <assar@sics.se>
569
570	* ftpd/ftpd_locl.h: krb5.h before kafs.h
571	* ftpd/ftpd.c (krb5_verify): static-ize
572	* ftpd/ftpd.c (krb5_verify): conditionalize on KRB5
573
5742000-06-21  Assar Westerlund  <assar@sics.se>
575
576	* ftpd: support for authenticating passwords with krb5, by Daniel
577	Kouril <kouril@ics.muni.cz>
578
5792000-06-06  Johan Danielsson  <joda@pdc.kth.se>
580
581	* ftpd/ftpcmd.y: change unix test to be negative
582
5832000-05-18  Assar Westerlund  <assar@sics.se>
584
585	* ftpd/ftpd.c (args): should use `debug'.  From Onno van der
586	Linden <onno@simplex.nl>.
587
5882000-04-25  Assar Westerlund  <assar@sics.se>
589
590	* ftp/ftp.c (login): re-structure code so that we prompt for
591	password for ftp/anonymous
592
5932000-04-11  Assar Westerlund  <assar@sics.se>
594
595	* ftp/ftp.c (login): initialize tmp before calling fgets
596
5972000-04-02  Assar Westerlund  <assar@sics.se>
598
599	* ftpd/ls.c: rename all st_mtime variables to avoid conflict with
600	#define.
601	* ftpd/ftpcmd.y: rename all st_mtime variables to avoid conflict
602	with #define.
603	* ftp/cmds.c: rename all st_mtime variables to avoid conflict with
604	#define.
605
6062000-03-26  Assar Westerlund  <assar@sics.se>
607
608	* ftpd/ls.c, ftpd/ftpcmd.y, ftp/cmds.c: make sure to always call
609	time, ctime, and gmtime with `time_t's.  there were some types
610	(like in lastlog) that we believed to always be time_t.  this has
611	proven wrong on Solaris 8 in 64-bit mode, where they are stored as
612	32-bit quantities but time_t has gone up to 64 bits
613
6142000-03-09  Johan Danielsson  <joda@pdc.kth.se>
615
616	* call list_file for broken usages of nlst too
617
618	* ftpd/ftpd.c: call list_file for broken usages of nlst too
619
6202000-02-07  Assar Westerlund  <assar@sics.se>
621
622	* ftp/security.c (sec_read): more paranoia with return value from
623	sec_get_data
624
6252000-01-08  Assar Westerlund  <assar@sics.se>
626
627	* ftp/ftp.c (hookup): handle ai_canonname being set in any of the
628	addresses returnedby getaddrinfo.  glibc apparently returns the
629	reverse lookup of every address in ai_canonname.
630	* ftp/ruserpass.c (guess_domain): dito
631
6321999-12-21  Assar Westerlund  <assar@sics.se>
633
634	* ftpd/ftpd.c: don't use sa_len as a parameter, it's defined on
635 	Irix
636
6371999-12-21  Johan Danielsson  <joda@pdc.kth.se>
638
639	* ftpd/ftpd.c (dataconn): make sure from points to actual data
640
6411999-12-16  Assar Westerlund  <assar@sics.se>
642
643	* ftp/ruserpass.c (guess_domain): handle ai_canonname not being
644	set
645	* ftp/ftp.c (hookup): handle ai_canonname not being set
646
6471999-12-06  Assar Westerlund  <assar@sics.se>
648
649	* ftp/krb4.c (krb4_auth): the nat-IP address might not be realm
650	bounded.
651
6521999-12-05  Assar Westerlund  <assar@sics.se>
653
654	* ftpd/ftpd.c (dolog): update prototype
655	* ftpd/ftpd.c (dolog): use getnameinfo_verified
656	* ftpd/ftpd.c: replace inaddr2str by getnameinfo
657
6581999-12-04  Assar Westerlund  <assar@sics.se>
659
660	* ftp/ruserpass.c (guess_domain): re-write to use getaddrinfo
661	* ftp/ftp.c (hookup): re-write to use getaddrinfo
662
6631999-11-30  Assar Westerlund  <assar@sics.se>
664
665	* ftpd/ftpd.c (getdatasock): make sure to keep the port-number of
666 	the outgoing connections.  It has to be `ftp-data' or some people
667 	might get upset.
668
669	* ftpd/ftpd.c (args): set correct variable when `-l' so that
670 	logging actually works
671
6721999-11-29  Assar Westerlund  <assar@sics.se>
673
674	* ftp/security.c (sec_login): check return value from realloc
675	(sec_end): set app_data to NULL
676
6771999-11-25  Assar Westerlund  <assar@sics.se>
678
679	* ftp/krb4.c (krb4_auth): obtain the `local' address when doing
680	NAT.  also turn on passive mode.  From <thn@stacken.kth.se>
681
6821999-11-20  Assar Westerlund  <assar@sics.se>
683
684	* ftpd/ls.c (make_fileinfo): cast to allow for non-const
685 	prototypes of readlink
686
6871999-11-12  Assar Westerlund  <assar@sics.se>
688
689	* ftpd/ftpd.c (args): use arg_counter for `l'
690
6911999-11-04  Assar Westerlund  <assar@sics.se>
692
693	* ftpd/ls.c (S_ISSOCK, S_ISLNK): fallback definitions for systems
694 	that don't have them (such as ultrix)
695
6961999-10-29  Assar Westerlund  <assar@sics.se>
697
698	* ftpd/ls.c (make_fileinfo): cast uid's and gid's to unsigned in
699 	printf, we don't know what types they might be.
700	(lstat_file): conditionalize the kafs part on KRB4
701
702	* ftpd/ftpd_locl.h: <sys/ioccom.h> is needed for kafs.h
703
7041999-10-28  Assar Westerlund  <assar@sics.se>
705
706	* ftpd/ls.c (lstat_file): don't set st_mode, it should already be
707 	correct
708
709	* ftpd/ls.c: don't use warnx to print errors
710
711	* ftpd/ls.c (builtin_ls): fix typo, 'd' shouldn't imply 'f'
712
713	* ftpd/ls.c (lstat_file): new function for avoiding stating AFS
714 	mount points.  From Love <lha@s3.kth.se>
715	(list_files): use `lstat_file'
716
717	* ftpd/ftpd.c: some const-poisoning
718
719	* ftpd/ftpd.c (args): add `-B' as an alias for `--builtin-ls' to
720 	allow for stupid inetds that only support two arguments.  From
721 	Love <lha@s3.kth.se>
722
7231999-10-26  Assar Westerlund  <assar@sics.se>
724
725	* ftpd/ftpcmd.y (help): it's unnecessary to interpret help strings
726 	as printf commands
727
728	* ftpd/ftpd.c (show_issue): don't interpret contents of
729 	/etc/issue* as printf commands.  From Brian A May
730 	<bmay@dgs.monash.edu.au>
731
7321999-10-21  Johan Danielsson  <joda@pdc.kth.se>
733
734	* ftpd/kauth.c (kauth): complain if protection level isn't
735	`private'
736
737	* ftp/krb4.c (krb4_decode): syslog failure reason
738
739	* ftp/kauth.c (kauth): set private level earlier
740
741	* ftp/security.c: get_command_prot; (sec_prot): partially match
742	`command' and `data'
743
7441999-10-18  Johan Danielsson  <joda@pdc.kth.se>
745
746	* ftpd/ftpd.c: change `-l' flag to use arg_collect (this makes
747	`-ll' work again)
748
749	* ftpd/ftpd.c (list_file): pass filename to ls
750
7511999-10-04  Johan Danielsson  <joda@pdc.kth.se>
752
753	* ftpd/ftpcmd.y: FEAT
754
7551999-10-03  Assar Westerlund  <assar@sics.se>
756
757	* ftpd/ls.c: fall-back definitions for constans and casts for
758 	printfs
759
7601999-10-03  Johan Danielsson  <joda@pdc.kth.se>
761
762	* ftpd/ftpd.c (main): make this use getarg; add `list_file'
763
764	* ftpd/ftpcmd.y (LIST): call list_file
765
766	* ftpd/ls.c: add simple built-in ls
767
768	* ftp/security.c: add `sec_vfprintf2' and `sec_fprintf2' that
769	prints to the data stream
770
771	* ftp/kauth.c (kauth): make sure we're using private protection
772	level
773
774	* ftp/security.c (set_command_prot): set command protection level
775
776	* ftp/security.c: make it possible to set the command protection
777	level with `prot'
778
7791999-09-30  Assar Westerlund  <assar@sics.se>
780
781	* ftpd/ftpd_locl.h: add prototype for fclose to make sunos happy
782
7831999-08-19  Johan Danielsson  <joda@pdc.kth.se>
784
785	* ftpd/ftpd.c (do_login): show issue-file
786	(send_data): change handling of zero-byte files
787
7881999-08-18  Assar Westerlund  <assar@sics.se>
789
790	* ftp/cmds.c (getit): be more suspicious when parsing the result
791 	of MDTM.  Do the comparison of timestamps correctly.
792
7931999-08-13  Assar Westerlund  <assar@sics.se>
794
795	* ftpd/ftpd.c (send_data): avoid calling mmap with `len == 0'.
796  	Some mmap:s rather dislike that (Solaris) and some munmap (Linux)
797 	get grumpy later.
798
799	* ftp/ftp.c (copy_stream): avoid calling mmap with `len == 0'.
800  	Some mmap:s rather dislike that (Solaris) and some munmap (Linux)
801 	get grumpy later.
802
8031999-08-03  Assar Westerlund  <assar@sics.se>
804
805	* ftp/ftp.c (active_mode): hide failure of EPRT by setting verbose
806
807	* ftp/gssapi.c (gss_auth): initialize application_data in bindings
808
8091999-08-02  Assar Westerlund  <assar@sics.se>
810
811	* ftpd/ftpcmd.y: save file names when doing commands that might
812 	get aborted (and longjmp:ed out of) to avoid overwriting them also
813 	remove extra closing brace
814
8151999-08-01  Johan Danielsson  <joda@pdc.kth.se>
816
817	* ftpd/ftpcmd.y: change `site find' to `site locate' (to match
818	what it does, and other implementations) keep find as an alias
819
8201999-07-28  Assar Westerlund  <assar@sics.se>
821
822	* common/socket.c: moved to roken
823
824	* common/socket.c: new file with generic socket functions
825
826	* ftpd/ftpd.c: make it more AF-neutral and v6-capable
827
828	* ftpd/ftpcmd.y: add EPRT and EPSV
829
830	* ftpd/extern.h: update prototypes and variables
831
832	* ftp/krb4.c: update to new types of addresses
833
834	* ftp/gssapi.c: add support for both AF_INET and AF_INET6
835 	addresses
836
837	* ftp/ftp.c: make it more AF-neutral and v6-capable
838
839	* ftp/extern.h (hookup): change prototype
840
841	* common/common.h: add prototypes for functions in socket.c
842
843	* common/Makefile.am (libcommon_a_SOURCES): add socket.c
844
845	* ftp/gssapi.c (gss_auth): check return value from
846 	`gss_import_name' and print error messages if it fails
847
8481999-06-15  Assar Westerlund  <assar@sics.se>
849
850	* ftp/krb4.c (krb4_auth): type correctness
851
8521999-06-02  Johan Danielsson  <joda@pdc.kth.se>
853
854	* ftp/ftp.c (sendrequest): lmode != rmode
855
8561999-05-21  Assar Westerlund  <assar@sics.se>
857
858	* ftp/extern.h (sendrequest): update prototype
859
860	* ftp/cmds.c: update calls to sendrequest and recvrequest to send
861 	"b" when appropriate
862
863	* ftp/ftp.c (sendrequest): add argument for mode to open file in.
864
8651999-05-08  Assar Westerlund  <assar@sics.se>
866
867	* ftpd/ftpcmd.y: rename getline -> ftpd_getline
868
869	* ftp/main.c (makeargv): fill in unused slots with NULL
870
871Thu Apr  8 15:06:40 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
872
873	* ftpd/ftpd.c: remove definition of KRB_VERIFY_USER (moved to
874 	config.h)
875
876Wed Apr  7 16:15:21 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
877
878	* ftp/gssapi.c (gss_auth): call gss_display_status to get a sane
879 	error message; return AUTH_{CONTINUE,ERROR}, where appropriate
880
881	* ftp/krb4.c: return AUTH_{CONTINUE,ERROR}, where appropriate
882
883	* ftp/security.c (sec_login): if mechanism returns AUTH_CONTINUE,
884 	just continue with the next mechanism, this fixes the case of
885 	having GSSAPI fail because of non-existant of expired tickets
886
887	* ftp/security.h: add AUTH_{OK,CONTINUE,ERROR}
888
889Thu Apr  1 16:59:04 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
890
891	* ftpd/Makefile.am: don't run check-local
892
893	* ftp/Makefile.am: don't run check-local
894
895Mon Mar 22 22:15:18 1999  Assar Westerlund  <assar@sics.se>
896
897	* ftpd/ftpd.c (pass): fall-back for KRB_VERIFY_SECURE
898
899	* ftpd/ftpd.c (pass): 1 -> KRB_VERIFY_SECURE
900
901Thu Mar 18 12:07:09 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
902
903	* ftpd/Makefile.am: clean ftpcmd.c
904
905	* ftpd/ftpd_locl.h: remove krb5.h (breaks in ftpcmd.y)
906
907	* ftpd/ftpd.c: move include of krb5.h here
908
909	* ftpd/Makefile.am: include Makefile.am.common
910
911	* Makefile.am: include Makefile.am.common
912
913	* ftp/Makefile.am: include Makefile.am.common
914
915	* common/Makefile.am: include Makefile.am.common
916
917Tue Mar 16 22:28:37 1999  Assar Westerlund  <assar@sics.se>
918
919	* ftpd/ftpd_locl.h: add krb5.h to get heimdal_version
920
921	* ftpd/ftpd.c: krb_verify_user_multiple -> krb_verify_user
922
923Thu Mar 11 14:54:59 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
924
925	* ftp/Makefile.in: WFLAGS
926
927	* ftp/ruserpass.c: add some if-braces
928
929Wed Mar 10 20:02:55 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
930
931	* ftpd/ftpd_locl.h: remove ifdef HAVE_FNMATCH
932
933Mon Mar  8 21:29:24 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
934
935	* ftpd/ftpd.c: re-add version in greeting message
936
937Mon Mar  1 10:49:38 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
938
939	* ftpd/logwtmp.c: HAVE_UT_* -> HAVE_STRUCT_UTMP*_UT_*
940
941Mon Feb 22 19:20:51 1999  Johan Danielsson  <joda@hella.pdc.kth.se>
942
943	* common/Makefile.in: remove glob
944
945Sat Feb 13 17:19:35 1999  Assar Westerlund  <assar@sics.se>
946
947	* ftpd/ftpd.c (match): remove #ifdef HAVE_FNMATCH.  We have a
948 	fnmatch implementation in roken and therefore always have it.
949
950	* ftp/ftp.c (copy_stream): initialize `werr'
951
952Wed Jan 13 23:52:57 1999  Assar Westerlund  <assar@sics.se>
953
954	* ftpd/ftpcmd.y: moved all check_login and check_login_no_guest to
955 	the end of the rules to ensure we don't generate several
956 	(independent) error messages.  once again, having a yacc-grammar
957 	for FTP with embedded actions doesn't strike me as the most
958 	optimal way of doing it.
959
960Tue Dec  1 14:44:29 1998  Johan Danielsson  <joda@hella.pdc.kth.se>
961
962	* ftpd/Makefile.am: link with extra libs for aix
963
964Sun Nov 22 10:28:20 1998  Assar Westerlund  <assar@sics.se>
965
966	* ftpd/ftpd.c (retrying): support on-the-fly decompression
967
968	* ftpd/Makefile.in (WFLAGS): set
969
970	* ftp/ruserpass.c (guess_domain): new function
971	(ruserpass): use it
972
973	* common/Makefile.in (WFLAGS): set
974
975	* Makefile.in (WFLAGS): set
976
977Sat Nov 21 23:13:03 1998  Assar Westerlund  <assar@sics.se>
978
979	* ftp/security.c: some more type correctness.
980
981	* ftp/gssapi.c (gss_adat): more braces to shut up warnings
982
983Wed Nov 18 21:47:55 1998  Assar Westerlund  <assar@sics.se>
984
985	* ftp/main.c (main): new option `-p' for enable passive mode.
986
987Mon Nov  2 01:57:49 1998  Assar Westerlund  <assar@sics.se>
988
989	* ftp/ftp.c (getreply): remove extra `break'
990
991	* ftp/gssapi.c (gss_auth): fixo typo(copyo?)
992
993	* ftp/security.c (sec_login): fix loop and return value
994
995Tue Sep  1 16:56:42 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
996
997	* ftp/cmds.c (quote1): fix % quoting bug
998
999Fri Aug 14 17:10:06 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
1000
1001	* ftp/krb4.c: krb_put_int -> KRB_PUT_INT
1002
1003Tue Jun 30 18:07:15 1998  Assar Westerlund  <assar@sics.se>
1004
1005	* ftp/security.c (auth): free `app_data'
1006	(sec_end): only destroy if it was initialized
1007
1008Tue Jun  9 21:01:59 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
1009
1010	* ftp/krb4.c: pass client address to krb_rd_req
1011
1012Sat May 16 00:02:07 1998  Assar Westerlund  <assar@sics.se>
1013
1014	* ftpd/Makefile.am: link with DBLIB
1015
1016Tue May 12 14:15:32 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
1017
1018	* ftp/gssapi.c: Save client name for userok().
1019
1020	* ftpd/gss_userok.c: Userok for gssapi.
1021
1022Fri May  1 07:15:01 1998  Assar Westerlund  <assar@sics.se>
1023
1024	* ftp/ftp.c: unifdef -DHAVE_H_ERRNO
1025
1026Fri Mar 27 00:46:07 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
1027
1028	* Make compile w/o krb4.
1029
1030Thu Mar 26 03:49:12 1998  Johan Danielsson  <joda@emma.pdc.kth.se>
1031
1032	* ftp/*, ftpd/*: Changes for new framework.
1033
1034	* ftp/gssapi.c: GSS-API backend for the new security framework.
1035
1036	* ftp/krb4.c: Updated for new framework.
1037
1038	* ftp/security.{c,h}: New unified security framework.
1039