2 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
4 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
5 at Apple, fixing server disconnect problem upon afp_createid() call
7 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
9 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
10 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
12 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
14 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
17 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
18 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
19 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
20 Akop Pogosian <akopps@csua.berkeley.edu>
22 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
24 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
25 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
26 "-L$ssldir/lib" in configure.
28 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
30 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
31 Rey <jprey@ads.ecp.fr>
33 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
35 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
36 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
38 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
40 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
41 Linux 2.0.x builds (Patch #408256)
43 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
44 to fix deleting/emptying trash problems (Patch #408218)
46 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
48 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
49 which was causing file creation problems
51 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
53 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
54 build, most notably paths, and reference to lp2pap.sh in the wrong
57 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
61 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
62 updated for 1.5pre5 release
64 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
66 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
67 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
69 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
71 * ChangeLog: started using timestamps in ChangeLog
73 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
74 (thanks to Sebastian Rittau)
76 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
78 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
79 docs/, where they should be.
81 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
83 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
86 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
88 * TODO: A few updates to papd entry.
90 * README.MORGAN: Removed README.MORGAN because that information in
91 now in papd's man page.
93 * man/man8/papd.8.tmpl: Updated papd man page to match current
94 code. Added descriptions of authenticated printing and other new
97 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
99 * libatalk/adouble/ad_open.c: AppleDouble directory creation
102 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
104 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
105 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
106 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
107 "dropbox" to available option if DROPKLUDGE is used during
110 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
112 * README: updated 1.5+ install instructions to include list of
113 required and recommended packages
115 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
117 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
118 all of the defines in the codebase
120 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
121 patch made with syslog()'s didn't include any brackets)
124 * distrib/initscripts/.cvsignore: removed pulling of atalk
126 * configure.in, etc/uams/Makefile.am: conditional compilation support
127 for PGP UAM module using --enable-pgp-uam
129 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
130 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
131 for future Kerberos module reintegration
133 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
135 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
136 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
138 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
139 instead of dumping out if appletalk module not present, from
140 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
142 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
143 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
144 suitable configure.in fixes
146 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
148 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
149 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
150 broken codepage support.
152 * ChangeLog: started updaing ChangeLog with important patch/fix
153 information, as it is *never* up to date.
155 * configure.in, acconfig.h: implemented AFS configuration option
156 patch from Wes Hardaker <hardaker@users.sourceforge.net>
158 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
161 * autogen.sh: make libtoolize copy instead of linking files to
162 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
164 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
167 - Debian packaging in tree
168 - Numerous Makefile/build fixes
169 - .cvsignore implemented
170 - Solaris build fixes
172 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
174 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
175 uid/gid per volume for afpd
177 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
179 * etc/afpd/volume.c (setvoltime): fix for multiple clients
180 writing to same volume.
182 2000-02-28 a sun <asun@asun.cobalt.com>
184 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
187 2000-02-23 a sun <asun@asun.cobalt.com>
189 * etc/afpd/volume.c (creatvol): / is a special case. you can't
190 share it unless you give it a name.
192 2000-02-21 a sun <asun@asun.cobalt.com>
194 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
195 make redhat 6.x happier.
197 2000-02-17 a sun <asun@asun.cobalt.com>
199 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
200 lock removal. this + the log right below fix ragtime.
202 2000-02-16 a sun <asun@asun.cobalt.com>
204 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
205 positioned at 0x7FFFFFFF if there's no resource fork.
207 2000-02-14 a sun <asun@asun.cobalt.com>
209 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
210 allocations happen in blocks. added missing case that omnis
213 2000-02-07 a sun <asun@asun.cobalt.com>
215 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
218 * include/atalk/adouble.h (sendfile): change to deal with
221 2000-01-25 a sun <asun@asun.cobalt.com>
223 * etc/afpd/ofork.c: keep track of oforks being used for each
224 directory so that we can update them if the directory tree gets
227 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
230 2000-01-24 a sun <asun@asun.cobalt.com>
232 * etc/afpd/directory.h (CNID): moved cnid assignment here along
235 * etc/afpd/directory.c: changed directory search to use red-black
236 trees to improve balance. parent-child tree changed to circular
237 doubly-linked list to speed up insert/remove times. there's still
238 one obstacle to actually freeing red-black tree entries. i need to
239 add an ofork list to struct dir to minimize search times.
241 2000-01-18 a sun <asun@asun.cobalt.com>
243 * etc/afpd/directory.c (dirinsert): detect attempts to add
244 pre-existing entries as just symbolic links.
246 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
247 extended to directories.
249 2000-01-03 a sun <asun@asun.cobalt.com>
251 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
254 * etc/afpd/status.c (status_init): fixed a bunch of problems here
255 that manifested under solaris 7.
257 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
261 1999-12-27 a sun <asun@asun.cobalt.com>
263 * libatalk/util/getiface.c: moved interface detection code to here
264 so that i can use if_nameindex() or getifconf() depending upon
267 1999-12-13 a sun <asun@asun.cobalt.com>
269 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
270 based interface code.
272 * etc/afpd/afp_options.c (afp_options_parseline): added
273 -server_quantum as an option. using hex would be a good idea.
275 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
276 the server quantum. by default, the server quantum is limited to
277 1MB due to a bug in the os 9 appleshare client.
279 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
282 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
285 1999-12-06 a sun <asun@asun.cobalt.com>
287 * etc/afpd/directory.c (setdirparams): don't error if we can't set
288 the desktop owner/permisssions.
290 1999-11-04 a sun <asun@asun.cobaltnet.com>
292 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
295 1999-11-02 a sun <asun@asun.cobaltnet.com>
297 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
300 1999-10-28 a sun <asun@asun.cobaltnet.com>
302 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
304 1999-10-27 a sun <asun@asun.cobaltnet.com>
306 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
309 1999-10-25 a sun <asun@asun.cobaltnet.com>
311 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
313 1999-10-21 a sun <asun@asun.cobaltnet.com>
315 * etc/afpd/Makefile (install): moved install of afpd earlier per
316 suggestion by steven michaud.
318 1999-10-05 a sun <asun@asun.cobaltnet.com>
320 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
321 ourselves into the user so that nfs is happy.
323 1999-09-19 a sun <asun@adrian5>
325 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
326 if it's on an os x server machine.
328 1999-09-15 a sun <asun@adrian5>
330 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
331 wants ATADDR_BCAST. that probably means that i need to do
332 multihoming appletalk a little differently. bleah.
334 1999-09-09 <asun@asun.cobaltnet.com>
336 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
337 (ad_open): mondo lameness. i forgot that directory lookups can be
338 done with "." as the directory name. that was auto-hiding
339 them. bleah. i also figured out which bit was the invisible bit
340 for finderinfo information.
342 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
344 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
345 that accidentally crept in.
347 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
349 * etc/afpd/quota.c (getfsquota): use group quotas in quota
350 calculations if the user belongs to a single group. just use the
351 user quotas if the user belongs to multiple groups.
353 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
354 restrict the available space to 2GB. this is for macs running
355 older versions of the operating system with newer versions of the
356 appleshare client. weird huh?
358 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
359 don't get promoted in the same way as arithmetic operations. added
360 some more casts to deal with that issue.
362 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
364 * man/man?/Makefile: don't re-build .tmp files if they already
365 exist. this gets the install phase to work correctly.
367 1999-08-13 a sun <asun@hecate.darksunrising.blah>
369 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
370 AFPERR_PARAM. also, reject names with /'s in them if the nohex
373 1999-08-12 a sun <asun@hecate.darksunrising.blah>
375 * etc/afpd/filedir.c,file.c,directory.c: changed error for
376 illegal filenames to AFPERR_EXIST.
378 1999-08-11 a sun <asun@hecate.darksunrising.blah>
380 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
381 .Parent files are no longer valid file names.
383 * etc/afpd/volume.c (volset): added usedots and nohex as
384 options. usedots stops :hex translation of . files while nohex
385 stops :hex translation of everything but . files. in addition,
386 . files created on the unix side are by default hidden.
388 * libatalk/adouble/ad_open.c: initialize more bits.
390 1999-08-10 a sun <asun@hecate.darksunrising.blah>
392 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
393 actual name for nbp registration rather than ATALK_NAME.
395 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
396 get used when building the kernel module.
398 * sys/solaris: changed strings.h to string.h
400 1999-08-08 a sun <asun@hecate.darksunrising.blah>
402 * etc/afpd/volume.c (readvolfile): changed volume options into an
403 array of structs to ease maintenance.
405 1999-08-05 a sun <asun@hecate.darksunrising.blah>
407 * etc/afpd/status.c (status_init): change the default icon
408 depending upon whether or not it's an ASIP or an AppleTalk
411 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
413 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
414 little more informative.
416 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
418 * yippee. someone figured what was happening with the installation
419 of the man pages. i got rid of a duplicate entry.
421 1999-08-02 a sun <asun@hecate.darksunrising.blah>
423 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
424 default options. it keys in on a :DEFAULT: label.
426 1999-07-30 a sun <asun@hecate.darksunrising.blah>
428 * moved rc.atalk.* scripts to distrib/initscripts.
430 1999-07-27 a sun <asun@hecate.darksunrising.blah>
432 * contrib/printing: added patch from job@uchicago.edu
434 * etc/afpd/file.c: forgot to initialize struct ad in
437 * etc/afpd/nls/makecode.c: added an empty mapping.
439 * etc/psf/Makefile (install): well cp -d didn't work either. just
442 1999-07-26 a sun <asun@hecate.darksunrising.blah>
444 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
445 (from denny@geekworld.com).
447 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
448 and patch files from inoue.
450 * sys/linux/Makefile (install-sysv): fixed up a bit.
452 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
455 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
456 of -icon. now it means to use the yucky bitmap instead of the
459 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
462 1999-07-18 a sun <asun@hecate.darksunrising.blah>
464 * create links/mangle files in the compile rather than the install
465 phase so that rpm will be happier.
467 1999-07-17 a sun <asun@hecate.darksunrising.blah>
469 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
470 filedir.c (afp_rename, afp_moveandrename): don't allow the
471 creation/renaming of names with certain characters if mswindows
472 compatibility is enabled.
474 1999-07-16 a sun <asun@hecate.darksunrising.blah>
476 * rc.atalk.redhat: incorporated chkconfig from inoue.
478 1999-07-15 a sun <asun@hecate.darksunrising.blah>
480 * etc/atalkd/config.c (getifconf): wrap check against
481 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
483 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
485 1999-07-11 a sun <asun@hecate.darksunrising.blah>
487 * contrib/ICDumpSuffixMap: added internet config perl script from
490 * contrib/printing: added contributed solaris printing scripts
491 from job@uchicago.edu.
493 1999-07-10 a sun <asun@hecate.darksunrising.blah>
495 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
497 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
499 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
502 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
504 1999-07-08 a sun <asun@hecate.darksunrising.blah>
506 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
507 address already exists.
509 1999-07-06 a sun <asun@hecate.darksunrising.blah>
511 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
513 1999-07-05 a sun <asun@hecate.darksunrising.blah>
515 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
516 is so that we can filter by interface in the future. however, it
517 doesn't seem to work that well right now. bleah.
519 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
520 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
523 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
524 etc/papd,afpd: accept -A <ddp address> as an option so that you
525 can specify the address to be used on a multihomed server. for
526 papd, you use the 'pa' option in papd.conf.
528 1999-07-04 a sun <asun@hecate.darksunrising.blah>
530 * etc/atalkd/config.c (parseline): initialize parseline properly
531 so that we don't get extraneous junk.
533 * etc/afpd/afp_options.c (afp_options_parseline): do
534 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
536 * etc/atalkd/config.c (getifconf/readconf): check to see if the
537 supported device can support appletalk addresses. either continue
538 or exit depending upon whether or not it's auto-configed.
540 1999-07-03 a sun <asun@hecate.darksunrising.blah>
542 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
543 toggle the volume icon so that it uses the apple icon instead.
545 * etc/afpd/config.c (AFPConfigInit): added more logic for the
546 -proxy option. here are the rules: -proxy will always try to
547 create a DDP server instance. by default, the proxy server will
548 still allow you to login with an appletalk connection. to prevent
549 that, just set the uamlist to an empty string.
551 1999-07-02 a sun <asun@hecate.darksunrising.blah>
553 * etc/afpd/status.c (status_netaddress): added support for fqdn
554 (not available in the appleshare client yet).
556 1999-07-01 a sun <asun@hecate.darksunrising.blah>
558 * etc/afpd/config.c (DSIConfigInit): application code for proxy
559 setup. it's the -proxy option.
561 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
562 support for proxy setup.
564 1999-06-30 a sun <asun@hecate.darksunrising.blah>
566 * etc/afpd/filedir.c (afp_rename): fixed up some error
567 codes. quark express should be happier.
569 * etc/afpd/uam.c (uam_afpserver_option): added
570 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
571 report that setting that fixes pam on solaris machines.
573 1999-06-28 a sun <asun@hecate.darksunrising.blah>
575 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
577 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
579 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
581 * etc/afpd/fork.c (afp_write): fixed up error condition.
583 1999-06-26 a sun <asun@hecate.darksunrising.blah>
585 * etc/uams/Makefile (install): changed install location of uams.
587 * sys/linux/Makefile (install-sysv): always install redhat
588 script. netatalk.config script only gets installed if it's not
591 1999-06-23 a sun <asun@hecate.darksunrising.blah>
593 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
595 * etc/afpd/afp_options.c (afp_options_init): changed default
598 1999-06-22 a sun <asun@hecate.darksunrising.blah>
600 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
601 just the server name here.
603 * etc/afpd/volume.c (volxlate): made $s return something
604 meaningful no matter what.
606 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
609 1999-06-20 a sun <asun@hecate.darksunrising.blah>
611 * etc/afpd/volume.c (volxlate): added variable substitution. if it
612 doesn't understand the variable, it just spits it back out.
614 (creatvol): display truncated volume name if it's too long.
616 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
617 with oses that have -lcrypt but shouldn't use it.
619 1999-06-11 a sun <asun@hecate.darksunrising.blah>
621 * include/atalk/afp.h: added comments to FPErrors.
623 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
626 * include/atalk/util.h: server_lock() returns pid_t.
628 1999-06-10 a sun <asun@hecate.darksunrising.blah>
630 * README.ASUN: added location for both ssleay and openssl.
632 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
633 server." in the future, there will be "uamc_*." changed the shared
634 library names to match.
636 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
638 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
641 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
644 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
645 type field. do type check.
647 * etc/uams/uam_*pam.c: added a couple more error codes.
649 1999-06-08 a sun <asun@hecate.darksunrising.blah>
651 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
652 codepage.h gets made.
654 * libatalk/*/Makefile: make sure that the profiled directory gets
657 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
658 that was causing mapname to fail.
660 1999-06-07 a sun <asun@hecate.darksunrising.blah>
662 * etc/atalkd/main.c (main): added a note to check the syslog if
663 atalkd can't be setup.
665 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
666 auto-detected #defines.
668 1999-06-06 a sun <asun@hecate.darksunrising.blah>
670 * etc/afpd/fork.c (afp_write): argh. i moved things around a
671 little too much and ended up with an uninitialized eid. strangely,
672 the compiler didn't complain. simplified bits a little as
673 well. also, FPWrite was returning the wrong error messages. on
674 64-bit filesystems, the offset can wraparound. so, report a disk
675 full error if that's going to happen. egcs-19990602 gets one
676 memcpy right and another wrong on my udb. bleah.
678 (afp_read): fixed the error messages here as well.
680 1999-06-05 a sun <asun@hecate.darksunrising.blah>
682 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
683 some links on the fly if they're missing.
685 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
686 re-arranged a little.
688 1999-06-04 a sun <asun@hecate.darksunrising.blah>
690 * etc/afpd: prototyped everything here and moved the FP functions
693 * libatalk/util/bprint.c: moved all of the bprints to here.
695 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
697 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
699 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
702 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
705 * bin/afppasswd/afppasswd.c: added -a option so that root can add
706 new users. turned all of the options into bits. added newlines to
709 1999-06-03 a sun <asun@hecate.darksunrising.blah>
711 * sys/freebsd/Makefile: turn on sendfile support if running on a
714 1999-06-02 a sun <asun@hecate.darksunrising.blah>
716 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
717 conversation function.
719 * sys/*/Makefile: check at make time to see if -lrpcsvc and
720 -lcrypt should be included in the appropriate places.
722 1999-05-28 a sun <asun@hecate.darksunrising.blah>
724 * etc/afpd/file.c (deletefile): added more error checking here as
727 * etc/afpd/directory.c (renamedir): added a couple a few more
730 * sys/sunos/Makefile: sunos should really work now.
732 1999-05-27 a sun <asun@hecate.darksunrising.blah>
734 * include/atalk/afp.h: added in a couple new error codes (one
735 deals with password setting policy, the other with maximum logins
738 * etc/afpd/fork.c (afp_openfork): try to re-open files on
739 read-only volumes as read-only.
741 1999-05-26 a sun <asun@hecate.darksunrising.blah>
743 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
744 uname -p. other oses seem to use uname -m for the same information.
746 * etc/uams/uam_pam.c (pam_changepw): added check for same
749 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
750 same password checks.
752 * sys/osx/Makefile: moved the os x server stuff into its own build
755 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
756 and MACHINETYPE for some stuff.
758 1999-05-25 a sun <asun@hecate.darksunrising.blah>
760 * sys/sunos/Makefile: various bits to make stuff work with sunos
763 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
765 * etc/afpd/file.c (copyfile): only copy the header file if newname
768 * etc/afpd/directory.c (copydir): make sure to balk if the
769 directory already exists. in addition, make sure to preserve the
772 1999-05-24 a sun <asun@hecate.darksunrising.blah>
774 * bin/afppasswd/afppasswd.c: global password updating utility for
775 the randnum authentication method.
777 1999-05-22 a sun <asun@hecate.darksunrising.blah>
779 * etc/uams/uam_randnum.c (afppasswd): added in global password
780 file for the randnum authentication method. it looks for a .key
781 file as well to handle encryption.
783 * etc/afpd/afp_options.c (afp_options_parseline): added
784 -passwdfile as an option so that you can specify a global randnum
785 password file if desired.
787 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
788 as an AppleVolumes.* option. if the user is in the rolist, the
789 volume gets set as readonly. if there's a rwlist, and the user
790 isn't in it, the volume also gets set as readonly.
792 1999-05-21 a sun <asun@hecate.darksunrising.blah>
794 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
795 can't allocate the reference counting variable.
797 * etc/uams/uam_*.c: make sure that uam_setup returns an error
800 1999-05-19 a sun <asun@hecate.darksunrising.blah>
802 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
803 /var/run as the lock file directory.
805 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
806 a problem with FPWrite getting a request count of 0. that's
809 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
810 load itself from a shared library. i've compensated by linking it
813 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
814 still screwy with the dhx_pam stuff though.
816 1999-05-18 a sun <asun@hecate.darksunrising.blah>
818 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
819 username to fit what's in pw->pw_name if necessary.
821 1999-05-16 a sun <asun@hecate.darksunrising.blah>
823 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
824 authentication method. i'm still missing a little info to get it
827 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
828 create it from the unix name.
830 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
831 and fdType into strings.
833 1999-05-16 a sun <asun@pelvetia>
835 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
836 little. now, you pass in an int * if you want to either get/set
837 the size of the option. added in UAM_OPTION_RANDNUM for generic
838 (4-byte granularity) random number generation.
840 * etc/afpd/switch.c: added afp_logout to preauth_switch.
842 1999-05-15 a sun <asun@hecate.darksunrising.blah>
844 * bin/megatron/macbin.c (bin_open): make error message for
845 macbinary files more informative.
847 (test_header): added more macbinary tests. it now has a workaround
848 for apple's incorrectly generated macbinary files.
850 1999-05-14 a sun <asun@hecate.darksunrising.blah>
852 * sys/solaris/Makefile: added shared library generation bits.
854 * etc/uams: moved server-side uams here.
856 * include/netatalk/endian.h: fixed some solaris bits.
858 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
859 do an atp_close and free the asp object. oh yeah, as afpd needs
860 to export symbols to its modules, make sure you don't do anything
861 more exciting than strip --strip-debug with it.
863 1999-05-12 a sun <asun@hecate.darksunrising.blah>
865 * various places that use sigaction: zero out struct sigaction so
866 that we don't send something confusing. also make sure that we
867 don't set a timer unless we already have a sigaction set.
869 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
870 empty resource fork read-only. also, added back in the bit of code
871 that prevented locks from being attempted on non-existent resource
874 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
877 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
880 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
881 convert this over to use by the netddp interface.
883 1999-05-12 a sun <asun@pelvetia>
885 * etc/afpd/uam.c: os x server's runtime library loader is
886 braindead. as a result, i've switched to using an exported struct
889 * bin/aecho,getzones: changed these to use the netddp interface.
891 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
893 * libatalk/netddp: abstracted the ddp interface to netddp. besides
894 the prior socket-driven interface, there's now an os x server
895 interface. so, instead of calling socket/sendto/recvfrom, you call
896 netddp_open/netddp_sendto/netddp_recvfrom.
898 1999-05-11 a sun <asun@pelvetia>
900 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
903 * etc/atalkd/main.c (main): make sure that if -dontroute is
904 selected for all but one interface, that interface also gets
907 1999-05-10 a sun <asun@hecate.darksunrising.blah>
909 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
910 smaller than it used to be.
912 1999-05-09 a sun <asun@hecate.darksunrising.blah>
914 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
915 uam_randnum.c: uam modules. these should probably be moved out of
916 afpd (and into something like etc/uam_server) when the printing
917 stuff gets uam support.
919 1999-05-08 a sun <asun@hecate.darksunrising.blah>
921 * etc/afpd/uam.c: interface to user authentication modules.
922 it should eventually be moved to libatalk, but that's not
923 necessary until the printing uam stuff is done. everything is from
924 the server-side perspective, but that's only because there aren't
925 any client-side uses right now.
927 * libatalk/util/module.c: generic interface to run-time library
928 loading functions. right now, the dlfcn family and os x server's
929 NS-style way of doing things are the ones understood. in addition,
930 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
932 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
933 write part of write continuations.
935 1999-05-07 a sun <asun@hecate.darksunrising.blah>
937 * etc/atalkd: added the ability to turn off routing for particular
938 interfaces. specify -dontroute for each interface that you don't
941 1999-05-06 a sun <asun@hecate.darksunrising.blah>
943 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
946 1999-05-04 a sun <asun@hecate.darksunrising.blah>
948 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
949 forever if there's a problem while it's being used. that's fixed.
951 1999-05-01 a sun <asun@hecate.darksunrising.blah>
953 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
954 so that renaming a directory works across filesystems.
956 1999-04-27 a sun <asun@hecate.darksunrising.blah>
958 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
959 what's stored in the header file.
961 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
962 afpd.conf more understandable.
964 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
965 endian converted. that's fixed.
967 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
968 necessarily ORable, so use ADLOCK_RD/WR instead.
970 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
971 unlock accidentally getting the data fork locks.
973 1999-04-24 a sun <asun@hecate.darksunrising.blah>
975 * etc/afpd/fork.c (afp_openfork): always try to create a resource
978 1999-04-21 a sun <asun@hecate.darksunrising.blah>
980 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
981 turned the mmapped header stuff into and #ifdef
982 USE_MMAPPED_HEADERS option.
984 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
985 the hfs fs doesn't currently have mmappable header files. rather
986 than implement that, i just reverted back to a modified version
987 of the old way of reading headers.
989 1999-04-15 a sun <asun@hecate.darksunrising.blah>
991 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
994 (afp_openfork): deal with read-only data forks that don't have
995 corresponding .AppleDouble files. we can't really do anything with
996 deny locks in this case. just make sure that read locks are set.
998 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
999 around FILPBIT_FINFO.
1001 * etc/afpd/fork.c (afp_read): as we share open files now, check
1002 for fork type against of_flags instead of just checking to see if
1003 the file is open. this fixes a bug that caused resource forks to
1004 get filled with data fork information.
1006 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1008 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1011 1999-04-09 a sun <asun@mead1.u.washington.edu>
1013 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1016 1999-04-09 a sun <asun@saul6.u.washington.edu>
1018 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1019 with quota support enabled.
1021 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1023 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1024 config/AppleVolumes.default: added read-only volume option.
1026 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1029 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1031 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1032 (from <jk@espy.org>).
1033 (bin_header_write/read): fixed up screwed up file date
1034 generation/reading with macbinary files.
1036 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1037 memcpy/memset/memcmp's. added macbinary III support.
1039 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1040 that we can stream macbinary file creation to stdout.
1042 * bin/megatron/megatron.c: incorporated information patch (--header
1043 and --macheader) from <fmorton@base2inc.com>.
1046 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1048 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1051 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1052 dummy ints for some of the files that can get compiled to empty
1053 objects. check for the type of msync() available as well.
1055 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1057 * INSTALL/README.GENERIC: added information for a generic
1058 architecture. It includes the information needed to get netatalk
1059 to compile on a random unix platform.
1061 * etc/afpd/quota.c: moved the quota stuff here so that we can
1062 #ifdef it out on a machine without quota support.
1064 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1066 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1067 well. this prevents multiple read locks on the same byte range
1068 from disappearing if one user disappears.
1070 (ad_fcntl_lock): here are the current rules for file
1072 1) if there's a appledouble header, we use the beginning
1073 of that for both data and resource forks.
1074 2) if there isn't, we use the end of the data fork (or past the
1075 end on 64-bit machines)
1077 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1079 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1080 appledouble entry parts is done.
1082 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1085 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1087 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1088 appledouble header parsing more generic so that we can read in
1089 arbitrary appledouble header files. i just mmap the parts that we
1092 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1094 * etc/afpd/file.c (afp_copyfile): return the correct error
1095 response on a failed copy. also, error if the file is already open
1096 to prevent problems with locks. we really need to ad_lock
1097 this during the copy
1099 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1101 * etc/afpd/volume.c (readvolfile): switched volume options to
1102 using ':' as a delimiter as that's one of the characters that's
1103 not allowed as part of a mac filename.
1104 (volset): changed access to allow/deny
1106 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1109 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1111 * NOTE to myself: jeremy allison said that samba uses refcounts to
1112 prevent close() from killing all the byte locks. so, i've started
1113 converting afpd to using refcounting as well. luckily, we already
1114 have of_findname, so we know when files are open. in cases where
1115 files are already open, this will replace an ad_open with a lookup
1118 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1119 NULL names when getting directory/file names.
1121 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1122 sure these are always in network byte order.
1124 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1126 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1127 synchronization bits. now, we use two bytes to do the read/write
1128 stuff. when access is needed, a read lock is attempted. if a deny
1129 lock is needed, a write lock is attempted. we even handle the
1130 access None mode now by saving the access modes.
1132 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1133 we can obey all of the file synchronization rules.
1135 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1136 reversed. with helios lantest's lock/unlock 4000 times test, it
1137 looks like i get <1 second overhead on my machine when using byte
1138 locks. NOTE: this will get a little worse when serialization gets
1139 added. in addition, 0x80000000 only works for 64-bit machines. i
1140 reserve the last allowable bit for 32-bit machines.
1142 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1143 now as i'm able to trigger a kernel oops in linux with the 64-bit
1146 (afp_read/afp_write): make sure to use the same offset when doing
1149 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1151 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1152 stuff to get byte locks to work correctly (except for the
1153 serialization) only to discover that files that use byte locks
1154 also request a deny write mode. luckily, byte locks only cover up
1155 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1156 synchronization locks.
1158 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1160 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1161 DEPS with double quotes so that multiple defines work.
1163 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1165 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1167 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1168 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1169 programs on the same machine opening the same file. current
1170 problems with the mechanism that i don't want to fix unless
1172 1) there's a race during the relock phase. serialization
1174 2) it assumes that each fd only locks a single contiguous
1175 range at a time. keeping a list of locked ranges would
1178 also, i changed the default to using fcntl locks. if the above two
1179 are really necessary, i'll probably switch to something a little
1180 more featureful like the berkeley db's lock manager.
1182 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1184 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1186 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1187 reduce system calls a little.
1189 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1192 * sys/solaris/Makefile: added 64-bit solaris patch from
1193 <jason@pattosoft.com.au>.
1195 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1197 * include/netatalk/endian.h: make solaris 2.5 complain less.
1199 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1200 fixed a couple problems with the adv1tov2 stuff.
1202 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1204 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1205 aligned along an even boundary.
1207 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1209 * etc/afpd/volume.c (readvolfile): added volume password support.
1211 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1213 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1214 layer multicast setting bits.
1216 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1217 prodos field info when converting.
1219 * rc.atalk.redhat: added pidof checking in case the machine
1220 crashes. also added rc.atalk.wrapper to the redhat rc script
1223 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1225 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1226 error detection here and more fully report error conditions.
1228 (flushfork): make sure to flush the header if necessary (rfork
1229 length changed or modification date needs to be set).
1231 (afp_write): ugh. this wasn't returning the right values for the
1232 last byte written if the endflag was set. in addition, it was
1233 setting the modification date. that should be left to FPCloseFork
1234 and FPFlush(Fork). this fixes a problem that shows up with
1237 NOTE: as of now, changes to the rfork info are the only things
1238 that aren't flushed immediately when altered.
1240 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1241 need to report bitmap errors if we try to fiddle with the wrong
1242 fork. i added an of_flags field to keep things sorted.
1244 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1245 movement, i forgot to make sure that the pre-asun2.2.0 features
1248 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1250 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1251 old name even when it's a directory.
1253 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1254 number of buffers used. use these when needed in afp_* calls.
1256 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1257 files when deleting a directory.
1259 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1261 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1264 * fixed up a few bobbles in the netatalk-990130 merge.
1266 * the noadouble option should be pretty much implemented. here's
1268 when a directory is created, the corresponding
1269 .AppleDouble directory is not.
1271 comments, dates, and other file attributes will get
1272 silently ignored and not result in the creation of a new
1273 .AppleDouble directory.
1275 however, if anything possessing a resource fork is copied
1276 into that directory, the corresponding .AppleDouble
1277 directory will be created. once this happens, any
1278 other file in the directory can acquire an AppleDouble
1279 header file in the future.
1281 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1283 * merged in the rest of netatalk-990130.
1285 * sys/solaris: merged in netatalk-990130 changes.
1287 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1288 tested and fixed the sendfile bits on linux. it looks like linux
1289 doesn't permit socket -> file sendfiles yet.
1291 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1292 newline character checking on.
1294 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1296 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1297 operates on a per-volume basis.
1299 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1301 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1303 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1306 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1307 implemented sendfile bits. currently, there's support for linux
1308 and freebsd. unfortunately, freebsd's implementation doesn't allow
1309 file->file or socket->file copies. bleah.
1311 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1313 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1314 volume.c (volset): added in the beginnings of a NOADOUBLE option
1315 for those that don't want AppleDouble headers to be created by
1316 default. it doesn't really work that well right now.
1318 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1320 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1321 from ad_refresh. made broken v1 header checking the default. fixed
1322 broken v1 date checking. now, it just checks to see if the v1
1323 MDATE is > than st_mtime by 5 years.
1325 * etc/afpd/directory.c: make date setting alter directory dates as
1328 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1330 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1331 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1333 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1335 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1336 shift the beginning of the fake did's if necessary.
1338 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1341 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1342 changes so that the CNIDs will still work even when the .AppleDB
1343 directory is read-only. if you're still allowed to create files on
1344 these volumes, you'll get a temporary id for those.
1346 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1348 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1349 files get cleared out on cnid_close() if it's the last user for a
1352 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1354 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1355 allows us to set the backup date on the server.
1357 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1358 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1359 with FPCatSearch to do.
1361 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1363 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1366 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1368 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1369 dbpath= in AppleVolumes.* for the CNID database.
1371 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1372 appledouble v1 environment, turn on v1compat by default.
1374 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1376 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1377 to handle broken ad headers.
1379 * etc/afpd/file.c (setfilparams): we need to make sure that we
1380 flush the file if we've created it even if there's an error. the
1381 magic number/version don't get saved if we don't.
1383 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1386 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1388 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1390 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1393 * well, what do you know? the cnid stuff compiles in.
1395 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1397 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1398 enumerate.c: added in stubs for CNID database conditional on
1399 AD_VERSION > AD_VERSION1.
1401 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1403 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1405 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1406 into hex code as well.
1408 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1410 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1412 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1414 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1415 both directions so that we can recover from problems if
1418 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1420 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1421 descends a directory and converts everything it sees into
1424 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1426 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1427 header rebuilding here so that ad_refresh can use it.
1429 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1432 * bin/megatron/asingle.c: yuk. removed all of
1433 the duplicate stuff here and had it use the #defines in adouble.h.
1435 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1436 conversion routine. we still need a shortname creator and a cnid
1437 database for the v2 features to be useful.
1439 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1441 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1442 that we don't understand.
1444 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1446 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1447 stuff. also made sure to lower/upper the 8-bit characters as
1450 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1453 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1454 attribute bits are in the correct byte ordering.
1456 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1458 * etc/afpd/volume.c (volset): made prodos an option to options=
1459 flag. also added crlf as an option.
1461 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1463 (ad_open): deal correctly with 0-length files by treating them as
1466 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1467 fork.c (getforkparams), directory.c (get/setdirparams): finished
1468 adding appledouble version 1 and 2 date conversion. also added
1471 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1472 file if we needed to fiddle with it.
1474 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1475 setting/retrieval code.
1477 * libatalk/adouble/ad_open.c (ad_open): initialize date
1478 structures here instead of elsewhere.
1480 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1482 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1483 time conversion code.
1485 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1487 * etc/afpd/volume.c (volset): changed prodos setting to
1490 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1492 * etc/afpd/volume.c (volset): okay. you now have the following
1493 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1494 tolower -> lowercases everything in both directions
1495 toupper -> uppercases everything in both directions
1496 xlatelower -> client sees lowercase, server sees uppercase
1497 xlateupper -> client sees uppercase, server sees lowercase
1499 NOTE: you only should use this if you really need to do so. this
1500 and the codepage option can cause mass confusion if applied
1501 blindly to pre-existing directories.
1503 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1505 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1506 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1507 bits 2 and 3 deal with UTOM. i did it that way so that you can
1508 casefold in one direction only or in both directions if
1509 desired. needless to say, setting both bits for UTOM or MTOU
1510 doesn't make any sense. right now, toupper takes precedence in
1511 MTOU, and tolower takes precedence in UTOM.
1513 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1515 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1516 -codepagepath to the list of available options. they specify the
1517 directories to look for uam modules and codepages,
1518 respectively. currently, -uampath doesn't do anything.
1520 * etc/afpd/volume.c (readvolfile): spruced up options to
1521 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1522 utomfile=<codepage.y>, casefold=<num> for volumes.
1524 * etc/afpd/desktop.c (utompath,mtoupath): added
1525 codepage/casefolding support. casefold is currently an int that
1526 could have multiple actions. right now, i just lowercase in
1527 mtoupath and uppercase in utompath.
1529 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1530 as an additional specifier so that we don't have problems with
1531 the same path names on multiple volumes.
1533 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1535 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1538 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1540 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1541 prevent atalkd from trying to use a slave channel.
1543 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1545 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1546 icon bit by default on the root directory. that screws up pre-OS 8
1549 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1551 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1552 so that we can gracefully shut down the server side.
1554 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1555 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1556 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1557 interval an option (-tickleval <sec>).
1559 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1560 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1561 dsi_write.c both save/restore the old timer, so they don't really
1562 care what the actual value is.
1564 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1566 * due to the recent obsession with bug fixing and low-level dsi
1567 cleanups, i've decided that this should really be asun2.1.1
1568 instead of asun2.1.0a.
1570 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1572 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1573 announcement here from etc/afpd/afp_dsi.c.
1575 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1576 into here as they're pretty generic. now, the protocol specific
1577 stuff only handles open and close.
1579 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1580 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1581 added initial stubs for sendfile support. i still need to go
1582 through and calculate the appropriate offsets to use.
1584 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1585 instead of just ignoring it.
1587 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1588 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1589 dsi_read interface to return errors so that i can kill things
1592 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1594 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1595 and write() treat a return of 0 differently.
1597 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1599 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1602 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1604 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1605 to return earlier on 0-sized files.
1607 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1609 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1610 check to here from dsi_cmdreply.
1612 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1614 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1615 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1617 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1619 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1620 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1622 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1624 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1625 fixed a couple of failed realloc leaks.
1627 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1628 to deal with case-insensitive, case-preserving filesystems.
1630 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1632 * etc/afpd/auth.c: fixed randnum password changing check.
1634 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1636 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1639 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1642 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1643 prevent buffer overflows here.
1645 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1647 * sys/linux/Makefile: fixed PAM message.
1649 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1651 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1652 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1654 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1655 should check against the entire unix name.
1657 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1659 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1660 to check against mac name.
1662 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1664 * etc/afpd/auth.c (afp_changepw): make password changing deal
1665 correctly with "real" user names. also, moved seteuid() to before
1666 the pam_authenticate() bit as shadow passwords need that.
1668 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1669 name against MACFILELEN.
1671 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1673 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1674 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1675 checks. also make sure test occurs before checking to see if the
1678 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1680 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1681 forgot that password changing needs root privileges to work.
1683 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1684 incorrect. i cleaned it up a bit.
1686 * sys/linux/Makefile: fixed the installation bits.
1688 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1690 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1691 if there's a problem.
1693 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1695 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1696 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1697 that. also made sure that files > MACFILELEN never show up.
1699 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1701 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1702 spurious pointer dereference.
1704 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1705 length so that we don't need to realloc.
1707 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1708 return AFPERR_BUSY if the dest has an ofork open.
1710 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
1711 (afp_rename): return AFPERR_SAMEOBJ if source == dest
1713 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
1715 * etc/afpd: went through and looked for places that needed to use
1716 curdir instead of dir. i think i have them all right now.
1718 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
1719 curdir correctly. what this really means is that cname should be
1720 fixed to return everything it changes as opposed to changing a
1723 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
1725 * etc/afpd/config.c (configinit): do the right thing if
1726 AFPConfigInit fails.
1728 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
1730 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
1731 embarrassing. i wasn't doing refcounts correctly.
1733 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
1735 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
1738 * sys/ultrix/Makefile: ultrix understands the old rquota format.
1740 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
1741 the current directory.
1742 (of_rename): erk. changed it to handle renaming a file that has
1743 been opened multiple times.
1745 * etc/atalkd: made sure that if you don't specify -router, things
1746 are as they were before.
1748 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
1750 * etc/afpd/status.c (status_flags): forgot to turn on password
1751 setting if randnum passwords are being used.
1753 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
1755 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
1758 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
1759 from "Fred Lindberg" <lindberg@id.wustl.edu>.
1761 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
1763 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
1764 for more AFP 2.0 compliance. unfortunately, apple's appleshare
1765 client doesn't like non-fixed directory ids.
1767 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
1769 * etc/afpd/volume.c (accessvol): the accessible volume list can
1770 now be controlled by groups and usernames. just use something of
1771 the following form: @group,name,name2,@group2,name3
1773 NOTE: you can't have any spaces, and the parser forces you to
1774 include all options. in this case, there are some apple II options
1775 that need to be entered. they need to go away soon anyway.
1777 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
1778 field into a temporary buffer before calling strtok.
1780 1998-08-29 a sun <asun@hecate.darksunrising.blah>
1782 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
1783 last router on an interface goes down, we need to delete the
1784 interface's zone table.
1786 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
1788 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
1789 i've added this in to increase AFP compliance.
1791 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
1792 should make afpd compatible with OS 8.5's Nav Services.
1794 * etc/atalkd/config.c,main.c: -router now specifies router mode
1795 with any number of interfaces.
1797 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
1799 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
1800 atalkd as a single-interface router. now, you can get zones with
1801 only single interfaces! i'm only waiting on wes for the approved
1802 configuration toggle.
1804 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
1806 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
1807 ADLOCK_* into real #defines and added translations in the
1808 lock-type specific functions. this should make it easier to
1809 recompile things without screwing up.
1811 1998-08-26 a sun <asun@hecate.darksunrising.blah>
1813 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
1816 1998-08-25 a sun <asun@hecate.darksunrising.blah>
1818 * etc/afpd/status.c (status_server): changed status_server to
1819 use only the obj part of obj:type@zone-style names.
1821 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
1822 zones properly. it was matching on anything but the actual zone.
1824 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
1826 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
1827 that solaris' pam session setup doesn't crap out.
1829 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
1831 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
1832 with zip multicast info.
1834 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
1836 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
1837 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
1838 <sys/time.h> for ultrix breakage.
1840 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
1842 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
1843 knew that speeding up of_findname would be useful. in any case, i
1844 discovered the source of yet another small AFP non-compliance that
1845 was confusing WordPerfect. on an afp_rename, we also need to
1846 rename the corresponding ofork. i've added an of_rename() to do
1849 1998-08-13 a sun <asun@hecate>
1851 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
1852 sticking refnum in ofork.
1854 1998-08-12 a sun <asun@hecate>
1856 * etc/afpd/fork.c (afp_openfork): added already open attribute
1859 * etc/afpd/ofork.c: added a hashed of_findname.
1861 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
1863 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
1864 forks from read-only non-appledouble media.
1866 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
1868 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
1869 (getvolspace): modified them to treak afs like the other
1870 getvolspaces w.r.t. VolSpace.
1872 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
1874 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
1875 used for filesystems. nfs quotas sometimes failed as a
1876 result. that's fixed now.
1878 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
1880 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
1881 it's simple to run the server process as a non-root user.
1883 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
1885 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
1886 out that i was opening lots of sockets with callaurpc. now, the
1887 socket gets saved and reused.
1889 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
1890 for rquota's bsize. unless fixed, rquota will report incorrect
1893 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
1895 * etc/afpd/uam/README: added some preliminary ideas on a
1896 plug-in uam architecture. in addition, this should allow arbitrary
1897 afp function replacement. eventually, auth.c should get a
1900 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
1902 * etc/afpd/nfsquota.c: added headers and redefined a couple
1903 structure fields so that sunos4 compiles.
1905 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
1906 2. this should get redhat 4.2 machines. NOTE: they're still
1907 missing librpcsvc.a, so they'll need to remove that from the
1910 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
1912 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
1913 missing a couple functions needed for rquota support. here they
1916 * etc/afpd/unix.c (mountp): fixed the nfs detection for
1917 solaris. we still need bsd and ultrix.
1919 1998-07-05 a sun <asun@hecate>
1921 * include/atalk/adouble.h: marked out space for appledouble v2.
1923 1998-07-04 a sun <asun@hecate>
1925 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
1926 get negative numbers for length fields and such.
1928 1998-07-04 a sun <asun@hecate>
1930 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
1931 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
1932 provided the initial bits from the bsd quota program.
1934 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
1935 getnfsquota depending upon the type of fs.
1937 * etc/afpd/unix.c (mountp/special): munged mountp and
1938 special to return either the nfs mount point or the fs
1939 device. set the vol->v_nfs flag if it's nfs.
1941 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
1942 honor results returned from uquota_getvolspace.
1944 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
1946 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
1947 multiple copies. as that's not the case here, i've reverted to
1948 just doing read + write.
1950 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
1952 * sys/linux/Makefile: fixed the redhat-style atalk
1953 installation. also, it doesn't over-write an existing
1954 /etc/rc.d/init.d/atalk file.
1956 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
1957 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
1959 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
1961 * changed sys/linux/Makefile to install a redhat-style sysv atalk
1962 script instead of the bsd one.
1964 * include/atalk/adouble.h: moved same-name list stub to struct
1967 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
1969 * changed to asunx.y.z notation as i was getting tired of
1970 increasing numbers. as this version is undergoing a fairly
1971 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
1972 never existed. i just started at 2.0.
1974 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
1975 for hashed-by-name oforks and oforks which group by name to help
1976 with byte locks and of_findname.
1978 * adouble (include/atalk/adouble.h): started implementing
1979 appledouble v2. mostly, i added bits to headers. v2 has wonderful
1980 bits that should make prodos support much less clunky, allow
1981 persistent dids, and allow msdos support.
1983 * finder info: added bits to directory.c and file.c describing the
1984 actual contents of finder info (from IM: Toolbox
1985 Essentials). also, set default directory view to an allowed value
1986 thanks to a suggestion from the appledouble v2 specs. that should
1987 help with read-only media.
1989 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
1990 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
1993 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
1995 * well, i'm starting a changelog as i keep forgetting what i've
1998 * locks: revamped them to be more in line with what should
1999 happen. currently, i've reverted back to flock-style locks as i'll
2000 need to stick in more code to get fcntl-style locks to work
2001 properly. specifically, i think modifying of_alloc/of_dealloc to
2002 keep track of locks, fds, and names should solve the problem with
2003 fcntl locks being process-specific and not fd specific.