1 ($Id: ChangeLog,v 1.56 2001-06-27 18:22:19 uhees Exp $)
3 2001-06-27 uwe hees <hees@viva.de>
4 * etc/uams/uams_guest.c: fixed a typo.
6 2001-06-26 andy m <morgan@orst.edu
7 * etc/papd/file.c: modified markline() to return 1 instead
8 of *linelength for successful completion. This should fix
9 the remaining binary printing problems in papd. Thanks go
10 out to Dave Arnold <darn0ld@home.com> for getting me thinking
11 about the markline function.
13 2001-06-25 jeff b <jeff@univrel.pr.uconn.edu>
14 * etc/afpd/auth.c, etc/afpd/main.c, etc/afpd/uam.c,
15 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c,
16 include/atalk/uam.h: TRU64 authentication patch to allow
17 any security scheme to be used on the TRU64 side (Burkhard
20 * etc/afpd/uam.c, etc/papd/uam.c: fixed DISABLE_SHELLCHECK
21 support in both afpd and papd (Jason Keltz <jas@cs.yorku.ca>)
23 * etc/*/*.{c,h}: corrected malformed defines, nicer comments,
26 2001-06-20 jeff b <jeff@univrel.pr.uconn.edu>
27 * configure.in: check for linux/quota.h before enabling
28 QUOTACTL_WRAPPER (Joe Clarke)
30 * acconfig.h, configure.in, include/atalk/util.h,
31 libatalk/util/module.c: removed NO_DLFCN_H in favor of
32 ifndef HAVE_DLFCN_H (Jeff)
34 * configure.in, etc/afpd/*.{c,h}, include/atalk/util.h:
35 major autoconf fixes for afpd, nicer commenting, etc (Jeff)
37 2001-06-19 jeff b <jeff@univrel.pr.uconn.edu>
38 * etc/afpd/file.c, etc/afpd/parse_mtab.c, etc/afpd/parse_mtab.h,
39 etc/atalkd/route.h, etc/atalkd/rtmp.c, etc/papd/headers.c,
40 etc/papd/magics.c, libatalk/asp/asp_tickle.c: patch for
41 fixed DID calculation in etc/afpd/file.c, FreeBSD errors and
42 other miscellany (Joe Clarke)
44 * minor patches and fixes to the aforementioned files, warning
45 fixes with GCC, etc (Jeff)
47 2001-06-18 jeff b <jeff@univrel.pr.uconn.edu>
48 * configure.in, etc/uams/Makefile.am,
49 etc/uams/uams_krb4/Makefile.am: patch #433952 from Sebastian
50 Rittau to move UAM authentication to use libtool
52 * configure.in, bin/afppasswd/Makefile.am, config/Makefile.am,
53 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
54 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
55 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
56 man/man5/Makefile.am, man/man8/Makefile.am: patch #433906
57 to move to pkgconfdir for package config files (Sebastian Rittau)
59 * configure.in: fixed error that caused --with-did not to function
62 2001-06-13 Sam Noble <ns@shadow.org>
63 * etc/papd/{printcap,ppd,lp,file,comment}.h:
64 added #include <sys/cdefs.h> to these headers so that __P gets
65 properly defined on platforms like TRU64
67 2001-06-11 jeff b <jeff@univrel.pr.uconn.edu>
68 * configure.in, include/atalk/adouble.h, libatalk/compat/flock.c:
69 patch #431859 to avoid ucbinclude on Solaris, with flock support,
70 thanks to Russ Allbery (rra@users.sourceforge.net)
72 * acconfig.h, configure.in, libatalk/util/server_child.c,
73 libatalk/util/server_lock.c, sys/netatalk/endian.h: patch #432052
74 for portability to IRIX, HP-UX, and AIX (Russ Allbery)
76 * etc/afpd/nls/makecode.c: patch #432137 to add codepage mapping
77 support for (C), (TM) and other characters to avoid losing them,
78 submitted by Andre Schild (aschild@users.sourceforge.net)
80 * configure.in: set sysconfdir as /etc/netatalk by default, and
81 uams path now pulls from sysconfdir instead of config_dir
84 2001-06-07 jeff b <jeff@univrel.pr.uconn.edu>
85 * configure.in, bin/afppasswd/Makefile.am,
86 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
87 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
88 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
89 man/man5/Makefile, man/man8/Makefile.am: patch #422872 from
90 Sebastian Rittau to move from CONFIG_DIR to sysconfdir
92 * etc/psf/Makefile.am, sys/solaris/Makefile: additional removal
93 of CONFIG_DIR in favor of sysconfdir, plus patch #422860 from
94 Sebastian Rittau to correct other problems
96 * config/Makefile.am, config/netatalk.pamd: patch #422856 from
97 Sebastian Rittau, moving to pam_unix.so and being more proper
99 * etc/afpd/Makefile.am, etc/afpd/main.c: added support for
100 ${sysconfdir}/afpd.mtab to be read into memory, so that mtab
101 DID support actually works...
103 2001-06-06 jeff b <jeff@univrel.pr.uconn.edu>
104 * etc/afpd/filedir.c, etc/afpd/unix.c: fixed dropkludge code
105 so that it properly compiles again, along with minor warning
108 2001-06-05 Dan L. (pooba53)
109 * Modified configure.in so references made to $ac_prefix_default
110 listed at the beginning are correct. The previous references were
111 being made to $ac_default_prefix.
113 2001-06-04 jeff b <jeff@univrel.pr.uconn.edu>
114 * doc/README.TRU64: details about tru64 installations, from
115 Edmund Lam <epl@unimelb.edu.au>
117 * etc/afpd/fork.c: implemented Sebastian Rittau's change to
118 avoid overwriting AppleDouble headers (finally)
120 * configure.in, etc/afpd/enumerate.c, etc/afpd/parse_mtab.c:
121 added initial support for mtab DID format. removed "lastdid"
122 configure option in favor of --with-did={last,mtab}
124 2001-06-01 jeff b <jeff@univrel.pr.uconn.edu>
125 * etc/afpd/quota.c: fix for Linux compile by Sam Noble
128 2001-05-25 jeff b <jeff@univrel.pr.uconn.edu>
129 * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
130 Schmidt <bs@cpfs.mpg.de>
132 * configure.in, contrib/shell_utils/Makefile.am,
133 contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
134 doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
135 etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
136 etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
137 code from Bob Rogers to generate more persistant DIDs
139 2001-05-22 jeff b <jeff@univrel.pr.uconn.edu>
140 * configure.in, etc/afpd/unix.h: more portability fixes, and
141 integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
143 * configure.in, bin/megatron/Makefile.am,
144 distrib/initscripts/Makefile.am, etc/afpd/main.c,
145 etc/afpd/quota.c, etc/afpd/unix.h,
146 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
147 round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
149 2001-05-09 jeff b <jeff@univrel.pr.uconn.edu>
150 * autogen.sh: added automake --include-deps to autogen.sh to
151 promote more portable Makefiles (thanks to Christian
152 Weisgerber <naddy@mips.inka.de> from OpenBSD)
154 2001-05-08 jeff b <jeff@univrel.pr.uconn.edu>
156 * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
157 from Olaf Hering <olh@suse.de>
159 * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
162 2001-05-07 jeff b <jeff@univrel.pr.uconn.edu>
164 * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
167 * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
168 Schmidt <bs@cpfs.mpg.de> to fix typos
170 2001-05-03 jeff b <jeff@univrel.pr.uconn.edu>
172 * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
173 etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
175 * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
176 moving to autodetected HAVE_*_H from autoconf script
178 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
180 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
181 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
182 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
183 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
184 <srittau@users.sourceforge.net> (#420300)
186 * bin/afile/*: replacement for old restrictive afile from Sebastian
187 Rittau <srittau@users.sourceforge.net> (#420302)
189 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
190 stop messages to the redhat initscript. nbpregister and unregister
191 messages are also displayed. This patch also permits spaces in zone
192 and machine names to be used in the variables. From Ryan Cleary
193 <tryanc@users.sourceforge.net> (#418094)
195 * bin/megatron/Makefile.am: patch to properly create links for
196 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
199 2001-04-25 morgan a <morgan@orst.edu>
201 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
202 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
203 were being logged and scaring users. :)
205 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
207 * configure.in: fixed problem with tcp_wrappers support; it needed to
210 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
212 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
213 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
214 be used for everything
216 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
218 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
219 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
220 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
221 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
224 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
228 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
230 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
231 Kelitz (jkeltz) to allow disabling of shell checking
233 * configure.in, contrib/Makefile.am: made timelord compilation
234 optional, disabled by default
236 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
238 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
239 at Apple, fixing server disconnect problem upon afp_createid() call
241 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
243 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
244 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
246 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
248 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
249 Noble <ns@shadow.org>
251 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
252 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
253 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
254 Akop Pogosian <akopps@csua.berkeley.edu>
256 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
258 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
259 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
260 "-L$ssldir/lib" in configure.
262 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
264 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
265 Rey <jprey@ads.ecp.fr>
267 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
269 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
270 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
272 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
274 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
275 Linux 2.0.x builds (Patch #408256)
277 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
278 to fix deleting/emptying trash problems (Patch #408218)
280 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
282 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
283 which was causing file creation problems
285 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
287 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
288 build, most notably paths, and reference to lp2pap.sh in the wrong
291 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
295 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
296 updated for 1.5pre5 release
298 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
300 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
301 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
303 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
305 * ChangeLog: started using timestamps in ChangeLog
307 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
308 (thanks to Sebastian Rittau)
310 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
312 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
313 docs/, where they should be.
315 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
317 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
320 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
322 * TODO: A few updates to papd entry.
324 * README.MORGAN: Removed README.MORGAN because that information in
325 now in papd's man page.
327 * man/man8/papd.8.tmpl: Updated papd man page to match current
328 code. Added descriptions of authenticated printing and other new
331 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
333 * libatalk/adouble/ad_open.c: AppleDouble directory creation
336 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
338 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
339 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
340 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
341 "dropbox" to available option if DROPKLUDGE is used during
344 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
346 * README: updated 1.5+ install instructions to include list of
347 required and recommended packages
349 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
351 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
352 all of the defines in the codebase
354 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
355 patch made with syslog()'s didn't include any brackets)
358 * distrib/initscripts/.cvsignore: removed pulling of atalk
360 * configure.in, etc/uams/Makefile.am: conditional compilation support
361 for PGP UAM module using --enable-pgp-uam
363 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
364 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
365 for future Kerberos module reintegration
367 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
369 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
370 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
372 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
373 instead of dumping out if appletalk module not present, from
374 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
376 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
377 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
378 suitable configure.in fixes
380 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
382 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
383 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
384 broken codepage support.
386 * ChangeLog: started updaing ChangeLog with important patch/fix
387 information, as it is *never* up to date.
389 * configure.in, acconfig.h: implemented AFS configuration option
390 patch from Wes Hardaker <hardaker@users.sourceforge.net>
392 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
395 * autogen.sh: make libtoolize copy instead of linking files to
396 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
398 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
401 - Debian packaging in tree
402 - Numerous Makefile/build fixes
403 - .cvsignore implemented
404 - Solaris build fixes
406 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
408 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
409 uid/gid per volume for afpd
411 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
413 * etc/afpd/volume.c (setvoltime): fix for multiple clients
414 writing to same volume.
416 2000-02-28 a sun <asun@asun.cobalt.com>
418 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
421 2000-02-23 a sun <asun@asun.cobalt.com>
423 * etc/afpd/volume.c (creatvol): / is a special case. you can't
424 share it unless you give it a name.
426 2000-02-21 a sun <asun@asun.cobalt.com>
428 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
429 make redhat 6.x happier.
431 2000-02-17 a sun <asun@asun.cobalt.com>
433 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
434 lock removal. this + the log right below fix ragtime.
436 2000-02-16 a sun <asun@asun.cobalt.com>
438 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
439 positioned at 0x7FFFFFFF if there's no resource fork.
441 2000-02-14 a sun <asun@asun.cobalt.com>
443 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
444 allocations happen in blocks. added missing case that omnis
447 2000-02-07 a sun <asun@asun.cobalt.com>
449 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
452 * include/atalk/adouble.h (sendfile): change to deal with
455 2000-01-25 a sun <asun@asun.cobalt.com>
457 * etc/afpd/ofork.c: keep track of oforks being used for each
458 directory so that we can update them if the directory tree gets
461 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
464 2000-01-24 a sun <asun@asun.cobalt.com>
466 * etc/afpd/directory.h (CNID): moved cnid assignment here along
469 * etc/afpd/directory.c: changed directory search to use red-black
470 trees to improve balance. parent-child tree changed to circular
471 doubly-linked list to speed up insert/remove times. there's still
472 one obstacle to actually freeing red-black tree entries. i need to
473 add an ofork list to struct dir to minimize search times.
475 2000-01-18 a sun <asun@asun.cobalt.com>
477 * etc/afpd/directory.c (dirinsert): detect attempts to add
478 pre-existing entries as just symbolic links.
480 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
481 extended to directories.
483 2000-01-03 a sun <asun@asun.cobalt.com>
485 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
488 * etc/afpd/status.c (status_init): fixed a bunch of problems here
489 that manifested under solaris 7.
491 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
495 1999-12-27 a sun <asun@asun.cobalt.com>
497 * libatalk/util/getiface.c: moved interface detection code to here
498 so that i can use if_nameindex() or getifconf() depending upon
501 1999-12-13 a sun <asun@asun.cobalt.com>
503 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
504 based interface code.
506 * etc/afpd/afp_options.c (afp_options_parseline): added
507 -server_quantum as an option. using hex would be a good idea.
509 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
510 the server quantum. by default, the server quantum is limited to
511 1MB due to a bug in the os 9 appleshare client.
513 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
516 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
519 1999-12-06 a sun <asun@asun.cobalt.com>
521 * etc/afpd/directory.c (setdirparams): don't error if we can't set
522 the desktop owner/permisssions.
524 1999-11-04 a sun <asun@asun.cobaltnet.com>
526 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
529 1999-11-02 a sun <asun@asun.cobaltnet.com>
531 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
534 1999-10-28 a sun <asun@asun.cobaltnet.com>
536 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
538 1999-10-27 a sun <asun@asun.cobaltnet.com>
540 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
543 1999-10-25 a sun <asun@asun.cobaltnet.com>
545 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
547 1999-10-21 a sun <asun@asun.cobaltnet.com>
549 * etc/afpd/Makefile (install): moved install of afpd earlier per
550 suggestion by steven michaud.
552 1999-10-05 a sun <asun@asun.cobaltnet.com>
554 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
555 ourselves into the user so that nfs is happy.
557 1999-09-19 a sun <asun@adrian5>
559 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
560 if it's on an os x server machine.
562 1999-09-15 a sun <asun@adrian5>
564 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
565 wants ATADDR_BCAST. that probably means that i need to do
566 multihoming appletalk a little differently. bleah.
568 1999-09-09 <asun@asun.cobaltnet.com>
570 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
571 (ad_open): mondo lameness. i forgot that directory lookups can be
572 done with "." as the directory name. that was auto-hiding
573 them. bleah. i also figured out which bit was the invisible bit
574 for finderinfo information.
576 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
578 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
579 that accidentally crept in.
581 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
583 * etc/afpd/quota.c (getfsquota): use group quotas in quota
584 calculations if the user belongs to a single group. just use the
585 user quotas if the user belongs to multiple groups.
587 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
588 restrict the available space to 2GB. this is for macs running
589 older versions of the operating system with newer versions of the
590 appleshare client. weird huh?
592 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
593 don't get promoted in the same way as arithmetic operations. added
594 some more casts to deal with that issue.
596 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
598 * man/man?/Makefile: don't re-build .tmp files if they already
599 exist. this gets the install phase to work correctly.
601 1999-08-13 a sun <asun@hecate.darksunrising.blah>
603 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
604 AFPERR_PARAM. also, reject names with /'s in them if the nohex
607 1999-08-12 a sun <asun@hecate.darksunrising.blah>
609 * etc/afpd/filedir.c,file.c,directory.c: changed error for
610 illegal filenames to AFPERR_EXIST.
612 1999-08-11 a sun <asun@hecate.darksunrising.blah>
614 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
615 .Parent files are no longer valid file names.
617 * etc/afpd/volume.c (volset): added usedots and nohex as
618 options. usedots stops :hex translation of . files while nohex
619 stops :hex translation of everything but . files. in addition,
620 . files created on the unix side are by default hidden.
622 * libatalk/adouble/ad_open.c: initialize more bits.
624 1999-08-10 a sun <asun@hecate.darksunrising.blah>
626 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
627 actual name for nbp registration rather than ATALK_NAME.
629 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
630 get used when building the kernel module.
632 * sys/solaris: changed strings.h to string.h
634 1999-08-08 a sun <asun@hecate.darksunrising.blah>
636 * etc/afpd/volume.c (readvolfile): changed volume options into an
637 array of structs to ease maintenance.
639 1999-08-05 a sun <asun@hecate.darksunrising.blah>
641 * etc/afpd/status.c (status_init): change the default icon
642 depending upon whether or not it's an ASIP or an AppleTalk
645 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
647 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
648 little more informative.
650 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
652 * yippee. someone figured what was happening with the installation
653 of the man pages. i got rid of a duplicate entry.
655 1999-08-02 a sun <asun@hecate.darksunrising.blah>
657 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
658 default options. it keys in on a :DEFAULT: label.
660 1999-07-30 a sun <asun@hecate.darksunrising.blah>
662 * moved rc.atalk.* scripts to distrib/initscripts.
664 1999-07-27 a sun <asun@hecate.darksunrising.blah>
666 * contrib/printing: added patch from job@uchicago.edu
668 * etc/afpd/file.c: forgot to initialize struct ad in
671 * etc/afpd/nls/makecode.c: added an empty mapping.
673 * etc/psf/Makefile (install): well cp -d didn't work either. just
676 1999-07-26 a sun <asun@hecate.darksunrising.blah>
678 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
679 (from denny@geekworld.com).
681 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
682 and patch files from inoue.
684 * sys/linux/Makefile (install-sysv): fixed up a bit.
686 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
689 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
690 of -icon. now it means to use the yucky bitmap instead of the
693 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
696 1999-07-18 a sun <asun@hecate.darksunrising.blah>
698 * create links/mangle files in the compile rather than the install
699 phase so that rpm will be happier.
701 1999-07-17 a sun <asun@hecate.darksunrising.blah>
703 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
704 filedir.c (afp_rename, afp_moveandrename): don't allow the
705 creation/renaming of names with certain characters if mswindows
706 compatibility is enabled.
708 1999-07-16 a sun <asun@hecate.darksunrising.blah>
710 * rc.atalk.redhat: incorporated chkconfig from inoue.
712 1999-07-15 a sun <asun@hecate.darksunrising.blah>
714 * etc/atalkd/config.c (getifconf): wrap check against
715 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
717 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
719 1999-07-11 a sun <asun@hecate.darksunrising.blah>
721 * contrib/ICDumpSuffixMap: added internet config perl script from
724 * contrib/printing: added contributed solaris printing scripts
725 from job@uchicago.edu.
727 1999-07-10 a sun <asun@hecate.darksunrising.blah>
729 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
731 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
733 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
736 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
738 1999-07-08 a sun <asun@hecate.darksunrising.blah>
740 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
741 address already exists.
743 1999-07-06 a sun <asun@hecate.darksunrising.blah>
745 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
747 1999-07-05 a sun <asun@hecate.darksunrising.blah>
749 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
750 is so that we can filter by interface in the future. however, it
751 doesn't seem to work that well right now. bleah.
753 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
754 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
757 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
758 etc/papd,afpd: accept -A <ddp address> as an option so that you
759 can specify the address to be used on a multihomed server. for
760 papd, you use the 'pa' option in papd.conf.
762 1999-07-04 a sun <asun@hecate.darksunrising.blah>
764 * etc/atalkd/config.c (parseline): initialize parseline properly
765 so that we don't get extraneous junk.
767 * etc/afpd/afp_options.c (afp_options_parseline): do
768 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
770 * etc/atalkd/config.c (getifconf/readconf): check to see if the
771 supported device can support appletalk addresses. either continue
772 or exit depending upon whether or not it's auto-configed.
774 1999-07-03 a sun <asun@hecate.darksunrising.blah>
776 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
777 toggle the volume icon so that it uses the apple icon instead.
779 * etc/afpd/config.c (AFPConfigInit): added more logic for the
780 -proxy option. here are the rules: -proxy will always try to
781 create a DDP server instance. by default, the proxy server will
782 still allow you to login with an appletalk connection. to prevent
783 that, just set the uamlist to an empty string.
785 1999-07-02 a sun <asun@hecate.darksunrising.blah>
787 * etc/afpd/status.c (status_netaddress): added support for fqdn
788 (not available in the appleshare client yet).
790 1999-07-01 a sun <asun@hecate.darksunrising.blah>
792 * etc/afpd/config.c (DSIConfigInit): application code for proxy
793 setup. it's the -proxy option.
795 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
796 support for proxy setup.
798 1999-06-30 a sun <asun@hecate.darksunrising.blah>
800 * etc/afpd/filedir.c (afp_rename): fixed up some error
801 codes. quark express should be happier.
803 * etc/afpd/uam.c (uam_afpserver_option): added
804 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
805 report that setting that fixes pam on solaris machines.
807 1999-06-28 a sun <asun@hecate.darksunrising.blah>
809 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
811 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
813 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
815 * etc/afpd/fork.c (afp_write): fixed up error condition.
817 1999-06-26 a sun <asun@hecate.darksunrising.blah>
819 * etc/uams/Makefile (install): changed install location of uams.
821 * sys/linux/Makefile (install-sysv): always install redhat
822 script. netatalk.config script only gets installed if it's not
825 1999-06-23 a sun <asun@hecate.darksunrising.blah>
827 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
829 * etc/afpd/afp_options.c (afp_options_init): changed default
832 1999-06-22 a sun <asun@hecate.darksunrising.blah>
834 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
835 just the server name here.
837 * etc/afpd/volume.c (volxlate): made $s return something
838 meaningful no matter what.
840 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
843 1999-06-20 a sun <asun@hecate.darksunrising.blah>
845 * etc/afpd/volume.c (volxlate): added variable substitution. if it
846 doesn't understand the variable, it just spits it back out.
848 (creatvol): display truncated volume name if it's too long.
850 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
851 with oses that have -lcrypt but shouldn't use it.
853 1999-06-11 a sun <asun@hecate.darksunrising.blah>
855 * include/atalk/afp.h: added comments to FPErrors.
857 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
860 * include/atalk/util.h: server_lock() returns pid_t.
862 1999-06-10 a sun <asun@hecate.darksunrising.blah>
864 * README.ASUN: added location for both ssleay and openssl.
866 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
867 server." in the future, there will be "uamc_*." changed the shared
868 library names to match.
870 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
872 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
875 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
878 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
879 type field. do type check.
881 * etc/uams/uam_*pam.c: added a couple more error codes.
883 1999-06-08 a sun <asun@hecate.darksunrising.blah>
885 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
886 codepage.h gets made.
888 * libatalk/*/Makefile: make sure that the profiled directory gets
891 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
892 that was causing mapname to fail.
894 1999-06-07 a sun <asun@hecate.darksunrising.blah>
896 * etc/atalkd/main.c (main): added a note to check the syslog if
897 atalkd can't be setup.
899 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
900 auto-detected #defines.
902 1999-06-06 a sun <asun@hecate.darksunrising.blah>
904 * etc/afpd/fork.c (afp_write): argh. i moved things around a
905 little too much and ended up with an uninitialized eid. strangely,
906 the compiler didn't complain. simplified bits a little as
907 well. also, FPWrite was returning the wrong error messages. on
908 64-bit filesystems, the offset can wraparound. so, report a disk
909 full error if that's going to happen. egcs-19990602 gets one
910 memcpy right and another wrong on my udb. bleah.
912 (afp_read): fixed the error messages here as well.
914 1999-06-05 a sun <asun@hecate.darksunrising.blah>
916 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
917 some links on the fly if they're missing.
919 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
920 re-arranged a little.
922 1999-06-04 a sun <asun@hecate.darksunrising.blah>
924 * etc/afpd: prototyped everything here and moved the FP functions
927 * libatalk/util/bprint.c: moved all of the bprints to here.
929 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
931 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
933 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
936 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
939 * bin/afppasswd/afppasswd.c: added -a option so that root can add
940 new users. turned all of the options into bits. added newlines to
943 1999-06-03 a sun <asun@hecate.darksunrising.blah>
945 * sys/freebsd/Makefile: turn on sendfile support if running on a
948 1999-06-02 a sun <asun@hecate.darksunrising.blah>
950 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
951 conversation function.
953 * sys/*/Makefile: check at make time to see if -lrpcsvc and
954 -lcrypt should be included in the appropriate places.
956 1999-05-28 a sun <asun@hecate.darksunrising.blah>
958 * etc/afpd/file.c (deletefile): added more error checking here as
961 * etc/afpd/directory.c (renamedir): added a couple a few more
964 * sys/sunos/Makefile: sunos should really work now.
966 1999-05-27 a sun <asun@hecate.darksunrising.blah>
968 * include/atalk/afp.h: added in a couple new error codes (one
969 deals with password setting policy, the other with maximum logins
972 * etc/afpd/fork.c (afp_openfork): try to re-open files on
973 read-only volumes as read-only.
975 1999-05-26 a sun <asun@hecate.darksunrising.blah>
977 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
978 uname -p. other oses seem to use uname -m for the same information.
980 * etc/uams/uam_pam.c (pam_changepw): added check for same
983 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
984 same password checks.
986 * sys/osx/Makefile: moved the os x server stuff into its own build
989 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
990 and MACHINETYPE for some stuff.
992 1999-05-25 a sun <asun@hecate.darksunrising.blah>
994 * sys/sunos/Makefile: various bits to make stuff work with sunos
997 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
999 * etc/afpd/file.c (copyfile): only copy the header file if newname
1002 * etc/afpd/directory.c (copydir): make sure to balk if the
1003 directory already exists. in addition, make sure to preserve the
1006 1999-05-24 a sun <asun@hecate.darksunrising.blah>
1008 * bin/afppasswd/afppasswd.c: global password updating utility for
1009 the randnum authentication method.
1011 1999-05-22 a sun <asun@hecate.darksunrising.blah>
1013 * etc/uams/uam_randnum.c (afppasswd): added in global password
1014 file for the randnum authentication method. it looks for a .key
1015 file as well to handle encryption.
1017 * etc/afpd/afp_options.c (afp_options_parseline): added
1018 -passwdfile as an option so that you can specify a global randnum
1019 password file if desired.
1021 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
1022 as an AppleVolumes.* option. if the user is in the rolist, the
1023 volume gets set as readonly. if there's a rwlist, and the user
1024 isn't in it, the volume also gets set as readonly.
1026 1999-05-21 a sun <asun@hecate.darksunrising.blah>
1028 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
1029 can't allocate the reference counting variable.
1031 * etc/uams/uam_*.c: make sure that uam_setup returns an error
1034 1999-05-19 a sun <asun@hecate.darksunrising.blah>
1036 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
1037 /var/run as the lock file directory.
1039 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
1040 a problem with FPWrite getting a request count of 0. that's
1043 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
1044 load itself from a shared library. i've compensated by linking it
1047 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
1048 still screwy with the dhx_pam stuff though.
1050 1999-05-18 a sun <asun@hecate.darksunrising.blah>
1052 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
1053 username to fit what's in pw->pw_name if necessary.
1055 1999-05-16 a sun <asun@hecate.darksunrising.blah>
1057 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
1058 authentication method. i'm still missing a little info to get it
1061 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
1062 create it from the unix name.
1064 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
1065 and fdType into strings.
1067 1999-05-16 a sun <asun@pelvetia>
1069 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
1070 little. now, you pass in an int * if you want to either get/set
1071 the size of the option. added in UAM_OPTION_RANDNUM for generic
1072 (4-byte granularity) random number generation.
1074 * etc/afpd/switch.c: added afp_logout to preauth_switch.
1076 1999-05-15 a sun <asun@hecate.darksunrising.blah>
1078 * bin/megatron/macbin.c (bin_open): make error message for
1079 macbinary files more informative.
1081 (test_header): added more macbinary tests. it now has a workaround
1082 for apple's incorrectly generated macbinary files.
1084 1999-05-14 a sun <asun@hecate.darksunrising.blah>
1086 * sys/solaris/Makefile: added shared library generation bits.
1088 * etc/uams: moved server-side uams here.
1090 * include/netatalk/endian.h: fixed some solaris bits.
1092 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
1093 do an atp_close and free the asp object. oh yeah, as afpd needs
1094 to export symbols to its modules, make sure you don't do anything
1095 more exciting than strip --strip-debug with it.
1097 1999-05-12 a sun <asun@hecate.darksunrising.blah>
1099 * various places that use sigaction: zero out struct sigaction so
1100 that we don't send something confusing. also make sure that we
1101 don't set a timer unless we already have a sigaction set.
1103 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
1104 empty resource fork read-only. also, added back in the bit of code
1105 that prevented locks from being attempted on non-existent resource
1108 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
1111 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
1114 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
1115 convert this over to use by the netddp interface.
1117 1999-05-12 a sun <asun@pelvetia>
1119 * etc/afpd/uam.c: os x server's runtime library loader is
1120 braindead. as a result, i've switched to using an exported struct
1121 with the uam's name.
1123 * bin/aecho,getzones: changed these to use the netddp interface.
1125 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1127 * libatalk/netddp: abstracted the ddp interface to netddp. besides
1128 the prior socket-driven interface, there's now an os x server
1129 interface. so, instead of calling socket/sendto/recvfrom, you call
1130 netddp_open/netddp_sendto/netddp_recvfrom.
1132 1999-05-11 a sun <asun@pelvetia>
1134 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1137 * etc/atalkd/main.c (main): make sure that if -dontroute is
1138 selected for all but one interface, that interface also gets
1141 1999-05-10 a sun <asun@hecate.darksunrising.blah>
1143 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1144 smaller than it used to be.
1146 1999-05-09 a sun <asun@hecate.darksunrising.blah>
1148 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1149 uam_randnum.c: uam modules. these should probably be moved out of
1150 afpd (and into something like etc/uam_server) when the printing
1151 stuff gets uam support.
1153 1999-05-08 a sun <asun@hecate.darksunrising.blah>
1155 * etc/afpd/uam.c: interface to user authentication modules.
1156 it should eventually be moved to libatalk, but that's not
1157 necessary until the printing uam stuff is done. everything is from
1158 the server-side perspective, but that's only because there aren't
1159 any client-side uses right now.
1161 * libatalk/util/module.c: generic interface to run-time library
1162 loading functions. right now, the dlfcn family and os x server's
1163 NS-style way of doing things are the ones understood. in addition,
1164 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1166 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1167 write part of write continuations.
1169 1999-05-07 a sun <asun@hecate.darksunrising.blah>
1171 * etc/atalkd: added the ability to turn off routing for particular
1172 interfaces. specify -dontroute for each interface that you don't
1175 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1177 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1178 using obj->username.
1180 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1182 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1183 forever if there's a problem while it's being used. that's fixed.
1185 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1187 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1188 so that renaming a directory works across filesystems.
1190 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1192 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1193 what's stored in the header file.
1195 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1196 afpd.conf more understandable.
1198 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1199 endian converted. that's fixed.
1201 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1202 necessarily ORable, so use ADLOCK_RD/WR instead.
1204 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1205 unlock accidentally getting the data fork locks.
1207 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1209 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1212 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1214 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1215 turned the mmapped header stuff into and #ifdef
1216 USE_MMAPPED_HEADERS option.
1218 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1219 the hfs fs doesn't currently have mmappable header files. rather
1220 than implement that, i just reverted back to a modified version
1221 of the old way of reading headers.
1223 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1225 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1228 (afp_openfork): deal with read-only data forks that don't have
1229 corresponding .AppleDouble files. we can't really do anything with
1230 deny locks in this case. just make sure that read locks are set.
1232 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1233 around FILPBIT_FINFO.
1235 * etc/afpd/fork.c (afp_read): as we share open files now, check
1236 for fork type against of_flags instead of just checking to see if
1237 the file is open. this fixes a bug that caused resource forks to
1238 get filled with data fork information.
1240 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1242 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1245 1999-04-09 a sun <asun@mead1.u.washington.edu>
1247 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1250 1999-04-09 a sun <asun@saul6.u.washington.edu>
1252 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1253 with quota support enabled.
1255 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1257 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1258 config/AppleVolumes.default: added read-only volume option.
1260 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1263 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1265 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1266 (from <jk@espy.org>).
1267 (bin_header_write/read): fixed up screwed up file date
1268 generation/reading with macbinary files.
1270 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1271 memcpy/memset/memcmp's. added macbinary III support.
1273 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1274 that we can stream macbinary file creation to stdout.
1276 * bin/megatron/megatron.c: incorporated information patch (--header
1277 and --macheader) from <fmorton@base2inc.com>.
1280 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1282 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1285 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1286 dummy ints for some of the files that can get compiled to empty
1287 objects. check for the type of msync() available as well.
1289 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1291 * INSTALL/README.GENERIC: added information for a generic
1292 architecture. It includes the information needed to get netatalk
1293 to compile on a random unix platform.
1295 * etc/afpd/quota.c: moved the quota stuff here so that we can
1296 #ifdef it out on a machine without quota support.
1298 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1300 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1301 well. this prevents multiple read locks on the same byte range
1302 from disappearing if one user disappears.
1304 (ad_fcntl_lock): here are the current rules for file
1306 1) if there's a appledouble header, we use the beginning
1307 of that for both data and resource forks.
1308 2) if there isn't, we use the end of the data fork (or past the
1309 end on 64-bit machines)
1311 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1313 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1314 appledouble entry parts is done.
1316 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1319 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1321 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1322 appledouble header parsing more generic so that we can read in
1323 arbitrary appledouble header files. i just mmap the parts that we
1326 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1328 * etc/afpd/file.c (afp_copyfile): return the correct error
1329 response on a failed copy. also, error if the file is already open
1330 to prevent problems with locks. we really need to ad_lock
1331 this during the copy
1333 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1335 * etc/afpd/volume.c (readvolfile): switched volume options to
1336 using ':' as a delimiter as that's one of the characters that's
1337 not allowed as part of a mac filename.
1338 (volset): changed access to allow/deny
1340 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1343 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1345 * NOTE to myself: jeremy allison said that samba uses refcounts to
1346 prevent close() from killing all the byte locks. so, i've started
1347 converting afpd to using refcounting as well. luckily, we already
1348 have of_findname, so we know when files are open. in cases where
1349 files are already open, this will replace an ad_open with a lookup
1352 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1353 NULL names when getting directory/file names.
1355 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1356 sure these are always in network byte order.
1358 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1360 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1361 synchronization bits. now, we use two bytes to do the read/write
1362 stuff. when access is needed, a read lock is attempted. if a deny
1363 lock is needed, a write lock is attempted. we even handle the
1364 access None mode now by saving the access modes.
1366 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1367 we can obey all of the file synchronization rules.
1369 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1370 reversed. with helios lantest's lock/unlock 4000 times test, it
1371 looks like i get <1 second overhead on my machine when using byte
1372 locks. NOTE: this will get a little worse when serialization gets
1373 added. in addition, 0x80000000 only works for 64-bit machines. i
1374 reserve the last allowable bit for 32-bit machines.
1376 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1377 now as i'm able to trigger a kernel oops in linux with the 64-bit
1380 (afp_read/afp_write): make sure to use the same offset when doing
1383 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1385 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1386 stuff to get byte locks to work correctly (except for the
1387 serialization) only to discover that files that use byte locks
1388 also request a deny write mode. luckily, byte locks only cover up
1389 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1390 synchronization locks.
1392 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1394 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1395 DEPS with double quotes so that multiple defines work.
1397 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1399 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1401 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1402 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1403 programs on the same machine opening the same file. current
1404 problems with the mechanism that i don't want to fix unless
1406 1) there's a race during the relock phase. serialization
1408 2) it assumes that each fd only locks a single contiguous
1409 range at a time. keeping a list of locked ranges would
1412 also, i changed the default to using fcntl locks. if the above two
1413 are really necessary, i'll probably switch to something a little
1414 more featureful like the berkeley db's lock manager.
1416 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1418 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1420 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1421 reduce system calls a little.
1423 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1426 * sys/solaris/Makefile: added 64-bit solaris patch from
1427 <jason@pattosoft.com.au>.
1429 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1431 * include/netatalk/endian.h: make solaris 2.5 complain less.
1433 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1434 fixed a couple problems with the adv1tov2 stuff.
1436 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1438 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1439 aligned along an even boundary.
1441 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1443 * etc/afpd/volume.c (readvolfile): added volume password support.
1445 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1447 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1448 layer multicast setting bits.
1450 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1451 prodos field info when converting.
1453 * rc.atalk.redhat: added pidof checking in case the machine
1454 crashes. also added rc.atalk.wrapper to the redhat rc script
1457 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1459 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1460 error detection here and more fully report error conditions.
1462 (flushfork): make sure to flush the header if necessary (rfork
1463 length changed or modification date needs to be set).
1465 (afp_write): ugh. this wasn't returning the right values for the
1466 last byte written if the endflag was set. in addition, it was
1467 setting the modification date. that should be left to FPCloseFork
1468 and FPFlush(Fork). this fixes a problem that shows up with
1471 NOTE: as of now, changes to the rfork info are the only things
1472 that aren't flushed immediately when altered.
1474 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1475 need to report bitmap errors if we try to fiddle with the wrong
1476 fork. i added an of_flags field to keep things sorted.
1478 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1479 movement, i forgot to make sure that the pre-asun2.2.0 features
1482 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1484 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1485 old name even when it's a directory.
1487 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1488 number of buffers used. use these when needed in afp_* calls.
1490 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1491 files when deleting a directory.
1493 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1495 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1498 * fixed up a few bobbles in the netatalk-990130 merge.
1500 * the noadouble option should be pretty much implemented. here's
1502 when a directory is created, the corresponding
1503 .AppleDouble directory is not.
1505 comments, dates, and other file attributes will get
1506 silently ignored and not result in the creation of a new
1507 .AppleDouble directory.
1509 however, if anything possessing a resource fork is copied
1510 into that directory, the corresponding .AppleDouble
1511 directory will be created. once this happens, any
1512 other file in the directory can acquire an AppleDouble
1513 header file in the future.
1515 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1517 * merged in the rest of netatalk-990130.
1519 * sys/solaris: merged in netatalk-990130 changes.
1521 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1522 tested and fixed the sendfile bits on linux. it looks like linux
1523 doesn't permit socket -> file sendfiles yet.
1525 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1526 newline character checking on.
1528 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1530 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1531 operates on a per-volume basis.
1533 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1535 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1537 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1540 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1541 implemented sendfile bits. currently, there's support for linux
1542 and freebsd. unfortunately, freebsd's implementation doesn't allow
1543 file->file or socket->file copies. bleah.
1545 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1547 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1548 volume.c (volset): added in the beginnings of a NOADOUBLE option
1549 for those that don't want AppleDouble headers to be created by
1550 default. it doesn't really work that well right now.
1552 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1554 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1555 from ad_refresh. made broken v1 header checking the default. fixed
1556 broken v1 date checking. now, it just checks to see if the v1
1557 MDATE is > than st_mtime by 5 years.
1559 * etc/afpd/directory.c: make date setting alter directory dates as
1562 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1564 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1565 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1567 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1569 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1570 shift the beginning of the fake did's if necessary.
1572 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1575 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1576 changes so that the CNIDs will still work even when the .AppleDB
1577 directory is read-only. if you're still allowed to create files on
1578 these volumes, you'll get a temporary id for those.
1580 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1582 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1583 files get cleared out on cnid_close() if it's the last user for a
1586 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1588 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1589 allows us to set the backup date on the server.
1591 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1592 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1593 with FPCatSearch to do.
1595 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1597 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1600 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1602 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1603 dbpath= in AppleVolumes.* for the CNID database.
1605 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1606 appledouble v1 environment, turn on v1compat by default.
1608 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1610 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1611 to handle broken ad headers.
1613 * etc/afpd/file.c (setfilparams): we need to make sure that we
1614 flush the file if we've created it even if there's an error. the
1615 magic number/version don't get saved if we don't.
1617 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1620 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1622 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1624 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1627 * well, what do you know? the cnid stuff compiles in.
1629 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1631 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1632 enumerate.c: added in stubs for CNID database conditional on
1633 AD_VERSION > AD_VERSION1.
1635 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1637 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1639 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1640 into hex code as well.
1642 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1644 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1646 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1648 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1649 both directions so that we can recover from problems if
1652 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1654 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1655 descends a directory and converts everything it sees into
1658 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1660 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1661 header rebuilding here so that ad_refresh can use it.
1663 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1666 * bin/megatron/asingle.c: yuk. removed all of
1667 the duplicate stuff here and had it use the #defines in adouble.h.
1669 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1670 conversion routine. we still need a shortname creator and a cnid
1671 database for the v2 features to be useful.
1673 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1675 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1676 that we don't understand.
1678 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1680 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1681 stuff. also made sure to lower/upper the 8-bit characters as
1684 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1687 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1688 attribute bits are in the correct byte ordering.
1690 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1692 * etc/afpd/volume.c (volset): made prodos an option to options=
1693 flag. also added crlf as an option.
1695 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1697 (ad_open): deal correctly with 0-length files by treating them as
1700 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1701 fork.c (getforkparams), directory.c (get/setdirparams): finished
1702 adding appledouble version 1 and 2 date conversion. also added
1705 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1706 file if we needed to fiddle with it.
1708 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1709 setting/retrieval code.
1711 * libatalk/adouble/ad_open.c (ad_open): initialize date
1712 structures here instead of elsewhere.
1714 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1716 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1717 time conversion code.
1719 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1721 * etc/afpd/volume.c (volset): changed prodos setting to
1724 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1726 * etc/afpd/volume.c (volset): okay. you now have the following
1727 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1728 tolower -> lowercases everything in both directions
1729 toupper -> uppercases everything in both directions
1730 xlatelower -> client sees lowercase, server sees uppercase
1731 xlateupper -> client sees uppercase, server sees lowercase
1733 NOTE: you only should use this if you really need to do so. this
1734 and the codepage option can cause mass confusion if applied
1735 blindly to pre-existing directories.
1737 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1739 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1740 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1741 bits 2 and 3 deal with UTOM. i did it that way so that you can
1742 casefold in one direction only or in both directions if
1743 desired. needless to say, setting both bits for UTOM or MTOU
1744 doesn't make any sense. right now, toupper takes precedence in
1745 MTOU, and tolower takes precedence in UTOM.
1747 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1749 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1750 -codepagepath to the list of available options. they specify the
1751 directories to look for uam modules and codepages,
1752 respectively. currently, -uampath doesn't do anything.
1754 * etc/afpd/volume.c (readvolfile): spruced up options to
1755 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1756 utomfile=<codepage.y>, casefold=<num> for volumes.
1758 * etc/afpd/desktop.c (utompath,mtoupath): added
1759 codepage/casefolding support. casefold is currently an int that
1760 could have multiple actions. right now, i just lowercase in
1761 mtoupath and uppercase in utompath.
1763 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1764 as an additional specifier so that we don't have problems with
1765 the same path names on multiple volumes.
1767 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1769 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1772 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1774 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1775 prevent atalkd from trying to use a slave channel.
1777 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1779 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1780 icon bit by default on the root directory. that screws up pre-OS 8
1783 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1785 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1786 so that we can gracefully shut down the server side.
1788 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1789 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1790 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1791 interval an option (-tickleval <sec>).
1793 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1794 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1795 dsi_write.c both save/restore the old timer, so they don't really
1796 care what the actual value is.
1798 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1800 * due to the recent obsession with bug fixing and low-level dsi
1801 cleanups, i've decided that this should really be asun2.1.1
1802 instead of asun2.1.0a.
1804 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1806 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1807 announcement here from etc/afpd/afp_dsi.c.
1809 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1810 into here as they're pretty generic. now, the protocol specific
1811 stuff only handles open and close.
1813 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1814 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1815 added initial stubs for sendfile support. i still need to go
1816 through and calculate the appropriate offsets to use.
1818 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1819 instead of just ignoring it.
1821 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1822 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1823 dsi_read interface to return errors so that i can kill things
1826 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1828 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1829 and write() treat a return of 0 differently.
1831 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1833 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1836 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1838 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1839 to return earlier on 0-sized files.
1841 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1843 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1844 check to here from dsi_cmdreply.
1846 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1848 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1849 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1851 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1853 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1854 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1856 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1858 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1859 fixed a couple of failed realloc leaks.
1861 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1862 to deal with case-insensitive, case-preserving filesystems.
1864 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1866 * etc/afpd/auth.c: fixed randnum password changing check.
1868 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1870 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1873 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1876 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1877 prevent buffer overflows here.
1879 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1881 * sys/linux/Makefile: fixed PAM message.
1883 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1885 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1886 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1888 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1889 should check against the entire unix name.
1891 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1893 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1894 to check against mac name.
1896 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1898 * etc/afpd/auth.c (afp_changepw): make password changing deal
1899 correctly with "real" user names. also, moved seteuid() to before
1900 the pam_authenticate() bit as shadow passwords need that.
1902 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1903 name against MACFILELEN.
1905 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1907 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1908 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1909 checks. also make sure test occurs before checking to see if the
1912 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1914 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1915 forgot that password changing needs root privileges to work.
1917 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1918 incorrect. i cleaned it up a bit.
1920 * sys/linux/Makefile: fixed the installation bits.
1922 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1924 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1925 if there's a problem.
1927 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1929 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1930 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1931 that. also made sure that files > MACFILELEN never show up.
1933 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1935 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1936 spurious pointer dereference.
1938 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1939 length so that we don't need to realloc.
1941 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1942 return AFPERR_BUSY if the dest has an ofork open.
1944 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
1945 (afp_rename): return AFPERR_SAMEOBJ if source == dest
1947 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
1949 * etc/afpd: went through and looked for places that needed to use
1950 curdir instead of dir. i think i have them all right now.
1952 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
1953 curdir correctly. what this really means is that cname should be
1954 fixed to return everything it changes as opposed to changing a
1957 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
1959 * etc/afpd/config.c (configinit): do the right thing if
1960 AFPConfigInit fails.
1962 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
1964 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
1965 embarrassing. i wasn't doing refcounts correctly.
1967 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
1969 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
1972 * sys/ultrix/Makefile: ultrix understands the old rquota format.
1974 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
1975 the current directory.
1976 (of_rename): erk. changed it to handle renaming a file that has
1977 been opened multiple times.
1979 * etc/atalkd: made sure that if you don't specify -router, things
1980 are as they were before.
1982 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
1984 * etc/afpd/status.c (status_flags): forgot to turn on password
1985 setting if randnum passwords are being used.
1987 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
1989 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
1992 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
1993 from "Fred Lindberg" <lindberg@id.wustl.edu>.
1995 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
1997 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
1998 for more AFP 2.0 compliance. unfortunately, apple's appleshare
1999 client doesn't like non-fixed directory ids.
2001 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
2003 * etc/afpd/volume.c (accessvol): the accessible volume list can
2004 now be controlled by groups and usernames. just use something of
2005 the following form: @group,name,name2,@group2,name3
2007 NOTE: you can't have any spaces, and the parser forces you to
2008 include all options. in this case, there are some apple II options
2009 that need to be entered. they need to go away soon anyway.
2011 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
2012 field into a temporary buffer before calling strtok.
2014 1998-08-29 a sun <asun@hecate.darksunrising.blah>
2016 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
2017 last router on an interface goes down, we need to delete the
2018 interface's zone table.
2020 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
2022 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
2023 i've added this in to increase AFP compliance.
2025 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
2026 should make afpd compatible with OS 8.5's Nav Services.
2028 * etc/atalkd/config.c,main.c: -router now specifies router mode
2029 with any number of interfaces.
2031 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
2033 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
2034 atalkd as a single-interface router. now, you can get zones with
2035 only single interfaces! i'm only waiting on wes for the approved
2036 configuration toggle.
2038 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
2040 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
2041 ADLOCK_* into real #defines and added translations in the
2042 lock-type specific functions. this should make it easier to
2043 recompile things without screwing up.
2045 1998-08-26 a sun <asun@hecate.darksunrising.blah>
2047 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
2050 1998-08-25 a sun <asun@hecate.darksunrising.blah>
2052 * etc/afpd/status.c (status_server): changed status_server to
2053 use only the obj part of obj:type@zone-style names.
2055 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
2056 zones properly. it was matching on anything but the actual zone.
2058 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
2060 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
2061 that solaris' pam session setup doesn't crap out.
2063 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
2065 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
2066 with zip multicast info.
2068 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
2070 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
2071 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
2072 <sys/time.h> for ultrix breakage.
2074 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
2076 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
2077 knew that speeding up of_findname would be useful. in any case, i
2078 discovered the source of yet another small AFP non-compliance that
2079 was confusing WordPerfect. on an afp_rename, we also need to
2080 rename the corresponding ofork. i've added an of_rename() to do
2083 1998-08-13 a sun <asun@hecate>
2085 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
2086 sticking refnum in ofork.
2088 1998-08-12 a sun <asun@hecate>
2090 * etc/afpd/fork.c (afp_openfork): added already open attribute
2093 * etc/afpd/ofork.c: added a hashed of_findname.
2095 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
2097 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
2098 forks from read-only non-appledouble media.
2100 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
2102 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
2103 (getvolspace): modified them to treak afs like the other
2104 getvolspaces w.r.t. VolSpace.
2106 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
2108 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
2109 used for filesystems. nfs quotas sometimes failed as a
2110 result. that's fixed now.
2112 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
2114 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
2115 it's simple to run the server process as a non-root user.
2117 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
2119 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
2120 out that i was opening lots of sockets with callaurpc. now, the
2121 socket gets saved and reused.
2123 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2124 for rquota's bsize. unless fixed, rquota will report incorrect
2127 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
2129 * etc/afpd/uam/README: added some preliminary ideas on a
2130 plug-in uam architecture. in addition, this should allow arbitrary
2131 afp function replacement. eventually, auth.c should get a
2134 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
2136 * etc/afpd/nfsquota.c: added headers and redefined a couple
2137 structure fields so that sunos4 compiles.
2139 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2140 2. this should get redhat 4.2 machines. NOTE: they're still
2141 missing librpcsvc.a, so they'll need to remove that from the
2144 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
2146 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2147 missing a couple functions needed for rquota support. here they
2150 * etc/afpd/unix.c (mountp): fixed the nfs detection for
2151 solaris. we still need bsd and ultrix.
2153 1998-07-05 a sun <asun@hecate>
2155 * include/atalk/adouble.h: marked out space for appledouble v2.
2157 1998-07-04 a sun <asun@hecate>
2159 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2160 get negative numbers for length fields and such.
2162 1998-07-04 a sun <asun@hecate>
2164 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2165 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2166 provided the initial bits from the bsd quota program.
2168 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2169 getnfsquota depending upon the type of fs.
2171 * etc/afpd/unix.c (mountp/special): munged mountp and
2172 special to return either the nfs mount point or the fs
2173 device. set the vol->v_nfs flag if it's nfs.
2175 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2176 honor results returned from uquota_getvolspace.
2178 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2180 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2181 multiple copies. as that's not the case here, i've reverted to
2182 just doing read + write.
2184 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2186 * sys/linux/Makefile: fixed the redhat-style atalk
2187 installation. also, it doesn't over-write an existing
2188 /etc/rc.d/init.d/atalk file.
2190 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2191 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2193 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2195 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2196 script instead of the bsd one.
2198 * include/atalk/adouble.h: moved same-name list stub to struct
2201 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2203 * changed to asunx.y.z notation as i was getting tired of
2204 increasing numbers. as this version is undergoing a fairly
2205 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2206 never existed. i just started at 2.0.
2208 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2209 for hashed-by-name oforks and oforks which group by name to help
2210 with byte locks and of_findname.
2212 * adouble (include/atalk/adouble.h): started implementing
2213 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2214 bits that should make prodos support much less clunky, allow
2215 persistent dids, and allow msdos support.
2217 * finder info: added bits to directory.c and file.c describing the
2218 actual contents of finder info (from IM: Toolbox
2219 Essentials). also, set default directory view to an allowed value
2220 thanks to a suggestion from the appledouble v2 specs. that should
2221 help with read-only media.
2223 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2224 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2227 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2229 * well, i'm starting a changelog as i keep forgetting what i've
2232 * locks: revamped them to be more in line with what should
2233 happen. currently, i've reverted back to flock-style locks as i'll
2234 need to stick in more code to get fcntl-style locks to work
2235 properly. specifically, i think modifying of_alloc/of_dealloc to
2236 keep track of locks, fds, and names should solve the problem with
2237 fcntl locks being process-specific and not fd specific.