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