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