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