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