1 ($Id: ChangeLog,v 1.40 2001-06-01 13:59:45 rufustfirefly Exp $)
3 2001-06-01 jeff b <jeff@univrel.pr.uconn.edu>
4 * etc/afpd/quota.c: fix for Linux compile by Sam Noble
7 2001-05-25 jeff b <jeff@univrel.pr.uconn.edu>
8 * etc/uams/uams_passwd.c: another Tru64 fix from Burkhard
9 Schmidt <bs@cpfs.mpg.de>
11 * configure.in, contrib/shell_utils/Makefile.am,
12 contrib/shell_utils/afpd-mtab.pl, doc/Makefile.am,
13 doc/COPYRIGHT.mtab, doc/README.mtab, doc/README.mtab.distribution,
14 etc/afpd/.cvsignore, etc/afpd/Makefile.am, etc/afpd/parse_mtab.c,
15 etc/afpd/parse_mtab.h, test_parse_mtab.c: experimental mtab
16 code from Bob Rogers to generate more persistant DIDs
18 2001-05-22 jeff b <jeff@univrel.pr.uconn.edu>
19 * configure.in, etc/afpd/unix.h: more portability fixes, and
20 integration of Tru64 build fix from Edmund Lam <epl@unimelb.edu.au>
22 * configure.in, bin/megatron/Makefile.am,
23 distrib/initscripts/Makefile.am, etc/afpd/main.c,
24 etc/afpd/quota.c, etc/afpd/unix.h,
25 etc/uams/uams_dhx_passwd.c, etc/uams/uams_passwd.c: Another
26 round of Tru64 patches from Burkhard Schmidt <bs@cpfs.mpg.de>
28 2001-05-09 jeff b <jeff@univrel.pr.uconn.edu>
29 * autogen.sh: added automake --include-deps to autogen.sh to
30 promote more portable Makefiles (thanks to Christian
31 Weisgerber <naddy@mips.inka.de> from OpenBSD)
33 2001-05-08 jeff b <jeff@univrel.pr.uconn.edu>
35 * bin/megatron/Makefile.am, etc/uams/Makefile.am: small Makefile fixes
36 from Olaf Hering <olh@suse.de>
38 * etc/uams/uams_dhx_passwd.c: Tru64 fixes from Burkhard Schmidt
41 2001-05-07 jeff b <jeff@univrel.pr.uconn.edu>
43 * contrib/shell_utils/netatalkshorternamelinks.pl: added script to
46 * etc/afpd/quota.c, etc/uams/uams_passwd.c: patches from Burkhard
47 Schmidt <bs@cpfs.mpg.de> to fix typos
49 2001-05-03 jeff b <jeff@univrel.pr.uconn.edu>
51 * etc/afpd/quota.c, etc/afpd/unix.h, etc/afpd/main.c,
52 etc/uams/uams_passwd.c: Tru64 patch from Burkhard Schmidt <bs@cpfs.mpg.de>
54 * configure.in, etc/afpd/quota.c, etc/afpd/unix.h: fixes for USE_*_H
55 moving to autodetected HAVE_*_H from autoconf script
57 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
59 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
60 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
61 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
62 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
63 <srittau@users.sourceforge.net> (#420300)
65 * bin/afile/*: replacement for old restrictive afile from Sebastian
66 Rittau <srittau@users.sourceforge.net> (#420302)
68 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
69 stop messages to the redhat initscript. nbpregister and unregister
70 messages are also displayed. This patch also permits spaces in zone
71 and machine names to be used in the variables. From Ryan Cleary
72 <tryanc@users.sourceforge.net> (#418094)
74 * bin/megatron/Makefile.am: patch to properly create links for
75 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
78 2001-04-25 morgan a <morgan@orst.edu>
80 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
81 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
82 were being logged and scaring users. :)
84 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
86 * configure.in: fixed problem with tcp_wrappers support; it needed to
89 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
91 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
92 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
93 be used for everything
95 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
97 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
98 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
99 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
100 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
103 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
107 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
109 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
110 Kelitz (jkeltz) to allow disabling of shell checking
112 * configure.in, contrib/Makefile.am: made timelord compilation
113 optional, disabled by default
115 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
117 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
118 at Apple, fixing server disconnect problem upon afp_createid() call
120 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
122 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
123 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
125 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
127 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
128 Noble <ns@shadow.org>
130 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
131 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
132 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
133 Akop Pogosian <akopps@csua.berkeley.edu>
135 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
137 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
138 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
139 "-L$ssldir/lib" in configure.
141 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
143 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
144 Rey <jprey@ads.ecp.fr>
146 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
148 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
149 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
151 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
153 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
154 Linux 2.0.x builds (Patch #408256)
156 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
157 to fix deleting/emptying trash problems (Patch #408218)
159 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
161 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
162 which was causing file creation problems
164 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
166 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
167 build, most notably paths, and reference to lp2pap.sh in the wrong
170 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
174 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
175 updated for 1.5pre5 release
177 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
179 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
180 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
182 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
184 * ChangeLog: started using timestamps in ChangeLog
186 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
187 (thanks to Sebastian Rittau)
189 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
191 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
192 docs/, where they should be.
194 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
196 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
199 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
201 * TODO: A few updates to papd entry.
203 * README.MORGAN: Removed README.MORGAN because that information in
204 now in papd's man page.
206 * man/man8/papd.8.tmpl: Updated papd man page to match current
207 code. Added descriptions of authenticated printing and other new
210 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
212 * libatalk/adouble/ad_open.c: AppleDouble directory creation
215 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
217 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
218 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
219 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
220 "dropbox" to available option if DROPKLUDGE is used during
223 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
225 * README: updated 1.5+ install instructions to include list of
226 required and recommended packages
228 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
230 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
231 all of the defines in the codebase
233 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
234 patch made with syslog()'s didn't include any brackets)
237 * distrib/initscripts/.cvsignore: removed pulling of atalk
239 * configure.in, etc/uams/Makefile.am: conditional compilation support
240 for PGP UAM module using --enable-pgp-uam
242 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
243 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
244 for future Kerberos module reintegration
246 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
248 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
249 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
251 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
252 instead of dumping out if appletalk module not present, from
253 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
255 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
256 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
257 suitable configure.in fixes
259 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
261 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
262 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
263 broken codepage support.
265 * ChangeLog: started updaing ChangeLog with important patch/fix
266 information, as it is *never* up to date.
268 * configure.in, acconfig.h: implemented AFS configuration option
269 patch from Wes Hardaker <hardaker@users.sourceforge.net>
271 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
274 * autogen.sh: make libtoolize copy instead of linking files to
275 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
277 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
280 - Debian packaging in tree
281 - Numerous Makefile/build fixes
282 - .cvsignore implemented
283 - Solaris build fixes
285 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
287 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
288 uid/gid per volume for afpd
290 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
292 * etc/afpd/volume.c (setvoltime): fix for multiple clients
293 writing to same volume.
295 2000-02-28 a sun <asun@asun.cobalt.com>
297 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
300 2000-02-23 a sun <asun@asun.cobalt.com>
302 * etc/afpd/volume.c (creatvol): / is a special case. you can't
303 share it unless you give it a name.
305 2000-02-21 a sun <asun@asun.cobalt.com>
307 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
308 make redhat 6.x happier.
310 2000-02-17 a sun <asun@asun.cobalt.com>
312 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
313 lock removal. this + the log right below fix ragtime.
315 2000-02-16 a sun <asun@asun.cobalt.com>
317 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
318 positioned at 0x7FFFFFFF if there's no resource fork.
320 2000-02-14 a sun <asun@asun.cobalt.com>
322 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
323 allocations happen in blocks. added missing case that omnis
326 2000-02-07 a sun <asun@asun.cobalt.com>
328 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
331 * include/atalk/adouble.h (sendfile): change to deal with
334 2000-01-25 a sun <asun@asun.cobalt.com>
336 * etc/afpd/ofork.c: keep track of oforks being used for each
337 directory so that we can update them if the directory tree gets
340 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
343 2000-01-24 a sun <asun@asun.cobalt.com>
345 * etc/afpd/directory.h (CNID): moved cnid assignment here along
348 * etc/afpd/directory.c: changed directory search to use red-black
349 trees to improve balance. parent-child tree changed to circular
350 doubly-linked list to speed up insert/remove times. there's still
351 one obstacle to actually freeing red-black tree entries. i need to
352 add an ofork list to struct dir to minimize search times.
354 2000-01-18 a sun <asun@asun.cobalt.com>
356 * etc/afpd/directory.c (dirinsert): detect attempts to add
357 pre-existing entries as just symbolic links.
359 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
360 extended to directories.
362 2000-01-03 a sun <asun@asun.cobalt.com>
364 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
367 * etc/afpd/status.c (status_init): fixed a bunch of problems here
368 that manifested under solaris 7.
370 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
374 1999-12-27 a sun <asun@asun.cobalt.com>
376 * libatalk/util/getiface.c: moved interface detection code to here
377 so that i can use if_nameindex() or getifconf() depending upon
380 1999-12-13 a sun <asun@asun.cobalt.com>
382 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
383 based interface code.
385 * etc/afpd/afp_options.c (afp_options_parseline): added
386 -server_quantum as an option. using hex would be a good idea.
388 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
389 the server quantum. by default, the server quantum is limited to
390 1MB due to a bug in the os 9 appleshare client.
392 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
395 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
398 1999-12-06 a sun <asun@asun.cobalt.com>
400 * etc/afpd/directory.c (setdirparams): don't error if we can't set
401 the desktop owner/permisssions.
403 1999-11-04 a sun <asun@asun.cobaltnet.com>
405 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
408 1999-11-02 a sun <asun@asun.cobaltnet.com>
410 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
413 1999-10-28 a sun <asun@asun.cobaltnet.com>
415 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
417 1999-10-27 a sun <asun@asun.cobaltnet.com>
419 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
422 1999-10-25 a sun <asun@asun.cobaltnet.com>
424 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
426 1999-10-21 a sun <asun@asun.cobaltnet.com>
428 * etc/afpd/Makefile (install): moved install of afpd earlier per
429 suggestion by steven michaud.
431 1999-10-05 a sun <asun@asun.cobaltnet.com>
433 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
434 ourselves into the user so that nfs is happy.
436 1999-09-19 a sun <asun@adrian5>
438 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
439 if it's on an os x server machine.
441 1999-09-15 a sun <asun@adrian5>
443 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
444 wants ATADDR_BCAST. that probably means that i need to do
445 multihoming appletalk a little differently. bleah.
447 1999-09-09 <asun@asun.cobaltnet.com>
449 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
450 (ad_open): mondo lameness. i forgot that directory lookups can be
451 done with "." as the directory name. that was auto-hiding
452 them. bleah. i also figured out which bit was the invisible bit
453 for finderinfo information.
455 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
457 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
458 that accidentally crept in.
460 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
462 * etc/afpd/quota.c (getfsquota): use group quotas in quota
463 calculations if the user belongs to a single group. just use the
464 user quotas if the user belongs to multiple groups.
466 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
467 restrict the available space to 2GB. this is for macs running
468 older versions of the operating system with newer versions of the
469 appleshare client. weird huh?
471 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
472 don't get promoted in the same way as arithmetic operations. added
473 some more casts to deal with that issue.
475 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
477 * man/man?/Makefile: don't re-build .tmp files if they already
478 exist. this gets the install phase to work correctly.
480 1999-08-13 a sun <asun@hecate.darksunrising.blah>
482 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
483 AFPERR_PARAM. also, reject names with /'s in them if the nohex
486 1999-08-12 a sun <asun@hecate.darksunrising.blah>
488 * etc/afpd/filedir.c,file.c,directory.c: changed error for
489 illegal filenames to AFPERR_EXIST.
491 1999-08-11 a sun <asun@hecate.darksunrising.blah>
493 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
494 .Parent files are no longer valid file names.
496 * etc/afpd/volume.c (volset): added usedots and nohex as
497 options. usedots stops :hex translation of . files while nohex
498 stops :hex translation of everything but . files. in addition,
499 . files created on the unix side are by default hidden.
501 * libatalk/adouble/ad_open.c: initialize more bits.
503 1999-08-10 a sun <asun@hecate.darksunrising.blah>
505 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
506 actual name for nbp registration rather than ATALK_NAME.
508 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
509 get used when building the kernel module.
511 * sys/solaris: changed strings.h to string.h
513 1999-08-08 a sun <asun@hecate.darksunrising.blah>
515 * etc/afpd/volume.c (readvolfile): changed volume options into an
516 array of structs to ease maintenance.
518 1999-08-05 a sun <asun@hecate.darksunrising.blah>
520 * etc/afpd/status.c (status_init): change the default icon
521 depending upon whether or not it's an ASIP or an AppleTalk
524 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
526 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
527 little more informative.
529 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
531 * yippee. someone figured what was happening with the installation
532 of the man pages. i got rid of a duplicate entry.
534 1999-08-02 a sun <asun@hecate.darksunrising.blah>
536 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
537 default options. it keys in on a :DEFAULT: label.
539 1999-07-30 a sun <asun@hecate.darksunrising.blah>
541 * moved rc.atalk.* scripts to distrib/initscripts.
543 1999-07-27 a sun <asun@hecate.darksunrising.blah>
545 * contrib/printing: added patch from job@uchicago.edu
547 * etc/afpd/file.c: forgot to initialize struct ad in
550 * etc/afpd/nls/makecode.c: added an empty mapping.
552 * etc/psf/Makefile (install): well cp -d didn't work either. just
555 1999-07-26 a sun <asun@hecate.darksunrising.blah>
557 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
558 (from denny@geekworld.com).
560 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
561 and patch files from inoue.
563 * sys/linux/Makefile (install-sysv): fixed up a bit.
565 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
568 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
569 of -icon. now it means to use the yucky bitmap instead of the
572 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
575 1999-07-18 a sun <asun@hecate.darksunrising.blah>
577 * create links/mangle files in the compile rather than the install
578 phase so that rpm will be happier.
580 1999-07-17 a sun <asun@hecate.darksunrising.blah>
582 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
583 filedir.c (afp_rename, afp_moveandrename): don't allow the
584 creation/renaming of names with certain characters if mswindows
585 compatibility is enabled.
587 1999-07-16 a sun <asun@hecate.darksunrising.blah>
589 * rc.atalk.redhat: incorporated chkconfig from inoue.
591 1999-07-15 a sun <asun@hecate.darksunrising.blah>
593 * etc/atalkd/config.c (getifconf): wrap check against
594 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
596 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
598 1999-07-11 a sun <asun@hecate.darksunrising.blah>
600 * contrib/ICDumpSuffixMap: added internet config perl script from
603 * contrib/printing: added contributed solaris printing scripts
604 from job@uchicago.edu.
606 1999-07-10 a sun <asun@hecate.darksunrising.blah>
608 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
610 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
612 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
615 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
617 1999-07-08 a sun <asun@hecate.darksunrising.blah>
619 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
620 address already exists.
622 1999-07-06 a sun <asun@hecate.darksunrising.blah>
624 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
626 1999-07-05 a sun <asun@hecate.darksunrising.blah>
628 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
629 is so that we can filter by interface in the future. however, it
630 doesn't seem to work that well right now. bleah.
632 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
633 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
636 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
637 etc/papd,afpd: accept -A <ddp address> as an option so that you
638 can specify the address to be used on a multihomed server. for
639 papd, you use the 'pa' option in papd.conf.
641 1999-07-04 a sun <asun@hecate.darksunrising.blah>
643 * etc/atalkd/config.c (parseline): initialize parseline properly
644 so that we don't get extraneous junk.
646 * etc/afpd/afp_options.c (afp_options_parseline): do
647 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
649 * etc/atalkd/config.c (getifconf/readconf): check to see if the
650 supported device can support appletalk addresses. either continue
651 or exit depending upon whether or not it's auto-configed.
653 1999-07-03 a sun <asun@hecate.darksunrising.blah>
655 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
656 toggle the volume icon so that it uses the apple icon instead.
658 * etc/afpd/config.c (AFPConfigInit): added more logic for the
659 -proxy option. here are the rules: -proxy will always try to
660 create a DDP server instance. by default, the proxy server will
661 still allow you to login with an appletalk connection. to prevent
662 that, just set the uamlist to an empty string.
664 1999-07-02 a sun <asun@hecate.darksunrising.blah>
666 * etc/afpd/status.c (status_netaddress): added support for fqdn
667 (not available in the appleshare client yet).
669 1999-07-01 a sun <asun@hecate.darksunrising.blah>
671 * etc/afpd/config.c (DSIConfigInit): application code for proxy
672 setup. it's the -proxy option.
674 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
675 support for proxy setup.
677 1999-06-30 a sun <asun@hecate.darksunrising.blah>
679 * etc/afpd/filedir.c (afp_rename): fixed up some error
680 codes. quark express should be happier.
682 * etc/afpd/uam.c (uam_afpserver_option): added
683 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
684 report that setting that fixes pam on solaris machines.
686 1999-06-28 a sun <asun@hecate.darksunrising.blah>
688 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
690 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
692 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
694 * etc/afpd/fork.c (afp_write): fixed up error condition.
696 1999-06-26 a sun <asun@hecate.darksunrising.blah>
698 * etc/uams/Makefile (install): changed install location of uams.
700 * sys/linux/Makefile (install-sysv): always install redhat
701 script. netatalk.config script only gets installed if it's not
704 1999-06-23 a sun <asun@hecate.darksunrising.blah>
706 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
708 * etc/afpd/afp_options.c (afp_options_init): changed default
711 1999-06-22 a sun <asun@hecate.darksunrising.blah>
713 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
714 just the server name here.
716 * etc/afpd/volume.c (volxlate): made $s return something
717 meaningful no matter what.
719 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
722 1999-06-20 a sun <asun@hecate.darksunrising.blah>
724 * etc/afpd/volume.c (volxlate): added variable substitution. if it
725 doesn't understand the variable, it just spits it back out.
727 (creatvol): display truncated volume name if it's too long.
729 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
730 with oses that have -lcrypt but shouldn't use it.
732 1999-06-11 a sun <asun@hecate.darksunrising.blah>
734 * include/atalk/afp.h: added comments to FPErrors.
736 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
739 * include/atalk/util.h: server_lock() returns pid_t.
741 1999-06-10 a sun <asun@hecate.darksunrising.blah>
743 * README.ASUN: added location for both ssleay and openssl.
745 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
746 server." in the future, there will be "uamc_*." changed the shared
747 library names to match.
749 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
751 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
754 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
757 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
758 type field. do type check.
760 * etc/uams/uam_*pam.c: added a couple more error codes.
762 1999-06-08 a sun <asun@hecate.darksunrising.blah>
764 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
765 codepage.h gets made.
767 * libatalk/*/Makefile: make sure that the profiled directory gets
770 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
771 that was causing mapname to fail.
773 1999-06-07 a sun <asun@hecate.darksunrising.blah>
775 * etc/atalkd/main.c (main): added a note to check the syslog if
776 atalkd can't be setup.
778 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
779 auto-detected #defines.
781 1999-06-06 a sun <asun@hecate.darksunrising.blah>
783 * etc/afpd/fork.c (afp_write): argh. i moved things around a
784 little too much and ended up with an uninitialized eid. strangely,
785 the compiler didn't complain. simplified bits a little as
786 well. also, FPWrite was returning the wrong error messages. on
787 64-bit filesystems, the offset can wraparound. so, report a disk
788 full error if that's going to happen. egcs-19990602 gets one
789 memcpy right and another wrong on my udb. bleah.
791 (afp_read): fixed the error messages here as well.
793 1999-06-05 a sun <asun@hecate.darksunrising.blah>
795 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
796 some links on the fly if they're missing.
798 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
799 re-arranged a little.
801 1999-06-04 a sun <asun@hecate.darksunrising.blah>
803 * etc/afpd: prototyped everything here and moved the FP functions
806 * libatalk/util/bprint.c: moved all of the bprints to here.
808 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
810 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
812 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
815 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
818 * bin/afppasswd/afppasswd.c: added -a option so that root can add
819 new users. turned all of the options into bits. added newlines to
822 1999-06-03 a sun <asun@hecate.darksunrising.blah>
824 * sys/freebsd/Makefile: turn on sendfile support if running on a
827 1999-06-02 a sun <asun@hecate.darksunrising.blah>
829 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
830 conversation function.
832 * sys/*/Makefile: check at make time to see if -lrpcsvc and
833 -lcrypt should be included in the appropriate places.
835 1999-05-28 a sun <asun@hecate.darksunrising.blah>
837 * etc/afpd/file.c (deletefile): added more error checking here as
840 * etc/afpd/directory.c (renamedir): added a couple a few more
843 * sys/sunos/Makefile: sunos should really work now.
845 1999-05-27 a sun <asun@hecate.darksunrising.blah>
847 * include/atalk/afp.h: added in a couple new error codes (one
848 deals with password setting policy, the other with maximum logins
851 * etc/afpd/fork.c (afp_openfork): try to re-open files on
852 read-only volumes as read-only.
854 1999-05-26 a sun <asun@hecate.darksunrising.blah>
856 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
857 uname -p. other oses seem to use uname -m for the same information.
859 * etc/uams/uam_pam.c (pam_changepw): added check for same
862 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
863 same password checks.
865 * sys/osx/Makefile: moved the os x server stuff into its own build
868 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
869 and MACHINETYPE for some stuff.
871 1999-05-25 a sun <asun@hecate.darksunrising.blah>
873 * sys/sunos/Makefile: various bits to make stuff work with sunos
876 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
878 * etc/afpd/file.c (copyfile): only copy the header file if newname
881 * etc/afpd/directory.c (copydir): make sure to balk if the
882 directory already exists. in addition, make sure to preserve the
885 1999-05-24 a sun <asun@hecate.darksunrising.blah>
887 * bin/afppasswd/afppasswd.c: global password updating utility for
888 the randnum authentication method.
890 1999-05-22 a sun <asun@hecate.darksunrising.blah>
892 * etc/uams/uam_randnum.c (afppasswd): added in global password
893 file for the randnum authentication method. it looks for a .key
894 file as well to handle encryption.
896 * etc/afpd/afp_options.c (afp_options_parseline): added
897 -passwdfile as an option so that you can specify a global randnum
898 password file if desired.
900 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
901 as an AppleVolumes.* option. if the user is in the rolist, the
902 volume gets set as readonly. if there's a rwlist, and the user
903 isn't in it, the volume also gets set as readonly.
905 1999-05-21 a sun <asun@hecate.darksunrising.blah>
907 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
908 can't allocate the reference counting variable.
910 * etc/uams/uam_*.c: make sure that uam_setup returns an error
913 1999-05-19 a sun <asun@hecate.darksunrising.blah>
915 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
916 /var/run as the lock file directory.
918 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
919 a problem with FPWrite getting a request count of 0. that's
922 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
923 load itself from a shared library. i've compensated by linking it
926 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
927 still screwy with the dhx_pam stuff though.
929 1999-05-18 a sun <asun@hecate.darksunrising.blah>
931 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
932 username to fit what's in pw->pw_name if necessary.
934 1999-05-16 a sun <asun@hecate.darksunrising.blah>
936 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
937 authentication method. i'm still missing a little info to get it
940 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
941 create it from the unix name.
943 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
944 and fdType into strings.
946 1999-05-16 a sun <asun@pelvetia>
948 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
949 little. now, you pass in an int * if you want to either get/set
950 the size of the option. added in UAM_OPTION_RANDNUM for generic
951 (4-byte granularity) random number generation.
953 * etc/afpd/switch.c: added afp_logout to preauth_switch.
955 1999-05-15 a sun <asun@hecate.darksunrising.blah>
957 * bin/megatron/macbin.c (bin_open): make error message for
958 macbinary files more informative.
960 (test_header): added more macbinary tests. it now has a workaround
961 for apple's incorrectly generated macbinary files.
963 1999-05-14 a sun <asun@hecate.darksunrising.blah>
965 * sys/solaris/Makefile: added shared library generation bits.
967 * etc/uams: moved server-side uams here.
969 * include/netatalk/endian.h: fixed some solaris bits.
971 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
972 do an atp_close and free the asp object. oh yeah, as afpd needs
973 to export symbols to its modules, make sure you don't do anything
974 more exciting than strip --strip-debug with it.
976 1999-05-12 a sun <asun@hecate.darksunrising.blah>
978 * various places that use sigaction: zero out struct sigaction so
979 that we don't send something confusing. also make sure that we
980 don't set a timer unless we already have a sigaction set.
982 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
983 empty resource fork read-only. also, added back in the bit of code
984 that prevented locks from being attempted on non-existent resource
987 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
990 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
993 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
994 convert this over to use by the netddp interface.
996 1999-05-12 a sun <asun@pelvetia>
998 * etc/afpd/uam.c: os x server's runtime library loader is
999 braindead. as a result, i've switched to using an exported struct
1000 with the uam's name.
1002 * bin/aecho,getzones: changed these to use the netddp interface.
1004 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
1006 * libatalk/netddp: abstracted the ddp interface to netddp. besides
1007 the prior socket-driven interface, there's now an os x server
1008 interface. so, instead of calling socket/sendto/recvfrom, you call
1009 netddp_open/netddp_sendto/netddp_recvfrom.
1011 1999-05-11 a sun <asun@pelvetia>
1013 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
1016 * etc/atalkd/main.c (main): make sure that if -dontroute is
1017 selected for all but one interface, that interface also gets
1020 1999-05-10 a sun <asun@hecate.darksunrising.blah>
1022 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
1023 smaller than it used to be.
1025 1999-05-09 a sun <asun@hecate.darksunrising.blah>
1027 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
1028 uam_randnum.c: uam modules. these should probably be moved out of
1029 afpd (and into something like etc/uam_server) when the printing
1030 stuff gets uam support.
1032 1999-05-08 a sun <asun@hecate.darksunrising.blah>
1034 * etc/afpd/uam.c: interface to user authentication modules.
1035 it should eventually be moved to libatalk, but that's not
1036 necessary until the printing uam stuff is done. everything is from
1037 the server-side perspective, but that's only because there aren't
1038 any client-side uses right now.
1040 * libatalk/util/module.c: generic interface to run-time library
1041 loading functions. right now, the dlfcn family and os x server's
1042 NS-style way of doing things are the ones understood. in addition,
1043 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
1045 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
1046 write part of write continuations.
1048 1999-05-07 a sun <asun@hecate.darksunrising.blah>
1050 * etc/atalkd: added the ability to turn off routing for particular
1051 interfaces. specify -dontroute for each interface that you don't
1054 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1056 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1057 using obj->username.
1059 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1061 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1062 forever if there's a problem while it's being used. that's fixed.
1064 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1066 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1067 so that renaming a directory works across filesystems.
1069 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1071 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1072 what's stored in the header file.
1074 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1075 afpd.conf more understandable.
1077 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1078 endian converted. that's fixed.
1080 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1081 necessarily ORable, so use ADLOCK_RD/WR instead.
1083 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1084 unlock accidentally getting the data fork locks.
1086 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1088 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1091 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1093 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1094 turned the mmapped header stuff into and #ifdef
1095 USE_MMAPPED_HEADERS option.
1097 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1098 the hfs fs doesn't currently have mmappable header files. rather
1099 than implement that, i just reverted back to a modified version
1100 of the old way of reading headers.
1102 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1104 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1107 (afp_openfork): deal with read-only data forks that don't have
1108 corresponding .AppleDouble files. we can't really do anything with
1109 deny locks in this case. just make sure that read locks are set.
1111 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1112 around FILPBIT_FINFO.
1114 * etc/afpd/fork.c (afp_read): as we share open files now, check
1115 for fork type against of_flags instead of just checking to see if
1116 the file is open. this fixes a bug that caused resource forks to
1117 get filled with data fork information.
1119 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1121 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1124 1999-04-09 a sun <asun@mead1.u.washington.edu>
1126 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1129 1999-04-09 a sun <asun@saul6.u.washington.edu>
1131 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1132 with quota support enabled.
1134 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1136 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1137 config/AppleVolumes.default: added read-only volume option.
1139 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1142 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1144 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1145 (from <jk@espy.org>).
1146 (bin_header_write/read): fixed up screwed up file date
1147 generation/reading with macbinary files.
1149 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1150 memcpy/memset/memcmp's. added macbinary III support.
1152 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1153 that we can stream macbinary file creation to stdout.
1155 * bin/megatron/megatron.c: incorporated information patch (--header
1156 and --macheader) from <fmorton@base2inc.com>.
1159 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1161 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1164 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1165 dummy ints for some of the files that can get compiled to empty
1166 objects. check for the type of msync() available as well.
1168 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1170 * INSTALL/README.GENERIC: added information for a generic
1171 architecture. It includes the information needed to get netatalk
1172 to compile on a random unix platform.
1174 * etc/afpd/quota.c: moved the quota stuff here so that we can
1175 #ifdef it out on a machine without quota support.
1177 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1179 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1180 well. this prevents multiple read locks on the same byte range
1181 from disappearing if one user disappears.
1183 (ad_fcntl_lock): here are the current rules for file
1185 1) if there's a appledouble header, we use the beginning
1186 of that for both data and resource forks.
1187 2) if there isn't, we use the end of the data fork (or past the
1188 end on 64-bit machines)
1190 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1192 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1193 appledouble entry parts is done.
1195 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1198 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1200 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1201 appledouble header parsing more generic so that we can read in
1202 arbitrary appledouble header files. i just mmap the parts that we
1205 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1207 * etc/afpd/file.c (afp_copyfile): return the correct error
1208 response on a failed copy. also, error if the file is already open
1209 to prevent problems with locks. we really need to ad_lock
1210 this during the copy
1212 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1214 * etc/afpd/volume.c (readvolfile): switched volume options to
1215 using ':' as a delimiter as that's one of the characters that's
1216 not allowed as part of a mac filename.
1217 (volset): changed access to allow/deny
1219 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1222 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1224 * NOTE to myself: jeremy allison said that samba uses refcounts to
1225 prevent close() from killing all the byte locks. so, i've started
1226 converting afpd to using refcounting as well. luckily, we already
1227 have of_findname, so we know when files are open. in cases where
1228 files are already open, this will replace an ad_open with a lookup
1231 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1232 NULL names when getting directory/file names.
1234 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1235 sure these are always in network byte order.
1237 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1239 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1240 synchronization bits. now, we use two bytes to do the read/write
1241 stuff. when access is needed, a read lock is attempted. if a deny
1242 lock is needed, a write lock is attempted. we even handle the
1243 access None mode now by saving the access modes.
1245 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1246 we can obey all of the file synchronization rules.
1248 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1249 reversed. with helios lantest's lock/unlock 4000 times test, it
1250 looks like i get <1 second overhead on my machine when using byte
1251 locks. NOTE: this will get a little worse when serialization gets
1252 added. in addition, 0x80000000 only works for 64-bit machines. i
1253 reserve the last allowable bit for 32-bit machines.
1255 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1256 now as i'm able to trigger a kernel oops in linux with the 64-bit
1259 (afp_read/afp_write): make sure to use the same offset when doing
1262 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1264 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1265 stuff to get byte locks to work correctly (except for the
1266 serialization) only to discover that files that use byte locks
1267 also request a deny write mode. luckily, byte locks only cover up
1268 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1269 synchronization locks.
1271 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1273 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1274 DEPS with double quotes so that multiple defines work.
1276 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1278 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1280 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1281 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1282 programs on the same machine opening the same file. current
1283 problems with the mechanism that i don't want to fix unless
1285 1) there's a race during the relock phase. serialization
1287 2) it assumes that each fd only locks a single contiguous
1288 range at a time. keeping a list of locked ranges would
1291 also, i changed the default to using fcntl locks. if the above two
1292 are really necessary, i'll probably switch to something a little
1293 more featureful like the berkeley db's lock manager.
1295 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1297 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1299 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1300 reduce system calls a little.
1302 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1305 * sys/solaris/Makefile: added 64-bit solaris patch from
1306 <jason@pattosoft.com.au>.
1308 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1310 * include/netatalk/endian.h: make solaris 2.5 complain less.
1312 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1313 fixed a couple problems with the adv1tov2 stuff.
1315 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1317 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1318 aligned along an even boundary.
1320 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1322 * etc/afpd/volume.c (readvolfile): added volume password support.
1324 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1326 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1327 layer multicast setting bits.
1329 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1330 prodos field info when converting.
1332 * rc.atalk.redhat: added pidof checking in case the machine
1333 crashes. also added rc.atalk.wrapper to the redhat rc script
1336 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1338 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1339 error detection here and more fully report error conditions.
1341 (flushfork): make sure to flush the header if necessary (rfork
1342 length changed or modification date needs to be set).
1344 (afp_write): ugh. this wasn't returning the right values for the
1345 last byte written if the endflag was set. in addition, it was
1346 setting the modification date. that should be left to FPCloseFork
1347 and FPFlush(Fork). this fixes a problem that shows up with
1350 NOTE: as of now, changes to the rfork info are the only things
1351 that aren't flushed immediately when altered.
1353 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1354 need to report bitmap errors if we try to fiddle with the wrong
1355 fork. i added an of_flags field to keep things sorted.
1357 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1358 movement, i forgot to make sure that the pre-asun2.2.0 features
1361 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1363 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1364 old name even when it's a directory.
1366 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1367 number of buffers used. use these when needed in afp_* calls.
1369 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1370 files when deleting a directory.
1372 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1374 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1377 * fixed up a few bobbles in the netatalk-990130 merge.
1379 * the noadouble option should be pretty much implemented. here's
1381 when a directory is created, the corresponding
1382 .AppleDouble directory is not.
1384 comments, dates, and other file attributes will get
1385 silently ignored and not result in the creation of a new
1386 .AppleDouble directory.
1388 however, if anything possessing a resource fork is copied
1389 into that directory, the corresponding .AppleDouble
1390 directory will be created. once this happens, any
1391 other file in the directory can acquire an AppleDouble
1392 header file in the future.
1394 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1396 * merged in the rest of netatalk-990130.
1398 * sys/solaris: merged in netatalk-990130 changes.
1400 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1401 tested and fixed the sendfile bits on linux. it looks like linux
1402 doesn't permit socket -> file sendfiles yet.
1404 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1405 newline character checking on.
1407 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1409 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1410 operates on a per-volume basis.
1412 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1414 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1416 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1419 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1420 implemented sendfile bits. currently, there's support for linux
1421 and freebsd. unfortunately, freebsd's implementation doesn't allow
1422 file->file or socket->file copies. bleah.
1424 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1426 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1427 volume.c (volset): added in the beginnings of a NOADOUBLE option
1428 for those that don't want AppleDouble headers to be created by
1429 default. it doesn't really work that well right now.
1431 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1433 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1434 from ad_refresh. made broken v1 header checking the default. fixed
1435 broken v1 date checking. now, it just checks to see if the v1
1436 MDATE is > than st_mtime by 5 years.
1438 * etc/afpd/directory.c: make date setting alter directory dates as
1441 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1443 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1444 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1446 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1448 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1449 shift the beginning of the fake did's if necessary.
1451 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1454 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1455 changes so that the CNIDs will still work even when the .AppleDB
1456 directory is read-only. if you're still allowed to create files on
1457 these volumes, you'll get a temporary id for those.
1459 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1461 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1462 files get cleared out on cnid_close() if it's the last user for a
1465 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1467 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1468 allows us to set the backup date on the server.
1470 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1471 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1472 with FPCatSearch to do.
1474 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1476 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1479 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1481 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1482 dbpath= in AppleVolumes.* for the CNID database.
1484 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1485 appledouble v1 environment, turn on v1compat by default.
1487 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1489 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1490 to handle broken ad headers.
1492 * etc/afpd/file.c (setfilparams): we need to make sure that we
1493 flush the file if we've created it even if there's an error. the
1494 magic number/version don't get saved if we don't.
1496 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1499 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1501 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1503 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1506 * well, what do you know? the cnid stuff compiles in.
1508 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1510 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1511 enumerate.c: added in stubs for CNID database conditional on
1512 AD_VERSION > AD_VERSION1.
1514 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1516 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1518 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1519 into hex code as well.
1521 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1523 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1525 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1527 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1528 both directions so that we can recover from problems if
1531 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1533 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1534 descends a directory and converts everything it sees into
1537 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1539 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1540 header rebuilding here so that ad_refresh can use it.
1542 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1545 * bin/megatron/asingle.c: yuk. removed all of
1546 the duplicate stuff here and had it use the #defines in adouble.h.
1548 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1549 conversion routine. we still need a shortname creator and a cnid
1550 database for the v2 features to be useful.
1552 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1554 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1555 that we don't understand.
1557 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1559 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1560 stuff. also made sure to lower/upper the 8-bit characters as
1563 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1566 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1567 attribute bits are in the correct byte ordering.
1569 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1571 * etc/afpd/volume.c (volset): made prodos an option to options=
1572 flag. also added crlf as an option.
1574 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1576 (ad_open): deal correctly with 0-length files by treating them as
1579 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1580 fork.c (getforkparams), directory.c (get/setdirparams): finished
1581 adding appledouble version 1 and 2 date conversion. also added
1584 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1585 file if we needed to fiddle with it.
1587 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1588 setting/retrieval code.
1590 * libatalk/adouble/ad_open.c (ad_open): initialize date
1591 structures here instead of elsewhere.
1593 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1595 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1596 time conversion code.
1598 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1600 * etc/afpd/volume.c (volset): changed prodos setting to
1603 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1605 * etc/afpd/volume.c (volset): okay. you now have the following
1606 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1607 tolower -> lowercases everything in both directions
1608 toupper -> uppercases everything in both directions
1609 xlatelower -> client sees lowercase, server sees uppercase
1610 xlateupper -> client sees uppercase, server sees lowercase
1612 NOTE: you only should use this if you really need to do so. this
1613 and the codepage option can cause mass confusion if applied
1614 blindly to pre-existing directories.
1616 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1618 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1619 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1620 bits 2 and 3 deal with UTOM. i did it that way so that you can
1621 casefold in one direction only or in both directions if
1622 desired. needless to say, setting both bits for UTOM or MTOU
1623 doesn't make any sense. right now, toupper takes precedence in
1624 MTOU, and tolower takes precedence in UTOM.
1626 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1628 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1629 -codepagepath to the list of available options. they specify the
1630 directories to look for uam modules and codepages,
1631 respectively. currently, -uampath doesn't do anything.
1633 * etc/afpd/volume.c (readvolfile): spruced up options to
1634 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1635 utomfile=<codepage.y>, casefold=<num> for volumes.
1637 * etc/afpd/desktop.c (utompath,mtoupath): added
1638 codepage/casefolding support. casefold is currently an int that
1639 could have multiple actions. right now, i just lowercase in
1640 mtoupath and uppercase in utompath.
1642 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1643 as an additional specifier so that we don't have problems with
1644 the same path names on multiple volumes.
1646 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1648 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1651 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1653 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1654 prevent atalkd from trying to use a slave channel.
1656 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1658 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1659 icon bit by default on the root directory. that screws up pre-OS 8
1662 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1664 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1665 so that we can gracefully shut down the server side.
1667 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1668 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1669 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1670 interval an option (-tickleval <sec>).
1672 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1673 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1674 dsi_write.c both save/restore the old timer, so they don't really
1675 care what the actual value is.
1677 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1679 * due to the recent obsession with bug fixing and low-level dsi
1680 cleanups, i've decided that this should really be asun2.1.1
1681 instead of asun2.1.0a.
1683 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1685 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1686 announcement here from etc/afpd/afp_dsi.c.
1688 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1689 into here as they're pretty generic. now, the protocol specific
1690 stuff only handles open and close.
1692 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1693 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1694 added initial stubs for sendfile support. i still need to go
1695 through and calculate the appropriate offsets to use.
1697 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1698 instead of just ignoring it.
1700 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1701 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1702 dsi_read interface to return errors so that i can kill things
1705 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1707 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1708 and write() treat a return of 0 differently.
1710 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1712 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1715 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1717 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1718 to return earlier on 0-sized files.
1720 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1722 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1723 check to here from dsi_cmdreply.
1725 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1727 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1728 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1730 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1732 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1733 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1735 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1737 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1738 fixed a couple of failed realloc leaks.
1740 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1741 to deal with case-insensitive, case-preserving filesystems.
1743 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1745 * etc/afpd/auth.c: fixed randnum password changing check.
1747 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1749 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1752 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1755 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1756 prevent buffer overflows here.
1758 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1760 * sys/linux/Makefile: fixed PAM message.
1762 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1764 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1765 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1767 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1768 should check against the entire unix name.
1770 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1772 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1773 to check against mac name.
1775 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1777 * etc/afpd/auth.c (afp_changepw): make password changing deal
1778 correctly with "real" user names. also, moved seteuid() to before
1779 the pam_authenticate() bit as shadow passwords need that.
1781 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1782 name against MACFILELEN.
1784 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1786 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1787 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1788 checks. also make sure test occurs before checking to see if the
1791 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1793 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1794 forgot that password changing needs root privileges to work.
1796 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1797 incorrect. i cleaned it up a bit.
1799 * sys/linux/Makefile: fixed the installation bits.
1801 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1803 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1804 if there's a problem.
1806 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1808 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1809 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1810 that. also made sure that files > MACFILELEN never show up.
1812 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1814 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1815 spurious pointer dereference.
1817 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1818 length so that we don't need to realloc.
1820 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1821 return AFPERR_BUSY if the dest has an ofork open.
1823 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
1824 (afp_rename): return AFPERR_SAMEOBJ if source == dest
1826 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
1828 * etc/afpd: went through and looked for places that needed to use
1829 curdir instead of dir. i think i have them all right now.
1831 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
1832 curdir correctly. what this really means is that cname should be
1833 fixed to return everything it changes as opposed to changing a
1836 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
1838 * etc/afpd/config.c (configinit): do the right thing if
1839 AFPConfigInit fails.
1841 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
1843 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
1844 embarrassing. i wasn't doing refcounts correctly.
1846 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
1848 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
1851 * sys/ultrix/Makefile: ultrix understands the old rquota format.
1853 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
1854 the current directory.
1855 (of_rename): erk. changed it to handle renaming a file that has
1856 been opened multiple times.
1858 * etc/atalkd: made sure that if you don't specify -router, things
1859 are as they were before.
1861 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
1863 * etc/afpd/status.c (status_flags): forgot to turn on password
1864 setting if randnum passwords are being used.
1866 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
1868 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
1871 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
1872 from "Fred Lindberg" <lindberg@id.wustl.edu>.
1874 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
1876 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
1877 for more AFP 2.0 compliance. unfortunately, apple's appleshare
1878 client doesn't like non-fixed directory ids.
1880 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
1882 * etc/afpd/volume.c (accessvol): the accessible volume list can
1883 now be controlled by groups and usernames. just use something of
1884 the following form: @group,name,name2,@group2,name3
1886 NOTE: you can't have any spaces, and the parser forces you to
1887 include all options. in this case, there are some apple II options
1888 that need to be entered. they need to go away soon anyway.
1890 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
1891 field into a temporary buffer before calling strtok.
1893 1998-08-29 a sun <asun@hecate.darksunrising.blah>
1895 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
1896 last router on an interface goes down, we need to delete the
1897 interface's zone table.
1899 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
1901 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
1902 i've added this in to increase AFP compliance.
1904 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
1905 should make afpd compatible with OS 8.5's Nav Services.
1907 * etc/atalkd/config.c,main.c: -router now specifies router mode
1908 with any number of interfaces.
1910 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
1912 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
1913 atalkd as a single-interface router. now, you can get zones with
1914 only single interfaces! i'm only waiting on wes for the approved
1915 configuration toggle.
1917 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
1919 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
1920 ADLOCK_* into real #defines and added translations in the
1921 lock-type specific functions. this should make it easier to
1922 recompile things without screwing up.
1924 1998-08-26 a sun <asun@hecate.darksunrising.blah>
1926 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
1929 1998-08-25 a sun <asun@hecate.darksunrising.blah>
1931 * etc/afpd/status.c (status_server): changed status_server to
1932 use only the obj part of obj:type@zone-style names.
1934 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
1935 zones properly. it was matching on anything but the actual zone.
1937 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
1939 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
1940 that solaris' pam session setup doesn't crap out.
1942 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
1944 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
1945 with zip multicast info.
1947 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
1949 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
1950 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
1951 <sys/time.h> for ultrix breakage.
1953 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
1955 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
1956 knew that speeding up of_findname would be useful. in any case, i
1957 discovered the source of yet another small AFP non-compliance that
1958 was confusing WordPerfect. on an afp_rename, we also need to
1959 rename the corresponding ofork. i've added an of_rename() to do
1962 1998-08-13 a sun <asun@hecate>
1964 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
1965 sticking refnum in ofork.
1967 1998-08-12 a sun <asun@hecate>
1969 * etc/afpd/fork.c (afp_openfork): added already open attribute
1972 * etc/afpd/ofork.c: added a hashed of_findname.
1974 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
1976 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
1977 forks from read-only non-appledouble media.
1979 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
1981 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
1982 (getvolspace): modified them to treak afs like the other
1983 getvolspaces w.r.t. VolSpace.
1985 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
1987 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
1988 used for filesystems. nfs quotas sometimes failed as a
1989 result. that's fixed now.
1991 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
1993 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
1994 it's simple to run the server process as a non-root user.
1996 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
1998 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
1999 out that i was opening lots of sockets with callaurpc. now, the
2000 socket gets saved and reused.
2002 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
2003 for rquota's bsize. unless fixed, rquota will report incorrect
2006 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
2008 * etc/afpd/uam/README: added some preliminary ideas on a
2009 plug-in uam architecture. in addition, this should allow arbitrary
2010 afp function replacement. eventually, auth.c should get a
2013 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
2015 * etc/afpd/nfsquota.c: added headers and redefined a couple
2016 structure fields so that sunos4 compiles.
2018 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
2019 2. this should get redhat 4.2 machines. NOTE: they're still
2020 missing librpcsvc.a, so they'll need to remove that from the
2023 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
2025 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
2026 missing a couple functions needed for rquota support. here they
2029 * etc/afpd/unix.c (mountp): fixed the nfs detection for
2030 solaris. we still need bsd and ultrix.
2032 1998-07-05 a sun <asun@hecate>
2034 * include/atalk/adouble.h: marked out space for appledouble v2.
2036 1998-07-04 a sun <asun@hecate>
2038 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
2039 get negative numbers for length fields and such.
2041 1998-07-04 a sun <asun@hecate>
2043 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
2044 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
2045 provided the initial bits from the bsd quota program.
2047 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
2048 getnfsquota depending upon the type of fs.
2050 * etc/afpd/unix.c (mountp/special): munged mountp and
2051 special to return either the nfs mount point or the fs
2052 device. set the vol->v_nfs flag if it's nfs.
2054 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2055 honor results returned from uquota_getvolspace.
2057 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2059 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2060 multiple copies. as that's not the case here, i've reverted to
2061 just doing read + write.
2063 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2065 * sys/linux/Makefile: fixed the redhat-style atalk
2066 installation. also, it doesn't over-write an existing
2067 /etc/rc.d/init.d/atalk file.
2069 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2070 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2072 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2074 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2075 script instead of the bsd one.
2077 * include/atalk/adouble.h: moved same-name list stub to struct
2080 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2082 * changed to asunx.y.z notation as i was getting tired of
2083 increasing numbers. as this version is undergoing a fairly
2084 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2085 never existed. i just started at 2.0.
2087 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2088 for hashed-by-name oforks and oforks which group by name to help
2089 with byte locks and of_findname.
2091 * adouble (include/atalk/adouble.h): started implementing
2092 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2093 bits that should make prodos support much less clunky, allow
2094 persistent dids, and allow msdos support.
2096 * finder info: added bits to directory.c and file.c describing the
2097 actual contents of finder info (from IM: Toolbox
2098 Essentials). also, set default directory view to an allowed value
2099 thanks to a suggestion from the appledouble v2 specs. that should
2100 help with read-only media.
2102 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2103 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2106 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2108 * well, i'm starting a changelog as i keep forgetting what i've
2111 * locks: revamped them to be more in line with what should
2112 happen. currently, i've reverted back to flock-style locks as i'll
2113 need to stick in more code to get fcntl-style locks to work
2114 properly. specifically, i think modifying of_alloc/of_dealloc to
2115 keep track of locks, fds, and names should solve the problem with
2116 fcntl locks being process-specific and not fd specific.