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