2 2001-09-28 joe c <marcus@marcuscom.com>
4 * libatalk/cnid/cnid_close.c: Add more db3 3.3.x compatibility to CNID DB
6 2001-09-27 joe c <marcus@marcuscom.com>
8 * libatalk/cnid/cnid_open.c: Set internal deadlock detection
10 2001-09-23 joe c <marcus@marcuscom.com>
12 * libatalk/cnid/cnid_close.c, libatalk/cnid/cnid_resolve.c,
13 libatalk/cnid/cnid_open.c: More s/errno/rc fixes and some code
16 2001-09-22 joe c <marcus@marcuscom.com>
18 * configure.in: Fix db3 compilation on Linux
20 * libatalk/cnid/cnid_get.c: Fix another potential deadlock problem by
21 replacing EAGAIN with DB_LOCK_DEADLOCK
23 2001-09-21 joe c <marcus@marcuscom.com>
25 * etc/afpd/desktop.c: Re-enable codepage translations (thanks to
26 Egon Niederacher <niederacher@fh-vorarlberg.ac.at>)
28 * libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_get.c,
29 libatalk/cnid/cnid_lookup.c, libatalk/cnid/cnid_close.c,
30 libatalk/cnid/cnid_open.c, libatalk/cnid/cnid_update.c: Fixed bugs
31 with database contention and database corruption.
33 2001-09-19 joe c <marcus@marcuscom.com>
35 * etc/afpd/afp_config.c: Fixed a bug where SRVLOC services wouldn't
38 * libatalk/cnid/cnid_add.c: Fix a bug where some DBT data structures
39 were not being memset to NULL correctly.
41 2001-09-18 joe c <marcus@marcuscom.com>
43 * etc/afpd/afp_options.c: Fix a bug in the custom icon code (thanks to
44 Edmund Lam <epl@unimelb.edu.au> for finding this)
46 * libatalk/cnid/cnid_open.c: Added db3 version checking code
48 * config/afpd.conf.tmpl: Removed uams_guest.so from the default UAMs
51 2001-09-17 jeff b <jeff@univrel.pr.uconn.edu>
53 * acconfig.h, configure.in, etc/afpd/afp_config.c: SLP
54 support added (Joe Clarke)
56 2001-09-14 jeff b <jeff@univrel.pr.uconn.edu>
58 * sys/netatalk/endian.h: fix from Robert Cohen
59 <robert.cohen@anu.edu.au> for missing endif
61 2001-09-13 joe c <marcus@marcuscom.com>
63 * libatalk/util/getiface.c:
64 fix some malloc problems when no atalkd.conf file exists
66 2001-09-10 joe c <marcus@marcuscom.com>
68 * libatalk/util/getiface.c: up the new interface by one
69 each time instead of IFACE_NUM
71 2001-09-10 jeff b <jeff@univrel.pr.uconn.edu>
73 * etc/afpd/afp_options.c, etc/atalkd/main.c, etc/papd/main.c:
74 added version reporting with -v switch
76 2001-09-06 jeff b <jeff@univrel.pr.uconn.edu>
78 * etc/atalkd/main.c, etc/papd/main.c, etc/psf/psf.c,
79 libatalk/asp/asp_getsess.c, libatalk/dsi/dsi_getsess.c,
80 libatalk/pap/pap_slinit.c, libatalk/util/server_child.c:
81 autoconf POSIX.1 sys/wait.h check
83 * lots of files: AC_HEADER_STDC autoconf changes
85 * sys/netatalk/endian.h: used autoconf endian test instead
86 of manually checking every architecture
88 2001-09-05 joe c <marcus@marcuscom.com>
90 * libatalk/cnid/cnid_open.c: comment out DB_JOINENV as this is not
91 supported in db3 3.1.17
93 * libatalk/cnid/cnid_add.c: fix my comments to properly explain the use
96 2001-09-04 jeff b <jeff@univrel.pr.uconn.edu>
98 * etc/afpd/filedir.h: define veto_file() prototype (Edmund Lam)
100 * etc/uams/uams_dhx_pam.c: added quick Sun hack to seed openssl,
101 but it *really* needs something more elegant (#458433)
103 2001-09-04 jeff b <jeff@univrel.pr.uconn.edu>
105 * libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_open.c: fixed
106 duplicate DID's being generated and FreeBSD db3 fix (Joe Clarke)
108 * doc/README.veto, etc/afpd/directory.c, etc/afpd/enumerate.c,
109 etc/afpd/file.c, etc/afpd/filedir.c, etc/afpd/volume.c,
110 etc/afpd/volume.h: adds Samba-style "veto file" support
113 * configure.in: properly checks for db3 headers (Joe Clarke)
115 2001-08-31 jeff b <jeff@univrel.pr.uconn.edu>
117 * libatalk/cnid/cnid_*.c: compilation fixes for those who don't
118 want to compile with CNID support (Edmund Lam)
120 2001-08-28 Lance Levsen <l.levsen@printwest.com>
122 * config/Makefile.am: Added a variable substitution from
123 configure.in to stop overwriting the config files.
125 * configure.in: Added --enable-overwrite flag that enables the
126 overwriting of configure files. Default is no overwrite, but does
127 check for missing files.
129 2001-08-27 jeff b <jeff@univrel.pr.uconn.edu>
133 2001-08-21 jeff b <jeff@univrel.pr.uconn.edu>
135 * configure.in: now does rudimentary check for DB3 library
136 if CNID DB option (--enable-cnid-db) is given, with
137 option to specify path to DB3 (Jeff)
139 2001-08-16 Uwe Hees <uwe.hees@rz-online.de>
141 * libatalk/cnid: replaced EAGAIN in db result checking with
142 DB_LOCK_DEADLOCK as appropriate for db-3.
143 * fixed a potential transaction problem in cnidd_add.
145 2001-08-14 Sam Noble <ns@shadow.org>
147 * etc/afpd/directory.c: in afp_mapname and afp_mapid
148 convert uid/gid to/from network byte order before actually
149 using. This should hopefully fix a long-standing bug in
150 the admin functionality.
152 2001-08-14 jeff b <jeff@univrel.pr.uconn.edu>
154 * acconfig.h, configure.in, etc/afpd/directory.c,
155 etc/afpd/enumerate.c, etc/afpd/file.c, etc/afpd/file.h,
156 etc/afpd/filedir.c, etc/afpd/fork.c, etc/afpd/volume.c,
157 etc/afpd/volume.h, libatalk/Makefile.am,
158 libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_close.c,
159 libatalk/cnid/cnid_delete.c, libatalk/cnid/cnid_lookup.c,
160 libatalk/cnid/cnid_nextid.c, libatalk/cnid/cnid_open.c,
161 libatalk/cnid/cnid_private.h, libatalk/cnid/cnid_update.c:
162 DID database and reincluding libatalk/cnid back into
163 compiled tree (Uwe Hees)
165 * libatalk/cnid/.cvsignore: updated .cvsignore list for
168 2001-08-09 Sam Noble <ns@shadow.org>
170 * configure.in, acconfig.h: Merged a patch from meeroh@mit.edu
171 to fix the kerberos uam build process.
173 2001-08-08 jeff b <jeff@univrel.pr.uconn.edu>
175 * etc/papd/session.c: prevents papd client from aborting
176 during the submission of a print job, therefore preventing
177 the job from hanging on the Mac (Michael Boers)
179 2001-07-10 Lance Levsen <lance@iworks.pwgroup.ca>
181 * man/man8/papd.8.tmpl: Fixed ftp URI for Adobe's PPD files.
183 2001-06-30 andy m <morgan@orst.edu>
185 * etc/papd/ppd.c: "unquote" ppd values by removing leading
186 and trailing quote character. This should fix bug #426141.
188 2001-06-27 jeff b <jeff@univrel.pr.uconn.edu>
190 * many, many, files: more malformed ifdef correction, nicer
191 comments, etc, etc, etc (Jeff)
193 * etc/afpd/directory.c, etc/afpd/uid.c, etc/afpd/uid.h: fixes
194 for force-uidgid to compile properly. haven't tested it, but
195 no more compile errors. (Jeff)
197 2001-06-27 uwe hees <hees@viva.de>
199 * etc/uams/uams_guest.c: fixed a typo.
201 2001-06-26 andy m <morgan@orst.edu>
203 * etc/papd/file.c: modified markline() to return 1 instead
204 of *linelength for successful completion. This should fix
205 the remaining binary printing problems in papd. Thanks go
206 out to Dave Arnold <darn0ld@home.com> for getting me thinking
207 about the markline function.
209 2001-06-25 jeff b <jeff@univrel.pr.uconn.edu>
211 * etc/afpd/auth.c, etc/afpd/main.c, etc/afpd/uam.c,
212 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c,
213 include/atalk/uam.h: TRU64 authentication patch to allow
214 any security scheme to be used on the TRU64 side (Burkhard
217 * etc/afpd/uam.c, etc/papd/uam.c: fixed DISABLE_SHELLCHECK
218 support in both afpd and papd (Jason Keltz <jas@cs.yorku.ca>)
220 * etc/*/*.{c,h}: corrected malformed defines, nicer comments,
223 2001-06-20 jeff b <jeff@univrel.pr.uconn.edu>
225 * configure.in: check for linux/quota.h before enabling
226 QUOTACTL_WRAPPER (Joe Clarke)
228 * acconfig.h, configure.in, include/atalk/util.h,
229 libatalk/util/module.c: removed NO_DLFCN_H in favor of
230 ifndef HAVE_DLFCN_H (Jeff)
232 * configure.in, etc/afpd/*.{c,h}, include/atalk/util.h:
233 major autoconf fixes for afpd, nicer commenting, etc (Jeff)
235 2001-06-19 jeff b <jeff@univrel.pr.uconn.edu>
237 * etc/afpd/file.c, etc/afpd/parse_mtab.c, etc/afpd/parse_mtab.h,
238 etc/atalkd/route.h, etc/atalkd/rtmp.c, etc/papd/headers.c,
239 etc/papd/magics.c, libatalk/asp/asp_tickle.c: patch for
240 fixed DID calculation in etc/afpd/file.c, FreeBSD errors and
241 other miscellany (Joe Clarke)
243 * minor patches and fixes to the aforementioned files, warning
244 fixes with GCC, etc (Jeff)
246 2001-06-18 jeff b <jeff@univrel.pr.uconn.edu>
248 * configure.in, etc/uams/Makefile.am,
249 etc/uams/uams_krb4/Makefile.am: patch #433952 from Sebastian
250 Rittau to move UAM authentication to use libtool
252 * configure.in, bin/afppasswd/Makefile.am, config/Makefile.am,
253 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
254 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
255 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
256 man/man5/Makefile.am, man/man8/Makefile.am: patch #433906
257 to move to pkgconfdir for package config files (Sebastian Rittau)
259 * configure.in: fixed error that caused --with-did not to function
262 2001-06-13 Sam Noble <ns@shadow.org>
264 * etc/papd/{printcap,ppd,lp,file,comment}.h:
265 added #include <sys/cdefs.h> to these headers so that __P gets
266 properly defined on platforms like TRU64
268 2001-06-11 jeff b <jeff@univrel.pr.uconn.edu>
270 * configure.in, include/atalk/adouble.h, libatalk/compat/flock.c:
271 patch #431859 to avoid ucbinclude on Solaris, with flock support,
272 thanks to Russ Allbery (rra@users.sourceforge.net)
274 * acconfig.h, configure.in, libatalk/util/server_child.c,
275 libatalk/util/server_lock.c, sys/netatalk/endian.h: patch #432052
276 for portability to IRIX, HP-UX, and AIX (Russ Allbery)
278 * etc/afpd/nls/makecode.c: patch #432137 to add codepage mapping
279 support for (C), (TM) and other characters to avoid losing them,
280 submitted by Andre Schild (aschild@users.sourceforge.net)
282 * configure.in: set sysconfdir as /etc/netatalk by default, and
283 uams path now pulls from sysconfdir instead of config_dir
286 2001-06-07 jeff b <jeff@univrel.pr.uconn.edu>
288 * configure.in, bin/afppasswd/Makefile.am,
289 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
290 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
291 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
292 man/man5/Makefile, man/man8/Makefile.am: patch #422872 from
293 Sebastian Rittau to move from CONFIG_DIR to sysconfdir
295 * etc/psf/Makefile.am, sys/solaris/Makefile: additional removal
296 of CONFIG_DIR in favor of sysconfdir, plus patch #422860 from
297 Sebastian Rittau to correct other problems
299 * config/Makefile.am, config/netatalk.pamd: patch #422856 from
300 Sebastian Rittau, moving to pam_unix.so and being more proper
302 * etc/afpd/Makefile.am, etc/afpd/main.c: added support for
303 ${sysconfdir}/afpd.mtab to be read into memory, so that mtab
304 DID support actually works...
306 2001-06-06 jeff b <jeff@univrel.pr.uconn.edu>
308 * etc/afpd/filedir.c, etc/afpd/unix.c: fixed dropkludge code
309 so that it properly compiles again, along with minor warning
312 2001-06-05 Dan L. (pooba53)
314 * Modified configure.in so references made to $ac_prefix_default
315 listed at the beginning are correct. The previous references were
316 being made to $ac_default_prefix.
318 2001-06-04 jeff b <jeff@univrel.pr.uconn.edu>
320 * doc/README.TRU64: details about tru64 installations, from
321 Edmund Lam <epl@unimelb.edu.au>
323 * etc/afpd/fork.c: implemented Sebastian Rittau's change to
324 avoid overwriting AppleDouble headers (finally)
326 * configure.in, etc/afpd/enumerate.c, etc/afpd/parse_mtab.c:
327 added initial support for mtab DID format. removed "lastdid"
328 configure option in favor of --with-did={last,mtab}
330 2001-06-01 jeff b <jeff@univrel.pr.uconn.edu>
331 * etc/afpd/quota.c: fix for Linux compile by Sam Noble
334 2001-05-25 jeff b <jeff@univrel.pr.uconn.edu>
335 * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
336 Schmidt <bs@cpfs.mpg.de>
338 * configure.in, contrib/shell_utils/Makefile.am,
339 contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
340 doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
341 etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
342 etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
343 code from Bob Rogers to generate more persistant DIDs
345 2001-05-22 jeff b <jeff@univrel.pr.uconn.edu>
346 * configure.in, etc/afpd/unix.h: more portability fixes, and
347 integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
349 * configure.in, bin/megatron/Makefile.am,
350 distrib/initscripts/Makefile.am, etc/afpd/main.c,
351 etc/afpd/quota.c, etc/afpd/unix.h,
352 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
353 round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
355 2001-05-09 jeff b <jeff@univrel.pr.uconn.edu>
356 * autogen.sh: added automake --include-deps to autogen.sh to
357 promote more portable Makefiles (thanks to Christian
358 Weisgerber <naddy@mips.inka.de> from OpenBSD)
360 2001-05-08 jeff b <jeff@univrel.pr.uconn.edu>
362 * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
363 from Olaf Hering <olh@suse.de>
365 * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
368 2001-05-07 jeff b <jeff@univrel.pr.uconn.edu>
370 * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
373 * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
374 Schmidt <bs@cpfs.mpg.de> to fix typos
376 2001-05-03 jeff b <jeff@univrel.pr.uconn.edu>
378 * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
379 etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
381 * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
382 moving to autodetected HAVE_*_H from autoconf script
384 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
386 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
387 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
388 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
389 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
390 <srittau@users.sourceforge.net> (#420300)
392 * bin/afile/*: replacement for old restrictive afile from Sebastian
393 Rittau <srittau@users.sourceforge.net> (#420302)
395 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
396 stop messages to the redhat initscript. nbpregister and unregister
397 messages are also displayed. This patch also permits spaces in zone
398 and machine names to be used in the variables. From Ryan Cleary
399 <tryanc@users.sourceforge.net> (#418094)
401 * bin/megatron/Makefile.am: patch to properly create links for
402 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
405 2001-04-25 morgan a <morgan@orst.edu>
407 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
408 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
409 were being logged and scaring users. :)
411 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
413 * configure.in: fixed problem with tcp_wrappers support; it needed to
416 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
418 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
419 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
420 be used for everything
422 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
424 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
425 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
426 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
427 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
430 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
434 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
436 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
437 Kelitz (jkeltz) to allow disabling of shell checking
439 * configure.in, contrib/Makefile.am: made timelord compilation
440 optional, disabled by default
442 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
444 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
445 at Apple, fixing server disconnect problem upon afp_createid() call
447 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
449 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
450 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
452 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
454 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
455 Noble <ns@shadow.org>
457 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
458 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
459 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
460 Akop Pogosian <akopps@csua.berkeley.edu>
462 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
464 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
465 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
466 "-L$ssldir/lib" in configure.
468 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
470 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
471 Rey <jprey@ads.ecp.fr>
473 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
475 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
476 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
478 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
480 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
481 Linux 2.0.x builds (Patch #408256)
483 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
484 to fix deleting/emptying trash problems (Patch #408218)
486 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
488 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
489 which was causing file creation problems
491 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
493 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
494 build, most notably paths, and reference to lp2pap.sh in the wrong
497 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
501 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
502 updated for 1.5pre5 release
504 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
506 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
507 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
509 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
511 * ChangeLog: started using timestamps in ChangeLog
513 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
514 (thanks to Sebastian Rittau)
516 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
518 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
519 docs/, where they should be.
521 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
523 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
526 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
528 * TODO: A few updates to papd entry.
530 * README.MORGAN: Removed README.MORGAN because that information in
531 now in papd's man page.
533 * man/man8/papd.8.tmpl: Updated papd man page to match current
534 code. Added descriptions of authenticated printing and other new
537 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
539 * libatalk/adouble/ad_open.c: AppleDouble directory creation
542 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
544 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
545 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
546 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
547 "dropbox" to available option if DROPKLUDGE is used during
550 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
552 * README: updated 1.5+ install instructions to include list of
553 required and recommended packages
555 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
557 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
558 all of the defines in the codebase
560 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
561 patch made with syslog()'s didn't include any brackets)
564 * distrib/initscripts/.cvsignore: removed pulling of atalk
566 * configure.in, etc/uams/Makefile.am: conditional compilation support
567 for PGP UAM module using --enable-pgp-uam
569 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
570 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
571 for future Kerberos module reintegration
573 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
575 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
576 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
578 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
579 instead of dumping out if appletalk module not present, from
580 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
582 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
583 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
584 suitable configure.in fixes
586 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
588 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
589 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
590 broken codepage support.
592 * ChangeLog: started updaing ChangeLog with important patch/fix
593 information, as it is *never* up to date.
595 * configure.in, acconfig.h: implemented AFS configuration option
596 patch from Wes Hardaker <hardaker@users.sourceforge.net>
598 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
601 * autogen.sh: make libtoolize copy instead of linking files to
602 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
604 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
607 - Debian packaging in tree
608 - Numerous Makefile/build fixes
609 - .cvsignore implemented
610 - Solaris build fixes
612 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
614 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
615 uid/gid per volume for afpd
617 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
619 * etc/afpd/volume.c (setvoltime): fix for multiple clients
620 writing to same volume.
622 2000-02-28 a sun <asun@asun.cobalt.com>
624 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
627 2000-02-23 a sun <asun@asun.cobalt.com>
629 * etc/afpd/volume.c (creatvol): / is a special case. you can't
630 share it unless you give it a name.
632 2000-02-21 a sun <asun@asun.cobalt.com>
634 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
635 make redhat 6.x happier.
637 2000-02-17 a sun <asun@asun.cobalt.com>
639 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
640 lock removal. this + the log right below fix ragtime.
642 2000-02-16 a sun <asun@asun.cobalt.com>
644 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
645 positioned at 0x7FFFFFFF if there's no resource fork.
647 2000-02-14 a sun <asun@asun.cobalt.com>
649 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
650 allocations happen in blocks. added missing case that omnis
653 2000-02-07 a sun <asun@asun.cobalt.com>
655 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
658 * include/atalk/adouble.h (sendfile): change to deal with
661 2000-01-25 a sun <asun@asun.cobalt.com>
663 * etc/afpd/ofork.c: keep track of oforks being used for each
664 directory so that we can update them if the directory tree gets
667 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
670 2000-01-24 a sun <asun@asun.cobalt.com>
672 * etc/afpd/directory.h (CNID): moved cnid assignment here along
675 * etc/afpd/directory.c: changed directory search to use red-black
676 trees to improve balance. parent-child tree changed to circular
677 doubly-linked list to speed up insert/remove times. there's still
678 one obstacle to actually freeing red-black tree entries. i need to
679 add an ofork list to struct dir to minimize search times.
681 2000-01-18 a sun <asun@asun.cobalt.com>
683 * etc/afpd/directory.c (dirinsert): detect attempts to add
684 pre-existing entries as just symbolic links.
686 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
687 extended to directories.
689 2000-01-03 a sun <asun@asun.cobalt.com>
691 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
694 * etc/afpd/status.c (status_init): fixed a bunch of problems here
695 that manifested under solaris 7.
697 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
701 1999-12-27 a sun <asun@asun.cobalt.com>
703 * libatalk/util/getiface.c: moved interface detection code to here
704 so that i can use if_nameindex() or getifconf() depending upon
707 1999-12-13 a sun <asun@asun.cobalt.com>
709 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
710 based interface code.
712 * etc/afpd/afp_options.c (afp_options_parseline): added
713 -server_quantum as an option. using hex would be a good idea.
715 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
716 the server quantum. by default, the server quantum is limited to
717 1MB due to a bug in the os 9 appleshare client.
719 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
722 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
725 1999-12-06 a sun <asun@asun.cobalt.com>
727 * etc/afpd/directory.c (setdirparams): don't error if we can't set
728 the desktop owner/permisssions.
730 1999-11-04 a sun <asun@asun.cobaltnet.com>
732 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
735 1999-11-02 a sun <asun@asun.cobaltnet.com>
737 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
740 1999-10-28 a sun <asun@asun.cobaltnet.com>
742 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
744 1999-10-27 a sun <asun@asun.cobaltnet.com>
746 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
749 1999-10-25 a sun <asun@asun.cobaltnet.com>
751 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
753 1999-10-21 a sun <asun@asun.cobaltnet.com>
755 * etc/afpd/Makefile (install): moved install of afpd earlier per
756 suggestion by steven michaud.
758 1999-10-05 a sun <asun@asun.cobaltnet.com>
760 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
761 ourselves into the user so that nfs is happy.
763 1999-09-19 a sun <asun@adrian5>
765 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
766 if it's on an os x server machine.
768 1999-09-15 a sun <asun@adrian5>
770 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
771 wants ATADDR_BCAST. that probably means that i need to do
772 multihoming appletalk a little differently. bleah.
774 1999-09-09 <asun@asun.cobaltnet.com>
776 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
777 (ad_open): mondo lameness. i forgot that directory lookups can be
778 done with "." as the directory name. that was auto-hiding
779 them. bleah. i also figured out which bit was the invisible bit
780 for finderinfo information.
782 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
784 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
785 that accidentally crept in.
787 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
789 * etc/afpd/quota.c (getfsquota): use group quotas in quota
790 calculations if the user belongs to a single group. just use the
791 user quotas if the user belongs to multiple groups.
793 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
794 restrict the available space to 2GB. this is for macs running
795 older versions of the operating system with newer versions of the
796 appleshare client. weird huh?
798 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
799 don't get promoted in the same way as arithmetic operations. added
800 some more casts to deal with that issue.
802 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
804 * man/man?/Makefile: don't re-build .tmp files if they already
805 exist. this gets the install phase to work correctly.
807 1999-08-13 a sun <asun@hecate.darksunrising.blah>
809 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
810 AFPERR_PARAM. also, reject names with /'s in them if the nohex
813 1999-08-12 a sun <asun@hecate.darksunrising.blah>
815 * etc/afpd/filedir.c,file.c,directory.c: changed error for
816 illegal filenames to AFPERR_EXIST.
818 1999-08-11 a sun <asun@hecate.darksunrising.blah>
820 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
821 .Parent files are no longer valid file names.
823 * etc/afpd/volume.c (volset): added usedots and nohex as
824 options. usedots stops :hex translation of . files while nohex
825 stops :hex translation of everything but . files. in addition,
826 . files created on the unix side are by default hidden.
828 * libatalk/adouble/ad_open.c: initialize more bits.
830 1999-08-10 a sun <asun@hecate.darksunrising.blah>
832 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
833 actual name for nbp registration rather than ATALK_NAME.
835 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
836 get used when building the kernel module.
838 * sys/solaris: changed strings.h to string.h
840 1999-08-08 a sun <asun@hecate.darksunrising.blah>
842 * etc/afpd/volume.c (readvolfile): changed volume options into an
843 array of structs to ease maintenance.
845 1999-08-05 a sun <asun@hecate.darksunrising.blah>
847 * etc/afpd/status.c (status_init): change the default icon
848 depending upon whether or not it's an ASIP or an AppleTalk
851 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
853 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
854 little more informative.
856 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
858 * yippee. someone figured what was happening with the installation
859 of the man pages. i got rid of a duplicate entry.
861 1999-08-02 a sun <asun@hecate.darksunrising.blah>
863 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
864 default options. it keys in on a :DEFAULT: label.
866 1999-07-30 a sun <asun@hecate.darksunrising.blah>
868 * moved rc.atalk.* scripts to distrib/initscripts.
870 1999-07-27 a sun <asun@hecate.darksunrising.blah>
872 * contrib/printing: added patch from job@uchicago.edu
874 * etc/afpd/file.c: forgot to initialize struct ad in
877 * etc/afpd/nls/makecode.c: added an empty mapping.
879 * etc/psf/Makefile (install): well cp -d didn't work either. just
882 1999-07-26 a sun <asun@hecate.darksunrising.blah>
884 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
885 (from denny@geekworld.com).
887 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
888 and patch files from inoue.
890 * sys/linux/Makefile (install-sysv): fixed up a bit.
892 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
895 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
896 of -icon. now it means to use the yucky bitmap instead of the
899 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
902 1999-07-18 a sun <asun@hecate.darksunrising.blah>
904 * create links/mangle files in the compile rather than the install
905 phase so that rpm will be happier.
907 1999-07-17 a sun <asun@hecate.darksunrising.blah>
909 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
910 filedir.c (afp_rename, afp_moveandrename): don't allow the
911 creation/renaming of names with certain characters if mswindows
912 compatibility is enabled.
914 1999-07-16 a sun <asun@hecate.darksunrising.blah>
916 * rc.atalk.redhat: incorporated chkconfig from inoue.
918 1999-07-15 a sun <asun@hecate.darksunrising.blah>
920 * etc/atalkd/config.c (getifconf): wrap check against
921 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
923 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
925 1999-07-11 a sun <asun@hecate.darksunrising.blah>
927 * contrib/ICDumpSuffixMap: added internet config perl script from
930 * contrib/printing: added contributed solaris printing scripts
931 from job@uchicago.edu.
933 1999-07-10 a sun <asun@hecate.darksunrising.blah>
935 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
937 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
939 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
942 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
944 1999-07-08 a sun <asun@hecate.darksunrising.blah>
946 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
947 address already exists.
949 1999-07-06 a sun <asun@hecate.darksunrising.blah>
951 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
953 1999-07-05 a sun <asun@hecate.darksunrising.blah>
955 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
956 is so that we can filter by interface in the future. however, it
957 doesn't seem to work that well right now. bleah.
959 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
960 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
963 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
964 etc/papd,afpd: accept -A <ddp address> as an option so that you
965 can specify the address to be used on a multihomed server. for
966 papd, you use the 'pa' option in papd.conf.
968 1999-07-04 a sun <asun@hecate.darksunrising.blah>
970 * etc/atalkd/config.c (parseline): initialize parseline properly
971 so that we don't get extraneous junk.
973 * etc/afpd/afp_options.c (afp_options_parseline): do
974 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
976 * etc/atalkd/config.c (getifconf/readconf): check to see if the
977 supported device can support appletalk addresses. either continue
978 or exit depending upon whether or not it's auto-configed.
980 1999-07-03 a sun <asun@hecate.darksunrising.blah>
982 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
983 toggle the volume icon so that it uses the apple icon instead.
985 * etc/afpd/config.c (AFPConfigInit): added more logic for the
986 -proxy option. here are the rules: -proxy will always try to
987 create a DDP server instance. by default, the proxy server will
988 still allow you to login with an appletalk connection. to prevent
989 that, just set the uamlist to an empty string.
991 1999-07-02 a sun <asun@hecate.darksunrising.blah>
993 * etc/afpd/status.c (status_netaddress): added support for fqdn
994 (not available in the appleshare client yet).
996 1999-07-01 a sun <asun@hecate.darksunrising.blah>
998 * etc/afpd/config.c (DSIConfigInit): application code for proxy
999 setup. it's the -proxy option.
1001 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
1002 support for proxy setup.
1004 1999-06-30 a sun <asun@hecate.darksunrising.blah>
1006 * etc/afpd/filedir.c (afp_rename): fixed up some error
1007 codes. quark express should be happier.
1009 * etc/afpd/uam.c (uam_afpserver_option): added
1010 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
1011 report that setting that fixes pam on solaris machines.
1013 1999-06-28 a sun <asun@hecate.darksunrising.blah>
1015 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
1017 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
1019 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
1021 * etc/afpd/fork.c (afp_write): fixed up error condition.
1023 1999-06-26 a sun <asun@hecate.darksunrising.blah>
1025 * etc/uams/Makefile (install): changed install location of uams.
1027 * sys/linux/Makefile (install-sysv): always install redhat
1028 script. netatalk.config script only gets installed if it's not
1031 1999-06-23 a sun <asun@hecate.darksunrising.blah>
1033 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
1035 * etc/afpd/afp_options.c (afp_options_init): changed default
1038 1999-06-22 a sun <asun@hecate.darksunrising.blah>
1040 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
1041 just the server name here.
1043 * etc/afpd/volume.c (volxlate): made $s return something
1044 meaningful no matter what.
1046 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
1049 1999-06-20 a sun <asun@hecate.darksunrising.blah>
1051 * etc/afpd/volume.c (volxlate): added variable substitution. if it
1052 doesn't understand the variable, it just spits it back out.
1054 (creatvol): display truncated volume name if it's too long.
1056 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
1057 with oses that have -lcrypt but shouldn't use it.
1059 1999-06-11 a sun <asun@hecate.darksunrising.blah>
1061 * include/atalk/afp.h: added comments to FPErrors.
1063 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
1064 more error checking.
1066 * include/atalk/util.h: server_lock() returns pid_t.
1068 1999-06-10 a sun <asun@hecate.darksunrising.blah>
1070 * README.ASUN: added location for both ssleay and openssl.
1072 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
1073 server." in the future, there will be "uamc_*." changed the shared
1074 library names to match.
1076 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
1078 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
1079 to the include path.
1081 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
1084 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
1085 type field. do type check.
1087 * etc/uams/uam_*pam.c: added a couple more error codes.
1089 1999-06-08 a sun <asun@hecate.darksunrising.blah>
1091 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
1092 codepage.h gets made.
1094 * libatalk/*/Makefile: make sure that the profiled directory gets
1097 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
1098 that was causing mapname to fail.
1100 1999-06-07 a sun <asun@hecate.darksunrising.blah>
1102 * etc/atalkd/main.c (main): added a note to check the syslog if
1103 atalkd can't be setup.
1105 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
1106 auto-detected #defines.
1108 1999-06-06 a sun <asun@hecate.darksunrising.blah>
1110 * etc/afpd/fork.c (afp_write): argh. i moved things around a
1111 little too much and ended up with an uninitialized eid. strangely,
1112 the compiler didn't complain. simplified bits a little as
1113 well. also, FPWrite was returning the wrong error messages. on
1114 64-bit filesystems, the offset can wraparound. so, report a disk
1115 full error if that's going to happen. egcs-19990602 gets one
1116 memcpy right and another wrong on my udb. bleah.
1118 (afp_read): fixed the error messages here as well.
1120 1999-06-05 a sun <asun@hecate.darksunrising.blah>
1122 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
1123 some links on the fly if they're missing.
1125 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
1126 re-arranged a little.
1128 1999-06-04 a sun <asun@hecate.darksunrising.blah>
1130 * etc/afpd: prototyped everything here and moved the FP functions
1133 * libatalk/util/bprint.c: moved all of the bprints to here.
1135 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
1137 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
1139 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
1142 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
1145 * bin/afppasswd/afppasswd.c: added -a option so that root can add
1146 new users. turned all of the options into bits. added newlines to
1149 1999-06-03 a sun <asun@hecate.darksunrising.blah>
1151 * sys/freebsd/Makefile: turn on sendfile support if running on a
1154 1999-06-02 a sun <asun@hecate.darksunrising.blah>
1156 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
1157 conversation function.
1159 * sys/*/Makefile: check at make time to see if -lrpcsvc and
1160 -lcrypt should be included in the appropriate places.
1162 1999-05-28 a sun <asun@hecate.darksunrising.blah>
1164 * etc/afpd/file.c (deletefile): added more error checking here as
1167 * etc/afpd/directory.c (renamedir): added a couple a few more
1170 * sys/sunos/Makefile: sunos should really work now.
1172 1999-05-27 a sun <asun@hecate.darksunrising.blah>
1174 * include/atalk/afp.h: added in a couple new error codes (one
1175 deals with password setting policy, the other with maximum logins
1178 * etc/afpd/fork.c (afp_openfork): try to re-open files on
1179 read-only volumes as read-only.
1181 1999-05-26 a sun <asun@hecate.darksunrising.blah>
1183 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
1184 uname -p. other oses seem to use uname -m for the same information.
1186 * etc/uams/uam_pam.c (pam_changepw): added check for same
1189 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
1190 same password checks.
1192 * sys/osx/Makefile: moved the os x server stuff into its own build
1195 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
1196 and MACHINETYPE for some stuff.
1198 1999-05-25 a sun <asun@hecate.darksunrising.blah>
1200 * sys/sunos/Makefile: various bits to make stuff work with sunos
1203 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
1205 * etc/afpd/file.c (copyfile): only copy the header file if newname
1208 * etc/afpd/directory.c (copydir): make sure to balk if the
1209 directory already exists. in addition, make sure to preserve the
1212 1999-05-24 a sun <asun@hecate.darksunrising.blah>
1214 * bin/afppasswd/afppasswd.c: global password updating utility for
1215 the randnum authentication method.
1217 1999-05-22 a sun <asun@hecate.darksunrising.blah>
1219 * etc/uams/uam_randnum.c (afppasswd): added in global password
1220 file for the randnum authentication method. it looks for a .key
1221 file as well to handle encryption.
1223 * etc/afpd/afp_options.c (afp_options_parseline): added
1224 -passwdfile as an option so that you can specify a global randnum
1225 password file if desired.
1227 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
1228 as an AppleVolumes.* option. if the user is in the rolist, the
1229 volume gets set as readonly. if there's a rwlist, and the user
1230 isn't in it, the volume also gets set as readonly.
1232 1999-05-21 a sun <asun@hecate.darksunrising.blah>
1234 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
1235 can't allocate the reference counting variable.
1237 * etc/uams/uam_*.c: make sure that uam_setup returns an error
1240 1999-05-19 a sun <asun@hecate.darksunrising.blah>
1242 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
1243 /var/run as the lock file directory.
1245 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
1246 a problem with FPWrite getting a request count of 0. that's
1249 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
1250 load itself from a shared library. i've compensated by linking it
1253 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
1254 still screwy with the dhx_pam stuff though.
1256 1999-05-18 a sun <asun@hecate.darksunrising.blah>
1258 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
1259 username to fit what's in pw->pw_name if necessary.
1261 1999-05-16 a sun <asun@hecate.darksunrising.blah>
1263 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
1264 authentication method. i'm still missing a little info to get it
1267 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
1268 create it from the unix name.
1270 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
1271 and fdType into strings.
1273 1999-05-16 a sun <asun@pelvetia>
1275 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
1276 little. now, you pass in an int * if you want to either get/set
1277 the size of the option. added in UAM_OPTION_RANDNUM for generic
1278 (4-byte granularity) random number generation.
1280 * etc/afpd/switch.c: added afp_logout to preauth_switch.
1282 1999-05-15 a sun <asun@hecate.darksunrising.blah>
1284 * bin/megatron/macbin.c (bin_open): make error message for
1285 macbinary files more informative.
1287 (test_header): added more macbinary tests. it now has a workaround
1288 for apple's incorrectly generated macbinary files.
1290 1999-05-14 a sun <asun@hecate.darksunrising.blah>
1292 * sys/solaris/Makefile: added shared library generation bits.
1294 * etc/uams: moved server-side uams here.
1296 * include/netatalk/endian.h: fixed some solaris bits.
1298 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
1299 do an atp_close and free the asp object. oh yeah, as afpd needs
1300 to export symbols to its modules, make sure you don't do anything
1301 more exciting than strip --strip-debug with it.
1303 1999-05-12 a sun <asun@hecate.darksunrising.blah>
1305 * various places that use sigaction: zero out struct sigaction so
1306 that we don't send something confusing. also make sure that we
1307 don't set a timer unless we already have a sigaction set.
1309 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
1310 empty resource fork read-only. also, added back in the bit of code
1311 that prevented locks from being attempted on non-existent resource
1314 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
1317 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
1320 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
1321 convert this over to use by the netddp interface.
1323 1999-05-12 a sun <asun@pelvetia>
1325 * etc/afpd/uam.c: os x server's runtime library loader is
1326 braindead. as a result, i've switched to using an exported struct
1327 with the uam's name.
1329 * bin/aecho,getzones: changed these to use the netddp interface.
1331 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1333 * libatalk/netddp: abstracted the ddp interface to netddp. besides
1334 the prior socket-driven interface, there's now an os x server
1335 interface. so, instead of calling socket/sendto/recvfrom, you call
1336 netddp_open/netddp_sendto/netddp_recvfrom.
1338 1999-05-11 a sun <asun@pelvetia>
1340 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1343 * etc/atalkd/main.c (main): make sure that if -dontroute is
1344 selected for all but one interface, that interface also gets
1347 1999-05-10 a sun <asun@hecate.darksunrising.blah>
1349 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1350 smaller than it used to be.
1352 1999-05-09 a sun <asun@hecate.darksunrising.blah>
1354 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1355 uam_randnum.c: uam modules. these should probably be moved out of
1356 afpd (and into something like etc/uam_server) when the printing
1357 stuff gets uam support.
1359 1999-05-08 a sun <asun@hecate.darksunrising.blah>
1361 * etc/afpd/uam.c: interface to user authentication modules.
1362 it should eventually be moved to libatalk, but that's not
1363 necessary until the printing uam stuff is done. everything is from
1364 the server-side perspective, but that's only because there aren't
1365 any client-side uses right now.
1367 * libatalk/util/module.c: generic interface to run-time library
1368 loading functions. right now, the dlfcn family and os x server's
1369 NS-style way of doing things are the ones understood. in addition,
1370 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1372 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1373 write part of write continuations.
1375 1999-05-07 a sun <asun@hecate.darksunrising.blah>
1377 * etc/atalkd: added the ability to turn off routing for particular
1378 interfaces. specify -dontroute for each interface that you don't
1381 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1383 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1384 using obj->username.
1386 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1388 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1389 forever if there's a problem while it's being used. that's fixed.
1391 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1393 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1394 so that renaming a directory works across filesystems.
1396 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1398 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1399 what's stored in the header file.
1401 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1402 afpd.conf more understandable.
1404 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1405 endian converted. that's fixed.
1407 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1408 necessarily ORable, so use ADLOCK_RD/WR instead.
1410 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1411 unlock accidentally getting the data fork locks.
1413 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1415 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1418 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1420 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1421 turned the mmapped header stuff into and #ifdef
1422 USE_MMAPPED_HEADERS option.
1424 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1425 the hfs fs doesn't currently have mmappable header files. rather
1426 than implement that, i just reverted back to a modified version
1427 of the old way of reading headers.
1429 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1431 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1434 (afp_openfork): deal with read-only data forks that don't have
1435 corresponding .AppleDouble files. we can't really do anything with
1436 deny locks in this case. just make sure that read locks are set.
1438 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1439 around FILPBIT_FINFO.
1441 * etc/afpd/fork.c (afp_read): as we share open files now, check
1442 for fork type against of_flags instead of just checking to see if
1443 the file is open. this fixes a bug that caused resource forks to
1444 get filled with data fork information.
1446 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1448 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1451 1999-04-09 a sun <asun@mead1.u.washington.edu>
1453 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1456 1999-04-09 a sun <asun@saul6.u.washington.edu>
1458 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1459 with quota support enabled.
1461 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1463 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1464 config/AppleVolumes.default: added read-only volume option.
1466 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1469 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1471 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1472 (from <jk@espy.org>).
1473 (bin_header_write/read): fixed up screwed up file date
1474 generation/reading with macbinary files.
1476 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1477 memcpy/memset/memcmp's. added macbinary III support.
1479 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1480 that we can stream macbinary file creation to stdout.
1482 * bin/megatron/megatron.c: incorporated information patch (--header
1483 and --macheader) from <fmorton@base2inc.com>.
1486 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1488 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1491 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1492 dummy ints for some of the files that can get compiled to empty
1493 objects. check for the type of msync() available as well.
1495 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1497 * INSTALL/README.GENERIC: added information for a generic
1498 architecture. It includes the information needed to get netatalk
1499 to compile on a random unix platform.
1501 * etc/afpd/quota.c: moved the quota stuff here so that we can
1502 #ifdef it out on a machine without quota support.
1504 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1506 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1507 well. this prevents multiple read locks on the same byte range
1508 from disappearing if one user disappears.
1510 (ad_fcntl_lock): here are the current rules for file
1512 1) if there's a appledouble header, we use the beginning
1513 of that for both data and resource forks.
1514 2) if there isn't, we use the end of the data fork (or past the
1515 end on 64-bit machines)
1517 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1519 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1520 appledouble entry parts is done.
1522 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1525 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1527 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1528 appledouble header parsing more generic so that we can read in
1529 arbitrary appledouble header files. i just mmap the parts that we
1532 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1534 * etc/afpd/file.c (afp_copyfile): return the correct error
1535 response on a failed copy. also, error if the file is already open
1536 to prevent problems with locks. we really need to ad_lock
1537 this during the copy
1539 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1541 * etc/afpd/volume.c (readvolfile): switched volume options to
1542 using ':' as a delimiter as that's one of the characters that's
1543 not allowed as part of a mac filename.
1544 (volset): changed access to allow/deny
1546 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1549 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1551 * NOTE to myself: jeremy allison said that samba uses refcounts to
1552 prevent close() from killing all the byte locks. so, i've started
1553 converting afpd to using refcounting as well. luckily, we already
1554 have of_findname, so we know when files are open. in cases where
1555 files are already open, this will replace an ad_open with a lookup
1558 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1559 NULL names when getting directory/file names.
1561 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1562 sure these are always in network byte order.
1564 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1566 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1567 synchronization bits. now, we use two bytes to do the read/write
1568 stuff. when access is needed, a read lock is attempted. if a deny
1569 lock is needed, a write lock is attempted. we even handle the
1570 access None mode now by saving the access modes.
1572 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1573 we can obey all of the file synchronization rules.
1575 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1576 reversed. with helios lantest's lock/unlock 4000 times test, it
1577 looks like i get <1 second overhead on my machine when using byte
1578 locks. NOTE: this will get a little worse when serialization gets
1579 added. in addition, 0x80000000 only works for 64-bit machines. i
1580 reserve the last allowable bit for 32-bit machines.
1582 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1583 now as i'm able to trigger a kernel oops in linux with the 64-bit
1586 (afp_read/afp_write): make sure to use the same offset when doing
1589 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1591 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1592 stuff to get byte locks to work correctly (except for the
1593 serialization) only to discover that files that use byte locks
1594 also request a deny write mode. luckily, byte locks only cover up
1595 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1596 synchronization locks.
1598 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1600 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1601 DEPS with double quotes so that multiple defines work.
1603 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1605 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1607 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1608 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1609 programs on the same machine opening the same file. current
1610 problems with the mechanism that i don't want to fix unless
1612 1) there's a race during the relock phase. serialization
1614 2) it assumes that each fd only locks a single contiguous
1615 range at a time. keeping a list of locked ranges would
1618 also, i changed the default to using fcntl locks. if the above two
1619 are really necessary, i'll probably switch to something a little
1620 more featureful like the berkeley db's lock manager.
1622 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1624 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1626 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1627 reduce system calls a little.
1629 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1632 * sys/solaris/Makefile: added 64-bit solaris patch from
1633 <jason@pattosoft.com.au>.
1635 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1637 * include/netatalk/endian.h: make solaris 2.5 complain less.
1639 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1640 fixed a couple problems with the adv1tov2 stuff.
1642 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1644 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1645 aligned along an even boundary.
1647 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1649 * etc/afpd/volume.c (readvolfile): added volume password support.
1651 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1653 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1654 layer multicast setting bits.
1656 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1657 prodos field info when converting.
1659 * rc.atalk.redhat: added pidof checking in case the machine
1660 crashes. also added rc.atalk.wrapper to the redhat rc script
1663 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1665 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1666 error detection here and more fully report error conditions.
1668 (flushfork): make sure to flush the header if necessary (rfork
1669 length changed or modification date needs to be set).
1671 (afp_write): ugh. this wasn't returning the right values for the
1672 last byte written if the endflag was set. in addition, it was
1673 setting the modification date. that should be left to FPCloseFork
1674 and FPFlush(Fork). this fixes a problem that shows up with
1677 NOTE: as of now, changes to the rfork info are the only things
1678 that aren't flushed immediately when altered.
1680 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1681 need to report bitmap errors if we try to fiddle with the wrong
1682 fork. i added an of_flags field to keep things sorted.
1684 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1685 movement, i forgot to make sure that the pre-asun2.2.0 features
1688 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1690 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1691 old name even when it's a directory.
1693 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1694 number of buffers used. use these when needed in afp_* calls.
1696 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1697 files when deleting a directory.
1699 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1701 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1704 * fixed up a few bobbles in the netatalk-990130 merge.
1706 * the noadouble option should be pretty much implemented. here's
1708 when a directory is created, the corresponding
1709 .AppleDouble directory is not.
1711 comments, dates, and other file attributes will get
1712 silently ignored and not result in the creation of a new
1713 .AppleDouble directory.
1715 however, if anything possessing a resource fork is copied
1716 into that directory, the corresponding .AppleDouble
1717 directory will be created. once this happens, any
1718 other file in the directory can acquire an AppleDouble
1719 header file in the future.
1721 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1723 * merged in the rest of netatalk-990130.
1725 * sys/solaris: merged in netatalk-990130 changes.
1727 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1728 tested and fixed the sendfile bits on linux. it looks like linux
1729 doesn't permit socket -> file sendfiles yet.
1731 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1732 newline character checking on.
1734 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1736 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1737 operates on a per-volume basis.
1739 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1741 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1743 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1746 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1747 implemented sendfile bits. currently, there's support for linux
1748 and freebsd. unfortunately, freebsd's implementation doesn't allow
1749 file->file or socket->file copies. bleah.
1751 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1753 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1754 volume.c (volset): added in the beginnings of a NOADOUBLE option
1755 for those that don't want AppleDouble headers to be created by
1756 default. it doesn't really work that well right now.
1758 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1760 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1761 from ad_refresh. made broken v1 header checking the default. fixed
1762 broken v1 date checking. now, it just checks to see if the v1
1763 MDATE is > than st_mtime by 5 years.
1765 * etc/afpd/directory.c: make date setting alter directory dates as
1768 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1770 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1771 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1773 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1775 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1776 shift the beginning of the fake did's if necessary.
1778 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1781 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1782 changes so that the CNIDs will still work even when the .AppleDB
1783 directory is read-only. if you're still allowed to create files on
1784 these volumes, you'll get a temporary id for those.
1786 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1788 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1789 files get cleared out on cnid_close() if it's the last user for a
1792 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1794 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1795 allows us to set the backup date on the server.
1797 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1798 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1799 with FPCatSearch to do.
1801 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1803 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1806 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1808 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1809 dbpath= in AppleVolumes.* for the CNID database.
1811 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1812 appledouble v1 environment, turn on v1compat by default.
1814 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1816 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1817 to handle broken ad headers.
1819 * etc/afpd/file.c (setfilparams): we need to make sure that we
1820 flush the file if we've created it even if there's an error. the
1821 magic number/version don't get saved if we don't.
1823 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1826 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1828 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1830 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1833 * well, what do you know? the cnid stuff compiles in.
1835 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1837 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1838 enumerate.c: added in stubs for CNID database conditional on
1839 AD_VERSION > AD_VERSION1.
1841 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1843 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1845 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1846 into hex code as well.
1848 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1850 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1852 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1854 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1855 both directions so that we can recover from problems if
1858 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1860 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1861 descends a directory and converts everything it sees into
1864 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1866 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1867 header rebuilding here so that ad_refresh can use it.
1869 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1872 * bin/megatron/asingle.c: yuk. removed all of
1873 the duplicate stuff here and had it use the #defines in adouble.h.
1875 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1876 conversion routine. we still need a shortname creator and a cnid
1877 database for the v2 features to be useful.
1879 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1881 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1882 that we don't understand.
1884 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1886 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1887 stuff. also made sure to lower/upper the 8-bit characters as
1890 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1893 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1894 attribute bits are in the correct byte ordering.
1896 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1898 * etc/afpd/volume.c (volset): made prodos an option to options=
1899 flag. also added crlf as an option.
1901 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1903 (ad_open): deal correctly with 0-length files by treating them as
1906 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1907 fork.c (getforkparams), directory.c (get/setdirparams): finished
1908 adding appledouble version 1 and 2 date conversion. also added
1911 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1912 file if we needed to fiddle with it.
1914 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1915 setting/retrieval code.
1917 * libatalk/adouble/ad_open.c (ad_open): initialize date
1918 structures here instead of elsewhere.
1920 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1922 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1923 time conversion code.
1925 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1927 * etc/afpd/volume.c (volset): changed prodos setting to
1930 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1932 * etc/afpd/volume.c (volset): okay. you now have the following
1933 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1934 tolower -> lowercases everything in both directions
1935 toupper -> uppercases everything in both directions
1936 xlatelower -> client sees lowercase, server sees uppercase
1937 xlateupper -> client sees uppercase, server sees lowercase
1939 NOTE: you only should use this if you really need to do so. this
1940 and the codepage option can cause mass confusion if applied
1941 blindly to pre-existing directories.
1943 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1945 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1946 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1947 bits 2 and 3 deal with UTOM. i did it that way so that you can
1948 casefold in one direction only or in both directions if
1949 desired. needless to say, setting both bits for UTOM or MTOU
1950 doesn't make any sense. right now, toupper takes precedence in
1951 MTOU, and tolower takes precedence in UTOM.
1953 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1955 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1956 -codepagepath to the list of available options. they specify the
1957 directories to look for uam modules and codepages,
1958 respectively. currently, -uampath doesn't do anything.
1960 * etc/afpd/volume.c (readvolfile): spruced up options to
1961 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1962 utomfile=<codepage.y>, casefold=<num> for volumes.
1964 * etc/afpd/desktop.c (utompath,mtoupath): added
1965 codepage/casefolding support. casefold is currently an int that
1966 could have multiple actions. right now, i just lowercase in
1967 mtoupath and uppercase in utompath.
1969 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1970 as an additional specifier so that we don't have problems with
1971 the same path names on multiple volumes.
1973 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1975 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1978 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1980 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1981 prevent atalkd from trying to use a slave channel.
1983 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1985 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1986 icon bit by default on the root directory. that screws up pre-OS 8
1989 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1991 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1992 so that we can gracefully shut down the server side.
1994 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1995 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1996 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1997 interval an option (-tickleval <sec>).
1999 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
2000 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
2001 dsi_write.c both save/restore the old timer, so they don't really
2002 care what the actual value is.
2004 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
2006 * due to the recent obsession with bug fixing and low-level dsi
2007 cleanups, i've decided that this should really be asun2.1.1
2008 instead of asun2.1.0a.
2010 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
2012 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
2013 announcement here from etc/afpd/afp_dsi.c.
2015 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
2016 into here as they're pretty generic. now, the protocol specific
2017 stuff only handles open and close.
2019 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
2020 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
2021 added initial stubs for sendfile support. i still need to go
2022 through and calculate the appropriate offsets to use.
2024 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
2025 instead of just ignoring it.
2027 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
2028 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
2029 dsi_read interface to return errors so that i can kill things
2032 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
2034 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
2035 and write() treat a return of 0 differently.
2037 1998-11-16 a sun <asun@hecate.darksunrising.blah>
2039 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
2042 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
2044 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
2045 to return earlier on 0-sized files.
2047 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
2049 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
2050 check to here from dsi_cmdreply.
2052 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
2054 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
2055 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
2057 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
2059 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
2060 code to AFPERR_BITMAP instead of AFPERR_PARAM.
2062 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
2064 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
2065 fixed a couple of failed realloc leaks.
2067 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
2068 to deal with case-insensitive, case-preserving filesystems.
2070 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
2072 * etc/afpd/auth.c: fixed randnum password changing check.
2074 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
2076 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
2079 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
2082 * etc/afpd/unix.c (setdeskowner): added a little extra space to
2083 prevent buffer overflows here.
2085 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
2087 * sys/linux/Makefile: fixed PAM message.
2089 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
2091 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
2092 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
2094 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
2095 should check against the entire unix name.
2097 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
2099 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
2100 to check against mac name.
2102 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
2104 * etc/afpd/auth.c (afp_changepw): make password changing deal
2105 correctly with "real" user names. also, moved seteuid() to before
2106 the pam_authenticate() bit as shadow passwords need that.
2108 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
2109 name against MACFILELEN.
2111 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
2113 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
2114 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
2115 checks. also make sure test occurs before checking to see if the
2118 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
2120 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
2121 forgot that password changing needs root privileges to work.
2123 * etc/afpd/auth.c (PAM_conversation): the supplied code was
2124 incorrect. i cleaned it up a bit.
2126 * sys/linux/Makefile: fixed the installation bits.
2128 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
2130 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
2131 if there's a problem.
2133 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
2135 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
2136 globals.h, directory.c, auth.c: #defined MACFILELEN and used
2137 that. also made sure that files > MACFILELEN never show up.
2139 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
2141 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
2142 spurious pointer dereference.
2144 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
2145 length so that we don't need to realloc.
2147 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
2148 return AFPERR_BUSY if the dest has an ofork open.
2150 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
2151 (afp_rename): return AFPERR_SAMEOBJ if source == dest
2153 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
2155 * etc/afpd: went through and looked for places that needed to use
2156 curdir instead of dir. i think i have them all right now.
2158 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
2159 curdir correctly. what this really means is that cname should be
2160 fixed to return everything it changes as opposed to changing a
2163 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
2165 * etc/afpd/config.c (configinit): do the right thing if
2166 AFPConfigInit fails.
2168 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
2170 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
2171 embarrassing. i wasn't doing refcounts correctly.
2173 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
2175 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
2178 * sys/ultrix/Makefile: ultrix understands the old rquota format.
2180 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
2181 the current directory.
2182 (of_rename): erk. changed it to handle renaming a file that has
2183 been opened multiple times.
2185 * etc/atalkd: made sure that if you don't specify -router, things
2186 are as they were before.
2188 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
2190 * etc/afpd/status.c (status_flags): forgot to turn on password
2191 setting if randnum passwords are being used.
2193 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
2195 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
2198 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
2199 from "Fred Lindberg" <lindberg@id.wustl.edu>.
2201 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
2203 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
2204 for more AFP 2.0 compliance. unfortunately, apple's appleshare
2205 client doesn't like non-fixed directory ids.
2207 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
2209 * etc/afpd/volume.c (accessvol): the accessible volume list can
2210 now be controlled by groups and usernames. just use something of
2211 the following form: @group,name,name2,@group2,name3
2213 NOTE: you can't have any spaces, and the parser forces you to
2214 include all options. in this case, there are some apple II options
2215 that need to be entered. they need to go away soon anyway.
2217 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
2218 field into a temporary buffer before calling strtok.
2220 1998-08-29 a sun <asun@hecate.darksunrising.blah>
2222 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
2223 last router on an interface goes down, we need to delete the
2224 interface's zone table.
2226 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
2228 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
2229 i've added this in to increase AFP compliance.
2231 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
2232 should make afpd compatible with OS 8.5's Nav Services.
2234 * etc/atalkd/config.c,main.c: -router now specifies router mode
2235 with any number of interfaces.
2237 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
2239 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
2240 atalkd as a single-interface router. now, you can get zones with
2241 only single interfaces! i'm only waiting on wes for the approved
2242 configuration toggle.
2244 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
2246 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
2247 ADLOCK_* into real #defines and added translations in the
2248 lock-type specific functions. this should make it easier to
2249 recompile things without screwing up.
2251 1998-08-26 a sun <asun@hecate.darksunrising.blah>
2253 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
2256 1998-08-25 a sun <asun@hecate.darksunrising.blah>
2258 * etc/afpd/status.c (status_server): changed status_server to
2259 use only the obj part of obj:type@zone-style names.
2261 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
2262 zones properly. it was matching on anything but the actual zone.
2264 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
2266 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
2267 that solaris' pam session setup doesn't crap out.
2269 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
2271 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
2272 with zip multicast info.
2274 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
2276 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
2277 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
2278 <sys/time.h> for ultrix breakage.
2280 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
2282 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
2283 knew that speeding up of_findname would be useful. in any case, i
2284 discovered the source of yet another small AFP non-compliance that
2285 was confusing WordPerfect. on an afp_rename, we also need to
2286 rename the corresponding ofork. i've added an of_rename() to do
2289 1998-08-13 a sun <asun@hecate>
2291 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
2292 sticking refnum in ofork.
2294 1998-08-12 a sun <asun@hecate>
2296 * etc/afpd/fork.c (afp_openfork): added already open attribute
2299 * etc/afpd/ofork.c: added a hashed of_findname.
2301 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
2303 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
2304 forks from read-only non-appledouble media.
2306 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
2308 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
2309 (getvolspace): modified them to treak afs like the other
2310 getvolspaces w.r.t. VolSpace.
2312 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
2314 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
2315 used for filesystems. nfs quotas sometimes failed as a
2316 result. that's fixed now.
2318 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
2320 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
2321 it's simple to run the server process as a non-root user.
2323 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
2325 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
2326 out that i was opening lots of sockets with callaurpc. now, the
2327 socket gets saved and reused.
2329 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2330 for rquota's bsize. unless fixed, rquota will report incorrect
2333 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
2335 * etc/afpd/uam/README: added some preliminary ideas on a
2336 plug-in uam architecture. in addition, this should allow arbitrary
2337 afp function replacement. eventually, auth.c should get a
2340 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
2342 * etc/afpd/nfsquota.c: added headers and redefined a couple
2343 structure fields so that sunos4 compiles.
2345 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2346 2. this should get redhat 4.2 machines. NOTE: they're still
2347 missing librpcsvc.a, so they'll need to remove that from the
2350 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
2352 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2353 missing a couple functions needed for rquota support. here they
2356 * etc/afpd/unix.c (mountp): fixed the nfs detection for
2357 solaris. we still need bsd and ultrix.
2359 1998-07-05 a sun <asun@hecate>
2361 * include/atalk/adouble.h: marked out space for appledouble v2.
2363 1998-07-04 a sun <asun@hecate>
2365 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2366 get negative numbers for length fields and such.
2368 1998-07-04 a sun <asun@hecate>
2370 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2371 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2372 provided the initial bits from the bsd quota program.
2374 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2375 getnfsquota depending upon the type of fs.
2377 * etc/afpd/unix.c (mountp/special): munged mountp and
2378 special to return either the nfs mount point or the fs
2379 device. set the vol->v_nfs flag if it's nfs.
2381 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2382 honor results returned from uquota_getvolspace.
2384 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2386 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2387 multiple copies. as that's not the case here, i've reverted to
2388 just doing read + write.
2390 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2392 * sys/linux/Makefile: fixed the redhat-style atalk
2393 installation. also, it doesn't over-write an existing
2394 /etc/rc.d/init.d/atalk file.
2396 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2397 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2399 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2401 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2402 script instead of the bsd one.
2404 * include/atalk/adouble.h: moved same-name list stub to struct
2407 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2409 * changed to asunx.y.z notation as i was getting tired of
2410 increasing numbers. as this version is undergoing a fairly
2411 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2412 never existed. i just started at 2.0.
2414 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2415 for hashed-by-name oforks and oforks which group by name to help
2416 with byte locks and of_findname.
2418 * adouble (include/atalk/adouble.h): started implementing
2419 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2420 bits that should make prodos support much less clunky, allow
2421 persistent dids, and allow msdos support.
2423 * finder info: added bits to directory.c and file.c describing the
2424 actual contents of finder info (from IM: Toolbox
2425 Essentials). also, set default directory view to an allowed value
2426 thanks to a suggestion from the appledouble v2 specs. that should
2427 help with read-only media.
2429 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2430 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2433 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2435 * well, i'm starting a changelog as i keep forgetting what i've
2438 * locks: revamped them to be more in line with what should
2439 happen. currently, i've reverted back to flock-style locks as i'll
2440 need to stick in more code to get fcntl-style locks to work
2441 properly. specifically, i think modifying of_alloc/of_dealloc to
2442 keep track of locks, fds, and names should solve the problem with
2443 fcntl locks being process-specific and not fd specific.