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