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