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