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