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