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