1 ($Id: ChangeLog,v 1.42 2001-06-06 13:36:36 rufustfirefly Exp $)
3 2001-06-05 Dan L. (pooba53)
4 * Modified configure.in so references made to $ac_prefix_default
5 listed at the beginning are correct. The previous references were
6 being made to $ac_default_prefix.
8 2001-06-04 jeff b <jeff@univrel.pr.uconn.edu>
9 * doc/README.TRU64: details about tru64 installations, from
10 Edmund Lam <epl@unimelb.edu.au>
12 * etc/afpd/fork.c: implemented Sebastian Rittau's change to
13 avoid overwriting AppleDouble headers (finally)
15 * configure.in, etc/afpd/enumerate.c, etc/afpd/parse_mtab.c:
16 added initial support for mtab DID format. removed "lastdid"
17 configure option in favor of --with-did={last,mtab}
19 2001-06-01 jeff b <jeff@univrel.pr.uconn.edu>
20 * etc/afpd/quota.c: fix for Linux compile by Sam Noble
23 2001-05-25 jeff b <jeff@univrel.pr.uconn.edu>
24 * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
25 Schmidt <bs@cpfs.mpg.de>
27 * configure.in, contrib/shell_utils/Makefile.am,
28 contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
29 doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
30 etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
31 etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
32 code from Bob Rogers to generate more persistant DIDs
34 2001-05-22 jeff b <jeff@univrel.pr.uconn.edu>
35 * configure.in, etc/afpd/unix.h: more portability fixes, and
36 integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
38 * configure.in, bin/megatron/Makefile.am,
39 distrib/initscripts/Makefile.am, etc/afpd/main.c,
40 etc/afpd/quota.c, etc/afpd/unix.h,
41 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
42 round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
44 2001-05-09 jeff b <jeff@univrel.pr.uconn.edu>
45 * autogen.sh: added automake --include-deps to autogen.sh to
46 promote more portable Makefiles (thanks to Christian
47 Weisgerber <naddy@mips.inka.de> from OpenBSD)
49 2001-05-08 jeff b <jeff@univrel.pr.uconn.edu>
51 * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
52 from Olaf Hering <olh@suse.de>
54 * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
57 2001-05-07 jeff b <jeff@univrel.pr.uconn.edu>
59 * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
62 * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
63 Schmidt <bs@cpfs.mpg.de> to fix typos
65 2001-05-03 jeff b <jeff@univrel.pr.uconn.edu>
67 * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
68 etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
70 * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
71 moving to autodetected HAVE_*_H from autoconf script
73 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
75 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
76 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
77 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
78 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
79 <srittau@users.sourceforge.net> (#420300)
81 * bin/afile/*: replacement for old restrictive afile from Sebastian
82 Rittau <srittau@users.sourceforge.net> (#420302)
84 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
85 stop messages to the redhat initscript. nbpregister and unregister
86 messages are also displayed. This patch also permits spaces in zone
87 and machine names to be used in the variables. From Ryan Cleary
88 <tryanc@users.sourceforge.net> (#418094)
90 * bin/megatron/Makefile.am: patch to properly create links for
91 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
94 2001-04-25 morgan a <morgan@orst.edu>
96 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
97 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
98 were being logged and scaring users. :)
100 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
102 * configure.in: fixed problem with tcp_wrappers support; it needed to
105 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
107 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
108 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
109 be used for everything
111 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
113 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
114 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
115 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
116 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
119 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
123 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
125 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
126 Kelitz (jkeltz) to allow disabling of shell checking
128 * configure.in, contrib/Makefile.am: made timelord compilation
129 optional, disabled by default
131 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
133 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
134 at Apple, fixing server disconnect problem upon afp_createid() call
136 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
138 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
139 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
141 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
143 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
144 Noble <ns@shadow.org>
146 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
147 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
148 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
149 Akop Pogosian <akopps@csua.berkeley.edu>
151 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
153 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
154 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
155 "-L$ssldir/lib" in configure.
157 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
159 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
160 Rey <jprey@ads.ecp.fr>
162 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
164 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
165 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
167 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
169 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
170 Linux 2.0.x builds (Patch #408256)
172 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
173 to fix deleting/emptying trash problems (Patch #408218)
175 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
177 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
178 which was causing file creation problems
180 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
182 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
183 build, most notably paths, and reference to lp2pap.sh in the wrong
186 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
190 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
191 updated for 1.5pre5 release
193 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
195 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
196 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
198 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
200 * ChangeLog: started using timestamps in ChangeLog
202 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
203 (thanks to Sebastian Rittau)
205 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
207 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
208 docs/, where they should be.
210 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
212 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
215 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
217 * TODO: A few updates to papd entry.
219 * README.MORGAN: Removed README.MORGAN because that information in
220 now in papd's man page.
222 * man/man8/papd.8.tmpl: Updated papd man page to match current
223 code. Added descriptions of authenticated printing and other new
226 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
228 * libatalk/adouble/ad_open.c: AppleDouble directory creation
231 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
233 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
234 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
235 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
236 "dropbox" to available option if DROPKLUDGE is used during
239 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
241 * README: updated 1.5+ install instructions to include list of
242 required and recommended packages
244 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
246 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
247 all of the defines in the codebase
249 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
250 patch made with syslog()'s didn't include any brackets)
253 * distrib/initscripts/.cvsignore: removed pulling of atalk
255 * configure.in, etc/uams/Makefile.am: conditional compilation support
256 for PGP UAM module using --enable-pgp-uam
258 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
259 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
260 for future Kerberos module reintegration
262 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
264 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
265 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
267 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
268 instead of dumping out if appletalk module not present, from
269 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
271 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
272 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
273 suitable configure.in fixes
275 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
277 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
278 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
279 broken codepage support.
281 * ChangeLog: started updaing ChangeLog with important patch/fix
282 information, as it is *never* up to date.
284 * configure.in, acconfig.h: implemented AFS configuration option
285 patch from Wes Hardaker <hardaker@users.sourceforge.net>
287 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
290 * autogen.sh: make libtoolize copy instead of linking files to
291 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
293 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
296 - Debian packaging in tree
297 - Numerous Makefile/build fixes
298 - .cvsignore implemented
299 - Solaris build fixes
301 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
303 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
304 uid/gid per volume for afpd
306 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
308 * etc/afpd/volume.c (setvoltime): fix for multiple clients
309 writing to same volume.
311 2000-02-28 a sun <asun@asun.cobalt.com>
313 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
316 2000-02-23 a sun <asun@asun.cobalt.com>
318 * etc/afpd/volume.c (creatvol): / is a special case. you can't
319 share it unless you give it a name.
321 2000-02-21 a sun <asun@asun.cobalt.com>
323 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
324 make redhat 6.x happier.
326 2000-02-17 a sun <asun@asun.cobalt.com>
328 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
329 lock removal. this + the log right below fix ragtime.
331 2000-02-16 a sun <asun@asun.cobalt.com>
333 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
334 positioned at 0x7FFFFFFF if there's no resource fork.
336 2000-02-14 a sun <asun@asun.cobalt.com>
338 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
339 allocations happen in blocks. added missing case that omnis
342 2000-02-07 a sun <asun@asun.cobalt.com>
344 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
347 * include/atalk/adouble.h (sendfile): change to deal with
350 2000-01-25 a sun <asun@asun.cobalt.com>
352 * etc/afpd/ofork.c: keep track of oforks being used for each
353 directory so that we can update them if the directory tree gets
356 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
359 2000-01-24 a sun <asun@asun.cobalt.com>
361 * etc/afpd/directory.h (CNID): moved cnid assignment here along
364 * etc/afpd/directory.c: changed directory search to use red-black
365 trees to improve balance. parent-child tree changed to circular
366 doubly-linked list to speed up insert/remove times. there's still
367 one obstacle to actually freeing red-black tree entries. i need to
368 add an ofork list to struct dir to minimize search times.
370 2000-01-18 a sun <asun@asun.cobalt.com>
372 * etc/afpd/directory.c (dirinsert): detect attempts to add
373 pre-existing entries as just symbolic links.
375 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
376 extended to directories.
378 2000-01-03 a sun <asun@asun.cobalt.com>
380 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
383 * etc/afpd/status.c (status_init): fixed a bunch of problems here
384 that manifested under solaris 7.
386 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
390 1999-12-27 a sun <asun@asun.cobalt.com>
392 * libatalk/util/getiface.c: moved interface detection code to here
393 so that i can use if_nameindex() or getifconf() depending upon
396 1999-12-13 a sun <asun@asun.cobalt.com>
398 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
399 based interface code.
401 * etc/afpd/afp_options.c (afp_options_parseline): added
402 -server_quantum as an option. using hex would be a good idea.
404 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
405 the server quantum. by default, the server quantum is limited to
406 1MB due to a bug in the os 9 appleshare client.
408 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
411 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
414 1999-12-06 a sun <asun@asun.cobalt.com>
416 * etc/afpd/directory.c (setdirparams): don't error if we can't set
417 the desktop owner/permisssions.
419 1999-11-04 a sun <asun@asun.cobaltnet.com>
421 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
424 1999-11-02 a sun <asun@asun.cobaltnet.com>
426 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
429 1999-10-28 a sun <asun@asun.cobaltnet.com>
431 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
433 1999-10-27 a sun <asun@asun.cobaltnet.com>
435 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
438 1999-10-25 a sun <asun@asun.cobaltnet.com>
440 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
442 1999-10-21 a sun <asun@asun.cobaltnet.com>
444 * etc/afpd/Makefile (install): moved install of afpd earlier per
445 suggestion by steven michaud.
447 1999-10-05 a sun <asun@asun.cobaltnet.com>
449 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
450 ourselves into the user so that nfs is happy.
452 1999-09-19 a sun <asun@adrian5>
454 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
455 if it's on an os x server machine.
457 1999-09-15 a sun <asun@adrian5>
459 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
460 wants ATADDR_BCAST. that probably means that i need to do
461 multihoming appletalk a little differently. bleah.
463 1999-09-09 <asun@asun.cobaltnet.com>
465 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
466 (ad_open): mondo lameness. i forgot that directory lookups can be
467 done with "." as the directory name. that was auto-hiding
468 them. bleah. i also figured out which bit was the invisible bit
469 for finderinfo information.
471 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
473 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
474 that accidentally crept in.
476 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
478 * etc/afpd/quota.c (getfsquota): use group quotas in quota
479 calculations if the user belongs to a single group. just use the
480 user quotas if the user belongs to multiple groups.
482 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
483 restrict the available space to 2GB. this is for macs running
484 older versions of the operating system with newer versions of the
485 appleshare client. weird huh?
487 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
488 don't get promoted in the same way as arithmetic operations. added
489 some more casts to deal with that issue.
491 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
493 * man/man?/Makefile: don't re-build .tmp files if they already
494 exist. this gets the install phase to work correctly.
496 1999-08-13 a sun <asun@hecate.darksunrising.blah>
498 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
499 AFPERR_PARAM. also, reject names with /'s in them if the nohex
502 1999-08-12 a sun <asun@hecate.darksunrising.blah>
504 * etc/afpd/filedir.c,file.c,directory.c: changed error for
505 illegal filenames to AFPERR_EXIST.
507 1999-08-11 a sun <asun@hecate.darksunrising.blah>
509 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
510 .Parent files are no longer valid file names.
512 * etc/afpd/volume.c (volset): added usedots and nohex as
513 options. usedots stops :hex translation of . files while nohex
514 stops :hex translation of everything but . files. in addition,
515 . files created on the unix side are by default hidden.
517 * libatalk/adouble/ad_open.c: initialize more bits.
519 1999-08-10 a sun <asun@hecate.darksunrising.blah>
521 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
522 actual name for nbp registration rather than ATALK_NAME.
524 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
525 get used when building the kernel module.
527 * sys/solaris: changed strings.h to string.h
529 1999-08-08 a sun <asun@hecate.darksunrising.blah>
531 * etc/afpd/volume.c (readvolfile): changed volume options into an
532 array of structs to ease maintenance.
534 1999-08-05 a sun <asun@hecate.darksunrising.blah>
536 * etc/afpd/status.c (status_init): change the default icon
537 depending upon whether or not it's an ASIP or an AppleTalk
540 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
542 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
543 little more informative.
545 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
547 * yippee. someone figured what was happening with the installation
548 of the man pages. i got rid of a duplicate entry.
550 1999-08-02 a sun <asun@hecate.darksunrising.blah>
552 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
553 default options. it keys in on a :DEFAULT: label.
555 1999-07-30 a sun <asun@hecate.darksunrising.blah>
557 * moved rc.atalk.* scripts to distrib/initscripts.
559 1999-07-27 a sun <asun@hecate.darksunrising.blah>
561 * contrib/printing: added patch from job@uchicago.edu
563 * etc/afpd/file.c: forgot to initialize struct ad in
566 * etc/afpd/nls/makecode.c: added an empty mapping.
568 * etc/psf/Makefile (install): well cp -d didn't work either. just
571 1999-07-26 a sun <asun@hecate.darksunrising.blah>
573 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
574 (from denny@geekworld.com).
576 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
577 and patch files from inoue.
579 * sys/linux/Makefile (install-sysv): fixed up a bit.
581 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
584 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
585 of -icon. now it means to use the yucky bitmap instead of the
588 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
591 1999-07-18 a sun <asun@hecate.darksunrising.blah>
593 * create links/mangle files in the compile rather than the install
594 phase so that rpm will be happier.
596 1999-07-17 a sun <asun@hecate.darksunrising.blah>
598 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
599 filedir.c (afp_rename, afp_moveandrename): don't allow the
600 creation/renaming of names with certain characters if mswindows
601 compatibility is enabled.
603 1999-07-16 a sun <asun@hecate.darksunrising.blah>
605 * rc.atalk.redhat: incorporated chkconfig from inoue.
607 1999-07-15 a sun <asun@hecate.darksunrising.blah>
609 * etc/atalkd/config.c (getifconf): wrap check against
610 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
612 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
614 1999-07-11 a sun <asun@hecate.darksunrising.blah>
616 * contrib/ICDumpSuffixMap: added internet config perl script from
619 * contrib/printing: added contributed solaris printing scripts
620 from job@uchicago.edu.
622 1999-07-10 a sun <asun@hecate.darksunrising.blah>
624 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
626 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
628 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
631 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
633 1999-07-08 a sun <asun@hecate.darksunrising.blah>
635 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
636 address already exists.
638 1999-07-06 a sun <asun@hecate.darksunrising.blah>
640 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
642 1999-07-05 a sun <asun@hecate.darksunrising.blah>
644 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
645 is so that we can filter by interface in the future. however, it
646 doesn't seem to work that well right now. bleah.
648 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
649 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
652 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
653 etc/papd,afpd: accept -A <ddp address> as an option so that you
654 can specify the address to be used on a multihomed server. for
655 papd, you use the 'pa' option in papd.conf.
657 1999-07-04 a sun <asun@hecate.darksunrising.blah>
659 * etc/atalkd/config.c (parseline): initialize parseline properly
660 so that we don't get extraneous junk.
662 * etc/afpd/afp_options.c (afp_options_parseline): do
663 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
665 * etc/atalkd/config.c (getifconf/readconf): check to see if the
666 supported device can support appletalk addresses. either continue
667 or exit depending upon whether or not it's auto-configed.
669 1999-07-03 a sun <asun@hecate.darksunrising.blah>
671 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
672 toggle the volume icon so that it uses the apple icon instead.
674 * etc/afpd/config.c (AFPConfigInit): added more logic for the
675 -proxy option. here are the rules: -proxy will always try to
676 create a DDP server instance. by default, the proxy server will
677 still allow you to login with an appletalk connection. to prevent
678 that, just set the uamlist to an empty string.
680 1999-07-02 a sun <asun@hecate.darksunrising.blah>
682 * etc/afpd/status.c (status_netaddress): added support for fqdn
683 (not available in the appleshare client yet).
685 1999-07-01 a sun <asun@hecate.darksunrising.blah>
687 * etc/afpd/config.c (DSIConfigInit): application code for proxy
688 setup. it's the -proxy option.
690 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
691 support for proxy setup.
693 1999-06-30 a sun <asun@hecate.darksunrising.blah>
695 * etc/afpd/filedir.c (afp_rename): fixed up some error
696 codes. quark express should be happier.
698 * etc/afpd/uam.c (uam_afpserver_option): added
699 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
700 report that setting that fixes pam on solaris machines.
702 1999-06-28 a sun <asun@hecate.darksunrising.blah>
704 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
706 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
708 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
710 * etc/afpd/fork.c (afp_write): fixed up error condition.
712 1999-06-26 a sun <asun@hecate.darksunrising.blah>
714 * etc/uams/Makefile (install): changed install location of uams.
716 * sys/linux/Makefile (install-sysv): always install redhat
717 script. netatalk.config script only gets installed if it's not
720 1999-06-23 a sun <asun@hecate.darksunrising.blah>
722 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
724 * etc/afpd/afp_options.c (afp_options_init): changed default
727 1999-06-22 a sun <asun@hecate.darksunrising.blah>
729 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
730 just the server name here.
732 * etc/afpd/volume.c (volxlate): made $s return something
733 meaningful no matter what.
735 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
738 1999-06-20 a sun <asun@hecate.darksunrising.blah>
740 * etc/afpd/volume.c (volxlate): added variable substitution. if it
741 doesn't understand the variable, it just spits it back out.
743 (creatvol): display truncated volume name if it's too long.
745 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
746 with oses that have -lcrypt but shouldn't use it.
748 1999-06-11 a sun <asun@hecate.darksunrising.blah>
750 * include/atalk/afp.h: added comments to FPErrors.
752 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
755 * include/atalk/util.h: server_lock() returns pid_t.
757 1999-06-10 a sun <asun@hecate.darksunrising.blah>
759 * README.ASUN: added location for both ssleay and openssl.
761 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
762 server." in the future, there will be "uamc_*." changed the shared
763 library names to match.
765 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
767 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
770 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
773 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
774 type field. do type check.
776 * etc/uams/uam_*pam.c: added a couple more error codes.
778 1999-06-08 a sun <asun@hecate.darksunrising.blah>
780 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
781 codepage.h gets made.
783 * libatalk/*/Makefile: make sure that the profiled directory gets
786 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
787 that was causing mapname to fail.
789 1999-06-07 a sun <asun@hecate.darksunrising.blah>
791 * etc/atalkd/main.c (main): added a note to check the syslog if
792 atalkd can't be setup.
794 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
795 auto-detected #defines.
797 1999-06-06 a sun <asun@hecate.darksunrising.blah>
799 * etc/afpd/fork.c (afp_write): argh. i moved things around a
800 little too much and ended up with an uninitialized eid. strangely,
801 the compiler didn't complain. simplified bits a little as
802 well. also, FPWrite was returning the wrong error messages. on
803 64-bit filesystems, the offset can wraparound. so, report a disk
804 full error if that's going to happen. egcs-19990602 gets one
805 memcpy right and another wrong on my udb. bleah.
807 (afp_read): fixed the error messages here as well.
809 1999-06-05 a sun <asun@hecate.darksunrising.blah>
811 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
812 some links on the fly if they're missing.
814 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
815 re-arranged a little.
817 1999-06-04 a sun <asun@hecate.darksunrising.blah>
819 * etc/afpd: prototyped everything here and moved the FP functions
822 * libatalk/util/bprint.c: moved all of the bprints to here.
824 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
826 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
828 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
831 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
834 * bin/afppasswd/afppasswd.c: added -a option so that root can add
835 new users. turned all of the options into bits. added newlines to
838 1999-06-03 a sun <asun@hecate.darksunrising.blah>
840 * sys/freebsd/Makefile: turn on sendfile support if running on a
843 1999-06-02 a sun <asun@hecate.darksunrising.blah>
845 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
846 conversation function.
848 * sys/*/Makefile: check at make time to see if -lrpcsvc and
849 -lcrypt should be included in the appropriate places.
851 1999-05-28 a sun <asun@hecate.darksunrising.blah>
853 * etc/afpd/file.c (deletefile): added more error checking here as
856 * etc/afpd/directory.c (renamedir): added a couple a few more
859 * sys/sunos/Makefile: sunos should really work now.
861 1999-05-27 a sun <asun@hecate.darksunrising.blah>
863 * include/atalk/afp.h: added in a couple new error codes (one
864 deals with password setting policy, the other with maximum logins
867 * etc/afpd/fork.c (afp_openfork): try to re-open files on
868 read-only volumes as read-only.
870 1999-05-26 a sun <asun@hecate.darksunrising.blah>
872 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
873 uname -p. other oses seem to use uname -m for the same information.
875 * etc/uams/uam_pam.c (pam_changepw): added check for same
878 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
879 same password checks.
881 * sys/osx/Makefile: moved the os x server stuff into its own build
884 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
885 and MACHINETYPE for some stuff.
887 1999-05-25 a sun <asun@hecate.darksunrising.blah>
889 * sys/sunos/Makefile: various bits to make stuff work with sunos
892 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
894 * etc/afpd/file.c (copyfile): only copy the header file if newname
897 * etc/afpd/directory.c (copydir): make sure to balk if the
898 directory already exists. in addition, make sure to preserve the
901 1999-05-24 a sun <asun@hecate.darksunrising.blah>
903 * bin/afppasswd/afppasswd.c: global password updating utility for
904 the randnum authentication method.
906 1999-05-22 a sun <asun@hecate.darksunrising.blah>
908 * etc/uams/uam_randnum.c (afppasswd): added in global password
909 file for the randnum authentication method. it looks for a .key
910 file as well to handle encryption.
912 * etc/afpd/afp_options.c (afp_options_parseline): added
913 -passwdfile as an option so that you can specify a global randnum
914 password file if desired.
916 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
917 as an AppleVolumes.* option. if the user is in the rolist, the
918 volume gets set as readonly. if there's a rwlist, and the user
919 isn't in it, the volume also gets set as readonly.
921 1999-05-21 a sun <asun@hecate.darksunrising.blah>
923 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
924 can't allocate the reference counting variable.
926 * etc/uams/uam_*.c: make sure that uam_setup returns an error
929 1999-05-19 a sun <asun@hecate.darksunrising.blah>
931 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
932 /var/run as the lock file directory.
934 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
935 a problem with FPWrite getting a request count of 0. that's
938 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
939 load itself from a shared library. i've compensated by linking it
942 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
943 still screwy with the dhx_pam stuff though.
945 1999-05-18 a sun <asun@hecate.darksunrising.blah>
947 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
948 username to fit what's in pw->pw_name if necessary.
950 1999-05-16 a sun <asun@hecate.darksunrising.blah>
952 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
953 authentication method. i'm still missing a little info to get it
956 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
957 create it from the unix name.
959 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
960 and fdType into strings.
962 1999-05-16 a sun <asun@pelvetia>
964 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
965 little. now, you pass in an int * if you want to either get/set
966 the size of the option. added in UAM_OPTION_RANDNUM for generic
967 (4-byte granularity) random number generation.
969 * etc/afpd/switch.c: added afp_logout to preauth_switch.
971 1999-05-15 a sun <asun@hecate.darksunrising.blah>
973 * bin/megatron/macbin.c (bin_open): make error message for
974 macbinary files more informative.
976 (test_header): added more macbinary tests. it now has a workaround
977 for apple's incorrectly generated macbinary files.
979 1999-05-14 a sun <asun@hecate.darksunrising.blah>
981 * sys/solaris/Makefile: added shared library generation bits.
983 * etc/uams: moved server-side uams here.
985 * include/netatalk/endian.h: fixed some solaris bits.
987 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
988 do an atp_close and free the asp object. oh yeah, as afpd needs
989 to export symbols to its modules, make sure you don't do anything
990 more exciting than strip --strip-debug with it.
992 1999-05-12 a sun <asun@hecate.darksunrising.blah>
994 * various places that use sigaction: zero out struct sigaction so
995 that we don't send something confusing. also make sure that we
996 don't set a timer unless we already have a sigaction set.
998 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
999 empty resource fork read-only. also, added back in the bit of code
1000 that prevented locks from being attempted on non-existent resource
1003 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
1006 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
1009 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
1010 convert this over to use by the netddp interface.
1012 1999-05-12 a sun <asun@pelvetia>
1014 * etc/afpd/uam.c: os x server's runtime library loader is
1015 braindead. as a result, i've switched to using an exported struct
1016 with the uam's name.
1018 * bin/aecho,getzones: changed these to use the netddp interface.
1020 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1022 * libatalk/netddp: abstracted the ddp interface to netddp. besides
1023 the prior socket-driven interface, there's now an os x server
1024 interface. so, instead of calling socket/sendto/recvfrom, you call
1025 netddp_open/netddp_sendto/netddp_recvfrom.
1027 1999-05-11 a sun <asun@pelvetia>
1029 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1032 * etc/atalkd/main.c (main): make sure that if -dontroute is
1033 selected for all but one interface, that interface also gets
1036 1999-05-10 a sun <asun@hecate.darksunrising.blah>
1038 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1039 smaller than it used to be.
1041 1999-05-09 a sun <asun@hecate.darksunrising.blah>
1043 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1044 uam_randnum.c: uam modules. these should probably be moved out of
1045 afpd (and into something like etc/uam_server) when the printing
1046 stuff gets uam support.
1048 1999-05-08 a sun <asun@hecate.darksunrising.blah>
1050 * etc/afpd/uam.c: interface to user authentication modules.
1051 it should eventually be moved to libatalk, but that's not
1052 necessary until the printing uam stuff is done. everything is from
1053 the server-side perspective, but that's only because there aren't
1054 any client-side uses right now.
1056 * libatalk/util/module.c: generic interface to run-time library
1057 loading functions. right now, the dlfcn family and os x server's
1058 NS-style way of doing things are the ones understood. in addition,
1059 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1061 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1062 write part of write continuations.
1064 1999-05-07 a sun <asun@hecate.darksunrising.blah>
1066 * etc/atalkd: added the ability to turn off routing for particular
1067 interfaces. specify -dontroute for each interface that you don't
1070 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1072 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1073 using obj->username.
1075 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1077 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1078 forever if there's a problem while it's being used. that's fixed.
1080 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1082 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1083 so that renaming a directory works across filesystems.
1085 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1087 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1088 what's stored in the header file.
1090 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1091 afpd.conf more understandable.
1093 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1094 endian converted. that's fixed.
1096 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1097 necessarily ORable, so use ADLOCK_RD/WR instead.
1099 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1100 unlock accidentally getting the data fork locks.
1102 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1104 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1107 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1109 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1110 turned the mmapped header stuff into and #ifdef
1111 USE_MMAPPED_HEADERS option.
1113 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1114 the hfs fs doesn't currently have mmappable header files. rather
1115 than implement that, i just reverted back to a modified version
1116 of the old way of reading headers.
1118 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1120 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1123 (afp_openfork): deal with read-only data forks that don't have
1124 corresponding .AppleDouble files. we can't really do anything with
1125 deny locks in this case. just make sure that read locks are set.
1127 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1128 around FILPBIT_FINFO.
1130 * etc/afpd/fork.c (afp_read): as we share open files now, check
1131 for fork type against of_flags instead of just checking to see if
1132 the file is open. this fixes a bug that caused resource forks to
1133 get filled with data fork information.
1135 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1137 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1140 1999-04-09 a sun <asun@mead1.u.washington.edu>
1142 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1145 1999-04-09 a sun <asun@saul6.u.washington.edu>
1147 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1148 with quota support enabled.
1150 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1152 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1153 config/AppleVolumes.default: added read-only volume option.
1155 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1158 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1160 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1161 (from <jk@espy.org>).
1162 (bin_header_write/read): fixed up screwed up file date
1163 generation/reading with macbinary files.
1165 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1166 memcpy/memset/memcmp's. added macbinary III support.
1168 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1169 that we can stream macbinary file creation to stdout.
1171 * bin/megatron/megatron.c: incorporated information patch (--header
1172 and --macheader) from <fmorton@base2inc.com>.
1175 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1177 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1180 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1181 dummy ints for some of the files that can get compiled to empty
1182 objects. check for the type of msync() available as well.
1184 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1186 * INSTALL/README.GENERIC: added information for a generic
1187 architecture. It includes the information needed to get netatalk
1188 to compile on a random unix platform.
1190 * etc/afpd/quota.c: moved the quota stuff here so that we can
1191 #ifdef it out on a machine without quota support.
1193 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1195 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1196 well. this prevents multiple read locks on the same byte range
1197 from disappearing if one user disappears.
1199 (ad_fcntl_lock): here are the current rules for file
1201 1) if there's a appledouble header, we use the beginning
1202 of that for both data and resource forks.
1203 2) if there isn't, we use the end of the data fork (or past the
1204 end on 64-bit machines)
1206 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1208 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1209 appledouble entry parts is done.
1211 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1214 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1216 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1217 appledouble header parsing more generic so that we can read in
1218 arbitrary appledouble header files. i just mmap the parts that we
1221 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1223 * etc/afpd/file.c (afp_copyfile): return the correct error
1224 response on a failed copy. also, error if the file is already open
1225 to prevent problems with locks. we really need to ad_lock
1226 this during the copy
1228 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1230 * etc/afpd/volume.c (readvolfile): switched volume options to
1231 using ':' as a delimiter as that's one of the characters that's
1232 not allowed as part of a mac filename.
1233 (volset): changed access to allow/deny
1235 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1238 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1240 * NOTE to myself: jeremy allison said that samba uses refcounts to
1241 prevent close() from killing all the byte locks. so, i've started
1242 converting afpd to using refcounting as well. luckily, we already
1243 have of_findname, so we know when files are open. in cases where
1244 files are already open, this will replace an ad_open with a lookup
1247 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1248 NULL names when getting directory/file names.
1250 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1251 sure these are always in network byte order.
1253 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1255 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1256 synchronization bits. now, we use two bytes to do the read/write
1257 stuff. when access is needed, a read lock is attempted. if a deny
1258 lock is needed, a write lock is attempted. we even handle the
1259 access None mode now by saving the access modes.
1261 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1262 we can obey all of the file synchronization rules.
1264 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1265 reversed. with helios lantest's lock/unlock 4000 times test, it
1266 looks like i get <1 second overhead on my machine when using byte
1267 locks. NOTE: this will get a little worse when serialization gets
1268 added. in addition, 0x80000000 only works for 64-bit machines. i
1269 reserve the last allowable bit for 32-bit machines.
1271 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1272 now as i'm able to trigger a kernel oops in linux with the 64-bit
1275 (afp_read/afp_write): make sure to use the same offset when doing
1278 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1280 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1281 stuff to get byte locks to work correctly (except for the
1282 serialization) only to discover that files that use byte locks
1283 also request a deny write mode. luckily, byte locks only cover up
1284 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1285 synchronization locks.
1287 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1289 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1290 DEPS with double quotes so that multiple defines work.
1292 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1294 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1296 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1297 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1298 programs on the same machine opening the same file. current
1299 problems with the mechanism that i don't want to fix unless
1301 1) there's a race during the relock phase. serialization
1303 2) it assumes that each fd only locks a single contiguous
1304 range at a time. keeping a list of locked ranges would
1307 also, i changed the default to using fcntl locks. if the above two
1308 are really necessary, i'll probably switch to something a little
1309 more featureful like the berkeley db's lock manager.
1311 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1313 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1315 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1316 reduce system calls a little.
1318 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1321 * sys/solaris/Makefile: added 64-bit solaris patch from
1322 <jason@pattosoft.com.au>.
1324 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1326 * include/netatalk/endian.h: make solaris 2.5 complain less.
1328 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1329 fixed a couple problems with the adv1tov2 stuff.
1331 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1333 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1334 aligned along an even boundary.
1336 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1338 * etc/afpd/volume.c (readvolfile): added volume password support.
1340 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1342 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1343 layer multicast setting bits.
1345 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1346 prodos field info when converting.
1348 * rc.atalk.redhat: added pidof checking in case the machine
1349 crashes. also added rc.atalk.wrapper to the redhat rc script
1352 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1354 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1355 error detection here and more fully report error conditions.
1357 (flushfork): make sure to flush the header if necessary (rfork
1358 length changed or modification date needs to be set).
1360 (afp_write): ugh. this wasn't returning the right values for the
1361 last byte written if the endflag was set. in addition, it was
1362 setting the modification date. that should be left to FPCloseFork
1363 and FPFlush(Fork). this fixes a problem that shows up with
1366 NOTE: as of now, changes to the rfork info are the only things
1367 that aren't flushed immediately when altered.
1369 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1370 need to report bitmap errors if we try to fiddle with the wrong
1371 fork. i added an of_flags field to keep things sorted.
1373 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1374 movement, i forgot to make sure that the pre-asun2.2.0 features
1377 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1379 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1380 old name even when it's a directory.
1382 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1383 number of buffers used. use these when needed in afp_* calls.
1385 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1386 files when deleting a directory.
1388 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1390 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1393 * fixed up a few bobbles in the netatalk-990130 merge.
1395 * the noadouble option should be pretty much implemented. here's
1397 when a directory is created, the corresponding
1398 .AppleDouble directory is not.
1400 comments, dates, and other file attributes will get
1401 silently ignored and not result in the creation of a new
1402 .AppleDouble directory.
1404 however, if anything possessing a resource fork is copied
1405 into that directory, the corresponding .AppleDouble
1406 directory will be created. once this happens, any
1407 other file in the directory can acquire an AppleDouble
1408 header file in the future.
1410 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1412 * merged in the rest of netatalk-990130.
1414 * sys/solaris: merged in netatalk-990130 changes.
1416 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1417 tested and fixed the sendfile bits on linux. it looks like linux
1418 doesn't permit socket -> file sendfiles yet.
1420 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1421 newline character checking on.
1423 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1425 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1426 operates on a per-volume basis.
1428 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1430 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1432 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1435 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1436 implemented sendfile bits. currently, there's support for linux
1437 and freebsd. unfortunately, freebsd's implementation doesn't allow
1438 file->file or socket->file copies. bleah.
1440 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1442 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1443 volume.c (volset): added in the beginnings of a NOADOUBLE option
1444 for those that don't want AppleDouble headers to be created by
1445 default. it doesn't really work that well right now.
1447 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1449 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1450 from ad_refresh. made broken v1 header checking the default. fixed
1451 broken v1 date checking. now, it just checks to see if the v1
1452 MDATE is > than st_mtime by 5 years.
1454 * etc/afpd/directory.c: make date setting alter directory dates as
1457 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1459 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1460 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1462 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1464 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1465 shift the beginning of the fake did's if necessary.
1467 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1470 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1471 changes so that the CNIDs will still work even when the .AppleDB
1472 directory is read-only. if you're still allowed to create files on
1473 these volumes, you'll get a temporary id for those.
1475 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1477 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1478 files get cleared out on cnid_close() if it's the last user for a
1481 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1483 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1484 allows us to set the backup date on the server.
1486 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1487 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1488 with FPCatSearch to do.
1490 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1492 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1495 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1497 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1498 dbpath= in AppleVolumes.* for the CNID database.
1500 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1501 appledouble v1 environment, turn on v1compat by default.
1503 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1505 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1506 to handle broken ad headers.
1508 * etc/afpd/file.c (setfilparams): we need to make sure that we
1509 flush the file if we've created it even if there's an error. the
1510 magic number/version don't get saved if we don't.
1512 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1515 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1517 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1519 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1522 * well, what do you know? the cnid stuff compiles in.
1524 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1526 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1527 enumerate.c: added in stubs for CNID database conditional on
1528 AD_VERSION > AD_VERSION1.
1530 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1532 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1534 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1535 into hex code as well.
1537 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1539 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1541 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1543 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1544 both directions so that we can recover from problems if
1547 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1549 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1550 descends a directory and converts everything it sees into
1553 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1555 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1556 header rebuilding here so that ad_refresh can use it.
1558 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1561 * bin/megatron/asingle.c: yuk. removed all of
1562 the duplicate stuff here and had it use the #defines in adouble.h.
1564 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1565 conversion routine. we still need a shortname creator and a cnid
1566 database for the v2 features to be useful.
1568 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1570 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1571 that we don't understand.
1573 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1575 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1576 stuff. also made sure to lower/upper the 8-bit characters as
1579 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1582 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1583 attribute bits are in the correct byte ordering.
1585 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1587 * etc/afpd/volume.c (volset): made prodos an option to options=
1588 flag. also added crlf as an option.
1590 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1592 (ad_open): deal correctly with 0-length files by treating them as
1595 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1596 fork.c (getforkparams), directory.c (get/setdirparams): finished
1597 adding appledouble version 1 and 2 date conversion. also added
1600 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1601 file if we needed to fiddle with it.
1603 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1604 setting/retrieval code.
1606 * libatalk/adouble/ad_open.c (ad_open): initialize date
1607 structures here instead of elsewhere.
1609 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1611 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1612 time conversion code.
1614 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1616 * etc/afpd/volume.c (volset): changed prodos setting to
1619 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1621 * etc/afpd/volume.c (volset): okay. you now have the following
1622 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1623 tolower -> lowercases everything in both directions
1624 toupper -> uppercases everything in both directions
1625 xlatelower -> client sees lowercase, server sees uppercase
1626 xlateupper -> client sees uppercase, server sees lowercase
1628 NOTE: you only should use this if you really need to do so. this
1629 and the codepage option can cause mass confusion if applied
1630 blindly to pre-existing directories.
1632 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1634 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1635 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1636 bits 2 and 3 deal with UTOM. i did it that way so that you can
1637 casefold in one direction only or in both directions if
1638 desired. needless to say, setting both bits for UTOM or MTOU
1639 doesn't make any sense. right now, toupper takes precedence in
1640 MTOU, and tolower takes precedence in UTOM.
1642 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1644 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1645 -codepagepath to the list of available options. they specify the
1646 directories to look for uam modules and codepages,
1647 respectively. currently, -uampath doesn't do anything.
1649 * etc/afpd/volume.c (readvolfile): spruced up options to
1650 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1651 utomfile=<codepage.y>, casefold=<num> for volumes.
1653 * etc/afpd/desktop.c (utompath,mtoupath): added
1654 codepage/casefolding support. casefold is currently an int that
1655 could have multiple actions. right now, i just lowercase in
1656 mtoupath and uppercase in utompath.
1658 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1659 as an additional specifier so that we don't have problems with
1660 the same path names on multiple volumes.
1662 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1664 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1667 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1669 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1670 prevent atalkd from trying to use a slave channel.
1672 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1674 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1675 icon bit by default on the root directory. that screws up pre-OS 8
1678 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1680 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1681 so that we can gracefully shut down the server side.
1683 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1684 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1685 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1686 interval an option (-tickleval <sec>).
1688 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1689 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1690 dsi_write.c both save/restore the old timer, so they don't really
1691 care what the actual value is.
1693 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1695 * due to the recent obsession with bug fixing and low-level dsi
1696 cleanups, i've decided that this should really be asun2.1.1
1697 instead of asun2.1.0a.
1699 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1701 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1702 announcement here from etc/afpd/afp_dsi.c.
1704 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1705 into here as they're pretty generic. now, the protocol specific
1706 stuff only handles open and close.
1708 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1709 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1710 added initial stubs for sendfile support. i still need to go
1711 through and calculate the appropriate offsets to use.
1713 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1714 instead of just ignoring it.
1716 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1717 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1718 dsi_read interface to return errors so that i can kill things
1721 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1723 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1724 and write() treat a return of 0 differently.
1726 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1728 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1731 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1733 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1734 to return earlier on 0-sized files.
1736 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1738 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1739 check to here from dsi_cmdreply.
1741 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1743 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1744 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1746 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1748 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1749 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1751 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1753 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1754 fixed a couple of failed realloc leaks.
1756 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1757 to deal with case-insensitive, case-preserving filesystems.
1759 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1761 * etc/afpd/auth.c: fixed randnum password changing check.
1763 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1765 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1768 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1771 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1772 prevent buffer overflows here.
1774 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1776 * sys/linux/Makefile: fixed PAM message.
1778 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1780 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1781 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1783 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1784 should check against the entire unix name.
1786 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1788 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1789 to check against mac name.
1791 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1793 * etc/afpd/auth.c (afp_changepw): make password changing deal
1794 correctly with "real" user names. also, moved seteuid() to before
1795 the pam_authenticate() bit as shadow passwords need that.
1797 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1798 name against MACFILELEN.
1800 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1802 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1803 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1804 checks. also make sure test occurs before checking to see if the
1807 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1809 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1810 forgot that password changing needs root privileges to work.
1812 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1813 incorrect. i cleaned it up a bit.
1815 * sys/linux/Makefile: fixed the installation bits.
1817 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1819 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1820 if there's a problem.
1822 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1824 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1825 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1826 that. also made sure that files > MACFILELEN never show up.
1828 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1830 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1831 spurious pointer dereference.
1833 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1834 length so that we don't need to realloc.
1836 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1837 return AFPERR_BUSY if the dest has an ofork open.
1839 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
1840 (afp_rename): return AFPERR_SAMEOBJ if source == dest
1842 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
1844 * etc/afpd: went through and looked for places that needed to use
1845 curdir instead of dir. i think i have them all right now.
1847 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
1848 curdir correctly. what this really means is that cname should be
1849 fixed to return everything it changes as opposed to changing a
1852 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
1854 * etc/afpd/config.c (configinit): do the right thing if
1855 AFPConfigInit fails.
1857 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
1859 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
1860 embarrassing. i wasn't doing refcounts correctly.
1862 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
1864 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
1867 * sys/ultrix/Makefile: ultrix understands the old rquota format.
1869 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
1870 the current directory.
1871 (of_rename): erk. changed it to handle renaming a file that has
1872 been opened multiple times.
1874 * etc/atalkd: made sure that if you don't specify -router, things
1875 are as they were before.
1877 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
1879 * etc/afpd/status.c (status_flags): forgot to turn on password
1880 setting if randnum passwords are being used.
1882 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
1884 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
1887 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
1888 from "Fred Lindberg" <lindberg@id.wustl.edu>.
1890 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
1892 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
1893 for more AFP 2.0 compliance. unfortunately, apple's appleshare
1894 client doesn't like non-fixed directory ids.
1896 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
1898 * etc/afpd/volume.c (accessvol): the accessible volume list can
1899 now be controlled by groups and usernames. just use something of
1900 the following form: @group,name,name2,@group2,name3
1902 NOTE: you can't have any spaces, and the parser forces you to
1903 include all options. in this case, there are some apple II options
1904 that need to be entered. they need to go away soon anyway.
1906 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
1907 field into a temporary buffer before calling strtok.
1909 1998-08-29 a sun <asun@hecate.darksunrising.blah>
1911 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
1912 last router on an interface goes down, we need to delete the
1913 interface's zone table.
1915 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
1917 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
1918 i've added this in to increase AFP compliance.
1920 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
1921 should make afpd compatible with OS 8.5's Nav Services.
1923 * etc/atalkd/config.c,main.c: -router now specifies router mode
1924 with any number of interfaces.
1926 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
1928 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
1929 atalkd as a single-interface router. now, you can get zones with
1930 only single interfaces! i'm only waiting on wes for the approved
1931 configuration toggle.
1933 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
1935 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
1936 ADLOCK_* into real #defines and added translations in the
1937 lock-type specific functions. this should make it easier to
1938 recompile things without screwing up.
1940 1998-08-26 a sun <asun@hecate.darksunrising.blah>
1942 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
1945 1998-08-25 a sun <asun@hecate.darksunrising.blah>
1947 * etc/afpd/status.c (status_server): changed status_server to
1948 use only the obj part of obj:type@zone-style names.
1950 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
1951 zones properly. it was matching on anything but the actual zone.
1953 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
1955 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
1956 that solaris' pam session setup doesn't crap out.
1958 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
1960 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
1961 with zip multicast info.
1963 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
1965 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
1966 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
1967 <sys/time.h> for ultrix breakage.
1969 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
1971 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
1972 knew that speeding up of_findname would be useful. in any case, i
1973 discovered the source of yet another small AFP non-compliance that
1974 was confusing WordPerfect. on an afp_rename, we also need to
1975 rename the corresponding ofork. i've added an of_rename() to do
1978 1998-08-13 a sun <asun@hecate>
1980 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
1981 sticking refnum in ofork.
1983 1998-08-12 a sun <asun@hecate>
1985 * etc/afpd/fork.c (afp_openfork): added already open attribute
1988 * etc/afpd/ofork.c: added a hashed of_findname.
1990 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
1992 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
1993 forks from read-only non-appledouble media.
1995 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
1997 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
1998 (getvolspace): modified them to treak afs like the other
1999 getvolspaces w.r.t. VolSpace.
2001 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
2003 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
2004 used for filesystems. nfs quotas sometimes failed as a
2005 result. that's fixed now.
2007 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
2009 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
2010 it's simple to run the server process as a non-root user.
2012 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
2014 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
2015 out that i was opening lots of sockets with callaurpc. now, the
2016 socket gets saved and reused.
2018 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2019 for rquota's bsize. unless fixed, rquota will report incorrect
2022 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
2024 * etc/afpd/uam/README: added some preliminary ideas on a
2025 plug-in uam architecture. in addition, this should allow arbitrary
2026 afp function replacement. eventually, auth.c should get a
2029 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
2031 * etc/afpd/nfsquota.c: added headers and redefined a couple
2032 structure fields so that sunos4 compiles.
2034 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2035 2. this should get redhat 4.2 machines. NOTE: they're still
2036 missing librpcsvc.a, so they'll need to remove that from the
2039 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
2041 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2042 missing a couple functions needed for rquota support. here they
2045 * etc/afpd/unix.c (mountp): fixed the nfs detection for
2046 solaris. we still need bsd and ultrix.
2048 1998-07-05 a sun <asun@hecate>
2050 * include/atalk/adouble.h: marked out space for appledouble v2.
2052 1998-07-04 a sun <asun@hecate>
2054 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2055 get negative numbers for length fields and such.
2057 1998-07-04 a sun <asun@hecate>
2059 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2060 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2061 provided the initial bits from the bsd quota program.
2063 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2064 getnfsquota depending upon the type of fs.
2066 * etc/afpd/unix.c (mountp/special): munged mountp and
2067 special to return either the nfs mount point or the fs
2068 device. set the vol->v_nfs flag if it's nfs.
2070 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2071 honor results returned from uquota_getvolspace.
2073 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2075 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2076 multiple copies. as that's not the case here, i've reverted to
2077 just doing read + write.
2079 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2081 * sys/linux/Makefile: fixed the redhat-style atalk
2082 installation. also, it doesn't over-write an existing
2083 /etc/rc.d/init.d/atalk file.
2085 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2086 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2088 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2090 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2091 script instead of the bsd one.
2093 * include/atalk/adouble.h: moved same-name list stub to struct
2096 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2098 * changed to asunx.y.z notation as i was getting tired of
2099 increasing numbers. as this version is undergoing a fairly
2100 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2101 never existed. i just started at 2.0.
2103 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2104 for hashed-by-name oforks and oforks which group by name to help
2105 with byte locks and of_findname.
2107 * adouble (include/atalk/adouble.h): started implementing
2108 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2109 bits that should make prodos support much less clunky, allow
2110 persistent dids, and allow msdos support.
2112 * finder info: added bits to directory.c and file.c describing the
2113 actual contents of finder info (from IM: Toolbox
2114 Essentials). also, set default directory view to an allowed value
2115 thanks to a suggestion from the appledouble v2 specs. that should
2116 help with read-only media.
2118 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2119 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2122 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2124 * well, i'm starting a changelog as i keep forgetting what i've
2127 * locks: revamped them to be more in line with what should
2128 happen. currently, i've reverted back to flock-style locks as i'll
2129 need to stick in more code to get fcntl-style locks to work
2130 properly. specifically, i think modifying of_alloc/of_dealloc to
2131 keep track of locks, fds, and names should solve the problem with
2132 fcntl locks being process-specific and not fd specific.