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