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