2 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
4 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
5 Kelitz (jkeltz) to allow disabling of shell checking
7 * configure.in, contrib/Makefile.am: made timelord compilation
8 optional, disabled by default
10 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
12 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
13 at Apple, fixing server disconnect problem upon afp_createid() call
15 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
17 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
18 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
20 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
22 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
25 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
26 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
27 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
28 Akop Pogosian <akopps@csua.berkeley.edu>
30 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
32 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
33 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
34 "-L$ssldir/lib" in configure.
36 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
38 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
39 Rey <jprey@ads.ecp.fr>
41 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
43 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
44 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
46 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
48 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
49 Linux 2.0.x builds (Patch #408256)
51 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
52 to fix deleting/emptying trash problems (Patch #408218)
54 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
56 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
57 which was causing file creation problems
59 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
61 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
62 build, most notably paths, and reference to lp2pap.sh in the wrong
65 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
69 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
70 updated for 1.5pre5 release
72 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
74 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
75 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
77 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
79 * ChangeLog: started using timestamps in ChangeLog
81 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
82 (thanks to Sebastian Rittau)
84 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
86 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
87 docs/, where they should be.
89 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
91 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
94 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
96 * TODO: A few updates to papd entry.
98 * README.MORGAN: Removed README.MORGAN because that information in
99 now in papd's man page.
101 * man/man8/papd.8.tmpl: Updated papd man page to match current
102 code. Added descriptions of authenticated printing and other new
105 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
107 * libatalk/adouble/ad_open.c: AppleDouble directory creation
110 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
112 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
113 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
114 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
115 "dropbox" to available option if DROPKLUDGE is used during
118 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
120 * README: updated 1.5+ install instructions to include list of
121 required and recommended packages
123 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
125 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
126 all of the defines in the codebase
128 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
129 patch made with syslog()'s didn't include any brackets)
132 * distrib/initscripts/.cvsignore: removed pulling of atalk
134 * configure.in, etc/uams/Makefile.am: conditional compilation support
135 for PGP UAM module using --enable-pgp-uam
137 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
138 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
139 for future Kerberos module reintegration
141 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
143 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
144 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
146 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
147 instead of dumping out if appletalk module not present, from
148 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
150 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
151 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
152 suitable configure.in fixes
154 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
156 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
157 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
158 broken codepage support.
160 * ChangeLog: started updaing ChangeLog with important patch/fix
161 information, as it is *never* up to date.
163 * configure.in, acconfig.h: implemented AFS configuration option
164 patch from Wes Hardaker <hardaker@users.sourceforge.net>
166 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
169 * autogen.sh: make libtoolize copy instead of linking files to
170 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
172 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
175 - Debian packaging in tree
176 - Numerous Makefile/build fixes
177 - .cvsignore implemented
178 - Solaris build fixes
180 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
182 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
183 uid/gid per volume for afpd
185 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
187 * etc/afpd/volume.c (setvoltime): fix for multiple clients
188 writing to same volume.
190 2000-02-28 a sun <asun@asun.cobalt.com>
192 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
195 2000-02-23 a sun <asun@asun.cobalt.com>
197 * etc/afpd/volume.c (creatvol): / is a special case. you can't
198 share it unless you give it a name.
200 2000-02-21 a sun <asun@asun.cobalt.com>
202 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
203 make redhat 6.x happier.
205 2000-02-17 a sun <asun@asun.cobalt.com>
207 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
208 lock removal. this + the log right below fix ragtime.
210 2000-02-16 a sun <asun@asun.cobalt.com>
212 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
213 positioned at 0x7FFFFFFF if there's no resource fork.
215 2000-02-14 a sun <asun@asun.cobalt.com>
217 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
218 allocations happen in blocks. added missing case that omnis
221 2000-02-07 a sun <asun@asun.cobalt.com>
223 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
226 * include/atalk/adouble.h (sendfile): change to deal with
229 2000-01-25 a sun <asun@asun.cobalt.com>
231 * etc/afpd/ofork.c: keep track of oforks being used for each
232 directory so that we can update them if the directory tree gets
235 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
238 2000-01-24 a sun <asun@asun.cobalt.com>
240 * etc/afpd/directory.h (CNID): moved cnid assignment here along
243 * etc/afpd/directory.c: changed directory search to use red-black
244 trees to improve balance. parent-child tree changed to circular
245 doubly-linked list to speed up insert/remove times. there's still
246 one obstacle to actually freeing red-black tree entries. i need to
247 add an ofork list to struct dir to minimize search times.
249 2000-01-18 a sun <asun@asun.cobalt.com>
251 * etc/afpd/directory.c (dirinsert): detect attempts to add
252 pre-existing entries as just symbolic links.
254 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
255 extended to directories.
257 2000-01-03 a sun <asun@asun.cobalt.com>
259 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
262 * etc/afpd/status.c (status_init): fixed a bunch of problems here
263 that manifested under solaris 7.
265 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
269 1999-12-27 a sun <asun@asun.cobalt.com>
271 * libatalk/util/getiface.c: moved interface detection code to here
272 so that i can use if_nameindex() or getifconf() depending upon
275 1999-12-13 a sun <asun@asun.cobalt.com>
277 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
278 based interface code.
280 * etc/afpd/afp_options.c (afp_options_parseline): added
281 -server_quantum as an option. using hex would be a good idea.
283 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
284 the server quantum. by default, the server quantum is limited to
285 1MB due to a bug in the os 9 appleshare client.
287 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
290 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
293 1999-12-06 a sun <asun@asun.cobalt.com>
295 * etc/afpd/directory.c (setdirparams): don't error if we can't set
296 the desktop owner/permisssions.
298 1999-11-04 a sun <asun@asun.cobaltnet.com>
300 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
303 1999-11-02 a sun <asun@asun.cobaltnet.com>
305 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
308 1999-10-28 a sun <asun@asun.cobaltnet.com>
310 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
312 1999-10-27 a sun <asun@asun.cobaltnet.com>
314 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
317 1999-10-25 a sun <asun@asun.cobaltnet.com>
319 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
321 1999-10-21 a sun <asun@asun.cobaltnet.com>
323 * etc/afpd/Makefile (install): moved install of afpd earlier per
324 suggestion by steven michaud.
326 1999-10-05 a sun <asun@asun.cobaltnet.com>
328 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
329 ourselves into the user so that nfs is happy.
331 1999-09-19 a sun <asun@adrian5>
333 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
334 if it's on an os x server machine.
336 1999-09-15 a sun <asun@adrian5>
338 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
339 wants ATADDR_BCAST. that probably means that i need to do
340 multihoming appletalk a little differently. bleah.
342 1999-09-09 <asun@asun.cobaltnet.com>
344 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
345 (ad_open): mondo lameness. i forgot that directory lookups can be
346 done with "." as the directory name. that was auto-hiding
347 them. bleah. i also figured out which bit was the invisible bit
348 for finderinfo information.
350 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
352 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
353 that accidentally crept in.
355 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
357 * etc/afpd/quota.c (getfsquota): use group quotas in quota
358 calculations if the user belongs to a single group. just use the
359 user quotas if the user belongs to multiple groups.
361 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
362 restrict the available space to 2GB. this is for macs running
363 older versions of the operating system with newer versions of the
364 appleshare client. weird huh?
366 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
367 don't get promoted in the same way as arithmetic operations. added
368 some more casts to deal with that issue.
370 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
372 * man/man?/Makefile: don't re-build .tmp files if they already
373 exist. this gets the install phase to work correctly.
375 1999-08-13 a sun <asun@hecate.darksunrising.blah>
377 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
378 AFPERR_PARAM. also, reject names with /'s in them if the nohex
381 1999-08-12 a sun <asun@hecate.darksunrising.blah>
383 * etc/afpd/filedir.c,file.c,directory.c: changed error for
384 illegal filenames to AFPERR_EXIST.
386 1999-08-11 a sun <asun@hecate.darksunrising.blah>
388 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
389 .Parent files are no longer valid file names.
391 * etc/afpd/volume.c (volset): added usedots and nohex as
392 options. usedots stops :hex translation of . files while nohex
393 stops :hex translation of everything but . files. in addition,
394 . files created on the unix side are by default hidden.
396 * libatalk/adouble/ad_open.c: initialize more bits.
398 1999-08-10 a sun <asun@hecate.darksunrising.blah>
400 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
401 actual name for nbp registration rather than ATALK_NAME.
403 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
404 get used when building the kernel module.
406 * sys/solaris: changed strings.h to string.h
408 1999-08-08 a sun <asun@hecate.darksunrising.blah>
410 * etc/afpd/volume.c (readvolfile): changed volume options into an
411 array of structs to ease maintenance.
413 1999-08-05 a sun <asun@hecate.darksunrising.blah>
415 * etc/afpd/status.c (status_init): change the default icon
416 depending upon whether or not it's an ASIP or an AppleTalk
419 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
421 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
422 little more informative.
424 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
426 * yippee. someone figured what was happening with the installation
427 of the man pages. i got rid of a duplicate entry.
429 1999-08-02 a sun <asun@hecate.darksunrising.blah>
431 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
432 default options. it keys in on a :DEFAULT: label.
434 1999-07-30 a sun <asun@hecate.darksunrising.blah>
436 * moved rc.atalk.* scripts to distrib/initscripts.
438 1999-07-27 a sun <asun@hecate.darksunrising.blah>
440 * contrib/printing: added patch from job@uchicago.edu
442 * etc/afpd/file.c: forgot to initialize struct ad in
445 * etc/afpd/nls/makecode.c: added an empty mapping.
447 * etc/psf/Makefile (install): well cp -d didn't work either. just
450 1999-07-26 a sun <asun@hecate.darksunrising.blah>
452 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
453 (from denny@geekworld.com).
455 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
456 and patch files from inoue.
458 * sys/linux/Makefile (install-sysv): fixed up a bit.
460 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
463 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
464 of -icon. now it means to use the yucky bitmap instead of the
467 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
470 1999-07-18 a sun <asun@hecate.darksunrising.blah>
472 * create links/mangle files in the compile rather than the install
473 phase so that rpm will be happier.
475 1999-07-17 a sun <asun@hecate.darksunrising.blah>
477 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
478 filedir.c (afp_rename, afp_moveandrename): don't allow the
479 creation/renaming of names with certain characters if mswindows
480 compatibility is enabled.
482 1999-07-16 a sun <asun@hecate.darksunrising.blah>
484 * rc.atalk.redhat: incorporated chkconfig from inoue.
486 1999-07-15 a sun <asun@hecate.darksunrising.blah>
488 * etc/atalkd/config.c (getifconf): wrap check against
489 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
491 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
493 1999-07-11 a sun <asun@hecate.darksunrising.blah>
495 * contrib/ICDumpSuffixMap: added internet config perl script from
498 * contrib/printing: added contributed solaris printing scripts
499 from job@uchicago.edu.
501 1999-07-10 a sun <asun@hecate.darksunrising.blah>
503 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
505 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
507 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
510 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
512 1999-07-08 a sun <asun@hecate.darksunrising.blah>
514 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
515 address already exists.
517 1999-07-06 a sun <asun@hecate.darksunrising.blah>
519 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
521 1999-07-05 a sun <asun@hecate.darksunrising.blah>
523 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
524 is so that we can filter by interface in the future. however, it
525 doesn't seem to work that well right now. bleah.
527 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
528 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
531 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
532 etc/papd,afpd: accept -A <ddp address> as an option so that you
533 can specify the address to be used on a multihomed server. for
534 papd, you use the 'pa' option in papd.conf.
536 1999-07-04 a sun <asun@hecate.darksunrising.blah>
538 * etc/atalkd/config.c (parseline): initialize parseline properly
539 so that we don't get extraneous junk.
541 * etc/afpd/afp_options.c (afp_options_parseline): do
542 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
544 * etc/atalkd/config.c (getifconf/readconf): check to see if the
545 supported device can support appletalk addresses. either continue
546 or exit depending upon whether or not it's auto-configed.
548 1999-07-03 a sun <asun@hecate.darksunrising.blah>
550 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
551 toggle the volume icon so that it uses the apple icon instead.
553 * etc/afpd/config.c (AFPConfigInit): added more logic for the
554 -proxy option. here are the rules: -proxy will always try to
555 create a DDP server instance. by default, the proxy server will
556 still allow you to login with an appletalk connection. to prevent
557 that, just set the uamlist to an empty string.
559 1999-07-02 a sun <asun@hecate.darksunrising.blah>
561 * etc/afpd/status.c (status_netaddress): added support for fqdn
562 (not available in the appleshare client yet).
564 1999-07-01 a sun <asun@hecate.darksunrising.blah>
566 * etc/afpd/config.c (DSIConfigInit): application code for proxy
567 setup. it's the -proxy option.
569 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
570 support for proxy setup.
572 1999-06-30 a sun <asun@hecate.darksunrising.blah>
574 * etc/afpd/filedir.c (afp_rename): fixed up some error
575 codes. quark express should be happier.
577 * etc/afpd/uam.c (uam_afpserver_option): added
578 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
579 report that setting that fixes pam on solaris machines.
581 1999-06-28 a sun <asun@hecate.darksunrising.blah>
583 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
585 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
587 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
589 * etc/afpd/fork.c (afp_write): fixed up error condition.
591 1999-06-26 a sun <asun@hecate.darksunrising.blah>
593 * etc/uams/Makefile (install): changed install location of uams.
595 * sys/linux/Makefile (install-sysv): always install redhat
596 script. netatalk.config script only gets installed if it's not
599 1999-06-23 a sun <asun@hecate.darksunrising.blah>
601 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
603 * etc/afpd/afp_options.c (afp_options_init): changed default
606 1999-06-22 a sun <asun@hecate.darksunrising.blah>
608 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
609 just the server name here.
611 * etc/afpd/volume.c (volxlate): made $s return something
612 meaningful no matter what.
614 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
617 1999-06-20 a sun <asun@hecate.darksunrising.blah>
619 * etc/afpd/volume.c (volxlate): added variable substitution. if it
620 doesn't understand the variable, it just spits it back out.
622 (creatvol): display truncated volume name if it's too long.
624 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
625 with oses that have -lcrypt but shouldn't use it.
627 1999-06-11 a sun <asun@hecate.darksunrising.blah>
629 * include/atalk/afp.h: added comments to FPErrors.
631 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
634 * include/atalk/util.h: server_lock() returns pid_t.
636 1999-06-10 a sun <asun@hecate.darksunrising.blah>
638 * README.ASUN: added location for both ssleay and openssl.
640 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
641 server." in the future, there will be "uamc_*." changed the shared
642 library names to match.
644 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
646 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
649 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
652 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
653 type field. do type check.
655 * etc/uams/uam_*pam.c: added a couple more error codes.
657 1999-06-08 a sun <asun@hecate.darksunrising.blah>
659 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
660 codepage.h gets made.
662 * libatalk/*/Makefile: make sure that the profiled directory gets
665 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
666 that was causing mapname to fail.
668 1999-06-07 a sun <asun@hecate.darksunrising.blah>
670 * etc/atalkd/main.c (main): added a note to check the syslog if
671 atalkd can't be setup.
673 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
674 auto-detected #defines.
676 1999-06-06 a sun <asun@hecate.darksunrising.blah>
678 * etc/afpd/fork.c (afp_write): argh. i moved things around a
679 little too much and ended up with an uninitialized eid. strangely,
680 the compiler didn't complain. simplified bits a little as
681 well. also, FPWrite was returning the wrong error messages. on
682 64-bit filesystems, the offset can wraparound. so, report a disk
683 full error if that's going to happen. egcs-19990602 gets one
684 memcpy right and another wrong on my udb. bleah.
686 (afp_read): fixed the error messages here as well.
688 1999-06-05 a sun <asun@hecate.darksunrising.blah>
690 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
691 some links on the fly if they're missing.
693 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
694 re-arranged a little.
696 1999-06-04 a sun <asun@hecate.darksunrising.blah>
698 * etc/afpd: prototyped everything here and moved the FP functions
701 * libatalk/util/bprint.c: moved all of the bprints to here.
703 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
705 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
707 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
710 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
713 * bin/afppasswd/afppasswd.c: added -a option so that root can add
714 new users. turned all of the options into bits. added newlines to
717 1999-06-03 a sun <asun@hecate.darksunrising.blah>
719 * sys/freebsd/Makefile: turn on sendfile support if running on a
722 1999-06-02 a sun <asun@hecate.darksunrising.blah>
724 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
725 conversation function.
727 * sys/*/Makefile: check at make time to see if -lrpcsvc and
728 -lcrypt should be included in the appropriate places.
730 1999-05-28 a sun <asun@hecate.darksunrising.blah>
732 * etc/afpd/file.c (deletefile): added more error checking here as
735 * etc/afpd/directory.c (renamedir): added a couple a few more
738 * sys/sunos/Makefile: sunos should really work now.
740 1999-05-27 a sun <asun@hecate.darksunrising.blah>
742 * include/atalk/afp.h: added in a couple new error codes (one
743 deals with password setting policy, the other with maximum logins
746 * etc/afpd/fork.c (afp_openfork): try to re-open files on
747 read-only volumes as read-only.
749 1999-05-26 a sun <asun@hecate.darksunrising.blah>
751 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
752 uname -p. other oses seem to use uname -m for the same information.
754 * etc/uams/uam_pam.c (pam_changepw): added check for same
757 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
758 same password checks.
760 * sys/osx/Makefile: moved the os x server stuff into its own build
763 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
764 and MACHINETYPE for some stuff.
766 1999-05-25 a sun <asun@hecate.darksunrising.blah>
768 * sys/sunos/Makefile: various bits to make stuff work with sunos
771 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
773 * etc/afpd/file.c (copyfile): only copy the header file if newname
776 * etc/afpd/directory.c (copydir): make sure to balk if the
777 directory already exists. in addition, make sure to preserve the
780 1999-05-24 a sun <asun@hecate.darksunrising.blah>
782 * bin/afppasswd/afppasswd.c: global password updating utility for
783 the randnum authentication method.
785 1999-05-22 a sun <asun@hecate.darksunrising.blah>
787 * etc/uams/uam_randnum.c (afppasswd): added in global password
788 file for the randnum authentication method. it looks for a .key
789 file as well to handle encryption.
791 * etc/afpd/afp_options.c (afp_options_parseline): added
792 -passwdfile as an option so that you can specify a global randnum
793 password file if desired.
795 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
796 as an AppleVolumes.* option. if the user is in the rolist, the
797 volume gets set as readonly. if there's a rwlist, and the user
798 isn't in it, the volume also gets set as readonly.
800 1999-05-21 a sun <asun@hecate.darksunrising.blah>
802 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
803 can't allocate the reference counting variable.
805 * etc/uams/uam_*.c: make sure that uam_setup returns an error
808 1999-05-19 a sun <asun@hecate.darksunrising.blah>
810 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
811 /var/run as the lock file directory.
813 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
814 a problem with FPWrite getting a request count of 0. that's
817 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
818 load itself from a shared library. i've compensated by linking it
821 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
822 still screwy with the dhx_pam stuff though.
824 1999-05-18 a sun <asun@hecate.darksunrising.blah>
826 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
827 username to fit what's in pw->pw_name if necessary.
829 1999-05-16 a sun <asun@hecate.darksunrising.blah>
831 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
832 authentication method. i'm still missing a little info to get it
835 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
836 create it from the unix name.
838 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
839 and fdType into strings.
841 1999-05-16 a sun <asun@pelvetia>
843 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
844 little. now, you pass in an int * if you want to either get/set
845 the size of the option. added in UAM_OPTION_RANDNUM for generic
846 (4-byte granularity) random number generation.
848 * etc/afpd/switch.c: added afp_logout to preauth_switch.
850 1999-05-15 a sun <asun@hecate.darksunrising.blah>
852 * bin/megatron/macbin.c (bin_open): make error message for
853 macbinary files more informative.
855 (test_header): added more macbinary tests. it now has a workaround
856 for apple's incorrectly generated macbinary files.
858 1999-05-14 a sun <asun@hecate.darksunrising.blah>
860 * sys/solaris/Makefile: added shared library generation bits.
862 * etc/uams: moved server-side uams here.
864 * include/netatalk/endian.h: fixed some solaris bits.
866 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
867 do an atp_close and free the asp object. oh yeah, as afpd needs
868 to export symbols to its modules, make sure you don't do anything
869 more exciting than strip --strip-debug with it.
871 1999-05-12 a sun <asun@hecate.darksunrising.blah>
873 * various places that use sigaction: zero out struct sigaction so
874 that we don't send something confusing. also make sure that we
875 don't set a timer unless we already have a sigaction set.
877 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
878 empty resource fork read-only. also, added back in the bit of code
879 that prevented locks from being attempted on non-existent resource
882 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
885 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
888 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
889 convert this over to use by the netddp interface.
891 1999-05-12 a sun <asun@pelvetia>
893 * etc/afpd/uam.c: os x server's runtime library loader is
894 braindead. as a result, i've switched to using an exported struct
897 * bin/aecho,getzones: changed these to use the netddp interface.
899 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
901 * libatalk/netddp: abstracted the ddp interface to netddp. besides
902 the prior socket-driven interface, there's now an os x server
903 interface. so, instead of calling socket/sendto/recvfrom, you call
904 netddp_open/netddp_sendto/netddp_recvfrom.
906 1999-05-11 a sun <asun@pelvetia>
908 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
911 * etc/atalkd/main.c (main): make sure that if -dontroute is
912 selected for all but one interface, that interface also gets
915 1999-05-10 a sun <asun@hecate.darksunrising.blah>
917 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
918 smaller than it used to be.
920 1999-05-09 a sun <asun@hecate.darksunrising.blah>
922 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
923 uam_randnum.c: uam modules. these should probably be moved out of
924 afpd (and into something like etc/uam_server) when the printing
925 stuff gets uam support.
927 1999-05-08 a sun <asun@hecate.darksunrising.blah>
929 * etc/afpd/uam.c: interface to user authentication modules.
930 it should eventually be moved to libatalk, but that's not
931 necessary until the printing uam stuff is done. everything is from
932 the server-side perspective, but that's only because there aren't
933 any client-side uses right now.
935 * libatalk/util/module.c: generic interface to run-time library
936 loading functions. right now, the dlfcn family and os x server's
937 NS-style way of doing things are the ones understood. in addition,
938 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
940 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
941 write part of write continuations.
943 1999-05-07 a sun <asun@hecate.darksunrising.blah>
945 * etc/atalkd: added the ability to turn off routing for particular
946 interfaces. specify -dontroute for each interface that you don't
949 1999-05-06 a sun <asun@hecate.darksunrising.blah>
951 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
954 1999-05-04 a sun <asun@hecate.darksunrising.blah>
956 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
957 forever if there's a problem while it's being used. that's fixed.
959 1999-05-01 a sun <asun@hecate.darksunrising.blah>
961 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
962 so that renaming a directory works across filesystems.
964 1999-04-27 a sun <asun@hecate.darksunrising.blah>
966 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
967 what's stored in the header file.
969 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
970 afpd.conf more understandable.
972 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
973 endian converted. that's fixed.
975 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
976 necessarily ORable, so use ADLOCK_RD/WR instead.
978 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
979 unlock accidentally getting the data fork locks.
981 1999-04-24 a sun <asun@hecate.darksunrising.blah>
983 * etc/afpd/fork.c (afp_openfork): always try to create a resource
986 1999-04-21 a sun <asun@hecate.darksunrising.blah>
988 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
989 turned the mmapped header stuff into and #ifdef
990 USE_MMAPPED_HEADERS option.
992 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
993 the hfs fs doesn't currently have mmappable header files. rather
994 than implement that, i just reverted back to a modified version
995 of the old way of reading headers.
997 1999-04-15 a sun <asun@hecate.darksunrising.blah>
999 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1002 (afp_openfork): deal with read-only data forks that don't have
1003 corresponding .AppleDouble files. we can't really do anything with
1004 deny locks in this case. just make sure that read locks are set.
1006 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1007 around FILPBIT_FINFO.
1009 * etc/afpd/fork.c (afp_read): as we share open files now, check
1010 for fork type against of_flags instead of just checking to see if
1011 the file is open. this fixes a bug that caused resource forks to
1012 get filled with data fork information.
1014 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1016 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1019 1999-04-09 a sun <asun@mead1.u.washington.edu>
1021 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1024 1999-04-09 a sun <asun@saul6.u.washington.edu>
1026 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1027 with quota support enabled.
1029 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1031 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1032 config/AppleVolumes.default: added read-only volume option.
1034 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1037 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1039 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1040 (from <jk@espy.org>).
1041 (bin_header_write/read): fixed up screwed up file date
1042 generation/reading with macbinary files.
1044 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1045 memcpy/memset/memcmp's. added macbinary III support.
1047 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1048 that we can stream macbinary file creation to stdout.
1050 * bin/megatron/megatron.c: incorporated information patch (--header
1051 and --macheader) from <fmorton@base2inc.com>.
1054 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1056 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1059 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1060 dummy ints for some of the files that can get compiled to empty
1061 objects. check for the type of msync() available as well.
1063 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1065 * INSTALL/README.GENERIC: added information for a generic
1066 architecture. It includes the information needed to get netatalk
1067 to compile on a random unix platform.
1069 * etc/afpd/quota.c: moved the quota stuff here so that we can
1070 #ifdef it out on a machine without quota support.
1072 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1074 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1075 well. this prevents multiple read locks on the same byte range
1076 from disappearing if one user disappears.
1078 (ad_fcntl_lock): here are the current rules for file
1080 1) if there's a appledouble header, we use the beginning
1081 of that for both data and resource forks.
1082 2) if there isn't, we use the end of the data fork (or past the
1083 end on 64-bit machines)
1085 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1087 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1088 appledouble entry parts is done.
1090 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1093 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1095 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1096 appledouble header parsing more generic so that we can read in
1097 arbitrary appledouble header files. i just mmap the parts that we
1100 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1102 * etc/afpd/file.c (afp_copyfile): return the correct error
1103 response on a failed copy. also, error if the file is already open
1104 to prevent problems with locks. we really need to ad_lock
1105 this during the copy
1107 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1109 * etc/afpd/volume.c (readvolfile): switched volume options to
1110 using ':' as a delimiter as that's one of the characters that's
1111 not allowed as part of a mac filename.
1112 (volset): changed access to allow/deny
1114 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1117 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1119 * NOTE to myself: jeremy allison said that samba uses refcounts to
1120 prevent close() from killing all the byte locks. so, i've started
1121 converting afpd to using refcounting as well. luckily, we already
1122 have of_findname, so we know when files are open. in cases where
1123 files are already open, this will replace an ad_open with a lookup
1126 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1127 NULL names when getting directory/file names.
1129 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1130 sure these are always in network byte order.
1132 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1134 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1135 synchronization bits. now, we use two bytes to do the read/write
1136 stuff. when access is needed, a read lock is attempted. if a deny
1137 lock is needed, a write lock is attempted. we even handle the
1138 access None mode now by saving the access modes.
1140 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1141 we can obey all of the file synchronization rules.
1143 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1144 reversed. with helios lantest's lock/unlock 4000 times test, it
1145 looks like i get <1 second overhead on my machine when using byte
1146 locks. NOTE: this will get a little worse when serialization gets
1147 added. in addition, 0x80000000 only works for 64-bit machines. i
1148 reserve the last allowable bit for 32-bit machines.
1150 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1151 now as i'm able to trigger a kernel oops in linux with the 64-bit
1154 (afp_read/afp_write): make sure to use the same offset when doing
1157 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1159 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1160 stuff to get byte locks to work correctly (except for the
1161 serialization) only to discover that files that use byte locks
1162 also request a deny write mode. luckily, byte locks only cover up
1163 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1164 synchronization locks.
1166 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1168 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1169 DEPS with double quotes so that multiple defines work.
1171 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1173 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1175 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1176 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1177 programs on the same machine opening the same file. current
1178 problems with the mechanism that i don't want to fix unless
1180 1) there's a race during the relock phase. serialization
1182 2) it assumes that each fd only locks a single contiguous
1183 range at a time. keeping a list of locked ranges would
1186 also, i changed the default to using fcntl locks. if the above two
1187 are really necessary, i'll probably switch to something a little
1188 more featureful like the berkeley db's lock manager.
1190 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1192 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1194 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1195 reduce system calls a little.
1197 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1200 * sys/solaris/Makefile: added 64-bit solaris patch from
1201 <jason@pattosoft.com.au>.
1203 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1205 * include/netatalk/endian.h: make solaris 2.5 complain less.
1207 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1208 fixed a couple problems with the adv1tov2 stuff.
1210 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1212 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1213 aligned along an even boundary.
1215 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1217 * etc/afpd/volume.c (readvolfile): added volume password support.
1219 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1221 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1222 layer multicast setting bits.
1224 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1225 prodos field info when converting.
1227 * rc.atalk.redhat: added pidof checking in case the machine
1228 crashes. also added rc.atalk.wrapper to the redhat rc script
1231 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1233 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1234 error detection here and more fully report error conditions.
1236 (flushfork): make sure to flush the header if necessary (rfork
1237 length changed or modification date needs to be set).
1239 (afp_write): ugh. this wasn't returning the right values for the
1240 last byte written if the endflag was set. in addition, it was
1241 setting the modification date. that should be left to FPCloseFork
1242 and FPFlush(Fork). this fixes a problem that shows up with
1245 NOTE: as of now, changes to the rfork info are the only things
1246 that aren't flushed immediately when altered.
1248 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1249 need to report bitmap errors if we try to fiddle with the wrong
1250 fork. i added an of_flags field to keep things sorted.
1252 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1253 movement, i forgot to make sure that the pre-asun2.2.0 features
1256 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1258 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1259 old name even when it's a directory.
1261 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1262 number of buffers used. use these when needed in afp_* calls.
1264 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1265 files when deleting a directory.
1267 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1269 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1272 * fixed up a few bobbles in the netatalk-990130 merge.
1274 * the noadouble option should be pretty much implemented. here's
1276 when a directory is created, the corresponding
1277 .AppleDouble directory is not.
1279 comments, dates, and other file attributes will get
1280 silently ignored and not result in the creation of a new
1281 .AppleDouble directory.
1283 however, if anything possessing a resource fork is copied
1284 into that directory, the corresponding .AppleDouble
1285 directory will be created. once this happens, any
1286 other file in the directory can acquire an AppleDouble
1287 header file in the future.
1289 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1291 * merged in the rest of netatalk-990130.
1293 * sys/solaris: merged in netatalk-990130 changes.
1295 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1296 tested and fixed the sendfile bits on linux. it looks like linux
1297 doesn't permit socket -> file sendfiles yet.
1299 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1300 newline character checking on.
1302 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1304 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1305 operates on a per-volume basis.
1307 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1309 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1311 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1314 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1315 implemented sendfile bits. currently, there's support for linux
1316 and freebsd. unfortunately, freebsd's implementation doesn't allow
1317 file->file or socket->file copies. bleah.
1319 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1321 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1322 volume.c (volset): added in the beginnings of a NOADOUBLE option
1323 for those that don't want AppleDouble headers to be created by
1324 default. it doesn't really work that well right now.
1326 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1328 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1329 from ad_refresh. made broken v1 header checking the default. fixed
1330 broken v1 date checking. now, it just checks to see if the v1
1331 MDATE is > than st_mtime by 5 years.
1333 * etc/afpd/directory.c: make date setting alter directory dates as
1336 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1338 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1339 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1341 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1343 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1344 shift the beginning of the fake did's if necessary.
1346 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1349 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1350 changes so that the CNIDs will still work even when the .AppleDB
1351 directory is read-only. if you're still allowed to create files on
1352 these volumes, you'll get a temporary id for those.
1354 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1356 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1357 files get cleared out on cnid_close() if it's the last user for a
1360 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1362 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1363 allows us to set the backup date on the server.
1365 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1366 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1367 with FPCatSearch to do.
1369 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1371 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1374 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1376 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1377 dbpath= in AppleVolumes.* for the CNID database.
1379 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1380 appledouble v1 environment, turn on v1compat by default.
1382 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1384 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1385 to handle broken ad headers.
1387 * etc/afpd/file.c (setfilparams): we need to make sure that we
1388 flush the file if we've created it even if there's an error. the
1389 magic number/version don't get saved if we don't.
1391 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1394 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1396 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1398 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1401 * well, what do you know? the cnid stuff compiles in.
1403 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1405 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1406 enumerate.c: added in stubs for CNID database conditional on
1407 AD_VERSION > AD_VERSION1.
1409 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1411 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1413 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1414 into hex code as well.
1416 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1418 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1420 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1422 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1423 both directions so that we can recover from problems if
1426 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1428 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1429 descends a directory and converts everything it sees into
1432 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1434 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1435 header rebuilding here so that ad_refresh can use it.
1437 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1440 * bin/megatron/asingle.c: yuk. removed all of
1441 the duplicate stuff here and had it use the #defines in adouble.h.
1443 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1444 conversion routine. we still need a shortname creator and a cnid
1445 database for the v2 features to be useful.
1447 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1449 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1450 that we don't understand.
1452 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1454 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1455 stuff. also made sure to lower/upper the 8-bit characters as
1458 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1461 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1462 attribute bits are in the correct byte ordering.
1464 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1466 * etc/afpd/volume.c (volset): made prodos an option to options=
1467 flag. also added crlf as an option.
1469 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1471 (ad_open): deal correctly with 0-length files by treating them as
1474 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1475 fork.c (getforkparams), directory.c (get/setdirparams): finished
1476 adding appledouble version 1 and 2 date conversion. also added
1479 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1480 file if we needed to fiddle with it.
1482 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1483 setting/retrieval code.
1485 * libatalk/adouble/ad_open.c (ad_open): initialize date
1486 structures here instead of elsewhere.
1488 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1490 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1491 time conversion code.
1493 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1495 * etc/afpd/volume.c (volset): changed prodos setting to
1498 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1500 * etc/afpd/volume.c (volset): okay. you now have the following
1501 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1502 tolower -> lowercases everything in both directions
1503 toupper -> uppercases everything in both directions
1504 xlatelower -> client sees lowercase, server sees uppercase
1505 xlateupper -> client sees uppercase, server sees lowercase
1507 NOTE: you only should use this if you really need to do so. this
1508 and the codepage option can cause mass confusion if applied
1509 blindly to pre-existing directories.
1511 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1513 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1514 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1515 bits 2 and 3 deal with UTOM. i did it that way so that you can
1516 casefold in one direction only or in both directions if
1517 desired. needless to say, setting both bits for UTOM or MTOU
1518 doesn't make any sense. right now, toupper takes precedence in
1519 MTOU, and tolower takes precedence in UTOM.
1521 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1523 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1524 -codepagepath to the list of available options. they specify the
1525 directories to look for uam modules and codepages,
1526 respectively. currently, -uampath doesn't do anything.
1528 * etc/afpd/volume.c (readvolfile): spruced up options to
1529 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1530 utomfile=<codepage.y>, casefold=<num> for volumes.
1532 * etc/afpd/desktop.c (utompath,mtoupath): added
1533 codepage/casefolding support. casefold is currently an int that
1534 could have multiple actions. right now, i just lowercase in
1535 mtoupath and uppercase in utompath.
1537 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1538 as an additional specifier so that we don't have problems with
1539 the same path names on multiple volumes.
1541 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1543 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1546 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1548 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1549 prevent atalkd from trying to use a slave channel.
1551 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1553 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1554 icon bit by default on the root directory. that screws up pre-OS 8
1557 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1559 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1560 so that we can gracefully shut down the server side.
1562 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1563 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1564 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1565 interval an option (-tickleval <sec>).
1567 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1568 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1569 dsi_write.c both save/restore the old timer, so they don't really
1570 care what the actual value is.
1572 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1574 * due to the recent obsession with bug fixing and low-level dsi
1575 cleanups, i've decided that this should really be asun2.1.1
1576 instead of asun2.1.0a.
1578 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1580 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1581 announcement here from etc/afpd/afp_dsi.c.
1583 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1584 into here as they're pretty generic. now, the protocol specific
1585 stuff only handles open and close.
1587 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1588 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1589 added initial stubs for sendfile support. i still need to go
1590 through and calculate the appropriate offsets to use.
1592 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1593 instead of just ignoring it.
1595 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1596 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1597 dsi_read interface to return errors so that i can kill things
1600 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1602 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1603 and write() treat a return of 0 differently.
1605 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1607 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1610 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1612 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1613 to return earlier on 0-sized files.
1615 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1617 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1618 check to here from dsi_cmdreply.
1620 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1622 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1623 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1625 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1627 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1628 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1630 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1632 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1633 fixed a couple of failed realloc leaks.
1635 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1636 to deal with case-insensitive, case-preserving filesystems.
1638 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1640 * etc/afpd/auth.c: fixed randnum password changing check.
1642 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1644 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1647 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1650 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1651 prevent buffer overflows here.
1653 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1655 * sys/linux/Makefile: fixed PAM message.
1657 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1659 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1660 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1662 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1663 should check against the entire unix name.
1665 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1667 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1668 to check against mac name.
1670 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1672 * etc/afpd/auth.c (afp_changepw): make password changing deal
1673 correctly with "real" user names. also, moved seteuid() to before
1674 the pam_authenticate() bit as shadow passwords need that.
1676 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1677 name against MACFILELEN.
1679 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1681 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1682 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1683 checks. also make sure test occurs before checking to see if the
1686 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1688 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1689 forgot that password changing needs root privileges to work.
1691 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1692 incorrect. i cleaned it up a bit.
1694 * sys/linux/Makefile: fixed the installation bits.
1696 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1698 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1699 if there's a problem.
1701 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1703 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1704 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1705 that. also made sure that files > MACFILELEN never show up.
1707 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1709 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1710 spurious pointer dereference.
1712 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1713 length so that we don't need to realloc.
1715 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1716 return AFPERR_BUSY if the dest has an ofork open.
1718 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
1719 (afp_rename): return AFPERR_SAMEOBJ if source == dest
1721 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
1723 * etc/afpd: went through and looked for places that needed to use
1724 curdir instead of dir. i think i have them all right now.
1726 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
1727 curdir correctly. what this really means is that cname should be
1728 fixed to return everything it changes as opposed to changing a
1731 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
1733 * etc/afpd/config.c (configinit): do the right thing if
1734 AFPConfigInit fails.
1736 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
1738 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
1739 embarrassing. i wasn't doing refcounts correctly.
1741 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
1743 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
1746 * sys/ultrix/Makefile: ultrix understands the old rquota format.
1748 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
1749 the current directory.
1750 (of_rename): erk. changed it to handle renaming a file that has
1751 been opened multiple times.
1753 * etc/atalkd: made sure that if you don't specify -router, things
1754 are as they were before.
1756 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
1758 * etc/afpd/status.c (status_flags): forgot to turn on password
1759 setting if randnum passwords are being used.
1761 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
1763 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
1766 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
1767 from "Fred Lindberg" <lindberg@id.wustl.edu>.
1769 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
1771 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
1772 for more AFP 2.0 compliance. unfortunately, apple's appleshare
1773 client doesn't like non-fixed directory ids.
1775 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
1777 * etc/afpd/volume.c (accessvol): the accessible volume list can
1778 now be controlled by groups and usernames. just use something of
1779 the following form: @group,name,name2,@group2,name3
1781 NOTE: you can't have any spaces, and the parser forces you to
1782 include all options. in this case, there are some apple II options
1783 that need to be entered. they need to go away soon anyway.
1785 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
1786 field into a temporary buffer before calling strtok.
1788 1998-08-29 a sun <asun@hecate.darksunrising.blah>
1790 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
1791 last router on an interface goes down, we need to delete the
1792 interface's zone table.
1794 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
1796 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
1797 i've added this in to increase AFP compliance.
1799 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
1800 should make afpd compatible with OS 8.5's Nav Services.
1802 * etc/atalkd/config.c,main.c: -router now specifies router mode
1803 with any number of interfaces.
1805 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
1807 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
1808 atalkd as a single-interface router. now, you can get zones with
1809 only single interfaces! i'm only waiting on wes for the approved
1810 configuration toggle.
1812 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
1814 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
1815 ADLOCK_* into real #defines and added translations in the
1816 lock-type specific functions. this should make it easier to
1817 recompile things without screwing up.
1819 1998-08-26 a sun <asun@hecate.darksunrising.blah>
1821 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
1824 1998-08-25 a sun <asun@hecate.darksunrising.blah>
1826 * etc/afpd/status.c (status_server): changed status_server to
1827 use only the obj part of obj:type@zone-style names.
1829 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
1830 zones properly. it was matching on anything but the actual zone.
1832 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
1834 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
1835 that solaris' pam session setup doesn't crap out.
1837 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
1839 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
1840 with zip multicast info.
1842 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
1844 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
1845 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
1846 <sys/time.h> for ultrix breakage.
1848 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
1850 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
1851 knew that speeding up of_findname would be useful. in any case, i
1852 discovered the source of yet another small AFP non-compliance that
1853 was confusing WordPerfect. on an afp_rename, we also need to
1854 rename the corresponding ofork. i've added an of_rename() to do
1857 1998-08-13 a sun <asun@hecate>
1859 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
1860 sticking refnum in ofork.
1862 1998-08-12 a sun <asun@hecate>
1864 * etc/afpd/fork.c (afp_openfork): added already open attribute
1867 * etc/afpd/ofork.c: added a hashed of_findname.
1869 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
1871 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
1872 forks from read-only non-appledouble media.
1874 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
1876 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
1877 (getvolspace): modified them to treak afs like the other
1878 getvolspaces w.r.t. VolSpace.
1880 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
1882 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
1883 used for filesystems. nfs quotas sometimes failed as a
1884 result. that's fixed now.
1886 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
1888 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
1889 it's simple to run the server process as a non-root user.
1891 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
1893 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
1894 out that i was opening lots of sockets with callaurpc. now, the
1895 socket gets saved and reused.
1897 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
1898 for rquota's bsize. unless fixed, rquota will report incorrect
1901 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
1903 * etc/afpd/uam/README: added some preliminary ideas on a
1904 plug-in uam architecture. in addition, this should allow arbitrary
1905 afp function replacement. eventually, auth.c should get a
1908 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
1910 * etc/afpd/nfsquota.c: added headers and redefined a couple
1911 structure fields so that sunos4 compiles.
1913 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
1914 2. this should get redhat 4.2 machines. NOTE: they're still
1915 missing librpcsvc.a, so they'll need to remove that from the
1918 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
1920 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
1921 missing a couple functions needed for rquota support. here they
1924 * etc/afpd/unix.c (mountp): fixed the nfs detection for
1925 solaris. we still need bsd and ultrix.
1927 1998-07-05 a sun <asun@hecate>
1929 * include/atalk/adouble.h: marked out space for appledouble v2.
1931 1998-07-04 a sun <asun@hecate>
1933 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
1934 get negative numbers for length fields and such.
1936 1998-07-04 a sun <asun@hecate>
1938 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
1939 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
1940 provided the initial bits from the bsd quota program.
1942 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
1943 getnfsquota depending upon the type of fs.
1945 * etc/afpd/unix.c (mountp/special): munged mountp and
1946 special to return either the nfs mount point or the fs
1947 device. set the vol->v_nfs flag if it's nfs.
1949 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
1950 honor results returned from uquota_getvolspace.
1952 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
1954 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
1955 multiple copies. as that's not the case here, i've reverted to
1956 just doing read + write.
1958 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
1960 * sys/linux/Makefile: fixed the redhat-style atalk
1961 installation. also, it doesn't over-write an existing
1962 /etc/rc.d/init.d/atalk file.
1964 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
1965 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
1967 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
1969 * changed sys/linux/Makefile to install a redhat-style sysv atalk
1970 script instead of the bsd one.
1972 * include/atalk/adouble.h: moved same-name list stub to struct
1975 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
1977 * changed to asunx.y.z notation as i was getting tired of
1978 increasing numbers. as this version is undergoing a fairly
1979 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
1980 never existed. i just started at 2.0.
1982 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
1983 for hashed-by-name oforks and oforks which group by name to help
1984 with byte locks and of_findname.
1986 * adouble (include/atalk/adouble.h): started implementing
1987 appledouble v2. mostly, i added bits to headers. v2 has wonderful
1988 bits that should make prodos support much less clunky, allow
1989 persistent dids, and allow msdos support.
1991 * finder info: added bits to directory.c and file.c describing the
1992 actual contents of finder info (from IM: Toolbox
1993 Essentials). also, set default directory view to an allowed value
1994 thanks to a suggestion from the appledouble v2 specs. that should
1995 help with read-only media.
1997 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
1998 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2001 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2003 * well, i'm starting a changelog as i keep forgetting what i've
2006 * locks: revamped them to be more in line with what should
2007 happen. currently, i've reverted back to flock-style locks as i'll
2008 need to stick in more code to get fcntl-style locks to work
2009 properly. specifically, i think modifying of_alloc/of_dealloc to
2010 keep track of locks, fds, and names should solve the problem with
2011 fcntl locks being process-specific and not fd specific.