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