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