]> arthur.barton.de Git - netatalk.git/blob - ChangeLog
846f0332ae65b59b3160e3a6bc6d386f8c621505
[netatalk.git] / ChangeLog
1 2003-01-07  Rafal Marcin Lewczuk <rlewczuk@pronet.pl>
2         * Moving files between different directories on the same volume 
3           changes group of moved items if necessary (SGID bit set)
4         * Make FPCatSearch a bit more interactive (especially for MacOS 9)
5
6 2003-01-04  Joe Marcus Clarke <marcus@marcuscom.com>
7         * Add a doc/README.cnid which talks about the CNID calculation
8           and persistence scheme.
9         * Change all references to db3/DB3 to BDB since we now support
10           Berkeley DB3 and DB4.
11         * Add DB 4.1.x support.
12
13 2002-09-26  Andrew Morgan <morgan@orst.edu>
14         * Added syncmail script to CVSROOT so commits are logged to the
15         netatalk-cvs@lists.sourceforge.net mailing list.  You can subscribe
16         to this mailing list to keep track of cvs commits.
17
18 2002-09-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
19
20         * NEWS: Catted CHANGES to the end of this file. Updated from the
21         stable branch.
22         * CHANGES: Removed.
23
24 2002-02-14  andy m <morgan@orst.edu>
25         * etc/papd/queries.c: Added support for "ADOIsBinaryOK?" printer query
26         to papd.  We now respond with "True" instead of "unknown".
27
28 2002-02-09  joe c  <marcus@marcuscom.com>
29         * etc/afpd/afp_options.c: Redo the -server_notif flag.  Now, server
30         notifications are enabled by default, and specifying the -client_polling
31         flag will disable them.
32
33 2002-02-06  joe c  <marcus@marcuscom.com>
34         * etc/afpd/globals.h, etc/afpd/afp_options.c, etc/afpd/status.c
35         etc/afpd/volume.c: Add a new option -server_notif to specify that
36         a server supports server notifications.  If this flag is not specified
37         the client will poll the server every 10 seconds for directory changes.
38
39 2002-02-03  andy m <morgan@orst.edu>
40         * bin/afppasswd/Makefile.am
41         Added an install-exec-hook to make the afppasswd binary suid root
42         after it is installed.  This lets local users change their afppasswd
43         password.
44
45 2001-12-14  joe c   <marcus@marcuscom.com>
46         * etc/afpd/afp_options.c, etc/afpd/afp_dsi.c, etc/afpd/globals.h:
47         Add a new option to afpd called -timeout to specify the number of
48         server tickles to send before killing a AFPoTCP session.
49
50 2001-12-10  joe c   <marcus@marcuscom.com>
51         * bin/cnid/cnid_didname_verify,c: Add a utility to verify the consistency
52         of didname.db.  Using the stock db_verify utility will fail as the sort
53         routine is unknown.
54
55 2001-12-07  joe c   <marcus@marcuscom.com>
56         * libatalk/cnid/cnid_open.c: Re-enable synchronous transaction support
57         to try improve performance.
58
59 2001-12-04  joe c   <marcus@marcuscom.com>
60         * etc/afpd/unix.c: Fix afpd sharing NFSv3 mounts (thanks to 
61         Pierre Beyssac <beyssac@enst.fr>)
62
63 2001-12-03  joe c   <marcus@marcuscom.com>
64         * etc/afpd/*.[ch]: Big commit to clean up code with astyle (readable code 
65         is hackable code).  Also committed a fix to give CNID DB a shot in
66         production use.
67
68 2001-11-27  joe c   <marcus@marcuscom.com>
69         * configure.in: Removed the --with-cnid-db option, and added
70           --with-did=cnid for consistency
71
72 2001-11-19  pooba53 <bobo@bocklabs.wisc.edu>
73     * Modified distrib/initscripts/Makefile.am so
74       that SuSE init script ends up in the correct directory.
75
76 2001-11-19  pooba53 <bobo@bocklabs.wisc.edu>
77         * modified config/AppleVolumes.default to not 
78           have the "/Home Directory" text in it as this is not the
79           proper way of allowing default Home directory access.
80
81 2001-11-16  jnewman <jnewman@mudpup.com>
82         * macros/db3-check.m4: Prefer specific directories before general ones
83         
84 2001-11-15  pooba53 <bobo@bocklabs.wisc.edu>
85         * Modified SuSE initscript, distrib/initscripts/rc.atalk.suse.tmpl
86
87 2001-11-08  jeff b  <jeff@univrel.pr.uconn.edu>
88
89         * etc/afpd/uam.c, etc/uams/uams_pam.c, etc/uams/uams_dhx_pam.c,
90         include/atalk/uam.h: implemented patch #477640 for netatalk not
91         passing client name properly (thanks to Patrick Bihan-Faou
92         <pbf@users.sourceforge.net>)
93
94 2001-11-04  joe c <marcus@marcuscom.com>
95
96         * libatalk/cnid/cnid_open.c: Re-added code to enable on-the-fly database
97         recovery
98
99 2001-10-31  Dan <bobo@bocklabs.wisc.edu>
100         * Fixed bug in bin/afppasswd/Makefile.am causing compile problems
101           with SuSE distro.
102
103 2001-10-24  joe  c  <marcus@marcuscom.com>
104
105         * etc/afpd/fork.c: Patch to add read-only locking support
106           (thanks to Miro Jurisic <meeroh@MIT.EDU>)
107
108 2001-10-23  jeff b  <jeff@univrel.pr.uconn.edu>
109
110         * etc/afpd/{{afpd_options,filedir,main,unix}.c,
111         {filedir,globals,unix}.h}: patch from Edmund Lam to allow
112         perms masks
113
114 2001-10-21  joe c <marcus@marcuscom.com>
115
116         * libatalk/cnid*.c: Big patch to improve transaction throughput
117           and database resiliency
118
119 2001-10-19  Lance Levsen  <l.levsen@printwest.com>
120
121         * doc/FAQ: Thanks for the Patch Karen.
122
123         * doc/INSTALL: Thanks for the Patch Karen.
124
125         * CONTRIBUTORS (Developers): Thanks for the patch Brandon.
126
127         * configure.in: Fix db3 detection for db3 3.3.x users.  Thanks to
128           Jonathan Newman <jnewman@mudpup.com>
129
130 2001-10-18  joe c <marcus@marcuscom.com>
131
132         * libatalk/cnid/cnid_add.c: Fix dancing icon problem
133         * bin/afile/achfile.c: Fix resource fork problem on littleendian
134           platforms.  Thanks to Brandon Warren <bwarren@u.washington.edu>.
135
136 2001-10-17  joe c <marcus@marcuscom.com>
137
138         * libatalk/cnid/cnid_add.c: Fix deadlock problem when copying files to
139           netatalk server from multiple clients
140
141 2001-10-16  Lance Levsen  <l.levsen@printwest.com>
142
143         * man/man1/apple_mv.1.tmpl: Added apple_mv man page.
144
145         * man/man1/apple_rm.1.tmpl: Added apple_rm man page.
146
147         * contrib/shell_utils/apple_mv: Updated perl. Added error check.
148
149         * config/Makefile.am: Change autoconf variable $(f) to shell
150         variable $$f.
151
152         * man/man1/Makefile.am: Modified to allow variable subs in man pages.
153
154         * contrib/shell_utils/apple_cp: Updated. Fixed file to file
155         copy.
156
157 2001-10-15  Lance Levsen  <l.levsen@printwest.com>
158
159         * CONTRIBUTORS: Now up to date.
160
161         * doc/FAQ: Added Karen A Swanberg's FAQ additions.
162
163 2001-10-14  Lance Levsen  <l.levsen@printwest.com>
164
165         * doc/INSTALL: Added some basic instructions. Filled in more of
166         the ./configure options.
167
168         * doc/DEVELOPER: Added BDB3 information 
169
170 2001-10-11  joe  c  <marcus@marcuscom.com>
171
172         * configure.in: More PAM fixes
173
174 2001-10-10  joe  c  <marcus@marcuscom.com>
175
176         * configure.in: More PAM fixes
177         * etc/uams/Makefile.am: Properly add -lpam (thanks, Sebastian)
178
179 2001-10-09  joe  c  <marcus@marcuscom.com>
180
181         * configure.in: Fix problem with forced PAM
182         * etc/afpd/unix.c: Fix a problem setting directory perms on FreeBSD (thanks
183         to Glenn Trewitt <glenn@trewitt.org>)
184         * libatalk/cnid/cnid_close.c: Fix problem with .AppleDB contents showing
185         up in share window
186         * libatalk/cnid/cnid_update.c: memset more for cleanliness sake
187
188 2001-10-04  jeff b  <jeff@univrel.pr.uconn.edu>
189
190         Released 1.5pre8
191
192 2001-10-03  joe c   <marcus@marcuscom.com>
193         
194         * configure.in: Fix bug with PAM configuration
195         * etc/afpd/directory.c: Fix bug with unaccessible directories causing
196         afpd to erroneously return AFPERR_NOOBJ
197         * acinclude.m4: Fixed make problem on systems running libtool 1.3.x
198
199 2001-09-28  joe c   <marcus@marcuscom.com>
200
201         * libatalk/cnid/cnid_close.c: Add more db3 3.3.x compatibility to CNID DB
202
203 2001-09-27  joe c   <marcus@marcuscom.com>
204
205         * libatalk/cnid/cnid_open.c: Set internal deadlock detection
206
207 2001-09-23  joe c   <marcus@marcuscom.com>
208
209         * libatalk/cnid/cnid_close.c, libatalk/cnid/cnid_resolve.c,
210         libatalk/cnid/cnid_open.c: More s/errno/rc fixes and some code
211         cleanup
212
213 2001-09-22  joe c   <marcus@marcuscom.com>
214
215         * configure.in: Fix db3 compilation on Linux
216
217         * libatalk/cnid/cnid_get.c: Fix another potential deadlock problem by
218         replacing EAGAIN with DB_LOCK_DEADLOCK
219
220 2001-09-21  joe c   <marcus@marcuscom.com>
221
222         * etc/afpd/desktop.c: Re-enable codepage translations (thanks to
223         Egon Niederacher <niederacher@fh-vorarlberg.ac.at>)
224
225         * libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_get.c,
226         libatalk/cnid/cnid_lookup.c, libatalk/cnid/cnid_close.c,
227         libatalk/cnid/cnid_open.c, libatalk/cnid/cnid_update.c: Fixed bugs
228         with database contention and database corruption.
229
230 2001-09-19  joe c   <marcus@marcuscom.com>
231
232         * etc/afpd/afp_config.c: Fixed a bug where SRVLOC services wouldn't
233         show up in OS 9.x
234
235         * libatalk/cnid/cnid_add.c: Fix a bug where some DBT data structures
236         were not being memset to NULL correctly.
237
238 2001-09-18  joe c   <marcus@marcuscom.com>
239
240         * etc/afpd/afp_options.c: Fix a bug in the custom icon code (thanks to
241         Edmund Lam <epl@unimelb.edu.au> for finding this)
242
243         * libatalk/cnid/cnid_open.c: Added db3 version checking code
244
245         * config/afpd.conf.tmpl: Removed uams_guest.so from the default UAMs
246         list
247
248 2001-09-17  jeff b  <jeff@univrel.pr.uconn.edu>
249
250         * acconfig.h, configure.in, etc/afpd/afp_config.c: SLP
251         support added (Joe Clarke)
252
253 2001-09-14  jeff b  <jeff@univrel.pr.uconn.edu>
254
255         * sys/netatalk/endian.h: fix from Robert Cohen
256         <robert.cohen@anu.edu.au> for missing endif
257
258 2001-09-13  joe c   <marcus@marcuscom.com>
259
260         * libatalk/util/getiface.c:
261         fix some malloc problems when no atalkd.conf file exists
262
263 2001-09-10  joe c   <marcus@marcuscom.com>
264
265         * libatalk/util/getiface.c: up the new interface by one
266         each time instead of IFACE_NUM
267
268 2001-09-10  jeff b  <jeff@univrel.pr.uconn.edu>
269
270         * etc/afpd/afp_options.c, etc/atalkd/main.c, etc/papd/main.c:
271         added version reporting with -v switch
272
273 2001-09-06  jeff b  <jeff@univrel.pr.uconn.edu>
274
275         * etc/atalkd/main.c, etc/papd/main.c, etc/psf/psf.c,
276         libatalk/asp/asp_getsess.c, libatalk/dsi/dsi_getsess.c,
277         libatalk/pap/pap_slinit.c, libatalk/util/server_child.c:
278         autoconf POSIX.1 sys/wait.h check
279
280         * lots of files: AC_HEADER_STDC autoconf changes
281
282         * sys/netatalk/endian.h: used autoconf endian test instead
283         of manually checking every architecture
284
285 2001-09-05  joe c <marcus@marcuscom.com>
286
287         * libatalk/cnid/cnid_open.c: comment out DB_JOINENV as this is not
288         supported in db3 3.1.17
289
290         * libatalk/cnid/cnid_add.c: fix my comments to properly explain the use
291         of rc over errno
292
293 2001-09-04  jeff b  <jeff@univrel.pr.uconn.edu>
294
295         * etc/afpd/filedir.h: define veto_file() prototype (Edmund Lam)
296
297         * etc/uams/uams_dhx_pam.c: added quick Sun hack to seed openssl,
298         but it *really* needs something more elegant (#458433)
299
300 2001-09-04  jeff b  <jeff@univrel.pr.uconn.edu>
301
302         * libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_open.c: fixed
303         duplicate DID's being generated and FreeBSD db3 fix (Joe Clarke)
304
305         * doc/README.veto, etc/afpd/directory.c, etc/afpd/enumerate.c,
306         etc/afpd/file.c, etc/afpd/filedir.c, etc/afpd/volume.c,
307         etc/afpd/volume.h: adds Samba-style "veto file" support
308         (Edmund Lam)
309
310         * configure.in: properly checks for db3 headers (Joe Clarke)
311
312 2001-08-31  jeff b  <jeff@univrel.pr.uconn.edu>
313
314         * libatalk/cnid/cnid_*.c: compilation fixes for those who don't
315         want to compile with CNID support (Edmund Lam)
316
317 2001-08-28  Lance Levsen  <l.levsen@printwest.com>
318
319         * config/Makefile.am: Added a variable substitution from
320         configure.in to stop overwriting the config files.
321
322         * configure.in: Added --enable-overwrite flag that enables the
323         overwriting of configure files. Default is no overwrite, but does
324         check for missing files.
325         
326 2001-08-27  jeff b  <jeff@univrel.pr.uconn.edu>
327
328         Released 1.5pre7
329
330 2001-08-21  jeff b  <jeff@univrel.pr.uconn.edu>
331
332         * configure.in: now does rudimentary check for DB3 library
333         if CNID DB option (--enable-cnid-db) is given, with
334         option to specify path to DB3 (Jeff)
335
336 2001-08-16  Uwe Hees <uwe.hees@rz-online.de>
337
338         * libatalk/cnid: replaced EAGAIN in db result checking with
339         DB_LOCK_DEADLOCK as appropriate for db-3.
340         * fixed a potential transaction problem in cnidd_add.
341
342 2001-08-14  Sam Noble <ns@shadow.org>
343
344         * etc/afpd/directory.c: in afp_mapname and afp_mapid
345         convert uid/gid to/from network byte order before actually
346         using.  This should hopefully fix a long-standing bug in
347         the admin functionality.
348
349 2001-08-14  jeff b  <jeff@univrel.pr.uconn.edu>
350
351         * acconfig.h, configure.in, etc/afpd/directory.c,
352         etc/afpd/enumerate.c, etc/afpd/file.c, etc/afpd/file.h,
353         etc/afpd/filedir.c, etc/afpd/fork.c, etc/afpd/volume.c,
354         etc/afpd/volume.h, libatalk/Makefile.am,
355         libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_close.c,
356         libatalk/cnid/cnid_delete.c, libatalk/cnid/cnid_lookup.c,
357         libatalk/cnid/cnid_nextid.c, libatalk/cnid/cnid_open.c,
358         libatalk/cnid/cnid_private.h, libatalk/cnid/cnid_update.c:
359         DID database and reincluding libatalk/cnid back into
360         compiled tree (Uwe Hees)
361
362         * libatalk/cnid/.cvsignore: updated .cvsignore list for
363         CNID patch (Jeff)
364
365 2001-08-09  Sam Noble <ns@shadow.org>
366
367         * configure.in, acconfig.h: Merged a patch from meeroh@mit.edu
368         to fix the kerberos uam build process.
369
370 2001-08-08  jeff b  <jeff@univrel.pr.uconn.edu>
371
372         * etc/papd/session.c: prevents papd client from aborting
373         during the submission of a print job, therefore preventing
374         the job from hanging on the Mac (Michael Boers)
375
376 2001-07-10  Lance Levsen  <lance@iworks.pwgroup.ca>
377
378         * man/man8/papd.8.tmpl: Fixed ftp URI for Adobe's PPD files.
379         
380 2001-06-30  andy m  <morgan@orst.edu>
381
382         * etc/papd/ppd.c: "unquote" ppd values by removing leading
383         and trailing quote character. This should fix bug #426141.
384
385 2001-06-27  jeff b  <jeff@univrel.pr.uconn.edu>
386
387         * many, many, files: more malformed ifdef correction, nicer
388         comments, etc, etc, etc (Jeff)
389
390         * etc/afpd/directory.c, etc/afpd/uid.c, etc/afpd/uid.h: fixes
391         for force-uidgid to compile properly. haven't tested it, but
392         no more compile errors. (Jeff)
393
394 2001-06-27  uwe hees <hees@viva.de>
395
396         * etc/uams/uams_guest.c: fixed a typo.
397
398 2001-06-26  andy m  <morgan@orst.edu>
399
400         * etc/papd/file.c: modified markline() to return 1 instead
401         of *linelength for successful completion. This should fix
402         the remaining binary printing problems in papd.  Thanks go
403         out to Dave Arnold <darn0ld@home.com> for getting me thinking
404         about the markline function.
405
406 2001-06-25  jeff b  <jeff@univrel.pr.uconn.edu>
407
408         * etc/afpd/auth.c, etc/afpd/main.c, etc/afpd/uam.c,
409         etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c,
410         include/atalk/uam.h: TRU64 authentication patch to allow
411         any security scheme to be used on the TRU64 side (Burkhard
412         Schmidt)
413
414         * etc/afpd/uam.c, etc/papd/uam.c: fixed DISABLE_SHELLCHECK
415         support in both afpd and papd (Jason Keltz <jas@cs.yorku.ca>)
416
417         * etc/*/*.{c,h}: corrected malformed defines, nicer comments,
418         CVS Id tags (Jeff)
419
420 2001-06-20  jeff b  <jeff@univrel.pr.uconn.edu>
421
422         * configure.in: check for linux/quota.h before enabling
423         QUOTACTL_WRAPPER (Joe Clarke) 
424
425         * acconfig.h, configure.in, include/atalk/util.h,
426         libatalk/util/module.c: removed NO_DLFCN_H in favor of
427         ifndef HAVE_DLFCN_H (Jeff)
428
429         * configure.in, etc/afpd/*.{c,h}, include/atalk/util.h:
430         major autoconf fixes for afpd, nicer commenting, etc (Jeff)
431
432 2001-06-19  jeff b  <jeff@univrel.pr.uconn.edu>
433
434         * etc/afpd/file.c, etc/afpd/parse_mtab.c, etc/afpd/parse_mtab.h,
435         etc/atalkd/route.h, etc/atalkd/rtmp.c, etc/papd/headers.c,
436         etc/papd/magics.c, libatalk/asp/asp_tickle.c: patch for
437         fixed DID calculation in etc/afpd/file.c, FreeBSD errors and
438         other miscellany (Joe Clarke) 
439
440         * minor patches and fixes to the aforementioned files, warning
441         fixes with GCC, etc (Jeff)
442
443 2001-06-18  jeff b  <jeff@univrel.pr.uconn.edu>
444
445         * configure.in, etc/uams/Makefile.am,
446         etc/uams/uams_krb4/Makefile.am: patch #433952 from Sebastian
447         Rittau to move UAM authentication to use libtool
448
449         * configure.in, bin/afppasswd/Makefile.am, config/Makefile.am,
450         contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
451         etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
452         etc/atalkd/Makefile.am, etc/papd/Makefile.am,
453         man/man5/Makefile.am, man/man8/Makefile.am: patch #433906
454         to move to pkgconfdir for package config files (Sebastian Rittau)
455
456         * configure.in: fixed error that caused --with-did not to function
457         properly
458
459 2001-06-13  Sam Noble <ns@shadow.org>
460
461         * etc/papd/{printcap,ppd,lp,file,comment}.h:
462         added #include <sys/cdefs.h> to these headers so that __P gets
463         properly defined on platforms like TRU64
464
465 2001-06-11  jeff b  <jeff@univrel.pr.uconn.edu>
466
467         * configure.in, include/atalk/adouble.h, libatalk/compat/flock.c:
468         patch #431859 to avoid ucbinclude on Solaris, with flock support,
469         thanks to Russ Allbery (rra@users.sourceforge.net)
470
471         * acconfig.h, configure.in, libatalk/util/server_child.c,
472         libatalk/util/server_lock.c, sys/netatalk/endian.h: patch #432052
473         for portability to IRIX, HP-UX, and AIX (Russ Allbery)
474
475         * etc/afpd/nls/makecode.c: patch #432137 to add codepage mapping
476         support for (C), (TM) and other characters to avoid losing them,
477         submitted by Andre Schild (aschild@users.sourceforge.net)
478
479         * configure.in: set sysconfdir as /etc/netatalk by default, and
480         uams path now pulls from sysconfdir instead of config_dir
481         (Sam Noble)
482
483 2001-06-07  jeff b  <jeff@univrel.pr.uconn.edu>
484
485         * configure.in, bin/afppasswd/Makefile.am,
486         contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
487         etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
488         etc/atalkd/Makefile.am, etc/papd/Makefile.am,
489         man/man5/Makefile, man/man8/Makefile.am: patch #422872 from
490         Sebastian Rittau to move from CONFIG_DIR to sysconfdir
491
492         * etc/psf/Makefile.am, sys/solaris/Makefile: additional removal
493         of CONFIG_DIR in favor of sysconfdir, plus patch #422860 from
494         Sebastian Rittau to correct other problems
495
496         * config/Makefile.am, config/netatalk.pamd: patch #422856 from
497         Sebastian Rittau, moving to pam_unix.so and being more proper
498
499         * etc/afpd/Makefile.am, etc/afpd/main.c: added support for
500         ${sysconfdir}/afpd.mtab to be read into memory, so that mtab
501         DID support actually works...
502
503 2001-06-06  jeff b  <jeff@univrel.pr.uconn.edu>
504
505         * etc/afpd/filedir.c, etc/afpd/unix.c: fixed dropkludge code
506         so that it properly compiles again, along with minor warning
507         fixen
508
509 2001-06-05 Dan L. (pooba53)
510
511         * Modified configure.in so references made to $ac_prefix_default
512         listed at the beginning are correct. The previous references were
513         being made to $ac_default_prefix.
514
515 2001-06-04  jeff b  <jeff@univrel.pr.uconn.edu>
516
517         * doc/README.TRU64: details about tru64 installations, from
518         Edmund Lam <epl@unimelb.edu.au> 
519
520         * etc/afpd/fork.c: implemented Sebastian Rittau's change to
521         avoid overwriting AppleDouble headers (finally)
522
523         * configure.in, etc/afpd/enumerate.c, etc/afpd/parse_mtab.c:
524         added initial support for mtab DID format. removed "lastdid"
525         configure option in favor of --with-did={last,mtab}
526
527 2001-06-01  jeff b  <jeff@univrel.pr.uconn.edu>
528         * etc/afpd/quota.c: fix for Linux compile by Sam Noble
529         <ns@shadow.org>
530
531 2001-05-25  jeff b  <jeff@univrel.pr.uconn.edu>
532         * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
533         Schmidt <bs@cpfs.mpg.de>
534
535         * configure.in, contrib/shell_utils/Makefile.am,
536         contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
537         doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
538         etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
539         etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
540         code from Bob Rogers to generate more persistant DIDs
541
542 2001-05-22  jeff b  <jeff@univrel.pr.uconn.edu>
543         * configure.in, etc/afpd/unix.h: more portability fixes, and
544         integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
545
546         * configure.in, bin/megatron/Makefile.am,
547         distrib/initscripts/Makefile.am, etc/afpd/main.c,
548         etc/afpd/quota.c, etc/afpd/unix.h,
549         etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
550         round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
551
552 2001-05-09  jeff b  <jeff@univrel.pr.uconn.edu>
553         * autogen.sh: added automake --include-deps to autogen.sh to
554         promote more portable Makefiles (thanks to Christian
555         Weisgerber <naddy@mips.inka.de> from OpenBSD)
556
557 2001-05-08  jeff b  <jeff@univrel.pr.uconn.edu>
558
559         * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
560         from Olaf Hering <olh@suse.de>
561
562         * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
563         <bs@cpfs.mpg.de>
564
565 2001-05-07  jeff b  <jeff@univrel.pr.uconn.edu>
566
567         * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
568         shorten names
569
570         * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
571         Schmidt <bs@cpfs.mpg.de> to fix typos
572
573 2001-05-03  jeff b  <jeff@univrel.pr.uconn.edu>
574
575         * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
576         etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
577
578         * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
579         moving to autodetected HAVE_*_H from autoconf script
580
581 2001-05-01  jeff b  <jeff@univrel.pr.uconn.edu>
582
583         * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
584         bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
585         bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
586         libatalk/util/getiface.c: warnings patch from Sebastian Rittau
587         <srittau@users.sourceforge.net> (#420300)
588
589         * bin/afile/*: replacement for old restrictive afile from Sebastian
590         Rittau <srittau@users.sourceforge.net> (#420302)
591
592         * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
593         stop messages to the redhat initscript. nbpregister and unregister
594         messages are also displayed. This patch also permits spaces in zone
595         and machine names to be used in the variables. From Ryan Cleary
596         <tryanc@users.sourceforge.net> (#418094)
597
598         * bin/megatron/Makefile.am: patch to properly create links for
599         megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
600         (#420446)
601
602 2001-04-25  morgan a <morgan@orst.edu>
603
604         * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
605         statements from LOG_ERR to LOG_DEBUG.  Some common "soft errors"
606         were being logged and scaring users.  :)
607
608 2001-04-24  jeff b  <jeff@univrel.pr.uconn.edu>  
609
610         * configure.in: fixed problem with tcp_wrappers support; it needed to
611         check for tcpd_warn
612
613 2001-04-20  jeff b  <jeff@univrel.pr.uconn.edu>  
614
615         * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
616         AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
617         be used for everything
618
619 2001-04-16  jeff b  <jeff@univrel.pr.uconn.edu>  
620
621         * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
622         merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
623         fixing an OSX issue, byteorder problems with uid/gid in directory.c,
624         and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
625         errors
626
627 2001-04-12  jeff b  <jeff@univrel.pr.uconn.edu>  
628
629         Released 1.5pre6
630
631 2001-04-10  jeff b  <jeff@univrel.pr.uconn.edu>  
632
633         * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
634         Kelitz (jkeltz) to allow disabling of shell checking
635
636         * configure.in, contrib/Makefile.am: made timelord compilation
637         optional, disabled by default
638
639 2001-04-03  jeff b  <jeff@univrel.pr.uconn.edu>  
640
641         * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
642         at Apple, fixing server disconnect problem upon afp_createid() call
643
644 2001-04-02  jeff b  <jeff@univrel.pr.uconn.edu>  
645
646         * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
647         added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
648
649 2001-03-26  jeff b  <jeff@univrel.pr.uconn.edu>  
650
651         * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
652         Noble <ns@shadow.org>
653
654         * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
655         moved -shared into LDSHAREDFLAGS to fix Solaris build problems
656         from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
657         Akop Pogosian <akopps@csua.berkeley.edu>
658
659 2001-03-22  Lance Levsen  <lance.l@dontspam.home.com>
660
661         * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
662         to inability to find libcrypto. libcrypto is defined in LDFLAGS as
663         "-L$ssldir/lib" in configure.
664
665 2001-03-22 12:57 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
666
667         * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
668         Rey <jprey@ads.ecp.fr>
669
670 2001-03-21 09:35 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
671
672         * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
673         patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
674
675 2001-03-14 13:30 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
676
677         * configure.in: patch from Yoshinobu Ishizaki to fix problems with
678         Linux 2.0.x builds (Patch #408256)
679
680         * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
681         to fix deleting/emptying trash problems (Patch #408218)
682
683 2001-03-14 11:00 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
684
685         * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
686         which was causing file creation problems
687
688 2001-03-09 09:42 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
689
690         * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
691         build, most notably paths, and reference to lp2pap.sh in the wrong
692         place
693
694 2001-03-07 15:30 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
695
696         Released 1.5pre5
697
698         * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
699         updated for 1.5pre5 release
700
701 2001-03-07 10:34 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
702
703         * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
704         defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
705
706 2001-03-07 10:14 EST  jeff b  <jeff@univrel.pr.uconn.edu>  
707
708         * ChangeLog: started using timestamps in ChangeLog
709
710         * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
711         (thanks to Sebastian Rittau)
712
713 2001-03-06 13:40  Lance Levsen <l.levsen@printwest.com>
714
715         * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
716         docs/, where they should be.
717
718         * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
719
720         * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
721         FAQ to ./INSTALL
722
723 2001-03-06 11:47  Andrew Morgan <morgan@orst.edu>
724
725         * TODO: A few updates to papd entry.
726
727         * README.MORGAN: Removed README.MORGAN because that information in
728         now in papd's man page.
729
730         * man/man8/papd.8.tmpl: Updated papd man page to match current
731         code.  Added descriptions of authenticated printing and other new
732         papd options.
733
734 2001-02-28 15:43  Marc J. Millar <itlm019@mailbox.ucdavis.edu>
735
736         * libatalk/adouble/ad_open.c: AppleDouble directory creation
737         debugging
738         
739 2001-02-28  jeff b  <jeff@univrel.pr.uconn.edu>  
740
741         * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
742         etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
743         etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
744         "dropbox" to available option if DROPKLUDGE is used during
745         compile 
746
747 2001-02-27  jeff b  <jeff@univrel.pr.uconn.edu>  
748
749         * README: updated 1.5+ install instructions to include list of
750         required and recommended packages
751
752         * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
753
754         * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
755         all of the defines in the codebase
756
757         * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
758         patch made with syslog()'s didn't include any brackets) 
759         (Bug #233756)
760
761         * distrib/initscripts/.cvsignore: removed pulling of atalk
762
763         * configure.in, etc/uams/Makefile.am: conditional compilation support
764         for PGP UAM module using --enable-pgp-uam
765
766         * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
767         etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
768         for future Kerberos module reintegration
769
770 2001-02-26  jeff b  <jeff@univrel.pr.uconn.edu>  
771
772         * configure.in: added /usr/local/ssl to list of SSL paths to check, to
773         help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
774
775         * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
776         instead of dumping out if appletalk module not present, from
777         Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
778
779         * configure.in, contrib/timelord/timelord.c: applied patch from Wes
780         Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
781         suitable configure.in fixes
782
783 2001-02-23  jeff b  <jeff@univrel.pr.uconn.edu>  
784
785         * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
786         patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
787         broken codepage support.
788
789         * ChangeLog: started updaing ChangeLog with important patch/fix
790         information, as it is *never* up to date.
791
792         * configure.in, acconfig.h: implemented AFS configuration option
793         patch from Wes Hardaker <hardaker@users.sourceforge.net>
794
795         * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
796         paperbag-ish
797
798         * autogen.sh: make libtoolize copy instead of linking files to
799         avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
800
801 2001-02-20  jeff b  <jeff@univrel.pr.uconn.edu>
802
803         Released 1.5pre4
804         - Debian packaging in tree
805         - Numerous Makefile/build fixes
806         - .cvsignore implemented
807         - Solaris build fixes
808
809 2001-01-02  jeff b  <jeff@univrel.pr.uconn.edu>
810
811         * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
812         uid/gid per volume for afpd
813
814 2000-09-22  Roland Schulz <rdschulz@abarrach.franken.de>
815
816         * etc/afpd/volume.c (setvoltime): fix for multiple clients
817         writing to same volume.
818
819 2000-02-28  a sun  <asun@asun.cobalt.com>
820
821         * etc/afpd/directory.h (CNID_INODE): xor the inode a little
822         differently. 
823
824 2000-02-23  a sun  <asun@asun.cobalt.com>
825
826         * etc/afpd/volume.c (creatvol): / is a special case. you can't
827         share it unless you give it a name.
828
829 2000-02-21  a sun  <asun@asun.cobalt.com>
830
831         * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
832         make redhat 6.x happier.
833
834 2000-02-17  a sun  <asun@asun.cobalt.com>
835
836         * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
837         lock removal. this + the log right below fix ragtime.
838
839 2000-02-16  a sun  <asun@asun.cobalt.com>
840
841         * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
842         positioned at 0x7FFFFFFF if there's no resource fork.
843
844 2000-02-14  a sun  <asun@asun.cobalt.com>
845
846         * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
847         allocations happen in blocks. added missing case that omnis
848         database triggers.
849
850 2000-02-07  a sun  <asun@asun.cobalt.com>
851
852         * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
853         permissions. 
854
855         * include/atalk/adouble.h (sendfile): change to deal with
856         <sys/sendfile.h> 
857
858 2000-01-25  a sun  <asun@asun.cobalt.com>
859
860         * etc/afpd/ofork.c: keep track of oforks being used for each
861         directory so that we can update them if the directory tree gets
862         modified. 
863
864         * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
865         delete. 
866
867 2000-01-24  a sun  <asun@asun.cobalt.com>
868
869         * etc/afpd/directory.h (CNID): moved cnid assignment here along
870         with helpful macros.
871
872         * etc/afpd/directory.c: changed directory search to use red-black
873         trees to improve balance. parent-child tree changed to circular
874         doubly-linked list to speed up insert/remove times.  there's still
875         one obstacle to actually freeing red-black tree entries. i need to
876         add an ofork list to struct dir to minimize search times.
877
878 2000-01-18  a sun  <asun@asun.cobalt.com>
879
880         * etc/afpd/directory.c (dirinsert): detect attempts to add
881         pre-existing entries as just symbolic links. 
882
883         * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
884         extended to directories.
885
886 2000-01-03  a sun  <asun@asun.cobalt.com>
887
888         * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
889         an #ifdef.
890
891         * etc/afpd/status.c (status_init): fixed a bunch of problems here
892         that manifested under solaris 7.
893
894         * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
895         1.
896         
897
898 1999-12-27  a sun  <asun@asun.cobalt.com>
899
900         * libatalk/util/getiface.c: moved interface detection code to here
901         so that i can use if_nameindex() or getifconf() depending upon
902         what's available.
903
904 1999-12-13  a sun  <asun@asun.cobalt.com>
905
906         * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
907         based interface code.
908
909         * etc/afpd/afp_options.c (afp_options_parseline): added
910         -server_quantum as an option. using hex would be a good idea.
911
912         * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
913         the server quantum. by default, the server quantum is limited to
914         1MB due to a bug in the os 9 appleshare client.
915
916         * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
917         with double quotes.
918
919         * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
920         changing for pam.
921
922 1999-12-06  a sun  <asun@asun.cobalt.com>
923
924         * etc/afpd/directory.c (setdirparams): don't error if we can't set
925         the desktop owner/permisssions.
926
927 1999-11-04  a sun  <asun@asun.cobaltnet.com>
928
929         * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
930         openfork. 
931
932 1999-11-02  a sun  <asun@asun.cobaltnet.com>
933
934         * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
935         commands. 
936
937 1999-10-28  a sun  <asun@asun.cobaltnet.com>
938
939         * etc/uams/*.c: return FPError_PARAM if the user is unknown. 
940
941 1999-10-27  a sun  <asun@asun.cobaltnet.com>
942
943         * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
944         old looping method.
945
946 1999-10-25  a sun  <asun@asun.cobaltnet.com>
947
948         * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
949
950 1999-10-21  a sun  <asun@asun.cobaltnet.com>
951
952         * etc/afpd/Makefile (install): moved install of afpd earlier per
953         suggestion by steven michaud.
954
955 1999-10-05  a sun  <asun@asun.cobaltnet.com>
956
957         * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
958         ourselves into the user so that nfs is happy.
959
960 1999-09-19  a sun  <asun@adrian5>
961
962         * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
963         if it's on an os x server machine.
964
965 1999-09-15  a sun  <asun@adrian5>
966
967         * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
968         wants ATADDR_BCAST. that probably means that i need to do
969         multihoming appletalk a little differently. bleah.
970
971 1999-09-09    <asun@asun.cobaltnet.com>
972
973         * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
974         (ad_open): mondo lameness. i forgot that directory lookups can be
975         done with "." as the directory name. that was auto-hiding
976         them. bleah. i also figured out which bit was the invisible bit
977         for finderinfo information.
978
979 1999-09-06  Adrian Sun  <asun@glazed.cobaltnet.com>
980
981         * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
982         that accidentally crept in.
983
984 1999-08-31  Adrian Sun  <asun@glazed.cobaltnet.com>
985
986         * etc/afpd/quota.c (getfsquota): use group quotas in quota
987         calculations if the user belongs to a single group. just use the
988         user quotas if the user belongs to multiple groups.
989
990         * etc/afpd/volume.c (getvolspace): added an options:limitsize to
991         restrict the available space to 2GB. this is for macs running
992         older versions of the operating system with newer versions of the
993         appleshare client. weird huh?
994
995         * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
996         don't get promoted in the same way as arithmetic operations. added
997         some more casts to deal with that issue.
998
999 1999-08-24  Adrian Sun  <asun@glazed.cobaltnet.com>
1000
1001         * man/man?/Makefile: don't re-build .tmp files if they already
1002         exist. this gets the install phase to work correctly.
1003
1004 1999-08-13  a sun  <asun@hecate.darksunrising.blah>
1005
1006         * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
1007         AFPERR_PARAM. also, reject names with /'s in them if the nohex
1008         option is used.
1009
1010 1999-08-12  a sun  <asun@hecate.darksunrising.blah>
1011
1012         * etc/afpd/filedir.c,file.c,directory.c: changed error for
1013         illegal filenames to AFPERR_EXIST.
1014
1015 1999-08-11  a sun  <asun@hecate.darksunrising.blah>
1016
1017         * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
1018         .Parent files are no longer valid file names.
1019
1020         * etc/afpd/volume.c (volset): added usedots and nohex as
1021         options. usedots stops :hex translation of . files while nohex
1022         stops :hex translation of everything but . files. in addition,
1023         . files created on the unix side are by default hidden.
1024
1025         * libatalk/adouble/ad_open.c: initialize more bits.
1026
1027 1999-08-10  a sun  <asun@hecate.darksunrising.blah>
1028
1029         * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
1030         actual name for nbp registration rather than ATALK_NAME.
1031
1032         * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
1033         get used when building the kernel module.
1034
1035         * sys/solaris: changed strings.h to string.h
1036
1037 1999-08-08  a sun  <asun@hecate.darksunrising.blah>
1038
1039         * etc/afpd/volume.c (readvolfile): changed volume options into an
1040         array of structs to ease maintenance.
1041
1042 1999-08-05  a sun  <asun@hecate.darksunrising.blah>
1043
1044         * etc/afpd/status.c (status_init): change the default icon
1045         depending upon whether or not it's an ASIP or an AppleTalk
1046         connection. 
1047
1048 1999-08-04  Adrian Sun  <asun@glazed.cobaltnet.com>
1049
1050         * etc/atalkd/main.c (setaddr): made a failure with setaddr a 
1051         little more informative.
1052
1053 1999-08-03  Adrian Sun  <asun@glazed.cobaltnet.com>
1054
1055         * yippee. someone figured what was happening with the installation
1056         of the man pages. i got rid of a duplicate entry.
1057
1058 1999-08-02  a sun  <asun@hecate.darksunrising.blah>
1059
1060         * etc/afpd/volume.c (readvolfile): added a per-file way of setting
1061         default options. it keys in on a :DEFAULT: label.
1062
1063 1999-07-30  a sun  <asun@hecate.darksunrising.blah>
1064
1065         * moved rc.atalk.* scripts to distrib/initscripts.
1066
1067 1999-07-27  a sun  <asun@hecate.darksunrising.blah>
1068
1069         * contrib/printing: added patch from job@uchicago.edu
1070
1071         * etc/afpd/file.c: forgot to initialize struct ad in
1072         some places.
1073
1074         * etc/afpd/nls/makecode.c: added an empty mapping.
1075
1076         * etc/psf/Makefile (install): well cp -d didn't work either. just
1077         use tar.
1078
1079 1999-07-26  a sun  <asun@hecate.darksunrising.blah>
1080
1081         * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
1082         (from denny@geekworld.com).
1083
1084         * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
1085         and patch files from inoue.
1086
1087         * sys/linux/Makefile (install-sysv): fixed up a bit.
1088
1089         * etc/psf/Makefile (install): use cp -d instead of cp -a to make
1090         *bsd happier.
1091
1092         * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
1093         of -icon. now it means to use the yucky bitmap instead of the
1094         apple icon.
1095
1096         * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
1097         afppasswd as well. 
1098
1099 1999-07-18  a sun  <asun@hecate.darksunrising.blah>
1100
1101         * create links/mangle files in the compile rather than the install
1102         phase so that rpm will be happier.
1103
1104 1999-07-17  a sun  <asun@hecate.darksunrising.blah>
1105
1106         * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
1107           filedir.c (afp_rename, afp_moveandrename): don't allow the
1108           creation/renaming of names with certain characters if mswindows
1109           compatibility is enabled.
1110
1111 1999-07-16  a sun  <asun@hecate.darksunrising.blah>
1112
1113         * rc.atalk.redhat: incorporated chkconfig from inoue.
1114
1115 1999-07-15  a sun  <asun@hecate.darksunrising.blah>
1116
1117         * etc/atalkd/config.c (getifconf): wrap check against
1118         IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
1119
1120         * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
1121
1122 1999-07-11  a sun  <asun@hecate.darksunrising.blah>
1123
1124         * contrib/ICDumpSuffixMap: added internet config perl script from
1125         inoue. 
1126
1127         * contrib/printing: added contributed solaris printing scripts
1128         from job@uchicago.edu.
1129
1130 1999-07-10  a sun  <asun@hecate.darksunrising.blah>
1131
1132         * etc/atalkd/interface.h, rtmp.h: prototyped functions.
1133
1134         * etc/atalkd/zip.c: converted bcopy's to memcpy's.
1135
1136         * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
1137         dontroute cases.
1138
1139         * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
1140
1141 1999-07-08  a sun  <asun@hecate.darksunrising.blah>
1142
1143         * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
1144         address already exists.
1145
1146 1999-07-06  a sun  <asun@hecate.darksunrising.blah>
1147
1148         * rc.atalk.redhat: changed netatalk.config to netatalk.conf
1149
1150 1999-07-05  a sun  <asun@hecate.darksunrising.blah>
1151
1152         * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
1153         is so that we can filter by interface in the future. however, it
1154         doesn't seem to work that well right now. bleah. 
1155
1156         * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
1157         screw up atalkd.conf. also, we need to do a bootaddr if dontroute
1158         is set. 
1159
1160         * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
1161         etc/papd,afpd: accept -A <ddp address> as an option so that you
1162         can specify the address to be used on a multihomed server. for
1163         papd, you use the 'pa' option in papd.conf.
1164
1165 1999-07-04  a sun  <asun@hecate.darksunrising.blah>
1166
1167         * etc/atalkd/config.c (parseline): initialize parseline properly
1168         so that we don't get extraneous junk.
1169
1170         * etc/afpd/afp_options.c (afp_options_parseline): do
1171         gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
1172
1173         * etc/atalkd/config.c (getifconf/readconf): check to see if the
1174         supported device can support appletalk addresses. either continue
1175         or exit depending upon whether or not it's auto-configed.
1176
1177 1999-07-03  a sun  <asun@hecate.darksunrising.blah>
1178
1179         * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
1180         toggle the volume icon so that it uses the apple icon instead.
1181
1182         * etc/afpd/config.c (AFPConfigInit): added more logic for the
1183         -proxy option. here are the rules: -proxy will always try to
1184         create a DDP server instance. by default, the proxy server will
1185         still allow you to login with an appletalk connection. to prevent
1186         that, just set the uamlist to an empty string.
1187
1188 1999-07-02  a sun  <asun@hecate.darksunrising.blah>
1189
1190         * etc/afpd/status.c (status_netaddress): added support for fqdn
1191         (not available in the appleshare client yet).
1192
1193 1999-07-01  a sun  <asun@hecate.darksunrising.blah>
1194
1195         * etc/afpd/config.c (DSIConfigInit): application code for proxy
1196         setup. it's the -proxy option.
1197
1198         * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
1199         support for proxy setup.
1200
1201 1999-06-30  a sun  <asun@hecate.darksunrising.blah>
1202
1203         * etc/afpd/filedir.c (afp_rename): fixed up some error
1204         codes. quark express should be happier.
1205
1206         * etc/afpd/uam.c (uam_afpserver_option): added
1207         UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
1208         report that setting that fixes pam on solaris machines.
1209
1210 1999-06-28  a sun  <asun@hecate.darksunrising.blah>
1211
1212         * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
1213
1214         * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak. 
1215
1216         * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
1217
1218         * etc/afpd/fork.c (afp_write): fixed up error condition.
1219
1220 1999-06-26  a sun  <asun@hecate.darksunrising.blah>
1221
1222         * etc/uams/Makefile (install): changed install location of uams.
1223
1224         * sys/linux/Makefile (install-sysv): always install redhat
1225         script. netatalk.config script only gets installed if it's not
1226         there already.
1227
1228 1999-06-23  a sun  <asun@hecate.darksunrising.blah>
1229
1230         * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
1231
1232         * etc/afpd/afp_options.c (afp_options_init): changed default
1233         maxusers to 20.
1234
1235 1999-06-22  a sun  <asun@hecate.darksunrising.blah>
1236
1237         * etc/afpd/config.c (DSIConfigInit): truncate options->server to
1238         just the server name here.
1239
1240         * etc/afpd/volume.c (volxlate): made $s return something
1241         meaningful no matter what.
1242
1243         * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
1244         wants an off_t.
1245
1246 1999-06-20  a sun  <asun@hecate.darksunrising.blah>
1247
1248         * etc/afpd/volume.c (volxlate): added variable substitution. if it
1249         doesn't understand the variable, it just spits it back out.
1250         
1251         (creatvol): display truncated volume name if it's too long.
1252
1253         * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
1254         with oses that have -lcrypt but shouldn't use it.
1255
1256 1999-06-11  a sun  <asun@hecate.darksunrising.blah>
1257
1258         * include/atalk/afp.h: added comments to FPErrors.
1259
1260         * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
1261         more error checking.
1262
1263         * include/atalk/util.h: server_lock() returns pid_t. 
1264
1265 1999-06-10  a sun  <asun@hecate.darksunrising.blah>
1266
1267         * README.ASUN: added location for both ssleay and openssl.
1268
1269         * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
1270         server." in the future, there will be "uamc_*." changed the shared
1271         library names to match.
1272
1273         * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
1274
1275         * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
1276         to the include path.
1277
1278         * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
1279         of doing a link.
1280
1281         * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
1282         type field. do type check.
1283
1284         * etc/uams/uam_*pam.c: added a couple more error codes. 
1285
1286 1999-06-08  a sun  <asun@hecate.darksunrising.blah>
1287
1288         * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
1289         codepage.h gets made.
1290
1291         * libatalk/*/Makefile: make sure that the profiled directory gets
1292         created.
1293         
1294         * etc/afpd/directory.c (afp_mapname): removed an extraneous line
1295         that was causing mapname to fail.
1296
1297 1999-06-07  a sun  <asun@hecate.darksunrising.blah>
1298
1299         * etc/atalkd/main.c (main): added a note to check the syslog if
1300         atalkd can't be setup.
1301
1302         * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
1303         auto-detected #defines.
1304
1305 1999-06-06  a sun  <asun@hecate.darksunrising.blah>
1306
1307         * etc/afpd/fork.c (afp_write): argh. i moved things around a
1308         little too much and ended up with an uninitialized eid. strangely,
1309         the compiler didn't complain. simplified bits a little as
1310         well. also, FPWrite was returning the wrong error messages. on
1311         64-bit filesystems, the offset can wraparound. so, report a disk
1312         full error if that's going to happen. egcs-19990602 gets one
1313         memcpy right and another wrong on my udb. bleah.
1314         
1315         (afp_read): fixed the error messages here as well.
1316
1317 1999-06-05  a sun  <asun@hecate.darksunrising.blah>
1318
1319         * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
1320         some links on the fly if they're missing.
1321
1322         * etc/afpd/directory.c (copydir): fixed a leaking opendir and
1323         re-arranged a little.
1324
1325 1999-06-04  a sun  <asun@hecate.darksunrising.blah>
1326
1327         * etc/afpd: prototyped everything here and moved the FP functions
1328         into include files.
1329
1330         * libatalk/util/bprint.c: moved all of the bprints to here.
1331
1332         * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
1333
1334         * include/atalk/atp.h, libatalk/atp: prototyped atp functions. 
1335
1336         * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
1337         functions. 
1338
1339         * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
1340         install phase.
1341
1342         * bin/afppasswd/afppasswd.c: added -a option so that root can add
1343         new users. turned all of the options into bits. added newlines to
1344         each entry.
1345
1346 1999-06-03  a sun  <asun@hecate.darksunrising.blah>
1347
1348         * sys/freebsd/Makefile: turn on sendfile support if running on a
1349         FreeBSD 3+ machine.
1350
1351 1999-06-02  a sun  <asun@hecate.darksunrising.blah>
1352
1353         * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
1354         conversation function.
1355
1356         * sys/*/Makefile: check at make time to see if -lrpcsvc and
1357         -lcrypt should be included in the appropriate places. 
1358
1359 1999-05-28  a sun  <asun@hecate.darksunrising.blah>
1360
1361         * etc/afpd/file.c (deletefile): added more error checking here as
1362         well. 
1363
1364         * etc/afpd/directory.c (renamedir): added a couple a few more
1365         error bits. 
1366
1367         * sys/sunos/Makefile: sunos should really work now. 
1368
1369 1999-05-27  a sun  <asun@hecate.darksunrising.blah>
1370
1371         * include/atalk/afp.h: added in a couple new error codes (one
1372         deals with password setting policy, the other with maximum logins
1373         by any user).
1374
1375         * etc/afpd/fork.c (afp_openfork): try to re-open files on
1376         read-only volumes as read-only.
1377
1378 1999-05-26  a sun  <asun@hecate.darksunrising.blah>
1379
1380         * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
1381         uname -p. other oses seem to use uname -m for the same information.
1382
1383         * etc/uams/uam_pam.c (pam_changepw): added check for same
1384         password. 
1385
1386         * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
1387         same password checks.
1388
1389         * sys/osx/Makefile: moved the os x server stuff into its own build
1390         directory. 
1391
1392         * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
1393         and MACHINETYPE for some stuff.  
1394
1395 1999-05-25  a sun  <asun@hecate.darksunrising.blah>
1396
1397         * sys/sunos/Makefile: various bits to make stuff work with sunos
1398         again. 
1399
1400 1999-05-25  a sun  <asun@purgatorius.zoology.washington.edu>
1401
1402         * etc/afpd/file.c (copyfile): only copy the header file if newname
1403         is specified. 
1404
1405         * etc/afpd/directory.c (copydir): make sure to balk if the
1406         directory already exists. in addition, make sure to preserve the
1407         timestamps. 
1408
1409 1999-05-24  a sun  <asun@hecate.darksunrising.blah>
1410
1411         * bin/afppasswd/afppasswd.c: global password updating utility for
1412         the randnum authentication method. 
1413
1414 1999-05-22  a sun  <asun@hecate.darksunrising.blah>
1415
1416         * etc/uams/uam_randnum.c (afppasswd): added in global password
1417         file for the randnum authentication method. it looks for a .key
1418         file as well to handle encryption.
1419
1420         * etc/afpd/afp_options.c (afp_options_parseline): added
1421         -passwdfile as an option so that you can specify a global randnum
1422         password file if desired.
1423
1424         * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
1425         as an AppleVolumes.* option. if the user is in the rolist, the
1426         volume gets set as readonly. if there's a rwlist, and the user
1427         isn't in it, the volume also gets set as readonly.
1428
1429 1999-05-21  a sun  <asun@hecate.darksunrising.blah>
1430
1431         * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
1432         can't allocate the reference counting variable.
1433
1434         * etc/uams/uam_*.c: make sure that uam_setup returns an error
1435         code. 
1436
1437 1999-05-19  a sun  <asun@hecate.darksunrising.blah>
1438
1439         * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
1440         /var/run as the lock file directory.
1441
1442         * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
1443         a problem with FPWrite getting a request count of 0. that's
1444         fixed. 
1445
1446         * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
1447         load itself from a shared library. i've compensated by linking it
1448         into afpd again.
1449
1450         * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
1451         still screwy with the dhx_pam stuff though.
1452
1453 1999-05-18  a sun  <asun@hecate.darksunrising.blah>
1454
1455         * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
1456         username to fit what's in pw->pw_name if necessary.
1457
1458 1999-05-16  a sun  <asun@hecate.darksunrising.blah>
1459
1460         * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
1461         authentication method. i'm still missing a little info to get it
1462         all right.
1463
1464         * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
1465         create it from the unix name. 
1466
1467         * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
1468         and fdType into strings.
1469
1470 1999-05-16  a sun  <asun@pelvetia>
1471
1472         * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
1473         little. now, you pass in an int * if you want to either get/set
1474         the size of the option. added in UAM_OPTION_RANDNUM for generic 
1475         (4-byte granularity) random number generation.
1476
1477         * etc/afpd/switch.c: added afp_logout to preauth_switch.
1478
1479 1999-05-15  a sun  <asun@hecate.darksunrising.blah>
1480
1481         * bin/megatron/macbin.c (bin_open): make error message for
1482         macbinary files more informative.
1483         
1484         (test_header): added more macbinary tests. it now has a workaround
1485         for apple's incorrectly generated macbinary files.
1486
1487 1999-05-14  a sun  <asun@hecate.darksunrising.blah>
1488
1489         * sys/solaris/Makefile: added shared library generation bits.
1490
1491         * etc/uams: moved server-side uams here. 
1492
1493         * include/netatalk/endian.h: fixed some solaris bits. 
1494
1495         * etc/afpd/config.c (configfree): don't do an asp_close. instead,
1496         do an atp_close and free the asp object. oh yeah, as afpd needs
1497         to export symbols to its modules, make sure you don't do anything
1498         more exciting than strip --strip-debug with it.
1499
1500 1999-05-12  a sun  <asun@hecate.darksunrising.blah>
1501
1502         * various places that use sigaction: zero out struct sigaction so
1503         that we don't send something confusing. also make sure that we
1504         don't set a timer unless we already have a sigaction set.
1505
1506         * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
1507         empty resource fork read-only. also, added back in the bit of code
1508         that prevented locks from being attempted on non-existent resource
1509         forks.
1510
1511         * etc/afpd/afp_options.c (getoption): added a uamlist commandline
1512         option (-U list). 
1513
1514         * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
1515         in. 
1516
1517         * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
1518         convert this over to use by the netddp interface.
1519
1520 1999-05-12  a sun  <asun@pelvetia>
1521
1522         * etc/afpd/uam.c: os x server's runtime library loader is
1523         braindead. as a result, i've switched to using an exported struct
1524         with the uam's name.
1525
1526         * bin/aecho,getzones: changed these to use the netddp interface.
1527
1528         * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1529
1530         * libatalk/netddp: abstracted the ddp interface to netddp. besides
1531         the prior socket-driven interface, there's now an os x server
1532         interface. so, instead of calling socket/sendto/recvfrom, you call
1533         netddp_open/netddp_sendto/netddp_recvfrom.
1534
1535 1999-05-11  a sun  <asun@pelvetia>
1536
1537         * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1538         was a problem.
1539
1540         * etc/atalkd/main.c (main): make sure that if -dontroute is
1541         selected for all but one interface, that interface also gets
1542         -dontroute set.
1543
1544 1999-05-10  a sun  <asun@hecate.darksunrising.blah>
1545
1546         * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1547         smaller than it used to be.
1548
1549 1999-05-09  a sun  <asun@hecate.darksunrising.blah>
1550
1551         * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1552         uam_randnum.c: uam modules. these should probably be moved out of
1553         afpd (and into something like etc/uam_server) when the printing
1554         stuff gets uam support.
1555
1556 1999-05-08  a sun  <asun@hecate.darksunrising.blah>
1557
1558         * etc/afpd/uam.c: interface to user authentication modules.
1559         it should eventually be moved to libatalk, but that's not
1560         necessary until the printing uam stuff is done. everything is from
1561         the server-side perspective, but that's only because there aren't
1562         any client-side uses right now.
1563
1564         * libatalk/util/module.c: generic interface to run-time library
1565         loading functions. right now, the dlfcn family and os x server's
1566         NS-style way of doing things are the ones understood. in addition,
1567         there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1568
1569         * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1570         write part of write continuations.
1571
1572 1999-05-07  a sun  <asun@hecate.darksunrising.blah>
1573
1574         * etc/atalkd: added the ability to turn off routing for particular
1575         interfaces. specify -dontroute for each interface that you don't
1576         want to route.
1577
1578 1999-05-06  a sun  <asun@hecate.darksunrising.blah>
1579
1580         * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1581         using obj->username.
1582
1583 1999-05-04  a sun  <asun@hecate.darksunrising.blah>
1584
1585         * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1586         forever if there's a problem while it's being used. that's fixed.
1587
1588 1999-05-01  a sun  <asun@hecate.darksunrising.blah>
1589
1590         * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1591         so that renaming a directory works across filesystems.
1592
1593 1999-04-27  a sun  <asun@hecate.darksunrising.blah>
1594
1595         * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1596         what's stored in the header file.
1597
1598         * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1599         afpd.conf more understandable.
1600
1601         * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1602         endian converted. that's fixed.
1603
1604         * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1605         necessarily ORable, so use ADLOCK_RD/WR instead.
1606         
1607         (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1608         unlock accidentally getting the data fork locks.
1609
1610 1999-04-24  a sun  <asun@hecate.darksunrising.blah>
1611
1612         * etc/afpd/fork.c (afp_openfork): always try to create a resource
1613         fork if asked.
1614
1615 1999-04-21  a sun  <asun@hecate.darksunrising.blah>
1616
1617         * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1618         turned the mmapped header stuff into and #ifdef
1619         USE_MMAPPED_HEADERS option.
1620
1621         * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1622         the hfs fs doesn't currently have mmappable header files. rather
1623         than implement that, i just reverted back to a modified version
1624         of the old way of reading headers.
1625
1626 1999-04-15  a sun  <asun@hecate.darksunrising.blah>
1627
1628         * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1629         read-only files.
1630         
1631         (afp_openfork): deal with read-only data forks that don't have
1632         corresponding .AppleDouble files. we can't really do anything with
1633         deny locks in this case. just make sure that read locks are set.
1634
1635         * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1636         around FILPBIT_FINFO. 
1637
1638         * etc/afpd/fork.c (afp_read): as we share open files now, check
1639         for fork type against of_flags instead of just checking to see if
1640         the file is open. this fixes a bug that caused resource forks to
1641         get filled with data fork information.
1642
1643 1999-04-09  a sun  <asun@porifera.zoology.washington.edu>
1644
1645         * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1646         support.
1647
1648 1999-04-09  a sun  <asun@mead1.u.washington.edu>
1649
1650         * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1651         support.
1652
1653 1999-04-09  a sun  <asun@saul6.u.washington.edu>
1654
1655         * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1656         with quota support enabled.
1657
1658 1999-04-08  a sun  <asun@hecate.darksunrising.blah>
1659
1660         * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1661         config/AppleVolumes.default: added read-only volume option.
1662
1663         * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1664         server. 
1665
1666 1999-04-03  a sun  <asun@hecate.darksunrising.blah>
1667
1668         * bin/megatron/macbin.c (bin_write): only pad if we need to do so 
1669         (from <jk@espy.org>).   
1670         (bin_header_write/read): fixed up screwed up file date
1671         generation/reading with macbinary files. 
1672
1673         * bin/megatron: changed all of the bcopy/bzero/bcmp's to 
1674         memcpy/memset/memcmp's. added macbinary III support.
1675
1676         * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1677         that we can stream macbinary file creation to stdout.
1678
1679         * bin/megatron/megatron.c: incorporated information patch (--header
1680           and --macheader) from <fmorton@base2inc.com>.
1681
1682
1683 1999-04-02  a sun  <asun@hecate.darksunrising.blah>
1684
1685         * etc/afpd: whee! there are no more bcopy/bcmp's in this
1686         directory. 
1687
1688         * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1689         dummy ints for some of the files that can get compiled to empty
1690         objects. check for the type of msync() available as well.
1691
1692 1999-03-31  a sun  <asun@hecate.darksunrising.blah>
1693
1694         * INSTALL/README.GENERIC: added information for a generic
1695         architecture. It includes the information needed to get netatalk
1696         to compile on a random unix platform.
1697
1698         * etc/afpd/quota.c: moved the quota stuff here so that we can
1699         #ifdef it out on a machine without quota support.
1700
1701 1999-03-30  a sun  <asun@hecate.darksunrising.blah>
1702
1703         * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1704         well. this prevents multiple read locks on the same byte range
1705         from disappearing if one user disappears.
1706         
1707         (ad_fcntl_lock): here are the current rules for file
1708         synchronization:
1709            1) if there's a appledouble header, we use the beginning
1710               of that for both data and resource forks.
1711            2) if there isn't, we use the end of the data fork (or past the
1712               end on 64-bit machines)
1713         
1714 1999-03-28  a sun  <asun@hecate.darksunrising.blah>
1715
1716         * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1717         appledouble entry parts is done. 
1718
1719         * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1720         in an illegal cnid.
1721
1722 1999-03-27  a sun  <asun@hecate.darksunrising.blah>
1723
1724         * libatalk/adouble/ad_open.c (ad_refresh): started making the
1725         appledouble header parsing more generic so that we can read in
1726         arbitrary appledouble header files. i just mmap the parts that we
1727         need. 
1728
1729 1999-03-22  a sun  <asun@hecate.darksunrising.blah>
1730
1731         * etc/afpd/file.c (afp_copyfile): return the correct error
1732         response on a failed copy. also, error if the file is already open
1733         to prevent problems with locks. we really need to ad_lock
1734         this during the copy
1735
1736 1999-03-21  a sun  <asun@hecate.darksunrising.blah>
1737
1738         * etc/afpd/volume.c (readvolfile): switched volume options to
1739         using ':' as a delimiter as that's one of the characters that's
1740         not allowed as part of a mac filename.
1741         (volset): changed access to allow/deny
1742
1743         * etc/afpd/auth.c (noauth_login): make sure that the username gets
1744         set. 
1745
1746 1999-03-17  a sun  <asun@hecate.darksunrising.blah>
1747
1748         * NOTE to myself: jeremy allison said that samba uses refcounts to
1749         prevent close() from killing all the byte locks. so, i've started
1750         converting afpd to using refcounting as well. luckily, we already
1751         have of_findname, so we know when files are open. in cases where
1752         files are already open, this will replace an ad_open with a lookup
1753         into a hash table.
1754
1755         * etc/afpd/directory.c (getdirparams/getfilparams): check for
1756         NULL names when getting directory/file names.
1757
1758         * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1759         sure these are always in network byte order.
1760
1761 1999-03-15  a sun  <asun@hecate.darksunrising.blah>
1762
1763         * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1764         synchronization bits. now, we use two bytes to do the read/write
1765         stuff. when access is needed, a read lock is attempted. if a deny
1766         lock is needed, a write lock is attempted. we even handle the
1767         access None mode now by saving the access modes.
1768
1769         * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1770         we can obey all of the file synchronization rules.
1771
1772         * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1773         reversed. with helios lantest's lock/unlock 4000 times test, it
1774         looks like i get <1 second overhead on my machine when using byte
1775         locks. NOTE: this will get a little worse when serialization gets
1776         added. in addition, 0x80000000 only works for 64-bit machines. i
1777         reserve the last allowable bit for 32-bit machines. 
1778
1779         actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1780         now as i'm able to trigger a kernel oops in linux with the 64-bit
1781         code. 
1782         
1783         (afp_read/afp_write): make sure to use the same offset when doing
1784         a tmplock.
1785
1786 1999-03-14  a sun  <asun@hecate.darksunrising.blah>
1787
1788         * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1789         stuff to get byte locks to work correctly (except for the
1790         serialization) only to discover that files that use byte locks
1791         also request a deny write mode. luckily, byte locks only cover up
1792         to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1793         synchronization locks.
1794
1795 1999-03-08  a sun  <asun@hecate.darksunrising.blah>
1796
1797         * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround 
1798         DEPS with double quotes so that multiple defines work.
1799
1800 1999-03-06  a sun  <asun@hecate.darksunrising.blah>
1801
1802         * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size. 
1803
1804         * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1805         (adf_fcntl_locked): okay. fcntl locks now check against multiple
1806         programs on the same machine opening the same file. current
1807         problems with the mechanism that i don't want to fix unless
1808         necessary: 
1809                 1) there's a race during the relock phase. serialization
1810                    would solve that.
1811                 2) it assumes that each fd only locks a single contiguous
1812                    range at a time. keeping a list of locked ranges would
1813                    solve that. 
1814         
1815         also, i changed the default to using fcntl locks. if the above two
1816         are really necessary, i'll probably switch to something a little
1817         more featureful like the berkeley db's lock manager.
1818
1819         (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1820         
1821 1999-03-05  a sun  <asun@hecate.darksunrising.blah>
1822
1823         * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1824         reduce system calls a little. 
1825
1826         * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1827         login name as well.
1828
1829         * sys/solaris/Makefile: added 64-bit solaris patch from
1830         <jason@pattosoft.com.au>.
1831
1832 1999-03-03  a sun  <asun@hecate.darksunrising.blah>
1833
1834         * include/netatalk/endian.h: make solaris 2.5 complain less.
1835
1836         * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1837         fixed a couple problems with the adv1tov2 stuff.
1838
1839 1999-02-26  a sun  <asun@hecate.darksunrising.blah>
1840
1841         * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1842         aligned along an even boundary.
1843
1844 1999-02-23  a sun  <asun@hecate.darksunrising.blah>
1845
1846         * etc/afpd/volume.c (readvolfile): added volume password support. 
1847
1848 1999-02-14  a sun  <asun@hecate.darksunrising.blah>
1849
1850         * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1851         layer multicast setting bits.
1852
1853         * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1854         prodos field info when converting.
1855
1856         * rc.atalk.redhat: added pidof checking in case the machine
1857         crashes. also added rc.atalk.wrapper to the redhat rc script
1858         installation. 
1859
1860 1999-02-07  a sun  <asun@hecate.darksunrising.blah>
1861
1862         * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1863         error detection here and more fully report error conditions.
1864         
1865         (flushfork): make sure to flush the header if necessary (rfork
1866         length changed or modification date needs to be set).
1867
1868         (afp_write): ugh. this wasn't returning the right values for the
1869         last byte written if the endflag was set. in addition, it was
1870         setting the modification date. that should be left to FPCloseFork
1871         and FPFlush(Fork). this fixes a problem that shows up with
1872         QuarkXPress. 
1873
1874         NOTE: as of now, changes to the rfork info are the only things
1875         that aren't flushed immediately when altered. 
1876
1877         * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1878         need to report bitmap errors if we try to fiddle with the wrong
1879         fork. i added an of_flags field to keep things sorted.
1880
1881         * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1882         movement, i forgot to make sure that the pre-asun2.2.0 features
1883         still compile.
1884
1885 1999-02-06  a sun  <asun@hecate.darksunrising.blah>
1886
1887         * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1888         old name even when it's a directory.
1889
1890         * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1891         number of buffers used. use these when needed in afp_* calls.
1892
1893         * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1894         files when deleting a directory.
1895
1896 1999-02-05  a sun  <asun@hecate.darksunrising.blah>
1897
1898         * etc/afpd/file.c (afp_createfile): fixed a hard create error
1899         check bug. 
1900
1901         * fixed up a few bobbles in the netatalk-990130 merge.
1902
1903         * the noadouble option should be pretty much implemented. here's
1904         how it goes:
1905                 when a directory is created, the corresponding
1906                 .AppleDouble directory is not.
1907                 
1908                 comments, dates, and other file attributes will get
1909                 silently ignored and not result in the creation of a new
1910                 .AppleDouble directory.
1911
1912                 however, if anything possessing a resource fork is copied
1913                 into that directory, the corresponding .AppleDouble
1914                 directory will be created. once this happens, any
1915                 other file in the directory can acquire an AppleDouble
1916                 header file in the future.
1917                 
1918 1999-02-03  a sun  <asun@hecate.darksunrising.blah>
1919
1920         * merged in the rest of netatalk-990130.
1921
1922         * sys/solaris: merged in netatalk-990130 changes.
1923
1924         * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1925         tested and fixed the sendfile bits on linux. it looks like linux
1926         doesn't permit socket -> file sendfiles yet.
1927
1928         * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1929         newline character checking on.
1930
1931 1999-02-02  a sun  <asun@hecate.darksunrising.blah>
1932
1933         * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1934         operates on a per-volume basis.
1935
1936 1999-01-31  a sun  <asun@hecate.darksunrising.blah>
1937
1938         * etc/afpd/file.c (copyfile): sendfile bits added here also.
1939
1940         * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1941         well. 
1942
1943         * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1944         implemented sendfile bits. currently, there's support for linux
1945         and freebsd. unfortunately, freebsd's implementation doesn't allow
1946         file->file or socket->file copies. bleah.
1947
1948 1999-01-30  a sun  <asun@hecate.darksunrising.blah>
1949
1950         * etc/afpd/file.c (setfilparams), directory (setdirparams),
1951         volume.c (volset): added in the beginnings of a NOADOUBLE option
1952         for those that don't want AppleDouble headers to be created by
1953         default. it doesn't really work that well right now.
1954
1955 1999-01-29  a sun  <asun@hecate.darksunrising.blah>
1956
1957         * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1958         from ad_refresh. made broken v1 header checking the default. fixed
1959         broken v1 date checking. now, it just checks to see if the v1
1960         MDATE is > than st_mtime by 5 years.
1961
1962         * etc/afpd/directory.c: make date setting alter directory dates as
1963         well. 
1964
1965 1999-01-24  a sun  <asun@hecate.darksunrising.blah>
1966
1967         * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1968         CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1969
1970 1999-01-21  a sun  <asun@hecate.darksunrising.blah>
1971
1972         * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1973         shift the beginning of the fake did's if necessary.
1974
1975         * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1976         detection code.
1977
1978         * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1979         changes so that the CNIDs will still work even when the .AppleDB
1980         directory is read-only. if you're still allowed to create files on
1981         these volumes, you'll get a temporary id for those.
1982
1983 1999-01-20  a sun  <asun@hecate.darksunrising.blah>
1984
1985         * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1986         files get cleared out on cnid_close() if it's the last user for a
1987         volume.
1988
1989 1999-01-18  a sun  <asun@hecate.darksunrising.blah>
1990
1991         * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1992         allows us to set the backup date on the server.
1993
1994         * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1995         FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1996         with FPCatSearch to do.
1997
1998 1999-01-16  a sun  <asun@hecate.darksunrising.blah>
1999
2000         * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
2001         net addresses.
2002
2003 1999-01-11  a sun  <asun@hecate.darksunrising.blah>
2004
2005         * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
2006         dbpath= in AppleVolumes.* for the CNID database.
2007
2008         * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
2009         appledouble v1 environment, turn on v1compat by default.
2010
2011 1999-01-10  a sun  <asun@hecate.darksunrising.blah>
2012
2013         * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
2014         to handle broken ad headers.
2015
2016         * etc/afpd/file.c (setfilparams): we need to make sure that we
2017         flush the file if we've created it even if there's an error.  the
2018         magic number/version don't get saved if we don't.
2019
2020         * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
2021         DIRBITS to mkdirs.
2022
2023 1998-12-30  a sun  <asun@hecate.darksunrising.blah>
2024
2025         * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
2026
2027         * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
2028         in. 
2029
2030         * well, what do you know? the cnid stuff compiles in. 
2031
2032 1998-12-29  a sun  <asun@hecate.darksunrising.blah>
2033
2034         * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
2035         enumerate.c: added in stubs for CNID database conditional on
2036         AD_VERSION > AD_VERSION1.
2037
2038         * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
2039
2040 1998-12-27  a sun  <asun@hecate.darksunrising.blah>
2041
2042         * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
2043         into hex code as well.
2044
2045 1998-12-21  a sun  <asun@hecate.darksunrising.blah>
2046
2047         * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
2048
2049 1998-12-15  a sun  <asun@hecate.darksunrising.blah>
2050
2051         * etc/afpd/fork.c (read_file/write_file): do crlf translation in
2052         both directions so that we can recover from problems if
2053         necessary. 
2054
2055 1998-12-14  a sun  <asun@hecate.darksunrising.blah>
2056
2057         * bin/adv1tov2/adv1tov2.c: small utility program that recursively
2058         descends a directory and converts everything it sees into
2059         AppleDouble v2.
2060
2061 1998-12-13  a sun  <asun@hecate.darksunrising.blah>
2062
2063         * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
2064         header rebuilding here so that ad_refresh can use it.
2065
2066         * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
2067         conversion.
2068
2069         * bin/megatron/asingle.c: yuk. removed all of
2070         the duplicate stuff here and had it use the #defines in adouble.h.  
2071
2072         * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
2073         conversion routine. we still need a shortname creator and a cnid
2074         database for the v2 features to be useful. 
2075
2076 1998-12-11  a sun  <asun@hecate.darksunrising.blah>
2077
2078         * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
2079         that we don't understand.
2080
2081 1998-12-10  a sun  <asun@hecate.darksunrising.blah>
2082
2083         * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
2084         stuff. also made sure to lower/upper the 8-bit characters as
2085         well. 
2086
2087         * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
2088         characters. 
2089
2090         * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
2091         attribute bits are in the correct byte ordering.
2092
2093 1998-12-09  a sun  <asun@hecate.darksunrising.blah>
2094
2095         * etc/afpd/volume.c (volset): made prodos an option to options=
2096         flag. also added crlf as an option.
2097
2098         * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
2099         necessary. 
2100         (ad_open): deal correctly with 0-length files by treating them as
2101         newly created. 
2102
2103         * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
2104         fork.c (getforkparams), directory.c (get/setdirparams): finished
2105         adding appledouble version 1 and 2 date conversion. also added
2106         attribute setting. 
2107         
2108         * etc/afpd/volume.c (getvolparams): make sure to flush the header
2109         file if we needed to fiddle with it. 
2110
2111         * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
2112         setting/retrieval code. 
2113
2114         * libatalk/adouble/ad_open.c (ad_open): initialize date
2115         structures here instead of elsewhere. 
2116
2117 1998-12-07  a sun  <asun@hecate.darksunrising.blah>
2118
2119         * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
2120         time conversion code. 
2121
2122 1998-12-05  a sun  <asun@hecate.darksunrising.blah>
2123
2124         * etc/afpd/volume.c (volset): changed prodos setting to
2125         prodos=true. 
2126
2127 1998-12-04  a sun  <asun@hecate.darksunrising.blah>
2128
2129         * etc/afpd/volume.c (volset): okay. you now have the following
2130         options to casefold: lowercase,uppercase,xlatelower,xlateupper
2131                 tolower    -> lowercases everything in both directions
2132                 toupper    -> uppercases everything in both directions
2133                 xlatelower -> client sees lowercase, server sees uppercase
2134                 xlateupper -> client sees uppercase, server sees lowercase
2135
2136         NOTE: you only should use this if you really need to do so. this
2137         and the codepage option can cause mass confusion if applied
2138         blindly to pre-existing directories.
2139         
2140 1998-12-03  a sun  <asun@hecate.darksunrising.blah>
2141
2142         * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
2143         multiple options to casefold. bits 0 and 1 deal with MTOU, and
2144         bits 2 and 3 deal with UTOM. i did it that way so that you can
2145         casefold in one direction only or in both directions if
2146         desired. needless to say, setting both bits for UTOM or MTOU
2147         doesn't make any sense. right now, toupper takes precedence in
2148         MTOU, and tolower takes precedence in UTOM.
2149
2150 1998-12-02  a sun  <asun@hecate.darksunrising.blah>
2151
2152         * etc/afpd/afp_options.c (afp_options_*): added -uampath and
2153         -codepagepath to the list of available options. they specify the
2154         directories to look for uam modules and codepages,
2155         respectively. currently, -uampath doesn't do anything.
2156
2157         * etc/afpd/volume.c (readvolfile): spruced up options to
2158         AppleVolumes files. now you can have mtoufile=<codepage.x>,
2159         utomfile=<codepage.y>, casefold=<num> for volumes.
2160
2161         * etc/afpd/desktop.c (utompath,mtoupath): added
2162         codepage/casefolding support. casefold is currently an int that
2163         could have multiple actions. right now, i just lowercase in
2164         mtoupath and uppercase in utompath.
2165
2166         * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
2167         as an additional specifier so that we don't have problems with
2168         the same path names on multiple volumes. 
2169
2170 1998-11-29  a sun  <asun@purgatorius.zoology.washington.edu>
2171
2172         * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
2173         bits. 
2174
2175 1998-11-24  a sun  <asun@purgatorius.zoology.washington.edu>
2176
2177         * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
2178         prevent atalkd from trying to use a slave channel.
2179
2180 1998-11-23  a sun  <asun@purgatorius.zoology.washington.edu>
2181
2182         * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
2183         icon bit by default on the root directory. that screws up pre-OS 8
2184         systems.
2185
2186 1998-11-19  a sun  <asun@purgatorius.zoology.washington.edu>
2187
2188         * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
2189         so that we can gracefully shut down the server side.
2190
2191         * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
2192         libatalk/dsi/dsi_getsess.c (dsi_getsession),
2193         libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
2194         interval an option (-tickleval <sec>).
2195         
2196         * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
2197         we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
2198         dsi_write.c both save/restore the old timer, so they don't really
2199         care what the actual value is. 
2200         
2201 1998-11-18  a sun  <asun@purgatorius.zoology.washington.edu>
2202
2203         * due to the recent obsession with bug fixing and low-level dsi
2204         cleanups, i've decided that this should really be asun2.1.1
2205         instead of asun2.1.0a.
2206
2207 1998-11-17  a sun  <asun@purgatorius.zoology.washington.edu>
2208
2209         * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
2210         announcement here from etc/afpd/afp_dsi.c. 
2211         
2212         * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
2213         into here as they're pretty generic. now, the protocol specific
2214         stuff only handles open and close. 
2215
2216         * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
2217         file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
2218         added initial stubs for sendfile support. i still need to go
2219         through and calculate the appropriate offsets to use. 
2220
2221         * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
2222         instead of just ignoring it.
2223
2224         * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
2225         libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
2226         dsi_read interface to return errors so that i can kill things
2227         gracefully. 
2228
2229 1998-11-16  a sun  <asun@purgatorius.zoology.washington.edu>
2230
2231         * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
2232         and write() treat a return of 0 differently. 
2233
2234 1998-11-16  a sun  <asun@hecate.darksunrising.blah>
2235
2236         * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
2237         the error code.
2238
2239 1998-11-15  a sun  <asun@purgatorius.zoology.washington.edu>
2240
2241         * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
2242         to return earlier on 0-sized files.
2243
2244 1998-11-13  a sun  <asun@purgatorius.zoology.washington.edu>
2245
2246         * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
2247         check to here from dsi_cmdreply.
2248
2249 1998-11-11  a sun  <asun@purgatorius.zoology.washington.edu>
2250
2251         * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
2252         back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
2253
2254 1998-11-09  a sun  <asun@purgatorius.zoology.washington.edu>
2255
2256         * etc/afpd/directory.c (getdirparams): changed unknown bit reply
2257         code to AFPERR_BITMAP instead of AFPERR_PARAM.
2258
2259 1998-11-06  a sun  <asun@purgatorius.zoology.washington.edu>
2260
2261         * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
2262         fixed a couple of failed realloc leaks.
2263
2264         * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
2265         to deal with case-insensitive, case-preserving filesystems.
2266
2267 1998-10-30  a sun  <asun@purgatorius.zoology.washington.edu>
2268
2269         * etc/afpd/auth.c: fixed randnum password changing check. 
2270
2271 1998-10-27  a sun  <asun@purgatorius.zoology.washington.edu>
2272
2273         * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
2274         SIOCDIFADDR fails.
2275         
2276         * etc/afpd/volume.c (getvolparams): ad_open had the wrong
2277         parameters. 
2278
2279         * etc/afpd/unix.c (setdeskowner): added a little extra space to
2280         prevent buffer overflows here.
2281
2282 1998-10-26  a sun  <asun@purgatorius.zoology.washington.edu>
2283
2284         * sys/linux/Makefile: fixed PAM message.
2285
2286         * sys/solaris/Makefile: make failure to ln -s a non-fatal error. 
2287
2288         * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
2289         wrap from 0 -> 1 instead of from 0xFFFF -> 1.
2290
2291         * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
2292         should check against the entire unix name.
2293         
2294 1998-10-21  a sun  <asun@purgatorius.zoology.washington.edu>
2295
2296         * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
2297         to check against mac name.
2298
2299 1998-10-19  a sun  <asun@purgatorius.zoology.washington.edu>
2300
2301         * etc/afpd/auth.c (afp_changepw): make password changing deal
2302         correctly with "real" user names. also, moved seteuid() to before
2303         the pam_authenticate() bit as shadow passwords need that.
2304
2305         * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
2306         name against MACFILELEN.
2307
2308 1998-10-16  a sun  <asun@purgatorius.zoology.washington.edu>
2309
2310         * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
2311         directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
2312         checks. also make sure test occurs before checking to see if the
2313         destination exists.
2314
2315 1998-10-15  a sun  <asun@purgatorius.zoology.washington.edu>
2316
2317         * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
2318         forgot that password changing needs root privileges to work.
2319
2320         * etc/afpd/auth.c (PAM_conversation): the supplied code was
2321         incorrect. i cleaned it up a bit.
2322
2323         * sys/linux/Makefile: fixed the installation bits.
2324
2325 1998-10-14  a sun  <asun@purgatorius.zoology.washington.edu>
2326
2327         * etc/afpd/auth.c (afp_changepw): don't kill the connection here
2328         if there's a problem.
2329
2330 1998-10-10  a sun  <asun@purgatorius.zoology.washington.edu>
2331
2332         * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
2333         globals.h, directory.c, auth.c: #defined MACFILELEN and used
2334         that. also made sure that files > MACFILELEN never show up.
2335
2336 1998-09-25  a sun  <asun@purgatorius.zoology.washington.edu>
2337
2338         * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
2339         spurious pointer dereference.
2340
2341         * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
2342         length so that we don't need to realloc.
2343
2344         * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
2345         return AFPERR_BUSY if the dest has an ofork open.
2346
2347         * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
2348         (afp_rename): return AFPERR_SAMEOBJ if source == dest
2349
2350 1998-09-21  a sun  <asun@purgatorius.zoology.washington.edu>
2351
2352         * etc/afpd: went through and looked for places that needed to use
2353         curdir instead of dir. i think i have them all right now.
2354
2355         * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
2356         curdir correctly. what this really means is that cname should be
2357         fixed to return everything it changes as opposed to changing a
2358         global variable. 
2359
2360 1998-09-19  a sun  <asun@purgatorius.zoology.washington.edu>
2361
2362         * etc/afpd/config.c (configinit): do the right thing if
2363         AFPConfigInit fails.
2364
2365 1998-09-18  a sun  <asun@purgatorius.zoology.washington.edu>
2366
2367         * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how 
2368         embarrassing. i wasn't doing refcounts correctly.
2369
2370 1998-09-17  a sun  <asun@purgatorius.zoology.washington.edu>
2371
2372         * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
2373         of dqb_btimelimit.
2374
2375         * sys/ultrix/Makefile: ultrix understands the old rquota format. 
2376
2377         * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
2378         the current directory. 
2379         (of_rename): erk. changed it to handle renaming a file that has
2380         been opened multiple times.
2381
2382         * etc/atalkd: made sure that if you don't specify -router, things
2383         are as they were before. 
2384
2385 1998-09-13  a sun  <asun@purgatorius.zoology.washington.edu>
2386
2387         * etc/afpd/status.c (status_flags): forgot to turn on password
2388         setting if randnum passwords are being used.
2389
2390 1998-09-11  a sun  <asun@purgatorius.zoology.washington.edu>
2391
2392         * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
2393         directories. 
2394
2395         * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
2396         from "Fred Lindberg" <lindberg@id.wustl.edu>.
2397
2398 1998-09-03  a sun  <asun@purgatorius.zoology.washington.edu>
2399
2400         * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
2401         for more AFP 2.0 compliance. unfortunately, apple's appleshare
2402         client doesn't like non-fixed directory ids.
2403
2404 1998-08-31  a sun  <asun@purgatorius.zoology.washington.edu>
2405
2406         * etc/afpd/volume.c (accessvol): the accessible volume list can
2407         now be controlled by groups and usernames. just use something of
2408         the following form: @group,name,name2,@group2,name3
2409
2410         NOTE: you can't have any spaces, and the parser forces you to
2411         include all options. in this case, there are some apple II options
2412         that need to be entered. they need to go away soon anyway.
2413
2414         * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
2415         field into a temporary buffer before calling strtok.
2416
2417 1998-08-29  a sun  <asun@hecate.darksunrising.blah>
2418
2419         * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the 
2420         last router on an interface goes down, we need to delete the
2421         interface's zone table.
2422
2423 1998-08-28  a sun  <asun@purgatorius.zoology.washington.edu>
2424
2425         * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
2426         i've added this in to increase AFP compliance.
2427
2428         * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
2429         should make afpd compatible with OS 8.5's Nav Services.
2430
2431         * etc/atalkd/config.c,main.c: -router now specifies router mode
2432         with any number of interfaces.
2433
2434 1998-08-27  a sun  <asun@purgatorius.zoology.washington.edu>
2435
2436         * etc/atalkd/main.c (as_timer): well, i figured out how to set up
2437         atalkd as a single-interface router. now, you can get zones with
2438         only single interfaces! i'm only waiting on wes for the approved
2439         configuration toggle.
2440
2441 1998-08-26  a sun  <asun@purgatorius.zoology.washington.edu>
2442
2443         * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
2444         ADLOCK_* into real #defines and added translations in the
2445         lock-type specific functions. this should make it easier to
2446         recompile things without screwing up.
2447
2448 1998-08-26  a sun  <asun@hecate.darksunrising.blah>
2449
2450         * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
2451         zone case.
2452
2453 1998-08-25  a sun  <asun@hecate.darksunrising.blah>
2454
2455         * etc/afpd/status.c (status_server): changed status_server to
2456         use only the obj part of obj:type@zone-style names.
2457
2458         * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
2459         zones properly. it was matching on anything but the actual zone.
2460
2461 1998-08-18  a sun  <asun@purgatorius.zoology.washington.edu>
2462
2463         * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
2464         that solaris' pam session setup doesn't crap out.
2465
2466 1998-08-17  a sun  <asun@purgatorius.zoology.washington.edu>
2467
2468         * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
2469         with zip multicast info.
2470
2471 1998-08-15  a sun  <asun@purgatorius.zoology.washington.edu>
2472
2473         * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
2474         upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
2475         <sys/time.h> for ultrix breakage.
2476
2477 1998-08-13  a sun  <asun@purgatorius.zoology.washington.edu>
2478
2479         * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
2480         knew that speeding up of_findname would be useful. in any case, i
2481         discovered the source of yet another small AFP non-compliance that
2482         was confusing WordPerfect. on an afp_rename, we also need to
2483         rename the corresponding ofork. i've added an of_rename() to do
2484         this.
2485
2486 1998-08-13  a sun  <asun@hecate>
2487
2488         * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
2489         sticking refnum in ofork.
2490
2491 1998-08-12  a sun  <asun@hecate>
2492
2493         * etc/afpd/fork.c (afp_openfork): added already open attribute
2494         bits.
2495
2496         * etc/afpd/ofork.c: added a hashed of_findname.
2497
2498 1998-08-06  a sun  <asun@purgatorius.zoology.washington.edu>
2499
2500         * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
2501         forks from read-only non-appledouble media.
2502
2503 1998-07-23  a sun  <asun@purgatorius.zoology.washington.edu>
2504
2505         * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
2506         (getvolspace): modified them to treak afs like the other
2507         getvolspaces w.r.t. VolSpace.
2508
2509 1998-07-21  a sun  <asun@purgatorius.zoology.washington.edu>
2510
2511         * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
2512         used for filesystems. nfs quotas sometimes failed as a
2513         result. that's fixed now.
2514
2515 1998-07-20  a sun  <asun@purgatorius.zoology.washington.edu>
2516
2517         * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
2518         it's simple to run the server process as a non-root user.
2519
2520 1998-07-17  a sun  <asun@purgatorius.zoology.washington.edu>
2521
2522         * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
2523         out that i was opening lots of sockets with callaurpc. now, the
2524         socket gets saved and reused.
2525
2526         NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2527         for rquota's bsize. unless fixed, rquota will report incorrect
2528         values. 
2529         
2530 1998-07-08  a sun  <asun@purgatorius.zoology.washington.edu>
2531
2532         * etc/afpd/uam/README: added some preliminary ideas on a
2533         plug-in uam architecture. in addition, this should allow arbitrary
2534         afp function replacement. eventually, auth.c should get a
2535         bit cleaner.
2536
2537 1998-07-07  a sun  <asun@purgatorius.zoology.washington.edu>
2538
2539         * etc/afpd/nfsquota.c: added headers and redefined a couple
2540         structure fields so that sunos4 compiles.
2541
2542         * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2543         2. this should get redhat 4.2 machines. NOTE: they're still
2544         missing librpcsvc.a, so they'll need to remove that from the
2545         etc/afpd/Makefile. 
2546
2547 1998-07-06  a sun  <asun@purgatorius.zoology.washington.edu>
2548
2549         * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2550         missing a couple functions needed for rquota support. here they
2551         are. 
2552
2553         * etc/afpd/unix.c (mountp): fixed the nfs detection for
2554         solaris. we still need bsd and ultrix.
2555
2556 1998-07-05  a sun  <asun@hecate>
2557
2558         * include/atalk/adouble.h: marked out space for appledouble v2. 
2559
2560 1998-07-04  a sun  <asun@hecate>
2561
2562         * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2563         get negative numbers for length fields and such.
2564         
2565 1998-07-04  a sun  <asun@hecate>
2566
2567         * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2568         support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2569         provided the initial bits from the bsd quota program. 
2570
2571         * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2572         getnfsquota depending upon the type of fs. 
2573
2574         * etc/afpd/unix.c (mountp/special): munged mountp and
2575         special to return either the nfs mount point or the fs
2576         device. set the vol->v_nfs flag if it's nfs.
2577
2578         * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2579         honor results returned from uquota_getvolspace.
2580         
2581 1998-06-29  a sun  <asun@purgatorius.zoology.washington.edu>
2582
2583         * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2584         multiple copies. as that's not the case here, i've reverted to
2585         just doing read + write.
2586         
2587 1998-06-28  a sun  <asun@purgatorius.zoology.washington.edu>
2588
2589         * sys/linux/Makefile: fixed the redhat-style atalk
2590         installation. also, it doesn't over-write an existing
2591         /etc/rc.d/init.d/atalk file.
2592
2593         * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2594         </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2595
2596 1998-06-19  a sun  <asun@purgatorius.zoology.washington.edu>
2597
2598         * changed sys/linux/Makefile to install a redhat-style sysv atalk
2599         script instead of the bsd one.
2600
2601         * include/atalk/adouble.h: moved same-name list stub to struct
2602         ad_adf. 
2603         
2604 Thu Jun 18 18:20:28 1998  a sun  <asun@purgatorius>
2605
2606         * changed to asunx.y.z notation as i was getting tired of
2607         increasing numbers. as this version is undergoing a fairly
2608         substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2609         never existed. i just started at 2.0.
2610
2611         * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2612         for hashed-by-name oforks and oforks which group by name to help
2613         with byte locks and of_findname.
2614
2615         * adouble (include/atalk/adouble.h): started implementing
2616         appledouble v2. mostly, i added bits to headers. v2 has wonderful
2617         bits that should make prodos support much less clunky, allow
2618         persistent dids, and allow msdos support.
2619
2620         * finder info: added bits to directory.c and file.c describing the
2621         actual contents of finder info (from IM: Toolbox
2622         Essentials). also, set default directory view to an allowed value
2623         thanks to a suggestion from the appledouble v2 specs. that should
2624         help with read-only media.
2625
2626         * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2627         DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2628         are reserved.
2629         
2630 Wed Jun 17 11:54:49 1998  a sun  <asun@purgatorius>
2631
2632         * well, i'm starting a changelog as i keep forgetting what i've
2633         done. 
2634
2635         * locks: revamped them to be more in line with what should
2636         happen. currently, i've reverted back to flock-style locks as i'll
2637         need to stick in more code to get fcntl-style locks to work
2638         properly. specifically, i think modifying of_alloc/of_dealloc to
2639         keep track of locks, fds, and names should solve the problem with
2640         fcntl locks being process-specific and not fd specific.
2641