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