12001-09-13 Johan Danielsson <joda@pdc.kth.se> 2 3 * ftpd/ftpd.c (dataconn): don't wait forever on accept 4 52001-09-04 Assar Westerlund <assar@sics.se> 6 7 * ftp/gssapi.c (gss_adat): leak less memory and check return value 8 from asprintf 9 102001-08-28 Jacques Vidrine <n@nectar.com> 11 12 * ftpd/ftpd.c, ftpd/ftpd.8: On systems with IP_PORTRANGE, have 13 ftpd use `high-numbered' ports by default. Add a -U option 14 to get the old behavior. 15 162001-08-28 Johan Danielsson <joda@pdc.kth.se> 17 18 * ftp/gssapi.c: try using "host" if there's no "ftp" principal 19 202001-08-26 Johan Danielsson <joda@pdc.kth.se> 21 22 * ftpd/ls.c: implement -R 23 242001-08-08 Assar Westerlund <assar@sics.se> 25 26 * ftpd/ls.c: make -a and -A do the same as in ls(1) 27 282001-08-05 Assar Westerlund <assar@sics.se> 29 30 * ftpd/ftpcmd.y: add some (unsigned char) casts to is* 31 * ftp/cmds.c: add some (unsigned char) casts to is* 32 * ftpd/gss_userok.c (gss_userok): make argument to printf type 33 correct 34 352001-08-05 Assar Westerlund <assar@sics.se> 36 37 * ftp/cmds.c (setpeer): __NetBSD__ is also a unix-like OS 38 392001-06-19 Assar Westerlund <assar@sics.se> 40 41 * ftpd/popen.c, ftpd/ftpd.c: try to handle GLOB_MAXPATH (FreeBSD) 42 432001-04-19 Johan Danielsson <joda@pdc.kth.se> 44 45 * ftpd/ftpd.c (do_store): call closefunc before claiming that 46 everything went ok, if the close fails the file might not have 47 been stored properly 48 492001-03-26 Assar Westerlund <assar@sics.se> 50 51 * ftpd/ftpd.c, ftpd/popen.c: always use GLOB_LIMIT 52 * ftpd/popen.c (ftpd_popen): use GLOB_LIMIT if defined 53 * ftpd/ftpd.c (send_file_list): use GLOB_LIMIT if defined 54 552001-02-15 Assar Westerlund <assar@sics.se> 56 57 * ftp/cmds.c (setpeer): handle both service names and port numbers 58 for the second optional argument. also make parsing more robust 59 602001-02-07 Assar Westerlund <assar@sics.se> 61 62 * ftp/security.c (sec_end): only clean app_data if there is any 63 (*): do realloc consistently 64 652001-02-05 Assar Westerlund <assar@sics.se> 66 67 * ftpd/popen.c (ftpd_popen): avoid overwriting the bounds of argv 68 and gargv 69 702001-01-30 Assar Westerlund <assar@sics.se> 71 72 * ftpd/gss_userok.c: use gss_krb5_copy_ccache 73 742001-01-29 Assar Westerlund <assar@sics.se> 75 76 * ftpd/Makefile.am: move up LIB_otp so we do not end up picking 77 one from /usr/athena 78 792001-01-25 Johan Danielsson <joda@pdc.kth.se> 80 81 * ftpd/ls.c: fix bug in previous; make it easier to build test 82 version 83 842001-01-19 Johan Danielsson <joda@pdc.kth.se> 85 86 * ftpd/ls.c (lstat_file): handle case where file lives in `/' 87 882001-01-18 Johan Danielsson <joda@pdc.kth.se> 89 90 * ftpd/ftpd.c (pasv): close already open passive port 91 922000-12-14 Johan Danielsson <joda@pdc.kth.se> 93 94 * ftpd/ls.c: reverse time and size sort order (pointed out by 95 tege) 96 972000-12-11 Johan Danielsson <joda@pdc.kth.se> 98 99 * ftpd/ftpd.c: make it possible to set list of good filename 100 characters from command line 101 1022000-12-10 Johan Danielsson <joda@pdc.kth.se> 103 104 * ftpd/ftpd.c: some spec-violating mirror software assumes that 105 you can do things like `LIST -CF'; don't pass `--' to ls so this 106 actually works 107 108 * ftpd/ls.c: implement -1CFx flags 109 1102000-12-08 Assar Westerlund <assar@sics.se> 111 112 * ftpd/gss_userok.c (gss_userok): handle getpwnam failing 113 * ftp/gssapi.c (gss_auth): be more explicit in error message 114 1152000-11-29 Johan Danielsson <joda@pdc.kth.se> 116 117 * ftpd/ftpd.8: close list 118 1192000-11-15 Assar Westerlund <assar@sics.se> 120 121 * ftp/main.c: add `-l' for no line-editing 122 * ftp/globals.c (readline): add 123 * ftp/ftp_var.h (lineedit): add variable indicated if we should 124 use readline 125 1262000-11-09 Johan Danielsson <joda@pdc.kth.se> 127 128 * ftp/security.c (sec_read): fix bug in previous (from Jacques A. 129 Vidrine <n@nectar.com>) 130 1312000-11-05 Johan Danielsson <joda@pdc.kth.se> 132 133 * ftpd/ftpcmd.y: only allow pasv if logged in 134 1352000-10-23 Johan Danielsson <joda@pdc.kth.se> 136 137 * ftpd/ftpd.c: change bad filename message slightly 138 139 * common/buffer.c: HAVE_ST_BLKSIZE -> HAVE_STRUCT_STAT_ST_BLKSIZE 140 1412000-10-08 Assar Westerlund <assar@sics.se> 142 143 * ftp/ftp.c (*): check that fds are not too large to select on 144 * ftp/main.c (cmdscanner): print a newline upon EOF 145 1462000-09-19 Assar Westerlund <assar@sics.se> 147 148 * ftp/security.h: add some attributes to prototypes of sec* 149 * ftp/extern.h (command): add attributes 150 1512000-08-31 Johan Danielsson <joda@pdc.kth.se> 152 153 * ftpd/ftpd.c: change redundant password message to something 154 people can understand 155 1562000-07-27 Assar Westerlund <assar@sics.se> 157 158 * ftpd/gss_userok.c (gss_userok): only do AFS iff KRB4 159 * ftpd/ftpd.c (krb5_verify): only do AFS stuff if KRB4 160 1612000-07-07 Assar Westerlund <assar@sics.se> 162 163 * ftpd/ftpd.c: do not call setproctitle with a variable as the 164 format string 165 1662000-07-01 Assar Westerlund <assar@sics.se> 167 168 * ftpd/ftpd_locl.h: krb5.h before kafs.h 169 * ftpd/ftpd.c (krb5_verify): static-ize 170 * ftpd/ftpd.c (krb5_verify): conditionalize on KRB5 171 1722000-06-21 Assar Westerlund <assar@sics.se> 173 174 * ftpd: support for authenticating passwords with krb5, by Daniel 175 Kouril <kouril@ics.muni.cz> 176 1772000-06-06 Johan Danielsson <joda@pdc.kth.se> 178 179 * ftpd/ftpcmd.y: change unix test to be negative 180 1812000-05-18 Assar Westerlund <assar@sics.se> 182 183 * ftpd/ftpd.c (args): should use `debug'. From Onno van der 184 Linden <onno@simplex.nl>. 185 1862000-04-25 Assar Westerlund <assar@sics.se> 187 188 * ftp/ftp.c (login): re-structure code so that we prompt for 189 password for ftp/anonymous 190 1912000-04-11 Assar Westerlund <assar@sics.se> 192 193 * ftp/ftp.c (login): initialize tmp before calling fgets 194 1952000-04-02 Assar Westerlund <assar@sics.se> 196 197 * ftpd/ls.c: rename all st_mtime variables to avoid conflict with 198 #define. 199 * ftpd/ftpcmd.y: rename all st_mtime variables to avoid conflict 200 with #define. 201 * ftp/cmds.c: rename all st_mtime variables to avoid conflict with 202 #define. 203 2042000-03-26 Assar Westerlund <assar@sics.se> 205 206 * ftpd/ls.c, ftpd/ftpcmd.y, ftp/cmds.c: make sure to always call 207 time, ctime, and gmtime with `time_t's. there were some types 208 (like in lastlog) that we believed to always be time_t. this has 209 proven wrong on Solaris 8 in 64-bit mode, where they are stored as 210 32-bit quantities but time_t has gone up to 64 bits 211 2122000-03-09 Johan Danielsson <joda@pdc.kth.se> 213 214 * call list_file for broken usages of nlst too 215 216 * ftpd/ftpd.c: call list_file for broken usages of nlst too 217 2182000-02-07 Assar Westerlund <assar@sics.se> 219 220 * ftp/security.c (sec_read): more paranoia with return value from 221 sec_get_data 222 2232000-01-08 Assar Westerlund <assar@sics.se> 224 225 * ftp/ftp.c (hookup): handle ai_canonname being set in any of the 226 addresses returnedby getaddrinfo. glibc apparently returns the 227 reverse lookup of every address in ai_canonname. 228 * ftp/ruserpass.c (guess_domain): dito 229 2301999-12-21 Assar Westerlund <assar@sics.se> 231 232 * ftpd/ftpd.c: don't use sa_len as a parameter, it's defined on 233 Irix 234 2351999-12-21 Johan Danielsson <joda@pdc.kth.se> 236 237 * ftpd/ftpd.c (dataconn): make sure from points to actual data 238 2391999-12-16 Assar Westerlund <assar@sics.se> 240 241 * ftp/ruserpass.c (guess_domain): handle ai_canonname not being 242 set 243 * ftp/ftp.c (hookup): handle ai_canonname not being set 244 2451999-12-06 Assar Westerlund <assar@sics.se> 246 247 * ftp/krb4.c (krb4_auth): the nat-IP address might not be realm 248 bounded. 249 2501999-12-05 Assar Westerlund <assar@sics.se> 251 252 * ftpd/ftpd.c (dolog): update prototype 253 * ftpd/ftpd.c (dolog): use getnameinfo_verified 254 * ftpd/ftpd.c: replace inaddr2str by getnameinfo 255 2561999-12-04 Assar Westerlund <assar@sics.se> 257 258 * ftp/ruserpass.c (guess_domain): re-write to use getaddrinfo 259 * ftp/ftp.c (hookup): re-write to use getaddrinfo 260 2611999-11-30 Assar Westerlund <assar@sics.se> 262 263 * ftpd/ftpd.c (getdatasock): make sure to keep the port-number of 264 the outgoing connections. It has to be `ftp-data' or some people 265 might get upset. 266 267 * ftpd/ftpd.c (args): set correct variable when `-l' so that 268 logging actually works 269 2701999-11-29 Assar Westerlund <assar@sics.se> 271 272 * ftp/security.c (sec_login): check return value from realloc 273 (sec_end): set app_data to NULL 274 2751999-11-25 Assar Westerlund <assar@sics.se> 276 277 * ftp/krb4.c (krb4_auth): obtain the `local' address when doing 278 NAT. also turn on passive mode. From <thn@stacken.kth.se> 279 2801999-11-20 Assar Westerlund <assar@sics.se> 281 282 * ftpd/ls.c (make_fileinfo): cast to allow for non-const 283 prototypes of readlink 284 2851999-11-12 Assar Westerlund <assar@sics.se> 286 287 * ftpd/ftpd.c (args): use arg_counter for `l' 288 2891999-11-04 Assar Westerlund <assar@sics.se> 290 291 * ftpd/ls.c (S_ISSOCK, S_ISLNK): fallback definitions for systems 292 that don't have them (such as ultrix) 293 2941999-10-29 Assar Westerlund <assar@sics.se> 295 296 * ftpd/ls.c (make_fileinfo): cast uid's and gid's to unsigned in 297 printf, we don't know what types they might be. 298 (lstat_file): conditionalize the kafs part on KRB4 299 300 * ftpd/ftpd_locl.h: <sys/ioccom.h> is needed for kafs.h 301 3021999-10-28 Assar Westerlund <assar@sics.se> 303 304 * ftpd/ls.c (lstat_file): don't set st_mode, it should already be 305 correct 306 307 * ftpd/ls.c: don't use warnx to print errors 308 309 * ftpd/ls.c (builtin_ls): fix typo, 'd' shouldn't imply 'f' 310 311 * ftpd/ls.c (lstat_file): new function for avoiding stating AFS 312 mount points. From Love <lha@s3.kth.se> 313 (list_files): use `lstat_file' 314 315 * ftpd/ftpd.c: some const-poisoning 316 317 * ftpd/ftpd.c (args): add `-B' as an alias for `--builtin-ls' to 318 allow for stupid inetds that only support two arguments. From 319 Love <lha@s3.kth.se> 320 3211999-10-26 Assar Westerlund <assar@sics.se> 322 323 * ftpd/ftpcmd.y (help): it's unnecessary to interpret help strings 324 as printf commands 325 326 * ftpd/ftpd.c (show_issue): don't interpret contents of 327 /etc/issue* as printf commands. From Brian A May 328 <bmay@dgs.monash.edu.au> 329 3301999-10-21 Johan Danielsson <joda@pdc.kth.se> 331 332 * ftpd/kauth.c (kauth): complain if protection level isn't 333 `private' 334 335 * ftp/krb4.c (krb4_decode): syslog failure reason 336 337 * ftp/kauth.c (kauth): set private level earlier 338 339 * ftp/security.c: get_command_prot; (sec_prot): partially match 340 `command' and `data' 341 3421999-10-18 Johan Danielsson <joda@pdc.kth.se> 343 344 * ftpd/ftpd.c: change `-l' flag to use arg_collect (this makes 345 `-ll' work again) 346 347 * ftpd/ftpd.c (list_file): pass filename to ls 348 3491999-10-04 Johan Danielsson <joda@pdc.kth.se> 350 351 * ftpd/ftpcmd.y: FEAT 352 3531999-10-03 Assar Westerlund <assar@sics.se> 354 355 * ftpd/ls.c: fall-back definitions for constans and casts for 356 printfs 357 3581999-10-03 Johan Danielsson <joda@pdc.kth.se> 359 360 * ftpd/ftpd.c (main): make this use getarg; add `list_file' 361 362 * ftpd/ftpcmd.y (LIST): call list_file 363 364 * ftpd/ls.c: add simple built-in ls 365 366 * ftp/security.c: add `sec_vfprintf2' and `sec_fprintf2' that 367 prints to the data stream 368 369 * ftp/kauth.c (kauth): make sure we're using private protection 370 level 371 372 * ftp/security.c (set_command_prot): set command protection level 373 374 * ftp/security.c: make it possible to set the command protection 375 level with `prot' 376 3771999-09-30 Assar Westerlund <assar@sics.se> 378 379 * ftpd/ftpd_locl.h: add prototype for fclose to make sunos happy 380 3811999-08-19 Johan Danielsson <joda@pdc.kth.se> 382 383 * ftpd/ftpd.c (do_login): show issue-file 384 (send_data): change handling of zero-byte files 385 3861999-08-18 Assar Westerlund <assar@sics.se> 387 388 * ftp/cmds.c (getit): be more suspicious when parsing the result 389 of MDTM. Do the comparison of timestamps correctly. 390 3911999-08-13 Assar Westerlund <assar@sics.se> 392 393 * ftpd/ftpd.c (send_data): avoid calling mmap with `len == 0'. 394 Some mmap:s rather dislike that (Solaris) and some munmap (Linux) 395 get grumpy later. 396 397 * ftp/ftp.c (copy_stream): avoid calling mmap with `len == 0'. 398 Some mmap:s rather dislike that (Solaris) and some munmap (Linux) 399 get grumpy later. 400 4011999-08-03 Assar Westerlund <assar@sics.se> 402 403 * ftp/ftp.c (active_mode): hide failure of EPRT by setting verbose 404 405 * ftp/gssapi.c (gss_auth): initialize application_data in bindings 406 4071999-08-02 Assar Westerlund <assar@sics.se> 408 409 * ftpd/ftpcmd.y: save file names when doing commands that might 410 get aborted (and longjmp:ed out of) to avoid overwriting them also 411 remove extra closing brace 412 4131999-08-01 Johan Danielsson <joda@pdc.kth.se> 414 415 * ftpd/ftpcmd.y: change `site find' to `site locate' (to match 416 what it does, and other implementations) keep find as an alias 417 4181999-07-28 Assar Westerlund <assar@sics.se> 419 420 * common/socket.c: moved to roken 421 422 * common/socket.c: new file with generic socket functions 423 424 * ftpd/ftpd.c: make it more AF-neutral and v6-capable 425 426 * ftpd/ftpcmd.y: add EPRT and EPSV 427 428 * ftpd/extern.h: update prototypes and variables 429 430 * ftp/krb4.c: update to new types of addresses 431 432 * ftp/gssapi.c: add support for both AF_INET and AF_INET6 433 addresses 434 435 * ftp/ftp.c: make it more AF-neutral and v6-capable 436 437 * ftp/extern.h (hookup): change prototype 438 439 * common/common.h: add prototypes for functions in socket.c 440 441 * common/Makefile.am (libcommon_a_SOURCES): add socket.c 442 443 * ftp/gssapi.c (gss_auth): check return value from 444 `gss_import_name' and print error messages if it fails 445 4461999-06-15 Assar Westerlund <assar@sics.se> 447 448 * ftp/krb4.c (krb4_auth): type correctness 449 4501999-06-02 Johan Danielsson <joda@pdc.kth.se> 451 452 * ftp/ftp.c (sendrequest): lmode != rmode 453 4541999-05-21 Assar Westerlund <assar@sics.se> 455 456 * ftp/extern.h (sendrequest): update prototype 457 458 * ftp/cmds.c: update calls to sendrequest and recvrequest to send 459 "b" when appropriate 460 461 * ftp/ftp.c (sendrequest): add argument for mode to open file in. 462 4631999-05-08 Assar Westerlund <assar@sics.se> 464 465 * ftpd/ftpcmd.y: rename getline -> ftpd_getline 466 467 * ftp/main.c (makeargv): fill in unused slots with NULL 468 469Thu Apr 8 15:06:40 1999 Johan Danielsson <joda@hella.pdc.kth.se> 470 471 * ftpd/ftpd.c: remove definition of KRB_VERIFY_USER (moved to 472 config.h) 473 474Wed Apr 7 16:15:21 1999 Johan Danielsson <joda@hella.pdc.kth.se> 475 476 * ftp/gssapi.c (gss_auth): call gss_display_status to get a sane 477 error message; return AUTH_{CONTINUE,ERROR}, where appropriate 478 479 * ftp/krb4.c: return AUTH_{CONTINUE,ERROR}, where appropriate 480 481 * ftp/security.c (sec_login): if mechanism returns AUTH_CONTINUE, 482 just continue with the next mechanism, this fixes the case of 483 having GSSAPI fail because of non-existant of expired tickets 484 485 * ftp/security.h: add AUTH_{OK,CONTINUE,ERROR} 486 487Thu Apr 1 16:59:04 1999 Johan Danielsson <joda@hella.pdc.kth.se> 488 489 * ftpd/Makefile.am: don't run check-local 490 491 * ftp/Makefile.am: don't run check-local 492 493Mon Mar 22 22:15:18 1999 Assar Westerlund <assar@sics.se> 494 495 * ftpd/ftpd.c (pass): fall-back for KRB_VERIFY_SECURE 496 497 * ftpd/ftpd.c (pass): 1 -> KRB_VERIFY_SECURE 498 499Thu Mar 18 12:07:09 1999 Johan Danielsson <joda@hella.pdc.kth.se> 500 501 * ftpd/Makefile.am: clean ftpcmd.c 502 503 * ftpd/ftpd_locl.h: remove krb5.h (breaks in ftpcmd.y) 504 505 * ftpd/ftpd.c: move include of krb5.h here 506 507 * ftpd/Makefile.am: include Makefile.am.common 508 509 * Makefile.am: include Makefile.am.common 510 511 * ftp/Makefile.am: include Makefile.am.common 512 513 * common/Makefile.am: include Makefile.am.common 514 515Tue Mar 16 22:28:37 1999 Assar Westerlund <assar@sics.se> 516 517 * ftpd/ftpd_locl.h: add krb5.h to get heimdal_version 518 519 * ftpd/ftpd.c: krb_verify_user_multiple -> krb_verify_user 520 521Thu Mar 11 14:54:59 1999 Johan Danielsson <joda@hella.pdc.kth.se> 522 523 * ftp/Makefile.in: WFLAGS 524 525 * ftp/ruserpass.c: add some if-braces 526 527Wed Mar 10 20:02:55 1999 Johan Danielsson <joda@hella.pdc.kth.se> 528 529 * ftpd/ftpd_locl.h: remove ifdef HAVE_FNMATCH 530 531Mon Mar 8 21:29:24 1999 Johan Danielsson <joda@hella.pdc.kth.se> 532 533 * ftpd/ftpd.c: re-add version in greeting message 534 535Mon Mar 1 10:49:38 1999 Johan Danielsson <joda@hella.pdc.kth.se> 536 537 * ftpd/logwtmp.c: HAVE_UT_* -> HAVE_STRUCT_UTMP*_UT_* 538 539Mon Feb 22 19:20:51 1999 Johan Danielsson <joda@hella.pdc.kth.se> 540 541 * common/Makefile.in: remove glob 542 543Sat Feb 13 17:19:35 1999 Assar Westerlund <assar@sics.se> 544 545 * ftpd/ftpd.c (match): remove #ifdef HAVE_FNMATCH. We have a 546 fnmatch implementation in roken and therefore always have it. 547 548 * ftp/ftp.c (copy_stream): initialize `werr' 549 550Wed Jan 13 23:52:57 1999 Assar Westerlund <assar@sics.se> 551 552 * ftpd/ftpcmd.y: moved all check_login and check_login_no_guest to 553 the end of the rules to ensure we don't generate several 554 (independent) error messages. once again, having a yacc-grammar 555 for FTP with embedded actions doesn't strike me as the most 556 optimal way of doing it. 557 558Tue Dec 1 14:44:29 1998 Johan Danielsson <joda@hella.pdc.kth.se> 559 560 * ftpd/Makefile.am: link with extra libs for aix 561 562Sun Nov 22 10:28:20 1998 Assar Westerlund <assar@sics.se> 563 564 * ftpd/ftpd.c (retrying): support on-the-fly decompression 565 566 * ftpd/Makefile.in (WFLAGS): set 567 568 * ftp/ruserpass.c (guess_domain): new function 569 (ruserpass): use it 570 571 * common/Makefile.in (WFLAGS): set 572 573 * Makefile.in (WFLAGS): set 574 575Sat Nov 21 23:13:03 1998 Assar Westerlund <assar@sics.se> 576 577 * ftp/security.c: some more type correctness. 578 579 * ftp/gssapi.c (gss_adat): more braces to shut up warnings 580 581Wed Nov 18 21:47:55 1998 Assar Westerlund <assar@sics.se> 582 583 * ftp/main.c (main): new option `-p' for enable passive mode. 584 585Mon Nov 2 01:57:49 1998 Assar Westerlund <assar@sics.se> 586 587 * ftp/ftp.c (getreply): remove extra `break' 588 589 * ftp/gssapi.c (gss_auth): fixo typo(copyo?) 590 591 * ftp/security.c (sec_login): fix loop and return value 592 593Tue Sep 1 16:56:42 1998 Johan Danielsson <joda@emma.pdc.kth.se> 594 595 * ftp/cmds.c (quote1): fix % quoting bug 596 597Fri Aug 14 17:10:06 1998 Johan Danielsson <joda@emma.pdc.kth.se> 598 599 * ftp/krb4.c: krb_put_int -> KRB_PUT_INT 600 601Tue Jun 30 18:07:15 1998 Assar Westerlund <assar@sics.se> 602 603 * ftp/security.c (auth): free `app_data' 604 (sec_end): only destroy if it was initialized 605 606Tue Jun 9 21:01:59 1998 Johan Danielsson <joda@emma.pdc.kth.se> 607 608 * ftp/krb4.c: pass client address to krb_rd_req 609 610Sat May 16 00:02:07 1998 Assar Westerlund <assar@sics.se> 611 612 * ftpd/Makefile.am: link with DBLIB 613 614Tue May 12 14:15:32 1998 Johan Danielsson <joda@emma.pdc.kth.se> 615 616 * ftp/gssapi.c: Save client name for userok(). 617 618 * ftpd/gss_userok.c: Userok for gssapi. 619 620Fri May 1 07:15:01 1998 Assar Westerlund <assar@sics.se> 621 622 * ftp/ftp.c: unifdef -DHAVE_H_ERRNO 623 624Fri Mar 27 00:46:07 1998 Johan Danielsson <joda@emma.pdc.kth.se> 625 626 * Make compile w/o krb4. 627 628Thu Mar 26 03:49:12 1998 Johan Danielsson <joda@emma.pdc.kth.se> 629 630 * ftp/*, ftpd/*: Changes for new framework. 631 632 * ftp/gssapi.c: GSS-API backend for the new security framework. 633 634 * ftp/krb4.c: Updated for new framework. 635 636 * ftp/security.{c,h}: New unified security framework. 637