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