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