2 2001-08-14 jeff b <jeff@univrel.pr.uconn.edu>
4 * acconfig.h, configure.in, etc/afpd/directory.c,
5 etc/afpd/enumerate.c, etc/afpd/file.c, etc/afpd/file.h,
6 etc/afpd/filedir.c, etc/afpd/fork.c, etc/afpd/volume.c,
7 etc/afpd/volume.h, libatalk/Makefile.am,
8 libatalk/cnid/cnid_add.c, libatalk/cnid/cnid_close.c,
9 libatalk/cnid/cnid_delete.c, libatalk/cnid/cnid_lookup.c,
10 libatalk/cnid/cnid_nextid.c, libatalk/cnid/cnid_open.c,
11 libatalk/cnid/cnid_private.h, libatalk/cnid/cnid_update.c:
12 DID database and reincluding libatalk/cnid back into
13 compiled tree (Uwe Hees)
15 * libatalk/cnid/.cvsignore: updated .cvsignore list for
18 2001-08-09 Sam Noble <ns@shadow.org>
20 * configure.in, acconfig.h: Merged a patch from meeroh@mit.edu
21 to fix the kerberos uam build process.
23 2001-08-08 jeff b <jeff@univrel.pr.uconn.edu>
25 * etc/papd/session.c: prevents papd client from aborting
26 during the submission of a print job, therefore preventing
27 the job from hanging on the Mac (Michael Boers)
29 2001-07-10 Lance Levsen <lance@iworks.pwgroup.ca>
31 * man/man8/papd.8.tmpl: Fixed ftp URI for Adobe's PPD files.
33 2001-06-30 andy m <morgan@orst.edu>
35 * etc/papd/ppd.c: "unquote" ppd values by removing leading
36 and trailing quote character. This should fix bug #426141.
38 2001-06-27 jeff b <jeff@univrel.pr.uconn.edu>
40 * many, many, files: more malformed ifdef correction, nicer
41 comments, etc, etc, etc (Jeff)
43 * etc/afpd/directory.c, etc/afpd/uid.c, etc/afpd/uid.h: fixes
44 for force-uidgid to compile properly. haven't tested it, but
45 no more compile errors. (Jeff)
47 2001-06-27 uwe hees <hees@viva.de>
49 * etc/uams/uams_guest.c: fixed a typo.
51 2001-06-26 andy m <morgan@orst.edu>
53 * etc/papd/file.c: modified markline() to return 1 instead
54 of *linelength for successful completion. This should fix
55 the remaining binary printing problems in papd. Thanks go
56 out to Dave Arnold <darn0ld@home.com> for getting me thinking
57 about the markline function.
59 2001-06-25 jeff b <jeff@univrel.pr.uconn.edu>
61 * etc/afpd/auth.c, etc/afpd/main.c, etc/afpd/uam.c,
62 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c,
63 include/atalk/uam.h: TRU64 authentication patch to allow
64 any security scheme to be used on the TRU64 side (Burkhard
67 * etc/afpd/uam.c, etc/papd/uam.c: fixed DISABLE_SHELLCHECK
68 support in both afpd and papd (Jason Keltz <jas@cs.yorku.ca>)
70 * etc/*/*.{c,h}: corrected malformed defines, nicer comments,
73 2001-06-20 jeff b <jeff@univrel.pr.uconn.edu>
75 * configure.in: check for linux/quota.h before enabling
76 QUOTACTL_WRAPPER (Joe Clarke)
78 * acconfig.h, configure.in, include/atalk/util.h,
79 libatalk/util/module.c: removed NO_DLFCN_H in favor of
80 ifndef HAVE_DLFCN_H (Jeff)
82 * configure.in, etc/afpd/*.{c,h}, include/atalk/util.h:
83 major autoconf fixes for afpd, nicer commenting, etc (Jeff)
85 2001-06-19 jeff b <jeff@univrel.pr.uconn.edu>
87 * etc/afpd/file.c, etc/afpd/parse_mtab.c, etc/afpd/parse_mtab.h,
88 etc/atalkd/route.h, etc/atalkd/rtmp.c, etc/papd/headers.c,
89 etc/papd/magics.c, libatalk/asp/asp_tickle.c: patch for
90 fixed DID calculation in etc/afpd/file.c, FreeBSD errors and
91 other miscellany (Joe Clarke)
93 * minor patches and fixes to the aforementioned files, warning
94 fixes with GCC, etc (Jeff)
96 2001-06-18 jeff b <jeff@univrel.pr.uconn.edu>
98 * configure.in, etc/uams/Makefile.am,
99 etc/uams/uams_krb4/Makefile.am: patch #433952 from Sebastian
100 Rittau to move UAM authentication to use libtool
102 * configure.in, bin/afppasswd/Makefile.am, config/Makefile.am,
103 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
104 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
105 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
106 man/man5/Makefile.am, man/man8/Makefile.am: patch #433906
107 to move to pkgconfdir for package config files (Sebastian Rittau)
109 * configure.in: fixed error that caused --with-did not to function
112 2001-06-13 Sam Noble <ns@shadow.org>
114 * etc/papd/{printcap,ppd,lp,file,comment}.h:
115 added #include <sys/cdefs.h> to these headers so that __P gets
116 properly defined on platforms like TRU64
118 2001-06-11 jeff b <jeff@univrel.pr.uconn.edu>
120 * configure.in, include/atalk/adouble.h, libatalk/compat/flock.c:
121 patch #431859 to avoid ucbinclude on Solaris, with flock support,
122 thanks to Russ Allbery (rra@users.sourceforge.net)
124 * acconfig.h, configure.in, libatalk/util/server_child.c,
125 libatalk/util/server_lock.c, sys/netatalk/endian.h: patch #432052
126 for portability to IRIX, HP-UX, and AIX (Russ Allbery)
128 * etc/afpd/nls/makecode.c: patch #432137 to add codepage mapping
129 support for (C), (TM) and other characters to avoid losing them,
130 submitted by Andre Schild (aschild@users.sourceforge.net)
132 * configure.in: set sysconfdir as /etc/netatalk by default, and
133 uams path now pulls from sysconfdir instead of config_dir
136 2001-06-07 jeff b <jeff@univrel.pr.uconn.edu>
138 * configure.in, bin/afppasswd/Makefile.am,
139 contrib/shell_utils/Makefile.am, distrib/initscripts/Makefile.am,
140 etc/afpd/Makefile.am, etc/afpd/nls/Makefile.am,
141 etc/atalkd/Makefile.am, etc/papd/Makefile.am,
142 man/man5/Makefile, man/man8/Makefile.am: patch #422872 from
143 Sebastian Rittau to move from CONFIG_DIR to sysconfdir
145 * etc/psf/Makefile.am, sys/solaris/Makefile: additional removal
146 of CONFIG_DIR in favor of sysconfdir, plus patch #422860 from
147 Sebastian Rittau to correct other problems
149 * config/Makefile.am, config/netatalk.pamd: patch #422856 from
150 Sebastian Rittau, moving to pam_unix.so and being more proper
152 * etc/afpd/Makefile.am, etc/afpd/main.c: added support for
153 ${sysconfdir}/afpd.mtab to be read into memory, so that mtab
154 DID support actually works...
156 2001-06-06 jeff b <jeff@univrel.pr.uconn.edu>
158 * etc/afpd/filedir.c, etc/afpd/unix.c: fixed dropkludge code
159 so that it properly compiles again, along with minor warning
162 2001-06-05 Dan L. (pooba53)
164 * Modified configure.in so references made to $ac_prefix_default
165 listed at the beginning are correct. The previous references were
166 being made to $ac_default_prefix.
168 2001-06-04 jeff b <jeff@univrel.pr.uconn.edu>
170 * doc/README.TRU64: details about tru64 installations, from
171 Edmund Lam <epl@unimelb.edu.au>
173 * etc/afpd/fork.c: implemented Sebastian Rittau's change to
174 avoid overwriting AppleDouble headers (finally)
176 * configure.in, etc/afpd/enumerate.c, etc/afpd/parse_mtab.c:
177 added initial support for mtab DID format. removed "lastdid"
178 configure option in favor of --with-did={last,mtab}
180 2001-06-01 jeff b <jeff@univrel.pr.uconn.edu>
181 * etc/afpd/quota.c: fix for Linux compile by Sam Noble
184 2001-05-25 jeff b <jeff@univrel.pr.uconn.edu>
185 * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
186 Schmidt <bs@cpfs.mpg.de>
188 * configure.in, contrib/shell_utils/Makefile.am,
189 contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
190 doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
191 etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
192 etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
193 code from Bob Rogers to generate more persistant DIDs
195 2001-05-22 jeff b <jeff@univrel.pr.uconn.edu>
196 * configure.in, etc/afpd/unix.h: more portability fixes, and
197 integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
199 * configure.in, bin/megatron/Makefile.am,
200 distrib/initscripts/Makefile.am, etc/afpd/main.c,
201 etc/afpd/quota.c, etc/afpd/unix.h,
202 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
203 round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
205 2001-05-09 jeff b <jeff@univrel.pr.uconn.edu>
206 * autogen.sh: added automake --include-deps to autogen.sh to
207 promote more portable Makefiles (thanks to Christian
208 Weisgerber <naddy@mips.inka.de> from OpenBSD)
210 2001-05-08 jeff b <jeff@univrel.pr.uconn.edu>
212 * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
213 from Olaf Hering <olh@suse.de>
215 * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
218 2001-05-07 jeff b <jeff@univrel.pr.uconn.edu>
220 * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
223 * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
224 Schmidt <bs@cpfs.mpg.de> to fix typos
226 2001-05-03 jeff b <jeff@univrel.pr.uconn.edu>
228 * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
229 etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
231 * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
232 moving to autodetected HAVE_*_H from autoconf script
234 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
236 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
237 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
238 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
239 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
240 <srittau@users.sourceforge.net> (#420300)
242 * bin/afile/*: replacement for old restrictive afile from Sebastian
243 Rittau <srittau@users.sourceforge.net> (#420302)
245 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
246 stop messages to the redhat initscript. nbpregister and unregister
247 messages are also displayed. This patch also permits spaces in zone
248 and machine names to be used in the variables. From Ryan Cleary
249 <tryanc@users.sourceforge.net> (#418094)
251 * bin/megatron/Makefile.am: patch to properly create links for
252 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
255 2001-04-25 morgan a <morgan@orst.edu>
257 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
258 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
259 were being logged and scaring users. :)
261 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
263 * configure.in: fixed problem with tcp_wrappers support; it needed to
266 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
268 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
269 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
270 be used for everything
272 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
274 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
275 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
276 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
277 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
280 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
284 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
286 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
287 Kelitz (jkeltz) to allow disabling of shell checking
289 * configure.in, contrib/Makefile.am: made timelord compilation
290 optional, disabled by default
292 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
294 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
295 at Apple, fixing server disconnect problem upon afp_createid() call
297 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
299 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
300 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
302 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
304 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
305 Noble <ns@shadow.org>
307 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
308 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
309 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
310 Akop Pogosian <akopps@csua.berkeley.edu>
312 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
314 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
315 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
316 "-L$ssldir/lib" in configure.
318 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
320 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
321 Rey <jprey@ads.ecp.fr>
323 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
325 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
326 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
328 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
330 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
331 Linux 2.0.x builds (Patch #408256)
333 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
334 to fix deleting/emptying trash problems (Patch #408218)
336 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
338 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
339 which was causing file creation problems
341 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
343 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
344 build, most notably paths, and reference to lp2pap.sh in the wrong
347 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
351 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
352 updated for 1.5pre5 release
354 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
356 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
357 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
359 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
361 * ChangeLog: started using timestamps in ChangeLog
363 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
364 (thanks to Sebastian Rittau)
366 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
368 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
369 docs/, where they should be.
371 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
373 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
376 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
378 * TODO: A few updates to papd entry.
380 * README.MORGAN: Removed README.MORGAN because that information in
381 now in papd's man page.
383 * man/man8/papd.8.tmpl: Updated papd man page to match current
384 code. Added descriptions of authenticated printing and other new
387 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
389 * libatalk/adouble/ad_open.c: AppleDouble directory creation
392 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
394 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
395 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
396 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
397 "dropbox" to available option if DROPKLUDGE is used during
400 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
402 * README: updated 1.5+ install instructions to include list of
403 required and recommended packages
405 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
407 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
408 all of the defines in the codebase
410 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
411 patch made with syslog()'s didn't include any brackets)
414 * distrib/initscripts/.cvsignore: removed pulling of atalk
416 * configure.in, etc/uams/Makefile.am: conditional compilation support
417 for PGP UAM module using --enable-pgp-uam
419 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
420 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
421 for future Kerberos module reintegration
423 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
425 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
426 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
428 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
429 instead of dumping out if appletalk module not present, from
430 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
432 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
433 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
434 suitable configure.in fixes
436 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
438 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
439 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
440 broken codepage support.
442 * ChangeLog: started updaing ChangeLog with important patch/fix
443 information, as it is *never* up to date.
445 * configure.in, acconfig.h: implemented AFS configuration option
446 patch from Wes Hardaker <hardaker@users.sourceforge.net>
448 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
451 * autogen.sh: make libtoolize copy instead of linking files to
452 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
454 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
457 - Debian packaging in tree
458 - Numerous Makefile/build fixes
459 - .cvsignore implemented
460 - Solaris build fixes
462 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
464 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
465 uid/gid per volume for afpd
467 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
469 * etc/afpd/volume.c (setvoltime): fix for multiple clients
470 writing to same volume.
472 2000-02-28 a sun <asun@asun.cobalt.com>
474 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
477 2000-02-23 a sun <asun@asun.cobalt.com>
479 * etc/afpd/volume.c (creatvol): / is a special case. you can't
480 share it unless you give it a name.
482 2000-02-21 a sun <asun@asun.cobalt.com>
484 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
485 make redhat 6.x happier.
487 2000-02-17 a sun <asun@asun.cobalt.com>
489 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
490 lock removal. this + the log right below fix ragtime.
492 2000-02-16 a sun <asun@asun.cobalt.com>
494 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
495 positioned at 0x7FFFFFFF if there's no resource fork.
497 2000-02-14 a sun <asun@asun.cobalt.com>
499 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
500 allocations happen in blocks. added missing case that omnis
503 2000-02-07 a sun <asun@asun.cobalt.com>
505 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
508 * include/atalk/adouble.h (sendfile): change to deal with
511 2000-01-25 a sun <asun@asun.cobalt.com>
513 * etc/afpd/ofork.c: keep track of oforks being used for each
514 directory so that we can update them if the directory tree gets
517 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
520 2000-01-24 a sun <asun@asun.cobalt.com>
522 * etc/afpd/directory.h (CNID): moved cnid assignment here along
525 * etc/afpd/directory.c: changed directory search to use red-black
526 trees to improve balance. parent-child tree changed to circular
527 doubly-linked list to speed up insert/remove times. there's still
528 one obstacle to actually freeing red-black tree entries. i need to
529 add an ofork list to struct dir to minimize search times.
531 2000-01-18 a sun <asun@asun.cobalt.com>
533 * etc/afpd/directory.c (dirinsert): detect attempts to add
534 pre-existing entries as just symbolic links.
536 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
537 extended to directories.
539 2000-01-03 a sun <asun@asun.cobalt.com>
541 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
544 * etc/afpd/status.c (status_init): fixed a bunch of problems here
545 that manifested under solaris 7.
547 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
551 1999-12-27 a sun <asun@asun.cobalt.com>
553 * libatalk/util/getiface.c: moved interface detection code to here
554 so that i can use if_nameindex() or getifconf() depending upon
557 1999-12-13 a sun <asun@asun.cobalt.com>
559 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
560 based interface code.
562 * etc/afpd/afp_options.c (afp_options_parseline): added
563 -server_quantum as an option. using hex would be a good idea.
565 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
566 the server quantum. by default, the server quantum is limited to
567 1MB due to a bug in the os 9 appleshare client.
569 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
572 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
575 1999-12-06 a sun <asun@asun.cobalt.com>
577 * etc/afpd/directory.c (setdirparams): don't error if we can't set
578 the desktop owner/permisssions.
580 1999-11-04 a sun <asun@asun.cobaltnet.com>
582 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
585 1999-11-02 a sun <asun@asun.cobaltnet.com>
587 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
590 1999-10-28 a sun <asun@asun.cobaltnet.com>
592 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
594 1999-10-27 a sun <asun@asun.cobaltnet.com>
596 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
599 1999-10-25 a sun <asun@asun.cobaltnet.com>
601 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
603 1999-10-21 a sun <asun@asun.cobaltnet.com>
605 * etc/afpd/Makefile (install): moved install of afpd earlier per
606 suggestion by steven michaud.
608 1999-10-05 a sun <asun@asun.cobaltnet.com>
610 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
611 ourselves into the user so that nfs is happy.
613 1999-09-19 a sun <asun@adrian5>
615 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
616 if it's on an os x server machine.
618 1999-09-15 a sun <asun@adrian5>
620 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
621 wants ATADDR_BCAST. that probably means that i need to do
622 multihoming appletalk a little differently. bleah.
624 1999-09-09 <asun@asun.cobaltnet.com>
626 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
627 (ad_open): mondo lameness. i forgot that directory lookups can be
628 done with "." as the directory name. that was auto-hiding
629 them. bleah. i also figured out which bit was the invisible bit
630 for finderinfo information.
632 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
634 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
635 that accidentally crept in.
637 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
639 * etc/afpd/quota.c (getfsquota): use group quotas in quota
640 calculations if the user belongs to a single group. just use the
641 user quotas if the user belongs to multiple groups.
643 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
644 restrict the available space to 2GB. this is for macs running
645 older versions of the operating system with newer versions of the
646 appleshare client. weird huh?
648 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
649 don't get promoted in the same way as arithmetic operations. added
650 some more casts to deal with that issue.
652 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
654 * man/man?/Makefile: don't re-build .tmp files if they already
655 exist. this gets the install phase to work correctly.
657 1999-08-13 a sun <asun@hecate.darksunrising.blah>
659 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
660 AFPERR_PARAM. also, reject names with /'s in them if the nohex
663 1999-08-12 a sun <asun@hecate.darksunrising.blah>
665 * etc/afpd/filedir.c,file.c,directory.c: changed error for
666 illegal filenames to AFPERR_EXIST.
668 1999-08-11 a sun <asun@hecate.darksunrising.blah>
670 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
671 .Parent files are no longer valid file names.
673 * etc/afpd/volume.c (volset): added usedots and nohex as
674 options. usedots stops :hex translation of . files while nohex
675 stops :hex translation of everything but . files. in addition,
676 . files created on the unix side are by default hidden.
678 * libatalk/adouble/ad_open.c: initialize more bits.
680 1999-08-10 a sun <asun@hecate.darksunrising.blah>
682 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
683 actual name for nbp registration rather than ATALK_NAME.
685 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
686 get used when building the kernel module.
688 * sys/solaris: changed strings.h to string.h
690 1999-08-08 a sun <asun@hecate.darksunrising.blah>
692 * etc/afpd/volume.c (readvolfile): changed volume options into an
693 array of structs to ease maintenance.
695 1999-08-05 a sun <asun@hecate.darksunrising.blah>
697 * etc/afpd/status.c (status_init): change the default icon
698 depending upon whether or not it's an ASIP or an AppleTalk
701 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
703 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
704 little more informative.
706 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
708 * yippee. someone figured what was happening with the installation
709 of the man pages. i got rid of a duplicate entry.
711 1999-08-02 a sun <asun@hecate.darksunrising.blah>
713 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
714 default options. it keys in on a :DEFAULT: label.
716 1999-07-30 a sun <asun@hecate.darksunrising.blah>
718 * moved rc.atalk.* scripts to distrib/initscripts.
720 1999-07-27 a sun <asun@hecate.darksunrising.blah>
722 * contrib/printing: added patch from job@uchicago.edu
724 * etc/afpd/file.c: forgot to initialize struct ad in
727 * etc/afpd/nls/makecode.c: added an empty mapping.
729 * etc/psf/Makefile (install): well cp -d didn't work either. just
732 1999-07-26 a sun <asun@hecate.darksunrising.blah>
734 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
735 (from denny@geekworld.com).
737 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
738 and patch files from inoue.
740 * sys/linux/Makefile (install-sysv): fixed up a bit.
742 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
745 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
746 of -icon. now it means to use the yucky bitmap instead of the
749 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
752 1999-07-18 a sun <asun@hecate.darksunrising.blah>
754 * create links/mangle files in the compile rather than the install
755 phase so that rpm will be happier.
757 1999-07-17 a sun <asun@hecate.darksunrising.blah>
759 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
760 filedir.c (afp_rename, afp_moveandrename): don't allow the
761 creation/renaming of names with certain characters if mswindows
762 compatibility is enabled.
764 1999-07-16 a sun <asun@hecate.darksunrising.blah>
766 * rc.atalk.redhat: incorporated chkconfig from inoue.
768 1999-07-15 a sun <asun@hecate.darksunrising.blah>
770 * etc/atalkd/config.c (getifconf): wrap check against
771 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
773 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
775 1999-07-11 a sun <asun@hecate.darksunrising.blah>
777 * contrib/ICDumpSuffixMap: added internet config perl script from
780 * contrib/printing: added contributed solaris printing scripts
781 from job@uchicago.edu.
783 1999-07-10 a sun <asun@hecate.darksunrising.blah>
785 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
787 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
789 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
792 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
794 1999-07-08 a sun <asun@hecate.darksunrising.blah>
796 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
797 address already exists.
799 1999-07-06 a sun <asun@hecate.darksunrising.blah>
801 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
803 1999-07-05 a sun <asun@hecate.darksunrising.blah>
805 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
806 is so that we can filter by interface in the future. however, it
807 doesn't seem to work that well right now. bleah.
809 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
810 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
813 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
814 etc/papd,afpd: accept -A <ddp address> as an option so that you
815 can specify the address to be used on a multihomed server. for
816 papd, you use the 'pa' option in papd.conf.
818 1999-07-04 a sun <asun@hecate.darksunrising.blah>
820 * etc/atalkd/config.c (parseline): initialize parseline properly
821 so that we don't get extraneous junk.
823 * etc/afpd/afp_options.c (afp_options_parseline): do
824 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
826 * etc/atalkd/config.c (getifconf/readconf): check to see if the
827 supported device can support appletalk addresses. either continue
828 or exit depending upon whether or not it's auto-configed.
830 1999-07-03 a sun <asun@hecate.darksunrising.blah>
832 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
833 toggle the volume icon so that it uses the apple icon instead.
835 * etc/afpd/config.c (AFPConfigInit): added more logic for the
836 -proxy option. here are the rules: -proxy will always try to
837 create a DDP server instance. by default, the proxy server will
838 still allow you to login with an appletalk connection. to prevent
839 that, just set the uamlist to an empty string.
841 1999-07-02 a sun <asun@hecate.darksunrising.blah>
843 * etc/afpd/status.c (status_netaddress): added support for fqdn
844 (not available in the appleshare client yet).
846 1999-07-01 a sun <asun@hecate.darksunrising.blah>
848 * etc/afpd/config.c (DSIConfigInit): application code for proxy
849 setup. it's the -proxy option.
851 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
852 support for proxy setup.
854 1999-06-30 a sun <asun@hecate.darksunrising.blah>
856 * etc/afpd/filedir.c (afp_rename): fixed up some error
857 codes. quark express should be happier.
859 * etc/afpd/uam.c (uam_afpserver_option): added
860 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
861 report that setting that fixes pam on solaris machines.
863 1999-06-28 a sun <asun@hecate.darksunrising.blah>
865 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
867 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
869 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
871 * etc/afpd/fork.c (afp_write): fixed up error condition.
873 1999-06-26 a sun <asun@hecate.darksunrising.blah>
875 * etc/uams/Makefile (install): changed install location of uams.
877 * sys/linux/Makefile (install-sysv): always install redhat
878 script. netatalk.config script only gets installed if it's not
881 1999-06-23 a sun <asun@hecate.darksunrising.blah>
883 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
885 * etc/afpd/afp_options.c (afp_options_init): changed default
888 1999-06-22 a sun <asun@hecate.darksunrising.blah>
890 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
891 just the server name here.
893 * etc/afpd/volume.c (volxlate): made $s return something
894 meaningful no matter what.
896 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
899 1999-06-20 a sun <asun@hecate.darksunrising.blah>
901 * etc/afpd/volume.c (volxlate): added variable substitution. if it
902 doesn't understand the variable, it just spits it back out.
904 (creatvol): display truncated volume name if it's too long.
906 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
907 with oses that have -lcrypt but shouldn't use it.
909 1999-06-11 a sun <asun@hecate.darksunrising.blah>
911 * include/atalk/afp.h: added comments to FPErrors.
913 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
916 * include/atalk/util.h: server_lock() returns pid_t.
918 1999-06-10 a sun <asun@hecate.darksunrising.blah>
920 * README.ASUN: added location for both ssleay and openssl.
922 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
923 server." in the future, there will be "uamc_*." changed the shared
924 library names to match.
926 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
928 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
931 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
934 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
935 type field. do type check.
937 * etc/uams/uam_*pam.c: added a couple more error codes.
939 1999-06-08 a sun <asun@hecate.darksunrising.blah>
941 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
942 codepage.h gets made.
944 * libatalk/*/Makefile: make sure that the profiled directory gets
947 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
948 that was causing mapname to fail.
950 1999-06-07 a sun <asun@hecate.darksunrising.blah>
952 * etc/atalkd/main.c (main): added a note to check the syslog if
953 atalkd can't be setup.
955 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
956 auto-detected #defines.
958 1999-06-06 a sun <asun@hecate.darksunrising.blah>
960 * etc/afpd/fork.c (afp_write): argh. i moved things around a
961 little too much and ended up with an uninitialized eid. strangely,
962 the compiler didn't complain. simplified bits a little as
963 well. also, FPWrite was returning the wrong error messages. on
964 64-bit filesystems, the offset can wraparound. so, report a disk
965 full error if that's going to happen. egcs-19990602 gets one
966 memcpy right and another wrong on my udb. bleah.
968 (afp_read): fixed the error messages here as well.
970 1999-06-05 a sun <asun@hecate.darksunrising.blah>
972 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
973 some links on the fly if they're missing.
975 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
976 re-arranged a little.
978 1999-06-04 a sun <asun@hecate.darksunrising.blah>
980 * etc/afpd: prototyped everything here and moved the FP functions
983 * libatalk/util/bprint.c: moved all of the bprints to here.
985 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
987 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
989 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
992 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
995 * bin/afppasswd/afppasswd.c: added -a option so that root can add
996 new users. turned all of the options into bits. added newlines to
999 1999-06-03 a sun <asun@hecate.darksunrising.blah>
1001 * sys/freebsd/Makefile: turn on sendfile support if running on a
1004 1999-06-02 a sun <asun@hecate.darksunrising.blah>
1006 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
1007 conversation function.
1009 * sys/*/Makefile: check at make time to see if -lrpcsvc and
1010 -lcrypt should be included in the appropriate places.
1012 1999-05-28 a sun <asun@hecate.darksunrising.blah>
1014 * etc/afpd/file.c (deletefile): added more error checking here as
1017 * etc/afpd/directory.c (renamedir): added a couple a few more
1020 * sys/sunos/Makefile: sunos should really work now.
1022 1999-05-27 a sun <asun@hecate.darksunrising.blah>
1024 * include/atalk/afp.h: added in a couple new error codes (one
1025 deals with password setting policy, the other with maximum logins
1028 * etc/afpd/fork.c (afp_openfork): try to re-open files on
1029 read-only volumes as read-only.
1031 1999-05-26 a sun <asun@hecate.darksunrising.blah>
1033 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
1034 uname -p. other oses seem to use uname -m for the same information.
1036 * etc/uams/uam_pam.c (pam_changepw): added check for same
1039 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
1040 same password checks.
1042 * sys/osx/Makefile: moved the os x server stuff into its own build
1045 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
1046 and MACHINETYPE for some stuff.
1048 1999-05-25 a sun <asun@hecate.darksunrising.blah>
1050 * sys/sunos/Makefile: various bits to make stuff work with sunos
1053 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
1055 * etc/afpd/file.c (copyfile): only copy the header file if newname
1058 * etc/afpd/directory.c (copydir): make sure to balk if the
1059 directory already exists. in addition, make sure to preserve the
1062 1999-05-24 a sun <asun@hecate.darksunrising.blah>
1064 * bin/afppasswd/afppasswd.c: global password updating utility for
1065 the randnum authentication method.
1067 1999-05-22 a sun <asun@hecate.darksunrising.blah>
1069 * etc/uams/uam_randnum.c (afppasswd): added in global password
1070 file for the randnum authentication method. it looks for a .key
1071 file as well to handle encryption.
1073 * etc/afpd/afp_options.c (afp_options_parseline): added
1074 -passwdfile as an option so that you can specify a global randnum
1075 password file if desired.
1077 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
1078 as an AppleVolumes.* option. if the user is in the rolist, the
1079 volume gets set as readonly. if there's a rwlist, and the user
1080 isn't in it, the volume also gets set as readonly.
1082 1999-05-21 a sun <asun@hecate.darksunrising.blah>
1084 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
1085 can't allocate the reference counting variable.
1087 * etc/uams/uam_*.c: make sure that uam_setup returns an error
1090 1999-05-19 a sun <asun@hecate.darksunrising.blah>
1092 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
1093 /var/run as the lock file directory.
1095 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
1096 a problem with FPWrite getting a request count of 0. that's
1099 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
1100 load itself from a shared library. i've compensated by linking it
1103 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
1104 still screwy with the dhx_pam stuff though.
1106 1999-05-18 a sun <asun@hecate.darksunrising.blah>
1108 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
1109 username to fit what's in pw->pw_name if necessary.
1111 1999-05-16 a sun <asun@hecate.darksunrising.blah>
1113 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
1114 authentication method. i'm still missing a little info to get it
1117 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
1118 create it from the unix name.
1120 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
1121 and fdType into strings.
1123 1999-05-16 a sun <asun@pelvetia>
1125 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
1126 little. now, you pass in an int * if you want to either get/set
1127 the size of the option. added in UAM_OPTION_RANDNUM for generic
1128 (4-byte granularity) random number generation.
1130 * etc/afpd/switch.c: added afp_logout to preauth_switch.
1132 1999-05-15 a sun <asun@hecate.darksunrising.blah>
1134 * bin/megatron/macbin.c (bin_open): make error message for
1135 macbinary files more informative.
1137 (test_header): added more macbinary tests. it now has a workaround
1138 for apple's incorrectly generated macbinary files.
1140 1999-05-14 a sun <asun@hecate.darksunrising.blah>
1142 * sys/solaris/Makefile: added shared library generation bits.
1144 * etc/uams: moved server-side uams here.
1146 * include/netatalk/endian.h: fixed some solaris bits.
1148 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
1149 do an atp_close and free the asp object. oh yeah, as afpd needs
1150 to export symbols to its modules, make sure you don't do anything
1151 more exciting than strip --strip-debug with it.
1153 1999-05-12 a sun <asun@hecate.darksunrising.blah>
1155 * various places that use sigaction: zero out struct sigaction so
1156 that we don't send something confusing. also make sure that we
1157 don't set a timer unless we already have a sigaction set.
1159 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
1160 empty resource fork read-only. also, added back in the bit of code
1161 that prevented locks from being attempted on non-existent resource
1164 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
1167 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
1170 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
1171 convert this over to use by the netddp interface.
1173 1999-05-12 a sun <asun@pelvetia>
1175 * etc/afpd/uam.c: os x server's runtime library loader is
1176 braindead. as a result, i've switched to using an exported struct
1177 with the uam's name.
1179 * bin/aecho,getzones: changed these to use the netddp interface.
1181 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1183 * libatalk/netddp: abstracted the ddp interface to netddp. besides
1184 the prior socket-driven interface, there's now an os x server
1185 interface. so, instead of calling socket/sendto/recvfrom, you call
1186 netddp_open/netddp_sendto/netddp_recvfrom.
1188 1999-05-11 a sun <asun@pelvetia>
1190 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1193 * etc/atalkd/main.c (main): make sure that if -dontroute is
1194 selected for all but one interface, that interface also gets
1197 1999-05-10 a sun <asun@hecate.darksunrising.blah>
1199 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1200 smaller than it used to be.
1202 1999-05-09 a sun <asun@hecate.darksunrising.blah>
1204 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1205 uam_randnum.c: uam modules. these should probably be moved out of
1206 afpd (and into something like etc/uam_server) when the printing
1207 stuff gets uam support.
1209 1999-05-08 a sun <asun@hecate.darksunrising.blah>
1211 * etc/afpd/uam.c: interface to user authentication modules.
1212 it should eventually be moved to libatalk, but that's not
1213 necessary until the printing uam stuff is done. everything is from
1214 the server-side perspective, but that's only because there aren't
1215 any client-side uses right now.
1217 * libatalk/util/module.c: generic interface to run-time library
1218 loading functions. right now, the dlfcn family and os x server's
1219 NS-style way of doing things are the ones understood. in addition,
1220 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1222 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1223 write part of write continuations.
1225 1999-05-07 a sun <asun@hecate.darksunrising.blah>
1227 * etc/atalkd: added the ability to turn off routing for particular
1228 interfaces. specify -dontroute for each interface that you don't
1231 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1233 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1234 using obj->username.
1236 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1238 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1239 forever if there's a problem while it's being used. that's fixed.
1241 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1243 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1244 so that renaming a directory works across filesystems.
1246 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1248 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1249 what's stored in the header file.
1251 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1252 afpd.conf more understandable.
1254 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1255 endian converted. that's fixed.
1257 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1258 necessarily ORable, so use ADLOCK_RD/WR instead.
1260 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1261 unlock accidentally getting the data fork locks.
1263 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1265 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1268 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1270 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1271 turned the mmapped header stuff into and #ifdef
1272 USE_MMAPPED_HEADERS option.
1274 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1275 the hfs fs doesn't currently have mmappable header files. rather
1276 than implement that, i just reverted back to a modified version
1277 of the old way of reading headers.
1279 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1281 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1284 (afp_openfork): deal with read-only data forks that don't have
1285 corresponding .AppleDouble files. we can't really do anything with
1286 deny locks in this case. just make sure that read locks are set.
1288 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1289 around FILPBIT_FINFO.
1291 * etc/afpd/fork.c (afp_read): as we share open files now, check
1292 for fork type against of_flags instead of just checking to see if
1293 the file is open. this fixes a bug that caused resource forks to
1294 get filled with data fork information.
1296 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1298 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1301 1999-04-09 a sun <asun@mead1.u.washington.edu>
1303 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1306 1999-04-09 a sun <asun@saul6.u.washington.edu>
1308 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1309 with quota support enabled.
1311 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1313 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1314 config/AppleVolumes.default: added read-only volume option.
1316 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1319 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1321 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1322 (from <jk@espy.org>).
1323 (bin_header_write/read): fixed up screwed up file date
1324 generation/reading with macbinary files.
1326 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1327 memcpy/memset/memcmp's. added macbinary III support.
1329 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1330 that we can stream macbinary file creation to stdout.
1332 * bin/megatron/megatron.c: incorporated information patch (--header
1333 and --macheader) from <fmorton@base2inc.com>.
1336 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1338 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1341 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1342 dummy ints for some of the files that can get compiled to empty
1343 objects. check for the type of msync() available as well.
1345 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1347 * INSTALL/README.GENERIC: added information for a generic
1348 architecture. It includes the information needed to get netatalk
1349 to compile on a random unix platform.
1351 * etc/afpd/quota.c: moved the quota stuff here so that we can
1352 #ifdef it out on a machine without quota support.
1354 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1356 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1357 well. this prevents multiple read locks on the same byte range
1358 from disappearing if one user disappears.
1360 (ad_fcntl_lock): here are the current rules for file
1362 1) if there's a appledouble header, we use the beginning
1363 of that for both data and resource forks.
1364 2) if there isn't, we use the end of the data fork (or past the
1365 end on 64-bit machines)
1367 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1369 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1370 appledouble entry parts is done.
1372 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1375 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1377 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1378 appledouble header parsing more generic so that we can read in
1379 arbitrary appledouble header files. i just mmap the parts that we
1382 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1384 * etc/afpd/file.c (afp_copyfile): return the correct error
1385 response on a failed copy. also, error if the file is already open
1386 to prevent problems with locks. we really need to ad_lock
1387 this during the copy
1389 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1391 * etc/afpd/volume.c (readvolfile): switched volume options to
1392 using ':' as a delimiter as that's one of the characters that's
1393 not allowed as part of a mac filename.
1394 (volset): changed access to allow/deny
1396 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1399 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1401 * NOTE to myself: jeremy allison said that samba uses refcounts to
1402 prevent close() from killing all the byte locks. so, i've started
1403 converting afpd to using refcounting as well. luckily, we already
1404 have of_findname, so we know when files are open. in cases where
1405 files are already open, this will replace an ad_open with a lookup
1408 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1409 NULL names when getting directory/file names.
1411 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1412 sure these are always in network byte order.
1414 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1416 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1417 synchronization bits. now, we use two bytes to do the read/write
1418 stuff. when access is needed, a read lock is attempted. if a deny
1419 lock is needed, a write lock is attempted. we even handle the
1420 access None mode now by saving the access modes.
1422 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1423 we can obey all of the file synchronization rules.
1425 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1426 reversed. with helios lantest's lock/unlock 4000 times test, it
1427 looks like i get <1 second overhead on my machine when using byte
1428 locks. NOTE: this will get a little worse when serialization gets
1429 added. in addition, 0x80000000 only works for 64-bit machines. i
1430 reserve the last allowable bit for 32-bit machines.
1432 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1433 now as i'm able to trigger a kernel oops in linux with the 64-bit
1436 (afp_read/afp_write): make sure to use the same offset when doing
1439 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1441 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1442 stuff to get byte locks to work correctly (except for the
1443 serialization) only to discover that files that use byte locks
1444 also request a deny write mode. luckily, byte locks only cover up
1445 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1446 synchronization locks.
1448 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1450 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1451 DEPS with double quotes so that multiple defines work.
1453 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1455 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1457 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1458 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1459 programs on the same machine opening the same file. current
1460 problems with the mechanism that i don't want to fix unless
1462 1) there's a race during the relock phase. serialization
1464 2) it assumes that each fd only locks a single contiguous
1465 range at a time. keeping a list of locked ranges would
1468 also, i changed the default to using fcntl locks. if the above two
1469 are really necessary, i'll probably switch to something a little
1470 more featureful like the berkeley db's lock manager.
1472 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1474 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1476 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1477 reduce system calls a little.
1479 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1482 * sys/solaris/Makefile: added 64-bit solaris patch from
1483 <jason@pattosoft.com.au>.
1485 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1487 * include/netatalk/endian.h: make solaris 2.5 complain less.
1489 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1490 fixed a couple problems with the adv1tov2 stuff.
1492 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1494 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1495 aligned along an even boundary.
1497 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1499 * etc/afpd/volume.c (readvolfile): added volume password support.
1501 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1503 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1504 layer multicast setting bits.
1506 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1507 prodos field info when converting.
1509 * rc.atalk.redhat: added pidof checking in case the machine
1510 crashes. also added rc.atalk.wrapper to the redhat rc script
1513 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1515 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1516 error detection here and more fully report error conditions.
1518 (flushfork): make sure to flush the header if necessary (rfork
1519 length changed or modification date needs to be set).
1521 (afp_write): ugh. this wasn't returning the right values for the
1522 last byte written if the endflag was set. in addition, it was
1523 setting the modification date. that should be left to FPCloseFork
1524 and FPFlush(Fork). this fixes a problem that shows up with
1527 NOTE: as of now, changes to the rfork info are the only things
1528 that aren't flushed immediately when altered.
1530 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1531 need to report bitmap errors if we try to fiddle with the wrong
1532 fork. i added an of_flags field to keep things sorted.
1534 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1535 movement, i forgot to make sure that the pre-asun2.2.0 features
1538 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1540 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1541 old name even when it's a directory.
1543 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1544 number of buffers used. use these when needed in afp_* calls.
1546 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1547 files when deleting a directory.
1549 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1551 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1554 * fixed up a few bobbles in the netatalk-990130 merge.
1556 * the noadouble option should be pretty much implemented. here's
1558 when a directory is created, the corresponding
1559 .AppleDouble directory is not.
1561 comments, dates, and other file attributes will get
1562 silently ignored and not result in the creation of a new
1563 .AppleDouble directory.
1565 however, if anything possessing a resource fork is copied
1566 into that directory, the corresponding .AppleDouble
1567 directory will be created. once this happens, any
1568 other file in the directory can acquire an AppleDouble
1569 header file in the future.
1571 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1573 * merged in the rest of netatalk-990130.
1575 * sys/solaris: merged in netatalk-990130 changes.
1577 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1578 tested and fixed the sendfile bits on linux. it looks like linux
1579 doesn't permit socket -> file sendfiles yet.
1581 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1582 newline character checking on.
1584 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1586 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1587 operates on a per-volume basis.
1589 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1591 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1593 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1596 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1597 implemented sendfile bits. currently, there's support for linux
1598 and freebsd. unfortunately, freebsd's implementation doesn't allow
1599 file->file or socket->file copies. bleah.
1601 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1603 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1604 volume.c (volset): added in the beginnings of a NOADOUBLE option
1605 for those that don't want AppleDouble headers to be created by
1606 default. it doesn't really work that well right now.
1608 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1610 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1611 from ad_refresh. made broken v1 header checking the default. fixed
1612 broken v1 date checking. now, it just checks to see if the v1
1613 MDATE is > than st_mtime by 5 years.
1615 * etc/afpd/directory.c: make date setting alter directory dates as
1618 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1620 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1621 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1623 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1625 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1626 shift the beginning of the fake did's if necessary.
1628 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1631 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1632 changes so that the CNIDs will still work even when the .AppleDB
1633 directory is read-only. if you're still allowed to create files on
1634 these volumes, you'll get a temporary id for those.
1636 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1638 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1639 files get cleared out on cnid_close() if it's the last user for a
1642 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1644 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1645 allows us to set the backup date on the server.
1647 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1648 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1649 with FPCatSearch to do.
1651 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1653 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1656 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1658 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1659 dbpath= in AppleVolumes.* for the CNID database.
1661 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1662 appledouble v1 environment, turn on v1compat by default.
1664 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1666 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1667 to handle broken ad headers.
1669 * etc/afpd/file.c (setfilparams): we need to make sure that we
1670 flush the file if we've created it even if there's an error. the
1671 magic number/version don't get saved if we don't.
1673 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1676 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1678 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1680 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1683 * well, what do you know? the cnid stuff compiles in.
1685 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1687 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1688 enumerate.c: added in stubs for CNID database conditional on
1689 AD_VERSION > AD_VERSION1.
1691 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1693 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1695 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1696 into hex code as well.
1698 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1700 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1702 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1704 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1705 both directions so that we can recover from problems if
1708 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1710 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1711 descends a directory and converts everything it sees into
1714 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1716 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1717 header rebuilding here so that ad_refresh can use it.
1719 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1722 * bin/megatron/asingle.c: yuk. removed all of
1723 the duplicate stuff here and had it use the #defines in adouble.h.
1725 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1726 conversion routine. we still need a shortname creator and a cnid
1727 database for the v2 features to be useful.
1729 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1731 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1732 that we don't understand.
1734 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1736 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1737 stuff. also made sure to lower/upper the 8-bit characters as
1740 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1743 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1744 attribute bits are in the correct byte ordering.
1746 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1748 * etc/afpd/volume.c (volset): made prodos an option to options=
1749 flag. also added crlf as an option.
1751 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1753 (ad_open): deal correctly with 0-length files by treating them as
1756 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1757 fork.c (getforkparams), directory.c (get/setdirparams): finished
1758 adding appledouble version 1 and 2 date conversion. also added
1761 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1762 file if we needed to fiddle with it.
1764 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1765 setting/retrieval code.
1767 * libatalk/adouble/ad_open.c (ad_open): initialize date
1768 structures here instead of elsewhere.
1770 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1772 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1773 time conversion code.
1775 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1777 * etc/afpd/volume.c (volset): changed prodos setting to
1780 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1782 * etc/afpd/volume.c (volset): okay. you now have the following
1783 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1784 tolower -> lowercases everything in both directions
1785 toupper -> uppercases everything in both directions
1786 xlatelower -> client sees lowercase, server sees uppercase
1787 xlateupper -> client sees uppercase, server sees lowercase
1789 NOTE: you only should use this if you really need to do so. this
1790 and the codepage option can cause mass confusion if applied
1791 blindly to pre-existing directories.
1793 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1795 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1796 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1797 bits 2 and 3 deal with UTOM. i did it that way so that you can
1798 casefold in one direction only or in both directions if
1799 desired. needless to say, setting both bits for UTOM or MTOU
1800 doesn't make any sense. right now, toupper takes precedence in
1801 MTOU, and tolower takes precedence in UTOM.
1803 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1805 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1806 -codepagepath to the list of available options. they specify the
1807 directories to look for uam modules and codepages,
1808 respectively. currently, -uampath doesn't do anything.
1810 * etc/afpd/volume.c (readvolfile): spruced up options to
1811 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1812 utomfile=<codepage.y>, casefold=<num> for volumes.
1814 * etc/afpd/desktop.c (utompath,mtoupath): added
1815 codepage/casefolding support. casefold is currently an int that
1816 could have multiple actions. right now, i just lowercase in
1817 mtoupath and uppercase in utompath.
1819 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1820 as an additional specifier so that we don't have problems with
1821 the same path names on multiple volumes.
1823 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1825 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1828 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1830 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1831 prevent atalkd from trying to use a slave channel.
1833 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1835 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1836 icon bit by default on the root directory. that screws up pre-OS 8
1839 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1841 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1842 so that we can gracefully shut down the server side.
1844 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1845 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1846 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1847 interval an option (-tickleval <sec>).
1849 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1850 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1851 dsi_write.c both save/restore the old timer, so they don't really
1852 care what the actual value is.
1854 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1856 * due to the recent obsession with bug fixing and low-level dsi
1857 cleanups, i've decided that this should really be asun2.1.1
1858 instead of asun2.1.0a.
1860 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1862 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1863 announcement here from etc/afpd/afp_dsi.c.
1865 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1866 into here as they're pretty generic. now, the protocol specific
1867 stuff only handles open and close.
1869 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1870 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1871 added initial stubs for sendfile support. i still need to go
1872 through and calculate the appropriate offsets to use.
1874 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1875 instead of just ignoring it.
1877 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1878 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1879 dsi_read interface to return errors so that i can kill things
1882 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1884 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1885 and write() treat a return of 0 differently.
1887 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1889 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1892 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1894 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1895 to return earlier on 0-sized files.
1897 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1899 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1900 check to here from dsi_cmdreply.
1902 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1904 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1905 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1907 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1909 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1910 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1912 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1914 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1915 fixed a couple of failed realloc leaks.
1917 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1918 to deal with case-insensitive, case-preserving filesystems.
1920 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1922 * etc/afpd/auth.c: fixed randnum password changing check.
1924 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1926 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1929 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1932 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1933 prevent buffer overflows here.
1935 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1937 * sys/linux/Makefile: fixed PAM message.
1939 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1941 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1942 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1944 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1945 should check against the entire unix name.
1947 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1949 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1950 to check against mac name.
1952 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1954 * etc/afpd/auth.c (afp_changepw): make password changing deal
1955 correctly with "real" user names. also, moved seteuid() to before
1956 the pam_authenticate() bit as shadow passwords need that.
1958 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1959 name against MACFILELEN.
1961 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1963 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1964 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1965 checks. also make sure test occurs before checking to see if the
1968 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1970 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1971 forgot that password changing needs root privileges to work.
1973 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1974 incorrect. i cleaned it up a bit.
1976 * sys/linux/Makefile: fixed the installation bits.
1978 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1980 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1981 if there's a problem.
1983 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1985 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1986 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1987 that. also made sure that files > MACFILELEN never show up.
1989 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1991 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1992 spurious pointer dereference.
1994 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1995 length so that we don't need to realloc.
1997 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1998 return AFPERR_BUSY if the dest has an ofork open.
2000 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
2001 (afp_rename): return AFPERR_SAMEOBJ if source == dest
2003 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
2005 * etc/afpd: went through and looked for places that needed to use
2006 curdir instead of dir. i think i have them all right now.
2008 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
2009 curdir correctly. what this really means is that cname should be
2010 fixed to return everything it changes as opposed to changing a
2013 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
2015 * etc/afpd/config.c (configinit): do the right thing if
2016 AFPConfigInit fails.
2018 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
2020 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
2021 embarrassing. i wasn't doing refcounts correctly.
2023 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
2025 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
2028 * sys/ultrix/Makefile: ultrix understands the old rquota format.
2030 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
2031 the current directory.
2032 (of_rename): erk. changed it to handle renaming a file that has
2033 been opened multiple times.
2035 * etc/atalkd: made sure that if you don't specify -router, things
2036 are as they were before.
2038 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
2040 * etc/afpd/status.c (status_flags): forgot to turn on password
2041 setting if randnum passwords are being used.
2043 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
2045 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
2048 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
2049 from "Fred Lindberg" <lindberg@id.wustl.edu>.
2051 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
2053 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
2054 for more AFP 2.0 compliance. unfortunately, apple's appleshare
2055 client doesn't like non-fixed directory ids.
2057 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
2059 * etc/afpd/volume.c (accessvol): the accessible volume list can
2060 now be controlled by groups and usernames. just use something of
2061 the following form: @group,name,name2,@group2,name3
2063 NOTE: you can't have any spaces, and the parser forces you to
2064 include all options. in this case, there are some apple II options
2065 that need to be entered. they need to go away soon anyway.
2067 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
2068 field into a temporary buffer before calling strtok.
2070 1998-08-29 a sun <asun@hecate.darksunrising.blah>
2072 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
2073 last router on an interface goes down, we need to delete the
2074 interface's zone table.
2076 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
2078 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
2079 i've added this in to increase AFP compliance.
2081 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
2082 should make afpd compatible with OS 8.5's Nav Services.
2084 * etc/atalkd/config.c,main.c: -router now specifies router mode
2085 with any number of interfaces.
2087 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
2089 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
2090 atalkd as a single-interface router. now, you can get zones with
2091 only single interfaces! i'm only waiting on wes for the approved
2092 configuration toggle.
2094 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
2096 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
2097 ADLOCK_* into real #defines and added translations in the
2098 lock-type specific functions. this should make it easier to
2099 recompile things without screwing up.
2101 1998-08-26 a sun <asun@hecate.darksunrising.blah>
2103 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
2106 1998-08-25 a sun <asun@hecate.darksunrising.blah>
2108 * etc/afpd/status.c (status_server): changed status_server to
2109 use only the obj part of obj:type@zone-style names.
2111 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
2112 zones properly. it was matching on anything but the actual zone.
2114 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
2116 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
2117 that solaris' pam session setup doesn't crap out.
2119 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
2121 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
2122 with zip multicast info.
2124 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
2126 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
2127 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
2128 <sys/time.h> for ultrix breakage.
2130 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
2132 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
2133 knew that speeding up of_findname would be useful. in any case, i
2134 discovered the source of yet another small AFP non-compliance that
2135 was confusing WordPerfect. on an afp_rename, we also need to
2136 rename the corresponding ofork. i've added an of_rename() to do
2139 1998-08-13 a sun <asun@hecate>
2141 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
2142 sticking refnum in ofork.
2144 1998-08-12 a sun <asun@hecate>
2146 * etc/afpd/fork.c (afp_openfork): added already open attribute
2149 * etc/afpd/ofork.c: added a hashed of_findname.
2151 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
2153 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
2154 forks from read-only non-appledouble media.
2156 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
2158 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
2159 (getvolspace): modified them to treak afs like the other
2160 getvolspaces w.r.t. VolSpace.
2162 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
2164 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
2165 used for filesystems. nfs quotas sometimes failed as a
2166 result. that's fixed now.
2168 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
2170 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
2171 it's simple to run the server process as a non-root user.
2173 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
2175 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
2176 out that i was opening lots of sockets with callaurpc. now, the
2177 socket gets saved and reused.
2179 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2180 for rquota's bsize. unless fixed, rquota will report incorrect
2183 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
2185 * etc/afpd/uam/README: added some preliminary ideas on a
2186 plug-in uam architecture. in addition, this should allow arbitrary
2187 afp function replacement. eventually, auth.c should get a
2190 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
2192 * etc/afpd/nfsquota.c: added headers and redefined a couple
2193 structure fields so that sunos4 compiles.
2195 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2196 2. this should get redhat 4.2 machines. NOTE: they're still
2197 missing librpcsvc.a, so they'll need to remove that from the
2200 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
2202 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2203 missing a couple functions needed for rquota support. here they
2206 * etc/afpd/unix.c (mountp): fixed the nfs detection for
2207 solaris. we still need bsd and ultrix.
2209 1998-07-05 a sun <asun@hecate>
2211 * include/atalk/adouble.h: marked out space for appledouble v2.
2213 1998-07-04 a sun <asun@hecate>
2215 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2216 get negative numbers for length fields and such.
2218 1998-07-04 a sun <asun@hecate>
2220 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2221 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2222 provided the initial bits from the bsd quota program.
2224 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2225 getnfsquota depending upon the type of fs.
2227 * etc/afpd/unix.c (mountp/special): munged mountp and
2228 special to return either the nfs mount point or the fs
2229 device. set the vol->v_nfs flag if it's nfs.
2231 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2232 honor results returned from uquota_getvolspace.
2234 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2236 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2237 multiple copies. as that's not the case here, i've reverted to
2238 just doing read + write.
2240 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2242 * sys/linux/Makefile: fixed the redhat-style atalk
2243 installation. also, it doesn't over-write an existing
2244 /etc/rc.d/init.d/atalk file.
2246 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2247 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2249 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2251 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2252 script instead of the bsd one.
2254 * include/atalk/adouble.h: moved same-name list stub to struct
2257 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2259 * changed to asunx.y.z notation as i was getting tired of
2260 increasing numbers. as this version is undergoing a fairly
2261 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2262 never existed. i just started at 2.0.
2264 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2265 for hashed-by-name oforks and oforks which group by name to help
2266 with byte locks and of_findname.
2268 * adouble (include/atalk/adouble.h): started implementing
2269 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2270 bits that should make prodos support much less clunky, allow
2271 persistent dids, and allow msdos support.
2273 * finder info: added bits to directory.c and file.c describing the
2274 actual contents of finder info (from IM: Toolbox
2275 Essentials). also, set default directory view to an allowed value
2276 thanks to a suggestion from the appledouble v2 specs. that should
2277 help with read-only media.
2279 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2280 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2283 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2285 * well, i'm starting a changelog as i keep forgetting what i've
2288 * locks: revamped them to be more in line with what should
2289 happen. currently, i've reverted back to flock-style locks as i'll
2290 need to stick in more code to get fcntl-style locks to work
2291 properly. specifically, i think modifying of_alloc/of_dealloc to
2292 keep track of locks, fds, and names should solve the problem with
2293 fcntl locks being process-specific and not fd specific.