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