1 ($Id: ChangeLog,v 1.32 2001-05-01 13:45:34 rufustfirefly Exp $)
3 2001-05-01 jeff b <jeff@univrel.pr.uconn.edu>
5 * bin/aecho/aecho.c, bin/getzones/getzones.c, bin/megatron/asingle.c,
6 bin/megatron/hqx.c, bin/megatron/macbin.c, bin/megatron/megatron.c,
7 bin/megatron/nad.c, bin/megatron/updcrc.c, libatalk/atp/atp_bprint.c,
8 libatalk/util/getiface.c: warnings patch from Sebastian Rittau
9 <srittau@users.sourceforge.net> (#420300)
11 * bin/afile/*: replacement for old restrictive afile from Sebastian
12 Rittau <srittau@users.sourceforge.net> (#420302)
14 * distrib/initscripts/rc.atalk.redhat.tmpl: daemon-specific start and
15 stop messages to the redhat initscript. nbpregister and unregister
16 messages are also displayed. This patch also permits spaces in zone
17 and machine names to be used in the variables. From Ryan Cleary
18 <tryanc@users.sourceforge.net> (#418094)
20 * bin/megatron/Makefile.am: patch to properly create links for
21 megatron, from Sebastian Rittau <srittau@users.sourceforge.net>
24 2001-04-25 morgan a <morgan@orst.edu>
26 * etc/afpd/unix.c: in setdirowner(), changed some of the syslog
27 statements from LOG_ERR to LOG_DEBUG. Some common "soft errors"
28 were being logged and scaring users. :)
30 2001-04-24 jeff b <jeff@univrel.pr.uconn.edu>
32 * configure.in: fixed problem with tcp_wrappers support; it needed to
35 2001-04-20 jeff b <jeff@univrel.pr.uconn.edu>
37 * configure.in, etc/afpd/Makefile.am, etc/papd/Makefile.am: added
38 AFPD_LIBS and PAPD_LIBS to cope with libraries that don't need to
39 be used for everything
41 2001-04-16 jeff b <jeff@univrel.pr.uconn.edu>
43 * etc/afpd/directory.c, etc/afpd/messages.c, etc/uams/uams_dhx_pam.c:
44 merged patch from Heath Kehoe <hkehoe@users.sourceforge.net> #416371,
45 fixing an OSX issue, byteorder problems with uid/gid in directory.c,
46 and fixing the syslog()'s in uams_dhx_pam.c to not produce useless
49 2001-04-12 jeff b <jeff@univrel.pr.uconn.edu>
53 2001-04-10 jeff b <jeff@univrel.pr.uconn.edu>
55 * configure.in, acconfig.h, etc/afpd/uam.c: patch submitted by Jason
56 Kelitz (jkeltz) to allow disabling of shell checking
58 * configure.in, contrib/Makefile.am: made timelord compilation
59 optional, disabled by default
61 2001-04-03 jeff b <jeff@univrel.pr.uconn.edu>
63 * etc/afpd/file.c: merged patch from Soren Spies <sspies@apple.com>
64 at Apple, fixing server disconnect problem upon afp_createid() call
66 2001-04-02 jeff b <jeff@univrel.pr.uconn.edu>
68 * contrib/shell_utils/Makefile.am, contrib/shell_utils/cleanappledouble.pl:
69 added cleanappledouble.pl script from Heath Kehoe <hakehoe@avalon.net>
71 2001-03-26 jeff b <jeff@univrel.pr.uconn.edu>
73 * etc/afpd/quota.c: fix compile dbtob problem on Linux from Sam
76 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am:
77 moved -shared into LDSHAREDFLAGS to fix Solaris build problems
78 from Bob Rogers <rogers-netatalk-devel@rgrjr.dyndns.org> and
79 Akop Pogosian <akopps@csua.berkeley.edu>
81 2001-03-22 Lance Levsen <lance.l@dontspam.home.com>
83 * etc/uams/Makefile.am: Added $LDFLAGS to fix broken compile due
84 to inability to find libcrypto. libcrypto is defined in LDFLAGS as
85 "-L$ssldir/lib" in configure.
87 2001-03-22 12:57 EST jeff b <jeff@univrel.pr.uconn.edu>
89 * configure.in: patch for OpenBSD compile reported by Jean-Phillipe
90 Rey <jprey@ads.ecp.fr>
92 2001-03-21 09:35 EST jeff b <jeff@univrel.pr.uconn.edu>
94 * etc/afpd/ofork.c, include/atalk/adouble.h, libatalk/adouble/ad_open.c:
95 patch from Jonathan Paisley (jonp@chem.gla.ac.uk)
97 2001-03-14 13:30 EST jeff b <jeff@univrel.pr.uconn.edu>
99 * configure.in: patch from Yoshinobu Ishizaki to fix problems with
100 Linux 2.0.x builds (Patch #408256)
102 * etc/afpd/file.c: used patch at http://www.avalon.net/~hakehoe/
103 to fix deleting/emptying trash problems (Patch #408218)
105 2001-03-14 11:00 EST jeff b <jeff@univrel.pr.uconn.edu>
107 * libatalk/adouble/ad_open.c: fixed O_RDWR kludge in ad_mode call
108 which was causing file creation problems
110 2001-03-09 09:42 EST jeff b <jeff@univrel.pr.uconn.edu>
112 * sys/solaris/Makefile: fixed problems noted by Akop Pogosian in Solaris
113 build, most notably paths, and reference to lp2pap.sh in the wrong
116 2001-03-07 15:30 EST jeff b <jeff@univrel.pr.uconn.edu>
120 * distrib/rpm/netatalk-redhat.spec, distrib/rpm/netatalk-mandrake.spec:
121 updated for 1.5pre5 release
123 2001-03-07 10:34 EST jeff b <jeff@univrel.pr.uconn.edu>
125 * etc/afpd/volume.c: changed VOLOPT_MAX to be 9 if FORCE_UIDGID is not
126 defined (thanks to Axel Bringenberg <A.Bringenberg@srz-berlin.de>)
128 2001-03-07 10:14 EST jeff b <jeff@univrel.pr.uconn.edu>
130 * ChangeLog: started using timestamps in ChangeLog
132 * etc/uams/uams_krb4/Makefile.am: fixed reference to send_to_kdc.c typo
133 (thanks to Sebastian Rittau)
135 2001-03-06 13:40 Lance Levsen <l.levsen@printwest.com>
137 * FAQ, README, README.ASUN, INSTALL.txt: Moved FAQ, AND READMEs to
138 docs/, where they should be.
140 * INSTALL/INSTALL.txt: Added ./INSTALL/INSTALL.txt
142 * INSTALL/FAQ, README, README.ASUN: Moved README.ASUN, README,
145 2001-03-06 11:47 Andrew Morgan <morgan@orst.edu>
147 * TODO: A few updates to papd entry.
149 * README.MORGAN: Removed README.MORGAN because that information in
150 now in papd's man page.
152 * man/man8/papd.8.tmpl: Updated papd man page to match current
153 code. Added descriptions of authenticated printing and other new
156 2001-02-28 15:43 Marc J. Millar <itlm019@mailbox.ucdavis.edu>
158 * libatalk/adouble/ad_open.c: AppleDouble directory creation
161 2001-02-28 jeff b <jeff@univrel.pr.uconn.edu>
163 * etc/afpd/directory.c, etc/afpd/file.c, etc/afpd/filedir.c,
164 etc/afpd/unix.c, etc/afpd/unix.h, etc/afpd/volume.h,
165 etc/afpd/volume.c, man/man5/AppleVolumes.default.5.tmpl: added
166 "dropbox" to available option if DROPKLUDGE is used during
169 2001-02-27 jeff b <jeff@univrel.pr.uconn.edu>
171 * README: updated 1.5+ install instructions to include list of
172 required and recommended packages
174 * etc/uams/uams_*.c: cleanups, addition of CVS Id tag to C source
176 * configure.in, acconfig.h: change USE_AFS to AFS to be the same as
177 all of the defines in the codebase
179 * etc/uams/uams_dhx_pam.c: fixed DHX login using this module (last
180 patch made with syslog()'s didn't include any brackets)
183 * distrib/initscripts/.cvsignore: removed pulling of atalk
185 * configure.in, etc/uams/Makefile.am: conditional compilation support
186 for PGP UAM module using --enable-pgp-uam
188 * configure.in, etc/uams/Makefile.am, etc/uams/uams_krb4/Makefile.am,
189 etc/uams/uams_krb4/.cvsignore, etc/uams/uams_krb4/*.c: modifications
190 for future Kerberos module reintegration
192 2001-02-26 jeff b <jeff@univrel.pr.uconn.edu>
194 * configure.in: added /usr/local/ssl to list of SSL paths to check, to
195 help kludge compilation on Mac OS X from Marcel <lammerse@xs4all.nl>
197 * distrib/initscripts/rc.atalk.redhat.tmpl: adjusted to echo warning
198 instead of dumping out if appletalk module not present, from
199 Steven Karen <karelsf@users.sourceforge.net> (Bug #404087)
201 * configure.in, contrib/timelord/timelord.c: applied patch from Wes
202 Hardaker <hardaker@users.sourceforge.net> (Patch #402245), with
203 suitable configure.in fixes
205 2001-02-23 jeff b <jeff@univrel.pr.uconn.edu>
207 * etc/afpd/desktop.c, etc/afpd/codepage.c, etc/afpd/nls/makecode.c:
208 patch from Axel Barnitzek <barney@users.sourceforge.net> to fix
209 broken codepage support.
211 * ChangeLog: started updaing ChangeLog with important patch/fix
212 information, as it is *never* up to date.
214 * configure.in, acconfig.h: implemented AFS configuration option
215 patch from Wes Hardaker <hardaker@users.sourceforge.net>
217 * VERSION: bumped up version to 1.5pre5, since 1.5pre4 was kind of
220 * autogen.sh: make libtoolize copy instead of linking files to
221 avoid problems, thanks to Wes Hardaker <hardaker@users.sourceforge.net>
223 2001-02-20 jeff b <jeff@univrel.pr.uconn.edu>
226 - Debian packaging in tree
227 - Numerous Makefile/build fixes
228 - .cvsignore implemented
229 - Solaris build fixes
231 2001-01-02 jeff b <jeff@univrel.pr.uconn.edu>
233 * etc/afpd/uid.c, etc/afpd/uid.h, ...: added support for forcing
234 uid/gid per volume for afpd
236 2000-09-22 Roland Schulz <rdschulz@abarrach.franken.de>
238 * etc/afpd/volume.c (setvoltime): fix for multiple clients
239 writing to same volume.
241 2000-02-28 a sun <asun@asun.cobalt.com>
243 * etc/afpd/directory.h (CNID_INODE): xor the inode a little
246 2000-02-23 a sun <asun@asun.cobalt.com>
248 * etc/afpd/volume.c (creatvol): / is a special case. you can't
249 share it unless you give it a name.
251 2000-02-21 a sun <asun@asun.cobalt.com>
253 * distrib/initscripts/rc.atalk.redhat/cobalt: added changes to
254 make redhat 6.x happier.
256 2000-02-17 a sun <asun@asun.cobalt.com>
258 * libatalk/adouble/ad_lock.c (adf_unlock): off-by-one error with
259 lock removal. this + the log right below fix ragtime.
261 2000-02-16 a sun <asun@asun.cobalt.com>
263 * etc/afpd/fork.c (afp_bytelock): only error on bytelocks
264 positioned at 0x7FFFFFFF if there's no resource fork.
266 2000-02-14 a sun <asun@asun.cobalt.com>
268 * libatalk/adouble/ad_lock.c: re-wrote locking bits so that
269 allocations happen in blocks. added missing case that omnis
272 2000-02-07 a sun <asun@asun.cobalt.com>
274 * bin/nbp/Makefile (install): make nbprgstr/nbpunrgstr with 700
277 * include/atalk/adouble.h (sendfile): change to deal with
280 2000-01-25 a sun <asun@asun.cobalt.com>
282 * etc/afpd/ofork.c: keep track of oforks being used for each
283 directory so that we can update them if the directory tree gets
286 * etc/afpd/directory.c (deletecurdir): remove dangling symlinks on
289 2000-01-24 a sun <asun@asun.cobalt.com>
291 * etc/afpd/directory.h (CNID): moved cnid assignment here along
294 * etc/afpd/directory.c: changed directory search to use red-black
295 trees to improve balance. parent-child tree changed to circular
296 doubly-linked list to speed up insert/remove times. there's still
297 one obstacle to actually freeing red-black tree entries. i need to
298 add an ofork list to struct dir to minimize search times.
300 2000-01-18 a sun <asun@asun.cobalt.com>
302 * etc/afpd/directory.c (dirinsert): detect attempts to add
303 pre-existing entries as just symbolic links.
305 * etc/afpd/filedir.h (CNID): moved inode-cnid assignment here and
306 extended to directories.
308 2000-01-03 a sun <asun@asun.cobalt.com>
310 * etc/uams/uams_pam.c (PAM_conv): surround PAM_BINARY_PROMPT with
313 * etc/afpd/status.c (status_init): fixed a bunch of problems here
314 that manifested under solaris 7.
316 * etc/afpd/main.c (main): use FD_SETSIZE instead of FD_SETSIZE +
320 1999-12-27 a sun <asun@asun.cobalt.com>
322 * libatalk/util/getiface.c: moved interface detection code to here
323 so that i can use if_nameindex() or getifconf() depending upon
326 1999-12-13 a sun <asun@asun.cobalt.com>
328 * libatalk/dsi/dsi_tcp.c (dsi_tcp_init): added if_nameindex()
329 based interface code.
331 * etc/afpd/afp_options.c (afp_options_parseline): added
332 -server_quantum as an option. using hex would be a good idea.
334 * libatalk/dsi/dsi_opensess.c (dsi_opensession): added bits to set
335 the server quantum. by default, the server quantum is limited to
336 1MB due to a bug in the os 9 appleshare client.
338 * distrib/initscripts/rc.atalk.{cobalt,redhat}: surround nbp stuff
341 * etc/uams/uams_dhx_pam.c (pam_changepw): added dhx-based password
344 1999-12-06 a sun <asun@asun.cobalt.com>
346 * etc/afpd/directory.c (setdirparams): don't error if we can't set
347 the desktop owner/permisssions.
349 1999-11-04 a sun <asun@asun.cobaltnet.com>
351 * etc/afpd/fork.c (afp_openfork): had the ordering wrong on an
354 1999-11-02 a sun <asun@asun.cobaltnet.com>
356 * etc/afpd/afp_dsi.c (afp_over_dsi): flush data for unknown dsi
359 1999-10-28 a sun <asun@asun.cobaltnet.com>
361 * etc/uams/*.c: return FPError_PARAM if the user is unknown.
363 1999-10-27 a sun <asun@asun.cobaltnet.com>
365 * etc/afpd/fork.c (afp_read): if sendfile isn't supported, use the
368 1999-10-25 a sun <asun@asun.cobaltnet.com>
370 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): fix nbp unregisters.
372 1999-10-21 a sun <asun@asun.cobaltnet.com>
374 * etc/afpd/Makefile (install): moved install of afpd earlier per
375 suggestion by steven michaud.
377 1999-10-05 a sun <asun@asun.cobaltnet.com>
379 * etc/uams/uams_randnum.c (afppasswd): for ~/.passwd's, turn
380 ourselves into the user so that nfs is happy.
382 1999-09-19 a sun <asun@adrian5>
384 * libatalk/netddp/netddp_open.c, nbp/*.c: only use the bcast stuff
385 if it's on an os x server machine.
387 1999-09-15 a sun <asun@adrian5>
389 * libatalk/nbp/nbp_unrgstr.c,nbp_lkup.c,nbp_rgstr.c: os x server
390 wants ATADDR_BCAST. that probably means that i need to do
391 multihoming appletalk a little differently. bleah.
393 1999-09-09 <asun@asun.cobaltnet.com>
395 * etc/afpd/directory.c (getdirparams), libatalk/adouble/ad_open.c
396 (ad_open): mondo lameness. i forgot that directory lookups can be
397 done with "." as the directory name. that was auto-hiding
398 them. bleah. i also figured out which bit was the invisible bit
399 for finderinfo information.
401 1999-09-06 Adrian Sun <asun@glazed.cobaltnet.com>
403 * etc/afpd/desktop.c (mtoupath): fixed a bug in codepage support
404 that accidentally crept in.
406 1999-08-31 Adrian Sun <asun@glazed.cobaltnet.com>
408 * etc/afpd/quota.c (getfsquota): use group quotas in quota
409 calculations if the user belongs to a single group. just use the
410 user quotas if the user belongs to multiple groups.
412 * etc/afpd/volume.c (getvolspace): added an options:limitsize to
413 restrict the available space to 2GB. this is for macs running
414 older versions of the operating system with newer versions of the
415 appleshare client. weird huh?
417 * etc/afpd/quota.c (uquota_getvolspace): bleah. 64-bit shifts
418 don't get promoted in the same way as arithmetic operations. added
419 some more casts to deal with that issue.
421 1999-08-24 Adrian Sun <asun@glazed.cobaltnet.com>
423 * man/man?/Makefile: don't re-build .tmp files if they already
424 exist. this gets the install phase to work correctly.
426 1999-08-13 a sun <asun@hecate.darksunrising.blah>
428 * etc/afpd/directory.c, file.c, filedir.c: illegal characters get
429 AFPERR_PARAM. also, reject names with /'s in them if the nohex
432 1999-08-12 a sun <asun@hecate.darksunrising.blah>
434 * etc/afpd/filedir.c,file.c,directory.c: changed error for
435 illegal filenames to AFPERR_EXIST.
437 1999-08-11 a sun <asun@hecate.darksunrising.blah>
439 * etc/afpd/desktop.h (validupath): if usedots is set, .Apple* and
440 .Parent files are no longer valid file names.
442 * etc/afpd/volume.c (volset): added usedots and nohex as
443 options. usedots stops :hex translation of . files while nohex
444 stops :hex translation of everything but . files. in addition,
445 . files created on the unix side are by default hidden.
447 * libatalk/adouble/ad_open.c: initialize more bits.
449 1999-08-10 a sun <asun@hecate.darksunrising.blah>
451 * distrib/initscripts/rc.atalk.redhat (WORKSTATION): use the
452 actual name for nbp registration rather than ATALK_NAME.
454 * sys/solaris/Makefile (kernel): make sure osdefs and machinedefs
455 get used when building the kernel module.
457 * sys/solaris: changed strings.h to string.h
459 1999-08-08 a sun <asun@hecate.darksunrising.blah>
461 * etc/afpd/volume.c (readvolfile): changed volume options into an
462 array of structs to ease maintenance.
464 1999-08-05 a sun <asun@hecate.darksunrising.blah>
466 * etc/afpd/status.c (status_init): change the default icon
467 depending upon whether or not it's an ASIP or an AppleTalk
470 1999-08-04 Adrian Sun <asun@glazed.cobaltnet.com>
472 * etc/atalkd/main.c (setaddr): made a failure with setaddr a
473 little more informative.
475 1999-08-03 Adrian Sun <asun@glazed.cobaltnet.com>
477 * yippee. someone figured what was happening with the installation
478 of the man pages. i got rid of a duplicate entry.
480 1999-08-02 a sun <asun@hecate.darksunrising.blah>
482 * etc/afpd/volume.c (readvolfile): added a per-file way of setting
483 default options. it keys in on a :DEFAULT: label.
485 1999-07-30 a sun <asun@hecate.darksunrising.blah>
487 * moved rc.atalk.* scripts to distrib/initscripts.
489 1999-07-27 a sun <asun@hecate.darksunrising.blah>
491 * contrib/printing: added patch from job@uchicago.edu
493 * etc/afpd/file.c: forgot to initialize struct ad in
496 * etc/afpd/nls/makecode.c: added an empty mapping.
498 * etc/psf/Makefile (install): well cp -d didn't work either. just
501 1999-07-26 a sun <asun@hecate.darksunrising.blah>
503 * sys/solaris/tpi.c (tpi_attach): changed DDI_NT_NET to DDI_PSEUDO
504 (from denny@geekworld.com).
506 * distrib/rpm/netatalk-asun.spec (Summary): incorporated new spec
507 and patch files from inoue.
509 * sys/linux/Makefile (install-sysv): fixed up a bit.
511 * etc/psf/Makefile (install): use cp -d instead of cp -a to make
514 * etc/afpd/afp_options.c (afp_options_parseline): reversed meaning
515 of -icon. now it means to use the yucky bitmap instead of the
518 * bin/afppasswd/Makefile (all): add -Iinclude/openssl for
521 1999-07-18 a sun <asun@hecate.darksunrising.blah>
523 * create links/mangle files in the compile rather than the install
524 phase so that rpm will be happier.
526 1999-07-17 a sun <asun@hecate.darksunrising.blah>
528 * etc/afpd/file.c (afp_createfile), directory (afp_createdir),
529 filedir.c (afp_rename, afp_moveandrename): don't allow the
530 creation/renaming of names with certain characters if mswindows
531 compatibility is enabled.
533 1999-07-16 a sun <asun@hecate.darksunrising.blah>
535 * rc.atalk.redhat: incorporated chkconfig from inoue.
537 1999-07-15 a sun <asun@hecate.darksunrising.blah>
539 * etc/atalkd/config.c (getifconf): wrap check against
540 IFF_MULTICAST behind an #ifdef IFF_MULTICAST.
542 * sys/netbsd/Makefile (LDSHAREDFLAGS): key in on machine type.
544 1999-07-11 a sun <asun@hecate.darksunrising.blah>
546 * contrib/ICDumpSuffixMap: added internet config perl script from
549 * contrib/printing: added contributed solaris printing scripts
550 from job@uchicago.edu.
552 1999-07-10 a sun <asun@hecate.darksunrising.blah>
554 * etc/atalkd/interface.h, rtmp.h: prototyped functions.
556 * etc/atalkd/zip.c: converted bcopy's to memcpy's.
558 * etc/atalkd/nbp.c,rtmp.c: added checks for the interface for
561 * etc/atalkd/main.c: converted bzero/bcopy to memset/memcpy.
563 1999-07-08 a sun <asun@hecate.darksunrising.blah>
565 * libatalk/nbp/nbp_rgstr.c (nbp_rgstr): return EADDRINUSE if the
566 address already exists.
568 1999-07-06 a sun <asun@hecate.darksunrising.blah>
570 * rc.atalk.redhat: changed netatalk.config to netatalk.conf
572 1999-07-05 a sun <asun@hecate.darksunrising.blah>
574 * etc/atalkd/nbp.c (nbp_packet): add interface to nbp struct. this
575 is so that we can filter by interface in the future. however, it
576 doesn't seem to work that well right now. bleah.
578 * etc/atalkd/main.c: fixed up dontroute option so that it doesn't
579 screw up atalkd.conf. also, we need to do a bootaddr if dontroute
582 * libatalk/atp,nbp,netddp; bin/aecho,nbp,getzones,pap;
583 etc/papd,afpd: accept -A <ddp address> as an option so that you
584 can specify the address to be used on a multihomed server. for
585 papd, you use the 'pa' option in papd.conf.
587 1999-07-04 a sun <asun@hecate.darksunrising.blah>
589 * etc/atalkd/config.c (parseline): initialize parseline properly
590 so that we don't get extraneous junk.
592 * etc/afpd/afp_options.c (afp_options_parseline): do
593 gethostbyaddr/gethostbyname's for -ipaddr and -fqdn.
595 * etc/atalkd/config.c (getifconf/readconf): check to see if the
596 supported device can support appletalk addresses. either continue
597 or exit depending upon whether or not it's auto-configed.
599 1999-07-03 a sun <asun@hecate.darksunrising.blah>
601 * etc/afpd/afp_options.c (afp_options_parse): -I (-[no]icon) will
602 toggle the volume icon so that it uses the apple icon instead.
604 * etc/afpd/config.c (AFPConfigInit): added more logic for the
605 -proxy option. here are the rules: -proxy will always try to
606 create a DDP server instance. by default, the proxy server will
607 still allow you to login with an appletalk connection. to prevent
608 that, just set the uamlist to an empty string.
610 1999-07-02 a sun <asun@hecate.darksunrising.blah>
612 * etc/afpd/status.c (status_netaddress): added support for fqdn
613 (not available in the appleshare client yet).
615 1999-07-01 a sun <asun@hecate.darksunrising.blah>
617 * etc/afpd/config.c (DSIConfigInit): application code for proxy
618 setup. it's the -proxy option.
620 * libatalk/dsi/dsi_init/tcp.c (dsi_init/dsi_tcp_init): added
621 support for proxy setup.
623 1999-06-30 a sun <asun@hecate.darksunrising.blah>
625 * etc/afpd/filedir.c (afp_rename): fixed up some error
626 codes. quark express should be happier.
628 * etc/afpd/uam.c (uam_afpserver_option): added
629 UAM_OPTION_HOSTNAME. use this to set PAM_RHOST. i just got a
630 report that setting that fixes pam on solaris machines.
632 1999-06-28 a sun <asun@hecate.darksunrising.blah>
634 * etc/afpd/ofork.c (of_alloc): report out of forks in syslog..
636 * etc/afpd/enumerate.c (afp_enumerate): close an opendir leak.
638 * include/atalk/{dsi,asp}.h: make cmdlen and datalen ints.
640 * etc/afpd/fork.c (afp_write): fixed up error condition.
642 1999-06-26 a sun <asun@hecate.darksunrising.blah>
644 * etc/uams/Makefile (install): changed install location of uams.
646 * sys/linux/Makefile (install-sysv): always install redhat
647 script. netatalk.config script only gets installed if it's not
650 1999-06-23 a sun <asun@hecate.darksunrising.blah>
652 * rc.atalk.redhat: merged in redhat contrib rpm rc.atalk script.
654 * etc/afpd/afp_options.c (afp_options_init): changed default
657 1999-06-22 a sun <asun@hecate.darksunrising.blah>
659 * etc/afpd/config.c (DSIConfigInit): truncate options->server to
660 just the server name here.
662 * etc/afpd/volume.c (volxlate): made $s return something
663 meaningful no matter what.
665 * libatalk/adouble/ad_sendfile.c (ad_readfile): freebsd sendfile
668 1999-06-20 a sun <asun@hecate.darksunrising.blah>
670 * etc/afpd/volume.c (volxlate): added variable substitution. if it
671 doesn't understand the variable, it just spits it back out.
673 (creatvol): display truncated volume name if it's too long.
675 * sys/{generic,solaris}/Makefile: added NO_CRYPTLIB option to deal
676 with oses that have -lcrypt but shouldn't use it.
678 1999-06-11 a sun <asun@hecate.darksunrising.blah>
680 * include/atalk/afp.h: added comments to FPErrors.
682 * etc/afpd/enumerate.c (afp_enumerate): make FPEnumerate do some
685 * include/atalk/util.h: server_lock() returns pid_t.
687 1999-06-10 a sun <asun@hecate.darksunrising.blah>
689 * README.ASUN: added location for both ssleay and openssl.
691 * etc/uams: moved install to LIBDIR/uams. "uams_*" now means "uam
692 server." in the future, there will be "uamc_*." changed the shared
693 library names to match.
695 * include/atalk/atp.h,nbp.h: forgot to include <sys/cdefs.h>
697 * etc/uams/Makefile: openssl-0.9.3c uses <openssl/*.h> so add that
700 * sys/{solaris,ultrix}/Makefile: just use -I../sys/generic instead
703 * include/atalk/uam.h, etc/uams/uam_*.c, etc/afpd/uam.c: added uam
704 type field. do type check.
706 * etc/uams/uam_*pam.c: added a couple more error codes.
708 1999-06-08 a sun <asun@hecate.darksunrising.blah>
710 * etc/afpd/nls/Makefile (codepage.h): make sure that a link to
711 codepage.h gets made.
713 * libatalk/*/Makefile: make sure that the profiled directory gets
716 * etc/afpd/directory.c (afp_mapname): removed an extraneous line
717 that was causing mapname to fail.
719 1999-06-07 a sun <asun@hecate.darksunrising.blah>
721 * etc/atalkd/main.c (main): added a note to check the syslog if
722 atalkd can't be setup.
724 * sys/linux/Makefile: added -DNEED_QUOTACTL_WRAPPER to the list of
725 auto-detected #defines.
727 1999-06-06 a sun <asun@hecate.darksunrising.blah>
729 * etc/afpd/fork.c (afp_write): argh. i moved things around a
730 little too much and ended up with an uninitialized eid. strangely,
731 the compiler didn't complain. simplified bits a little as
732 well. also, FPWrite was returning the wrong error messages. on
733 64-bit filesystems, the offset can wraparound. so, report a disk
734 full error if that's going to happen. egcs-19990602 gets one
735 memcpy right and another wrong on my udb. bleah.
737 (afp_read): fixed the error messages here as well.
739 1999-06-05 a sun <asun@hecate.darksunrising.blah>
741 * Makefile, sys/generic, sys/{ultrix,solaris}/Makefile: create
742 some links on the fly if they're missing.
744 * etc/afpd/directory.c (copydir): fixed a leaking opendir and
745 re-arranged a little.
747 1999-06-04 a sun <asun@hecate.darksunrising.blah>
749 * etc/afpd: prototyped everything here and moved the FP functions
752 * libatalk/util/bprint.c: moved all of the bprints to here.
754 * libatalk/asp, include/atalk/asp.h: prototyped asp functions.
756 * include/atalk/atp.h, libatalk/atp: prototyped atp functions.
758 * libatalk/nbp, include/atalk/nbp.h: added prototypes for nbp
761 * bin/afppasswd/Makefile (afppasswd): fixed a misspelling in the
764 * bin/afppasswd/afppasswd.c: added -a option so that root can add
765 new users. turned all of the options into bits. added newlines to
768 1999-06-03 a sun <asun@hecate.darksunrising.blah>
770 * sys/freebsd/Makefile: turn on sendfile support if running on a
773 1999-06-02 a sun <asun@hecate.darksunrising.blah>
775 * etc/uams/uam_dhx_pam.c: fixed memory freeing part of pam
776 conversation function.
778 * sys/*/Makefile: check at make time to see if -lrpcsvc and
779 -lcrypt should be included in the appropriate places.
781 1999-05-28 a sun <asun@hecate.darksunrising.blah>
783 * etc/afpd/file.c (deletefile): added more error checking here as
786 * etc/afpd/directory.c (renamedir): added a couple a few more
789 * sys/sunos/Makefile: sunos should really work now.
791 1999-05-27 a sun <asun@hecate.darksunrising.blah>
793 * include/atalk/afp.h: added in a couple new error codes (one
794 deals with password setting policy, the other with maximum logins
797 * etc/afpd/fork.c (afp_openfork): try to re-open files on
798 read-only volumes as read-only.
800 1999-05-26 a sun <asun@hecate.darksunrising.blah>
802 * sys/solaris/Makefile: fixed a few bobbles here. solaris uses
803 uname -p. other oses seem to use uname -m for the same information.
805 * etc/uams/uam_pam.c (pam_changepw): added check for same
808 * etc/uams/uam_randnum.c (randnum_changepw): added in cracklib and
809 same password checks.
811 * sys/osx/Makefile: moved the os x server stuff into its own build
814 * sys/linux/Makefile, sys/solaris/Makefile: key in on OSVERSION
815 and MACHINETYPE for some stuff.
817 1999-05-25 a sun <asun@hecate.darksunrising.blah>
819 * sys/sunos/Makefile: various bits to make stuff work with sunos
822 1999-05-25 a sun <asun@purgatorius.zoology.washington.edu>
824 * etc/afpd/file.c (copyfile): only copy the header file if newname
827 * etc/afpd/directory.c (copydir): make sure to balk if the
828 directory already exists. in addition, make sure to preserve the
831 1999-05-24 a sun <asun@hecate.darksunrising.blah>
833 * bin/afppasswd/afppasswd.c: global password updating utility for
834 the randnum authentication method.
836 1999-05-22 a sun <asun@hecate.darksunrising.blah>
838 * etc/uams/uam_randnum.c (afppasswd): added in global password
839 file for the randnum authentication method. it looks for a .key
840 file as well to handle encryption.
842 * etc/afpd/afp_options.c (afp_options_parseline): added
843 -passwdfile as an option so that you can specify a global randnum
844 password file if desired.
846 * etc/afpd/volume.c (readvolfile): we now have rwlist and rolist
847 as an AppleVolumes.* option. if the user is in the rolist, the
848 volume gets set as readonly. if there's a rwlist, and the user
849 isn't in it, the volume also gets set as readonly.
851 1999-05-21 a sun <asun@hecate.darksunrising.blah>
853 * libatalk/adouble/ad_lock.c (ad_fcntl_lock): plug a leak if we
854 can't allocate the reference counting variable.
856 * etc/uams/uam_*.c: make sure that uam_setup returns an error
859 1999-05-19 a sun <asun@hecate.darksunrising.blah>
861 * include/atalk/paths.h (_PATH_LOCKDIR): added os x server's
862 /var/run as the lock file directory.
864 * etc/afpd/fork.c (afp_write): kanehara@tpk.toppan.co.jp reported
865 a problem with FPWrite getting a request count of 0. that's
868 * etc/afpd/Makefile: bleah. for some reason, pam doesn't like to
869 load itself from a shared library. i've compensated by linking it
872 * etc/uams/uam_dhx_passwd.c: okay. DHX now works. something's
873 still screwy with the dhx_pam stuff though.
875 1999-05-18 a sun <asun@hecate.darksunrising.blah>
877 * etc/afpd/uam.c (uam_getname): i forgot that getname modified the
878 username to fit what's in pw->pw_name if necessary.
880 1999-05-16 a sun <asun@hecate.darksunrising.blah>
882 * etc/uams/uam_dhx_passwd/pam.c: almost ready versions of the DHX
883 authentication method. i'm still missing a little info to get it
886 * bin/megatron/nad.c (nad_header_read): if there isn't a mac name,
887 create it from the unix name.
889 * bin/megatron/megatron.c (megatron): oops. need to turn fdCreator
890 and fdType into strings.
892 1999-05-16 a sun <asun@pelvetia>
894 * etc/afpd/uam.c (uam_afpserver_option): changed the interface a
895 little. now, you pass in an int * if you want to either get/set
896 the size of the option. added in UAM_OPTION_RANDNUM for generic
897 (4-byte granularity) random number generation.
899 * etc/afpd/switch.c: added afp_logout to preauth_switch.
901 1999-05-15 a sun <asun@hecate.darksunrising.blah>
903 * bin/megatron/macbin.c (bin_open): make error message for
904 macbinary files more informative.
906 (test_header): added more macbinary tests. it now has a workaround
907 for apple's incorrectly generated macbinary files.
909 1999-05-14 a sun <asun@hecate.darksunrising.blah>
911 * sys/solaris/Makefile: added shared library generation bits.
913 * etc/uams: moved server-side uams here.
915 * include/netatalk/endian.h: fixed some solaris bits.
917 * etc/afpd/config.c (configfree): don't do an asp_close. instead,
918 do an atp_close and free the asp object. oh yeah, as afpd needs
919 to export symbols to its modules, make sure you don't do anything
920 more exciting than strip --strip-debug with it.
922 1999-05-12 a sun <asun@hecate.darksunrising.blah>
924 * various places that use sigaction: zero out struct sigaction so
925 that we don't send something confusing. also make sure that we
926 don't set a timer unless we already have a sigaction set.
928 * etc/afpd/fork.c (afp_openfork): don't error on trying to open an
929 empty resource fork read-only. also, added back in the bit of code
930 that prevented locks from being attempted on non-existent resource
933 * etc/afpd/afp_options.c (getoption): added a uamlist commandline
936 * libatalk/netddp/netddp_open.c: don't bind if nothing was passed
939 * libatalk/nbp/nbp_unrgstr.c (nbp_unrgstr): oops. forgot to
940 convert this over to use by the netddp interface.
942 1999-05-12 a sun <asun@pelvetia>
944 * etc/afpd/uam.c: os x server's runtime library loader is
945 braindead. as a result, i've switched to using an exported struct
948 * bin/aecho,getzones: changed these to use the netddp interface.
950 * libatalk/nbp/nbp_rgstr.c,unrgstr.c: fixed more leaky bits.
952 * libatalk/netddp: abstracted the ddp interface to netddp. besides
953 the prior socket-driven interface, there's now an os x server
954 interface. so, instead of calling socket/sendto/recvfrom, you call
955 netddp_open/netddp_sendto/netddp_recvfrom.
957 1999-05-11 a sun <asun@pelvetia>
959 * libatalk/nbp/nbp_lkup.c: oh my. nbp_lookup was fd leaky if there
962 * etc/atalkd/main.c (main): make sure that if -dontroute is
963 selected for all but one interface, that interface also gets
966 1999-05-10 a sun <asun@hecate.darksunrising.blah>
968 * etc/afpd/auth.c: re-wrote to deal with plug-in uams. it's much
969 smaller than it used to be.
971 1999-05-09 a sun <asun@hecate.darksunrising.blah>
973 * etc/afpd/uams/uam_guest.c, uam_pam.c, uam_passwd.c,
974 uam_randnum.c: uam modules. these should probably be moved out of
975 afpd (and into something like etc/uam_server) when the printing
976 stuff gets uam support.
978 1999-05-08 a sun <asun@hecate.darksunrising.blah>
980 * etc/afpd/uam.c: interface to user authentication modules.
981 it should eventually be moved to libatalk, but that's not
982 necessary until the printing uam stuff is done. everything is from
983 the server-side perspective, but that's only because there aren't
984 any client-side uses right now.
986 * libatalk/util/module.c: generic interface to run-time library
987 loading functions. right now, the dlfcn family and os x server's
988 NS-style way of doing things are the ones understood. in addition,
989 there's a DLSYM_PREPEND_UNDERSCORE for those systems that need it.
991 * libatalk/asp/asp_write.c (asp_wrtcont): log both the read and
992 write part of write continuations.
994 1999-05-07 a sun <asun@hecate.darksunrising.blah>
996 * etc/atalkd: added the ability to turn off routing for particular
997 interfaces. specify -dontroute for each interface that you don't
1000 1999-05-06 a sun <asun@hecate.darksunrising.blah>
1002 * etc/afpd/auth.c: got rid of global clrtxtname and switched to
1003 using obj->username.
1005 1999-05-04 a sun <asun@hecate.darksunrising.blah>
1007 * libatalk/dsi/dsi_write.c (dsi_write): dsi_write could loop
1008 forever if there's a problem while it's being used. that's fixed.
1010 1999-05-01 a sun <asun@hecate.darksunrising.blah>
1012 * etc/afpd/directory.c (renamedir,copydir,deletedir): added bits
1013 so that renaming a directory works across filesystems.
1015 1999-04-27 a sun <asun@hecate.darksunrising.blah>
1017 * etc/afpd/fork.c (getforkparams): report mtime if it's > than
1018 what's stored in the header file.
1020 * config/afpd.conf: incorporated a patch by Stefan Bethke to make
1021 afpd.conf more understandable.
1023 * sys/solaris/if.c: many of the firstnet/lastnet bits weren't
1024 endian converted. that's fixed.
1026 * libatalk/adouble/ad_lock.c (adf_find(x)lock): F_RD/WRLCK aren't
1027 necessarily ORable, so use ADLOCK_RD/WR instead.
1029 (ad_fcntl_unlock): erk. fixed a typo that had the resource fork
1030 unlock accidentally getting the data fork locks.
1032 1999-04-24 a sun <asun@hecate.darksunrising.blah>
1034 * etc/afpd/fork.c (afp_openfork): always try to create a resource
1037 1999-04-21 a sun <asun@hecate.darksunrising.blah>
1039 * libatalk/adouble/ad_open.c, ad_read.c/ad_write.c, ad_flush.c:
1040 turned the mmapped header stuff into and #ifdef
1041 USE_MMAPPED_HEADERS option.
1043 * libatalk/adouble/ad_open.c (ad_header_read): darn. i forgot that
1044 the hfs fs doesn't currently have mmappable header files. rather
1045 than implement that, i just reverted back to a modified version
1046 of the old way of reading headers.
1048 1999-04-15 a sun <asun@hecate.darksunrising.blah>
1050 * etc/afpd/fork.c (afp_bytelock): byte locks become read locks on
1053 (afp_openfork): deal with read-only data forks that don't have
1054 corresponding .AppleDouble files. we can't really do anything with
1055 deny locks in this case. just make sure that read locks are set.
1057 * etc/afpd/file.c (getfilparams): oops. got the parentheses wrong
1058 around FILPBIT_FINFO.
1060 * etc/afpd/fork.c (afp_read): as we share open files now, check
1061 for fork type against of_flags instead of just checking to see if
1062 the file is open. this fixes a bug that caused resource forks to
1063 get filled with data fork information.
1065 1999-04-09 a sun <asun@porifera.zoology.washington.edu>
1067 * sys/generic/Makefile: AFP/tcp now compiles on irix with quota
1070 1999-04-09 a sun <asun@mead1.u.washington.edu>
1072 * sys/generic/Makefile: AFP/tcp now compiles on aix with quota
1075 1999-04-09 a sun <asun@saul6.u.washington.edu>
1077 * sys/generic/Makefile: AFP/tcp part now compiles on digital unix
1078 with quota support enabled.
1080 1999-04-08 a sun <asun@hecate.darksunrising.blah>
1082 * etc/afpd/volume.c, fork.c, file.c, directory.c, filedir.c,
1083 config/AppleVolumes.default: added read-only volume option.
1085 * etc/afpd/quota.c (uquota_getvolspace): modified for os x
1088 1999-04-03 a sun <asun@hecate.darksunrising.blah>
1090 * bin/megatron/macbin.c (bin_write): only pad if we need to do so
1091 (from <jk@espy.org>).
1092 (bin_header_write/read): fixed up screwed up file date
1093 generation/reading with macbinary files.
1095 * bin/megatron: changed all of the bcopy/bzero/bcmp's to
1096 memcpy/memset/memcmp's. added macbinary III support.
1098 * bin/megatron/macbin.c (bin_open): added --stdout as an option so
1099 that we can stream macbinary file creation to stdout.
1101 * bin/megatron/megatron.c: incorporated information patch (--header
1102 and --macheader) from <fmorton@base2inc.com>.
1105 1999-04-02 a sun <asun@hecate.darksunrising.blah>
1107 * etc/afpd: whee! there are no more bcopy/bcmp's in this
1110 * libatalk: changed the bcopy/bzero's to memcpy/memset's. added in
1111 dummy ints for some of the files that can get compiled to empty
1112 objects. check for the type of msync() available as well.
1114 1999-03-31 a sun <asun@hecate.darksunrising.blah>
1116 * INSTALL/README.GENERIC: added information for a generic
1117 architecture. It includes the information needed to get netatalk
1118 to compile on a random unix platform.
1120 * etc/afpd/quota.c: moved the quota stuff here so that we can
1121 #ifdef it out on a machine without quota support.
1123 1999-03-30 a sun <asun@hecate.darksunrising.blah>
1125 * libatalk/adouble/ad_lock.c: reference count the locked ranges as
1126 well. this prevents multiple read locks on the same byte range
1127 from disappearing if one user disappears.
1129 (ad_fcntl_lock): here are the current rules for file
1131 1) if there's a appledouble header, we use the beginning
1132 of that for both data and resource forks.
1133 2) if there isn't, we use the end of the data fork (or past the
1134 end on 64-bit machines)
1136 1999-03-28 a sun <asun@hecate.darksunrising.blah>
1138 * libatalk/adouble/ad_open.c (ad_refresh): okay. mmapping the
1139 appledouble entry parts is done.
1141 * libatalk/cnid/cnid_add.c (cnid_add): prevent anyone from adding
1144 1999-03-27 a sun <asun@hecate.darksunrising.blah>
1146 * libatalk/adouble/ad_open.c (ad_refresh): started making the
1147 appledouble header parsing more generic so that we can read in
1148 arbitrary appledouble header files. i just mmap the parts that we
1151 1999-03-22 a sun <asun@hecate.darksunrising.blah>
1153 * etc/afpd/file.c (afp_copyfile): return the correct error
1154 response on a failed copy. also, error if the file is already open
1155 to prevent problems with locks. we really need to ad_lock
1156 this during the copy
1158 1999-03-21 a sun <asun@hecate.darksunrising.blah>
1160 * etc/afpd/volume.c (readvolfile): switched volume options to
1161 using ':' as a delimiter as that's one of the characters that's
1162 not allowed as part of a mac filename.
1163 (volset): changed access to allow/deny
1165 * etc/afpd/auth.c (noauth_login): make sure that the username gets
1168 1999-03-17 a sun <asun@hecate.darksunrising.blah>
1170 * NOTE to myself: jeremy allison said that samba uses refcounts to
1171 prevent close() from killing all the byte locks. so, i've started
1172 converting afpd to using refcounting as well. luckily, we already
1173 have of_findname, so we know when files are open. in cases where
1174 files are already open, this will replace an ad_open with a lookup
1177 * etc/afpd/directory.c (getdirparams/getfilparams): check for
1178 NULL names when getting directory/file names.
1180 * etc/afpd/directory.{c,h} (DIRDID_ROOT/DIRDID_ROOT_PARENT): make
1181 sure these are always in network byte order.
1183 1999-03-15 a sun <asun@hecate.darksunrising.blah>
1185 * etc/afpd/fork.c (afp_openfork): okay, fixed the file
1186 synchronization bits. now, we use two bytes to do the read/write
1187 stuff. when access is needed, a read lock is attempted. if a deny
1188 lock is needed, a write lock is attempted. we even handle the
1189 access None mode now by saving the access modes.
1191 * etc/afpd/fork.h (AFPFORK_ACCMASK): started adding bits so that
1192 we can obey all of the file synchronization rules.
1194 * etc/afpd/fork.c (afp_bytelock): got the meaning of the clearbit
1195 reversed. with helios lantest's lock/unlock 4000 times test, it
1196 looks like i get <1 second overhead on my machine when using byte
1197 locks. NOTE: this will get a little worse when serialization gets
1198 added. in addition, 0x80000000 only works for 64-bit machines. i
1199 reserve the last allowable bit for 32-bit machines.
1201 actually, both 64-bit machines and 32-bit machines use 0x7FFFFFFF
1202 now as i'm able to trigger a kernel oops in linux with the 64-bit
1205 (afp_read/afp_write): make sure to use the same offset when doing
1208 1999-03-14 a sun <asun@hecate.darksunrising.blah>
1210 * libatalk/adouble/ad_lock.c: i went and implemented a bunch of
1211 stuff to get byte locks to work correctly (except for the
1212 serialization) only to discover that files that use byte locks
1213 also request a deny write mode. luckily, byte locks only cover up
1214 to 0x7FFFFFFF. so, i'll just use 0x80000000 for the
1215 synchronization locks.
1217 1999-03-08 a sun <asun@hecate.darksunrising.blah>
1219 * sys/{*bsd,ultrix,solaris,linux}/Makefile (depend): surround
1220 DEPS with double quotes so that multiple defines work.
1222 1999-03-06 a sun <asun@hecate.darksunrising.blah>
1224 * libatalk/adouble/ad_write.c, ad_read.c: make off off_t in size.
1226 * libatalk/adouble/ad_flush.c (adf_fcntl_relock), ad_lock.c
1227 (adf_fcntl_locked): okay. fcntl locks now check against multiple
1228 programs on the same machine opening the same file. current
1229 problems with the mechanism that i don't want to fix unless
1231 1) there's a race during the relock phase. serialization
1233 2) it assumes that each fd only locks a single contiguous
1234 range at a time. keeping a list of locked ranges would
1237 also, i changed the default to using fcntl locks. if the above two
1238 are really necessary, i'll probably switch to something a little
1239 more featureful like the berkeley db's lock manager.
1241 (note to myself: stuff new from asun2.1.3 from 1999-03-03)
1243 1999-03-05 a sun <asun@hecate.darksunrising.blah>
1245 * libatalk/adouble/ad_lock.c: got rid of the endflag checks to
1246 reduce system calls a little.
1248 * etc/afpd/auth.c (getname): do a case-insensitive compare on the
1251 * sys/solaris/Makefile: added 64-bit solaris patch from
1252 <jason@pattosoft.com.au>.
1254 1999-03-03 a sun <asun@hecate.darksunrising.blah>
1256 * include/netatalk/endian.h: make solaris 2.5 complain less.
1258 * bin/adv1tov2/adv1tov2.c, libatalk/adouble/ad_open.c (ad_v1tov2):
1259 fixed a couple problems with the adv1tov2 stuff.
1261 1999-02-26 a sun <asun@hecate.darksunrising.blah>
1263 * etc/afpd/volume.c (afp_openvol): erk. the volume password gets
1264 aligned along an even boundary.
1266 1999-02-23 a sun <asun@hecate.darksunrising.blah>
1268 * etc/afpd/volume.c (readvolfile): added volume password support.
1270 1999-02-14 a sun <asun@hecate.darksunrising.blah>
1272 * etc/atalkd/multicast.c (addmulti): added FreeBSD's data-link
1273 layer multicast setting bits.
1275 * libatalk/adouble/ad_open.c (ad_v1tov2): make sure to stick in
1276 prodos field info when converting.
1278 * rc.atalk.redhat: added pidof checking in case the machine
1279 crashes. also added rc.atalk.wrapper to the redhat rc script
1282 1999-02-07 a sun <asun@hecate.darksunrising.blah>
1284 * etc/afpd/fork.c (afp_setforkparams): make sure to do better
1285 error detection here and more fully report error conditions.
1287 (flushfork): make sure to flush the header if necessary (rfork
1288 length changed or modification date needs to be set).
1290 (afp_write): ugh. this wasn't returning the right values for the
1291 last byte written if the endflag was set. in addition, it was
1292 setting the modification date. that should be left to FPCloseFork
1293 and FPFlush(Fork). this fixes a problem that shows up with
1296 NOTE: as of now, changes to the rfork info are the only things
1297 that aren't flushed immediately when altered.
1299 * etc/afpd/fork.c (get/setforkparams), ofork.c: what ugliness. we
1300 need to report bitmap errors if we try to fiddle with the wrong
1301 fork. i added an of_flags field to keep things sorted.
1303 * libatalk/adouble/ad_open.c (ad_v1tov2): oops. in all of the
1304 movement, i forgot to make sure that the pre-asun2.2.0 features
1307 1999-02-06 a sun <asun@hecate.darksunrising.blah>
1309 * etc/afpd/filedir.c (afp_moveandrename): make sure to save the
1310 old name even when it's a directory.
1312 * globals.h: added oldtmp and newtmp to AFPObj to reduce the
1313 number of buffers used. use these when needed in afp_* calls.
1315 * etc/afpd/directory.c (deletecurdir): delete stray .AppleDouble
1316 files when deleting a directory.
1318 1999-02-05 a sun <asun@hecate.darksunrising.blah>
1320 * etc/afpd/file.c (afp_createfile): fixed a hard create error
1323 * fixed up a few bobbles in the netatalk-990130 merge.
1325 * the noadouble option should be pretty much implemented. here's
1327 when a directory is created, the corresponding
1328 .AppleDouble directory is not.
1330 comments, dates, and other file attributes will get
1331 silently ignored and not result in the creation of a new
1332 .AppleDouble directory.
1334 however, if anything possessing a resource fork is copied
1335 into that directory, the corresponding .AppleDouble
1336 directory will be created. once this happens, any
1337 other file in the directory can acquire an AppleDouble
1338 header file in the future.
1340 1999-02-03 a sun <asun@hecate.darksunrising.blah>
1342 * merged in the rest of netatalk-990130.
1344 * sys/solaris: merged in netatalk-990130 changes.
1346 * etc/afpd/file.c,fork.c,desktop.c libatalk/adouble/ad_sendfile.c:
1347 tested and fixed the sendfile bits on linux. it looks like linux
1348 doesn't permit socket -> file sendfiles yet.
1350 * etc/afpd/fork.c (afp_read): we can't stream FPRead's with
1351 newline character checking on.
1353 1999-02-02 a sun <asun@hecate.darksunrising.blah>
1355 * etc/afpd/fork.c (afp_flush), ofork.c (of_flush): FPFlush
1356 operates on a per-volume basis.
1358 1999-01-31 a sun <asun@hecate.darksunrising.blah>
1360 * etc/afpd/file.c (copyfile): sendfile bits added here also.
1362 * etc/afpd/desktop.c (afp_geticon): added sendfile bits here as
1365 * libatalk/adouble/ad_sendfile.c (ad_writefile/ad_readfile):
1366 implemented sendfile bits. currently, there's support for linux
1367 and freebsd. unfortunately, freebsd's implementation doesn't allow
1368 file->file or socket->file copies. bleah.
1370 1999-01-30 a sun <asun@hecate.darksunrising.blah>
1372 * etc/afpd/file.c (setfilparams), directory (setdirparams),
1373 volume.c (volset): added in the beginnings of a NOADOUBLE option
1374 for those that don't want AppleDouble headers to be created by
1375 default. it doesn't really work that well right now.
1377 1999-01-29 a sun <asun@hecate.darksunrising.blah>
1379 * libatalk/adouble/ad_open.c (ad_v1tov2): separated v1tov2 bits
1380 from ad_refresh. made broken v1 header checking the default. fixed
1381 broken v1 date checking. now, it just checks to see if the v1
1382 MDATE is > than st_mtime by 5 years.
1384 * etc/afpd/directory.c: make date setting alter directory dates as
1387 1999-01-24 a sun <asun@hecate.darksunrising.blah>
1389 * etc/afpd/afp_dsi.c (alarm_handler,afp_over_dsi): added a
1390 CHILD_RUNNING flag to prevent afpd from timing out on long copies.
1392 1999-01-21 a sun <asun@hecate.darksunrising.blah>
1394 * etc/afpd/volume.c (afp_openvol), libatalk/cnid/cnid_nextid.c:
1395 shift the beginning of the fake did's if necessary.
1397 * libatalk/adouble/ad_open.c (ad_refresh): fixed screwed-up date
1400 * libatalk/cnid/cnid_add.c,cnid_open.c,cnid_close.c: made some
1401 changes so that the CNIDs will still work even when the .AppleDB
1402 directory is read-only. if you're still allowed to create files on
1403 these volumes, you'll get a temporary id for those.
1405 1999-01-20 a sun <asun@hecate.darksunrising.blah>
1407 * libatalk/cnid/{cnid_close.c,cnid_open.c}: added bits so that log
1408 files get cleared out on cnid_close() if it's the last user for a
1411 1999-01-18 a sun <asun@hecate.darksunrising.blah>
1413 * etc/afpd/volume.c (afp_setvolparams): added FPSetVolParms. this
1414 allows us to set the backup date on the server.
1416 * etc/afpd/file.c (afp_exchangefiles): whee! we now have
1417 FPExchangeFiles. we also have FPDeleteID, so that only leaves us
1418 with FPCatSearch to do.
1420 1999-01-16 a sun <asun@hecate.darksunrising.blah>
1422 * sys/solaris/ddp.c (ddp_rput): added a couple htons()'s for the
1425 1999-01-11 a sun <asun@hecate.darksunrising.blah>
1427 * etc/afpd/volume.c (volset, afp_openvol): you can now specify a
1428 dbpath= in AppleVolumes.* for the CNID database.
1430 * libatalk/adouble/ad_open.c (ad_refresh): if we build in an
1431 appledouble v1 environment, turn on v1compat by default.
1433 1999-01-10 a sun <asun@hecate.darksunrising.blah>
1435 * libatalk/adouble/ad_open.c (ad_refresh): added v1compat option
1436 to handle broken ad headers.
1438 * etc/afpd/file.c (setfilparams): we need to make sure that we
1439 flush the file if we've created it even if there's an error. the
1440 magic number/version don't get saved if we don't.
1442 * etc/afpd/appl.c, etc/afpd/directory.c, etc/afpd/desktop.c: added
1445 1998-12-30 a sun <asun@hecate.darksunrising.blah>
1447 * etc/afpd/volume.c (afp_openvol): got rid of unnecessary v_did.
1449 * etc/afpd/file.c (afp_resolveid, afp_createid): added these two
1452 * well, what do you know? the cnid stuff compiles in.
1454 1998-12-29 a sun <asun@hecate.darksunrising.blah>
1456 * etc/afpd/fork.c, directory.c, file.c, filedir.c, volume.c,
1457 enumerate.c: added in stubs for CNID database conditional on
1458 AD_VERSION > AD_VERSION1.
1460 * etc/afpd/nls/makecode.c: added iso8859-1 mapping.
1462 1998-12-27 a sun <asun@hecate.darksunrising.blah>
1464 * bin/adv1tov2/adv1tov2.c: turn non-printable ascii characters
1465 into hex code as well.
1467 1998-12-21 a sun <asun@hecate.darksunrising.blah>
1469 * etc/afpd/auth.c: fixed FPChangePW for 2-way randnums.
1471 1998-12-15 a sun <asun@hecate.darksunrising.blah>
1473 * etc/afpd/fork.c (read_file/write_file): do crlf translation in
1474 both directions so that we can recover from problems if
1477 1998-12-14 a sun <asun@hecate.darksunrising.blah>
1479 * bin/adv1tov2/adv1tov2.c: small utility program that recursively
1480 descends a directory and converts everything it sees into
1483 1998-12-13 a sun <asun@hecate.darksunrising.blah>
1485 * libatalk/adouble/ad_flush.c (ad_rebuild_header): moved the
1486 header rebuilding here so that ad_refresh can use it.
1488 * libatalk/adouble/ad_open.c (ad_refresh): added locking to v1->v2
1491 * bin/megatron/asingle.c: yuk. removed all of
1492 the duplicate stuff here and had it use the #defines in adouble.h.
1494 * libatalk/adouble/ad_open.c (ad_refresh): finished v1 -> v2
1495 conversion routine. we still need a shortname creator and a cnid
1496 database for the v2 features to be useful.
1498 1998-12-11 a sun <asun@hecate.darksunrising.blah>
1500 * libatalk/adouble/ad_open.c (ad_refresh): punt if we get a file
1501 that we don't understand.
1503 1998-12-10 a sun <asun@hecate.darksunrising.blah>
1505 * etc/afpd/desktop.c (utompath,mtoupath): simplified the codepage
1506 stuff. also made sure to lower/upper the 8-bit characters as
1509 * libatalk/util/strdicasecmp.c: the casemapping had a few wrong
1512 * etc/afpd/fork.c (getforkparams): make sure that the ROpen/DOpen
1513 attribute bits are in the correct byte ordering.
1515 1998-12-09 a sun <asun@hecate.darksunrising.blah>
1517 * etc/afpd/volume.c (volset): made prodos an option to options=
1518 flag. also added crlf as an option.
1520 * libatalk/adouble/ad_open.c (ad_refresh): fix up times if
1522 (ad_open): deal correctly with 0-length files by treating them as
1525 * etc/afpd/volume.c (getvolparams), file.c (get/setfilparams),
1526 fork.c (getforkparams), directory.c (get/setdirparams): finished
1527 adding appledouble version 1 and 2 date conversion. also added
1530 * etc/afpd/volume.c (getvolparams): make sure to flush the header
1531 file if we needed to fiddle with it.
1533 * libatalk/adouble/ad_date.c, ad_attr.c: date/attribute
1534 setting/retrieval code.
1536 * libatalk/adouble/ad_open.c (ad_open): initialize date
1537 structures here instead of elsewhere.
1539 1998-12-07 a sun <asun@hecate.darksunrising.blah>
1541 * etc/afpd/directory.c, fork.c, volume.c, file.c: added unix<->afp
1542 time conversion code.
1544 1998-12-05 a sun <asun@hecate.darksunrising.blah>
1546 * etc/afpd/volume.c (volset): changed prodos setting to
1549 1998-12-04 a sun <asun@hecate.darksunrising.blah>
1551 * etc/afpd/volume.c (volset): okay. you now have the following
1552 options to casefold: lowercase,uppercase,xlatelower,xlateupper
1553 tolower -> lowercases everything in both directions
1554 toupper -> uppercases everything in both directions
1555 xlatelower -> client sees lowercase, server sees uppercase
1556 xlateupper -> client sees uppercase, server sees lowercase
1558 NOTE: you only should use this if you really need to do so. this
1559 and the codepage option can cause mass confusion if applied
1560 blindly to pre-existing directories.
1562 1998-12-03 a sun <asun@hecate.darksunrising.blah>
1564 * etc/afpd/desktop.c (utompath,mtoupath), etc/afpd/volume.h: added
1565 multiple options to casefold. bits 0 and 1 deal with MTOU, and
1566 bits 2 and 3 deal with UTOM. i did it that way so that you can
1567 casefold in one direction only or in both directions if
1568 desired. needless to say, setting both bits for UTOM or MTOU
1569 doesn't make any sense. right now, toupper takes precedence in
1570 MTOU, and tolower takes precedence in UTOM.
1572 1998-12-02 a sun <asun@hecate.darksunrising.blah>
1574 * etc/afpd/afp_options.c (afp_options_*): added -uampath and
1575 -codepagepath to the list of available options. they specify the
1576 directories to look for uam modules and codepages,
1577 respectively. currently, -uampath doesn't do anything.
1579 * etc/afpd/volume.c (readvolfile): spruced up options to
1580 AppleVolumes files. now you can have mtoufile=<codepage.x>,
1581 utomfile=<codepage.y>, casefold=<num> for volumes.
1583 * etc/afpd/desktop.c (utompath,mtoupath): added
1584 codepage/casefolding support. casefold is currently an int that
1585 could have multiple actions. right now, i just lowercase in
1586 mtoupath and uppercase in utompath.
1588 * etc/afpd/ofork.c (of_alloc, of_findname, of_rename): added vol
1589 as an additional specifier so that we don't have problems with
1590 the same path names on multiple volumes.
1592 1998-11-29 a sun <asun@purgatorius.zoology.washington.edu>
1594 * etc/afpd/volume.c (getvolparams): added AFP2.1 volume attribute
1597 1998-11-24 a sun <asun@purgatorius.zoology.washington.edu>
1599 * etc/atalkd/config.c (readconf, getifconf): added IFF_SLAVE to
1600 prevent atalkd from trying to use a slave channel.
1602 1998-11-23 a sun <asun@purgatorius.zoology.washington.edu>
1604 * etc/afpd/volume.c (getvolparams): we shouldn't set the custom
1605 icon bit by default on the root directory. that screws up pre-OS 8
1608 1998-11-19 a sun <asun@purgatorius.zoology.washington.edu>
1610 * libatalk/dsi/dsi_getsess.c (dsi_getsession): ignore SIGPIPE's
1611 so that we can gracefully shut down the server side.
1613 * etc/afpd/afp_dsi.c (afp_over_dsi), etc/afpd/afp_options.c,
1614 libatalk/dsi/dsi_getsess.c (dsi_getsession),
1615 libatalk/asp/asp_getsess.c (asp_getsession): made the tickle timer
1616 interval an option (-tickleval <sec>).
1618 * etc/afpd/afp_dsi.c (afp_dsi_timedown): added child.die so that
1619 we don't stomp on a shutdown timer. libatalk/dsi/dsi_read.c,
1620 dsi_write.c both save/restore the old timer, so they don't really
1621 care what the actual value is.
1623 1998-11-18 a sun <asun@purgatorius.zoology.washington.edu>
1625 * due to the recent obsession with bug fixing and low-level dsi
1626 cleanups, i've decided that this should really be asun2.1.1
1627 instead of asun2.1.0a.
1629 1998-11-17 a sun <asun@purgatorius.zoology.washington.edu>
1631 * libatalk/dsi/dsi_tcp.c (dsi_tcp_open): moved the afpd connection
1632 announcement here from etc/afpd/afp_dsi.c.
1634 * libatalk/dsi/dsi_stream.c: moved all of the read/write functions
1635 into here as they're pretty generic. now, the protocol specific
1636 stuff only handles open and close.
1638 * etc/afpd/fork.c (afp_read/write), desktop.c (afp_geticon),
1639 file.c (copyfile), include/atalk/dsi.h (dsi_writefile/readfile):
1640 added initial stubs for sendfile support. i still need to go
1641 through and calculate the appropriate offsets to use.
1643 * libatalk/dsi/dsi_read.c, dsi_write.c: disable the interval timer
1644 instead of just ignoring it.
1646 * etc/afpd/desktop.c (afp_geticon), etc/afpd/fork.c (afp_read),
1647 libatalk/dsi/dsi_read.c (dsi_readinit, dsi_readinit): modified the
1648 dsi_read interface to return errors so that i can kill things
1651 1998-11-16 a sun <asun@purgatorius.zoology.washington.edu>
1653 * libatalk/dsi/dsi_tcp.c (dsi_tcp_send/dsi_tcp_write): erk. read()
1654 and write() treat a return of 0 differently.
1656 1998-11-16 a sun <asun@hecate.darksunrising.blah>
1658 * libatalk/dsi/dsi_read.c (dsi_readinit): make sure to stick in
1661 1998-11-15 a sun <asun@purgatorius.zoology.washington.edu>
1663 * etc/afpd/fork.c (afp_read): re-ordered some of the checks here
1664 to return earlier on 0-sized files.
1666 1998-11-13 a sun <asun@purgatorius.zoology.washington.edu>
1668 * etc/afpd/afp_dsi.c (afp_over_dsi): moved the dsi->noreply toggle
1669 check to here from dsi_cmdreply.
1671 1998-11-11 a sun <asun@purgatorius.zoology.washington.edu>
1673 * etc/atalkd/zip.c (zip_packet): make sure to copy multicast zone
1674 back out. (reported by Michael Zuelsdorff <micha@dolbyco.han.de>)
1676 1998-11-09 a sun <asun@purgatorius.zoology.washington.edu>
1678 * etc/afpd/directory.c (getdirparams): changed unknown bit reply
1679 code to AFPERR_BITMAP instead of AFPERR_PARAM.
1681 1998-11-06 a sun <asun@purgatorius.zoology.washington.edu>
1683 * etc/afpd/enumerate.c (afp_enumerate), directory.c (renamedir):
1684 fixed a couple of failed realloc leaks.
1686 * etc/afpd/filedir.c (afp_moveandrename, afp_rename): added bits
1687 to deal with case-insensitive, case-preserving filesystems.
1689 1998-10-30 a sun <asun@purgatorius.zoology.washington.edu>
1691 * etc/afpd/auth.c: fixed randnum password changing check.
1693 1998-10-27 a sun <asun@purgatorius.zoology.washington.edu>
1695 * etc/atalkd/main.c: add a check for SIOCATALKDIFADDR if
1698 * etc/afpd/volume.c (getvolparams): ad_open had the wrong
1701 * etc/afpd/unix.c (setdeskowner): added a little extra space to
1702 prevent buffer overflows here.
1704 1998-10-26 a sun <asun@purgatorius.zoology.washington.edu>
1706 * sys/linux/Makefile: fixed PAM message.
1708 * sys/solaris/Makefile: make failure to ln -s a non-fatal error.
1710 * etc/papd/session.c, bin/pap/pap.c: changed sequence count to
1711 wrap from 0 -> 1 instead of from 0xFFFF -> 1.
1713 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): actually, we
1714 should check against the entire unix name.
1716 1998-10-21 a sun <asun@purgatorius.zoology.washington.edu>
1718 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure
1719 to check against mac name.
1721 1998-10-19 a sun <asun@purgatorius.zoology.washington.edu>
1723 * etc/afpd/auth.c (afp_changepw): make password changing deal
1724 correctly with "real" user names. also, moved seteuid() to before
1725 the pam_authenticate() bit as shadow passwords need that.
1727 * etc/afpd/enumerate.c (afp_enumerate): make sure to check the mac
1728 name against MACFILELEN.
1730 1998-10-16 a sun <asun@purgatorius.zoology.washington.edu>
1732 * etc/afpd/file.c (renamefile), filedir.c (afp_rename),
1733 directory.c (renamedir): use strndiacasecmp() for AFPERR_SAMEOBJ
1734 checks. also make sure test occurs before checking to see if the
1737 1998-10-15 a sun <asun@purgatorius.zoology.washington.edu>
1739 * etc/afpd/auth.c (afp_changepw): fixed a bit of brain damage. i
1740 forgot that password changing needs root privileges to work.
1742 * etc/afpd/auth.c (PAM_conversation): the supplied code was
1743 incorrect. i cleaned it up a bit.
1745 * sys/linux/Makefile: fixed the installation bits.
1747 1998-10-14 a sun <asun@purgatorius.zoology.washington.edu>
1749 * etc/afpd/auth.c (afp_changepw): don't kill the connection here
1750 if there's a problem.
1752 1998-10-10 a sun <asun@purgatorius.zoology.washington.edu>
1754 * etc/afpd/enumerate.c, fork.c, ofork.c, file.c,
1755 globals.h, directory.c, auth.c: #defined MACFILELEN and used
1756 that. also made sure that files > MACFILELEN never show up.
1758 1998-09-25 a sun <asun@purgatorius.zoology.washington.edu>
1760 * etc/{afpd,papd,atalkd}/bprint.c (bprint): got rid of the
1761 spurious pointer dereference.
1763 * etc/afpd/ofork.c (of_alloc/of_rename): allocate the max mac file
1764 length so that we don't need to realloc.
1766 * etc/afpd/filedir.c (afp_rename, afp_moveandrename): make sure to
1767 return AFPERR_BUSY if the dest has an ofork open.
1769 * etc/afpd/file.c (renamefile), directory.c (renamedir), filedir.c
1770 (afp_rename): return AFPERR_SAMEOBJ if source == dest
1772 1998-09-21 a sun <asun@purgatorius.zoology.washington.edu>
1774 * etc/afpd: went through and looked for places that needed to use
1775 curdir instead of dir. i think i have them all right now.
1777 * etc/afpd/filedir.c (afp_moveandrename): wasn't keeping track of
1778 curdir correctly. what this really means is that cname should be
1779 fixed to return everything it changes as opposed to changing a
1782 1998-09-19 a sun <asun@purgatorius.zoology.washington.edu>
1784 * etc/afpd/config.c (configinit): do the right thing if
1785 AFPConfigInit fails.
1787 1998-09-18 a sun <asun@purgatorius.zoology.washington.edu>
1789 * etc/afpd/config.c (ASP/DSIConfigInit, configfree): how
1790 embarrassing. i wasn't doing refcounts correctly.
1792 1998-09-17 a sun <asun@purgatorius.zoology.washington.edu>
1794 * etc/afpd/nfsquota.c (getnfsquota): ultrix uses dqb_bwarn instead
1797 * sys/ultrix/Makefile: ultrix understands the old rquota format.
1799 * etc/afpd/ofork.c (of_findname): erk. forgot to only search in
1800 the current directory.
1801 (of_rename): erk. changed it to handle renaming a file that has
1802 been opened multiple times.
1804 * etc/atalkd: made sure that if you don't specify -router, things
1805 are as they were before.
1807 1998-09-13 a sun <asun@purgatorius.zoology.washington.edu>
1809 * etc/afpd/status.c (status_flags): forgot to turn on password
1810 setting if randnum passwords are being used.
1812 1998-09-11 a sun <asun@purgatorius.zoology.washington.edu>
1814 * etc/afpd/unix.c (setdirmode): erk. make sure only to setgid on
1817 * bin/aecho/aecho.c (main): incorporated -c <num> (ala ping) patch
1818 from "Fred Lindberg" <lindberg@id.wustl.edu>.
1820 1998-09-03 a sun <asun@purgatorius.zoology.washington.edu>
1822 * etc/afpd/directory.c (afp_closedir, afp_opendir): added these in
1823 for more AFP 2.0 compliance. unfortunately, apple's appleshare
1824 client doesn't like non-fixed directory ids.
1826 1998-08-31 a sun <asun@purgatorius.zoology.washington.edu>
1828 * etc/afpd/volume.c (accessvol): the accessible volume list can
1829 now be controlled by groups and usernames. just use something of
1830 the following form: @group,name,name2,@group2,name3
1832 NOTE: you can't have any spaces, and the parser forces you to
1833 include all options. in this case, there are some apple II options
1834 that need to be entered. they need to go away soon anyway.
1836 * etc/afpd/auth.c (getname): oops. i forgot to copy the gecos
1837 field into a temporary buffer before calling strtok.
1839 1998-08-29 a sun <asun@hecate.darksunrising.blah>
1841 * etc/atalkd/main.c (as_timer), rtmp.c (rtmp_delzones): when the
1842 last router on an interface goes down, we need to delete the
1843 interface's zone table.
1845 1998-08-28 a sun <asun@purgatorius.zoology.washington.edu>
1847 * etc/afpd/status.c (afp_getsrvrinfo): although it's never used,
1848 i've added this in to increase AFP compliance.
1850 * etc/afpd/auth.c (afp_getuserinfo): added FPGetUserInfo -- this
1851 should make afpd compatible with OS 8.5's Nav Services.
1853 * etc/atalkd/config.c,main.c: -router now specifies router mode
1854 with any number of interfaces.
1856 1998-08-27 a sun <asun@purgatorius.zoology.washington.edu>
1858 * etc/atalkd/main.c (as_timer): well, i figured out how to set up
1859 atalkd as a single-interface router. now, you can get zones with
1860 only single interfaces! i'm only waiting on wes for the approved
1861 configuration toggle.
1863 1998-08-26 a sun <asun@purgatorius.zoology.washington.edu>
1865 * libatalk/adouble/ad_lock.c, include/atalk/adouble.h: turned the
1866 ADLOCK_* into real #defines and added translations in the
1867 lock-type specific functions. this should make it easier to
1868 recompile things without screwing up.
1870 1998-08-26 a sun <asun@hecate.darksunrising.blah>
1872 * etc/atalkd/nbp.c (nbp_packet): forgot to handle another local
1875 1998-08-25 a sun <asun@hecate.darksunrising.blah>
1877 * etc/afpd/status.c (status_server): changed status_server to
1878 use only the obj part of obj:type@zone-style names.
1880 * etc/atalkd/nbp.c (nbp_packet): unregistering wasn't handling
1881 zones properly. it was matching on anything but the actual zone.
1883 1998-08-18 a sun <asun@purgatorius.zoology.washington.edu>
1885 * etc/afpd/auth.c (clrtxt_login): added pam_set_time(PAM_TTY) so
1886 that solaris' pam session setup doesn't crap out.
1888 1998-08-17 a sun <asun@purgatorius.zoology.washington.edu>
1890 * etc/atalkd/multicast.c (zone_bcast): fixed to do the right thing
1891 with zip multicast info.
1893 1998-08-15 a sun <asun@purgatorius.zoology.washington.edu>
1895 * etc/afpd/nfsquota.c: made the old-style rquota fields dependent
1896 upon -DUSE_OLD_RQUOTA and defined that for sunos. also included
1897 <sys/time.h> for ultrix breakage.
1899 1998-08-13 a sun <asun@purgatorius.zoology.washington.edu>
1901 * etc/afpd/filedir.c (afp_rename), etc/afpd/ofork.c (of_rename): i
1902 knew that speeding up of_findname would be useful. in any case, i
1903 discovered the source of yet another small AFP non-compliance that
1904 was confusing WordPerfect. on an afp_rename, we also need to
1905 rename the corresponding ofork. i've added an of_rename() to do
1908 1998-08-13 a sun <asun@hecate>
1910 * etc/afpd/ofork.c (of_dealloc,of_alloc): sped up dealloc by
1911 sticking refnum in ofork.
1913 1998-08-12 a sun <asun@hecate>
1915 * etc/afpd/fork.c (afp_openfork): added already open attribute
1918 * etc/afpd/ofork.c: added a hashed of_findname.
1920 1998-08-06 a sun <asun@purgatorius.zoology.washington.edu>
1922 * etc/afpd/fork.c (afp_openfork): fixed a problem with opening
1923 forks from read-only non-appledouble media.
1925 1998-07-23 a sun <asun@purgatorius.zoology.washington.edu>
1927 * etc/afpd/afs.c (afs_getvolspace), etc/afpd/volume.c
1928 (getvolspace): modified them to treak afs like the other
1929 getvolspaces w.r.t. VolSpace.
1931 1998-07-21 a sun <asun@purgatorius.zoology.washington.edu>
1933 * etc/afpd/unix.c (mountp): erk. i forgot that symlinks are often
1934 used for filesystems. nfs quotas sometimes failed as a
1935 result. that's fixed now.
1937 1998-07-20 a sun <asun@purgatorius.zoology.washington.edu>
1939 * etc/afpd/auth.c (login): added a -DRUN_AS_USER #define so that
1940 it's simple to run the server process as a non-root user.
1942 1998-07-17 a sun <asun@purgatorius.zoology.washington.edu>
1944 * etc/afpd/nfsquota.c (callaurpc, getnfsquota), volume.h: it turns
1945 out that i was opening lots of sockets with callaurpc. now, the
1946 socket gets saved and reused.
1948 NOTE: quota-1.55-9 from redhat 5.x doesn't return the correct size
1949 for rquota's bsize. unless fixed, rquota will report incorrect
1952 1998-07-08 a sun <asun@purgatorius.zoology.washington.edu>
1954 * etc/afpd/uam/README: added some preliminary ideas on a
1955 plug-in uam architecture. in addition, this should allow arbitrary
1956 afp function replacement. eventually, auth.c should get a
1959 1998-07-07 a sun <asun@purgatorius.zoology.washington.edu>
1961 * etc/afpd/nfsquota.c: added headers and redefined a couple
1962 structure fields so that sunos4 compiles.
1964 * libatalk/compat/rquota_xdr.c: compile if we're using glibc <
1965 2. this should get redhat 4.2 machines. NOTE: they're still
1966 missing librpcsvc.a, so they'll need to remove that from the
1969 1998-07-06 a sun <asun@purgatorius.zoology.washington.edu>
1971 * libatalk/compat/rquota_xdr.c: it turns out that solaris is
1972 missing a couple functions needed for rquota support. here they
1975 * etc/afpd/unix.c (mountp): fixed the nfs detection for
1976 solaris. we still need bsd and ultrix.
1978 1998-07-05 a sun <asun@hecate>
1980 * include/atalk/adouble.h: marked out space for appledouble v2.
1982 1998-07-04 a sun <asun@hecate>
1984 * etc/afpd: plugged up some ad_open leaks. made sure that we don't
1985 get negative numbers for length fields and such.
1987 1998-07-04 a sun <asun@hecate>
1989 * etc/afpd/nfsquota.c (getnfsquota): added nfs rquota
1990 support. Robert J. Marinchick <rjm8m@majink1.itc.virginia.edu>
1991 provided the initial bits from the bsd quota program.
1993 * etc/afpd/unix.c (getquota): made getquota call getfsquota or
1994 getnfsquota depending upon the type of fs.
1996 * etc/afpd/unix.c (mountp/special): munged mountp and
1997 special to return either the nfs mount point or the fs
1998 device. set the vol->v_nfs flag if it's nfs.
2000 * etc/afpd/volume.c (getvolspace): xbfree and xbtotal will now
2001 honor results returned from uquota_getvolspace.
2003 1998-06-29 a sun <asun@purgatorius.zoology.washington.edu>
2005 * etc/afpd/file.c (copyfile): mmapping the file copy only helps on
2006 multiple copies. as that's not the case here, i've reverted to
2007 just doing read + write.
2009 1998-06-28 a sun <asun@purgatorius.zoology.washington.edu>
2011 * sys/linux/Makefile: fixed the redhat-style atalk
2012 installation. also, it doesn't over-write an existing
2013 /etc/rc.d/init.d/atalk file.
2015 * etc/afpd, libatalk/adouble/ad_write.c: removed <sys/file.h> and
2016 </usr/ucbinclude/sys/file.h> so that we rely upon adouble.h.
2018 1998-06-19 a sun <asun@purgatorius.zoology.washington.edu>
2020 * changed sys/linux/Makefile to install a redhat-style sysv atalk
2021 script instead of the bsd one.
2023 * include/atalk/adouble.h: moved same-name list stub to struct
2026 Thu Jun 18 18:20:28 1998 a sun <asun@purgatorius>
2028 * changed to asunx.y.z notation as i was getting tired of
2029 increasing numbers. as this version is undergoing a fairly
2030 substantial overhaul, i bumped it to 2.1.0. don't ask why asun1.0
2031 never existed. i just started at 2.0.
2033 * ofork (etc/afpd/{ofork.c,ofork.h,fork.c}: put in skeleton code
2034 for hashed-by-name oforks and oforks which group by name to help
2035 with byte locks and of_findname.
2037 * adouble (include/atalk/adouble.h): started implementing
2038 appledouble v2. mostly, i added bits to headers. v2 has wonderful
2039 bits that should make prodos support much less clunky, allow
2040 persistent dids, and allow msdos support.
2042 * finder info: added bits to directory.c and file.c describing the
2043 actual contents of finder info (from IM: Toolbox
2044 Essentials). also, set default directory view to an allowed value
2045 thanks to a suggestion from the appledouble v2 specs. that should
2046 help with read-only media.
2048 * etc/afpd/{directory.c,volume.c,afs.c,directory.h}: added
2049 DIRDID_ROOT and DIRDID_ROOT_PARENT so people know that these did's
2052 Wed Jun 17 11:54:49 1998 a sun <asun@purgatorius>
2054 * well, i'm starting a changelog as i keep forgetting what i've
2057 * locks: revamped them to be more in line with what should
2058 happen. currently, i've reverted back to flock-style locks as i'll
2059 need to stick in more code to get fcntl-style locks to work
2060 properly. specifically, i think modifying of_alloc/of_dealloc to
2061 keep track of locks, fds, and names should solve the problem with
2062 fcntl locks being process-specific and not fd specific.