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