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