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